tar -xzf elasticsearch-8.x.x-linux-x86_64.tar.gz./bin/elasticsearch (前台) 或 ./bin/elasticsearch -d (後台)https://localhost:9200/,返回集群信息表示成功{
"name" : "node-1", // 節點名稱 (可在 elasticsearch.yml 配置)
"cluster_name" : "elasticsearch", // 集群名稱
"version" : {
"number" : "8.11.0", // ES 版本
"build_hash" : "...", // 構建哈希
"lucene_version" : "9.8.0" // 底層 Lucene 版本
},
"tagline" : "You Know, for Search"
}
| 目錄 | 用途 |
|---|---|
| bin | 啟動腳本、插件管理工具 |
| config | 配置文件 (elasticsearch.yml, jvm.options, log4j2.properties) |
| lib | 核心依賴 JAR 包 |
| modules | 功能模塊 (語言分析器、發現機制等) |
| plugins | 安裝的插件目錄 |
| data | 數據持久化存儲 (索引、轉換日誌) |
| logs | 日誌文件 |
# 安裝 ./bin/elasticsearch-plugin install mobz/elasticsearch-head # 訪問 https://localhost:9200/_plugin/head/
功能:索引管理、數據瀏覽、DSL 查詢構建、集群健康狀態監控。
# 現代版本整合在 X-Pack 中 (基本授權免費) ./bin/elasticsearch-plugin install x-pack # 訪問 https://localhost:9200/_plugin/marvel/ (舊版) 或 Kibana 界面
# 下載對應版本 zip 包 ./bin/elasticsearch-plugin install file:///path/to/elasticsearch-analysis-ik-8.11.0.zip # 配置生效需重啟 ES
點擊「新建索引」→ 輸入索引名 (如 my_index) → 設置分片數 (默認 5) 和副本數 (默認 1) → 確定。
my_index,類型:_doc (7.x+ 單類型),ID:1{"title": "Elasticsearch 入門", "content": "基於 Lucene 的搜索引擎"}"result": "created" 表示成功_source 原始數據my_index/_searchq=title:Elasticsearch (Lucene 查詢語法)hits 匹配結果,total 命中數,_score 相關性評分| HTTP 方法 | ES 操作 | 說明 |
|---|---|---|
| POST | 創建/更新文檔 | 指定 ID 創建,或無 ID 自動生成 |
| PUT | 全量更新/創建索引 | 指定資源位置,冪等操作 |
| GET | 查詢文檔/索引/搜索 | 獲取資源,安全冪等 |
| DELETE | 刪除文檔/索引 | 移除資源 |
Mapping 類似數據庫 Schema,定義字段類型、分析器、索引方式:
PUT /my_index
{
"mappings": {
"properties": {
"title": { "type": "text", "analyzer": "ik_max_word" },
"content": { "type": "text", "analyzer": "ik_smart" },
"create_time": { "type": "date" },
"status": { "type": "keyword" } -- 精確匹配、聚合、排序
}
}
}
關鍵類型:text (全文檢索,會分詞)、keyword (精確值,不分詞)、date、integer/long、boolean、nested (嵌套對象)。
-Xms4g -Xmx4g (不超過物理內存 50%,且 ≤ 32GB 觸發壓縮指針)vm.max_map_count=262144、關閉 Swap、文件描述符 65535discovery.seed_hosts、cluster.initial_master_nodes)Elasticsearch 作為基於 Lucene 的分佈式搜索引擎,安裝輕量、RESTful API 友好、水平擴展強。入門建議:先用 Head 插件可視化操作理解核心概念 (索引、文檔、Mapping、DSL),再深入學習 Query DSL、聚合分析、集群運維。中文場景必裝 IK 分詞插件,生產環境務必做好 JVM 調優與安全加固。