ES基本概念及操作_3

1、http端口默認爲9200,tcp端口默認爲9300,默認情況下elastic只允許本地訪問,開啓遠程訪問需設置elasticsearch.yml中的network.host;
2、複製副本只有在集羣狀態爲green纔可用,如果集羣狀態爲red,則將會有些數據無法訪問;
3、索引文檔,使用put請求並制定唯一ID,請求體使用json格式的key-value格式即可,若索引中無記錄則新增,存在則更新;
4、文檔批量索引要比單個索引快很多,不過這也取決於文檔的大小及複雜程度,索引及搜索的負載以及系統可用的資源;

curl -H "Content-Type: application/json" -XPOST "http://127.0.0.1:9200/bank/_bulk?pretty&refresh" --data-binary "@accounts.json"

5、默認查詢僅返回前10條記錄,若想指定返回條數,指定參數from和size;

GET /bank/_search
{
  "query": {
    "match_all": {}
  },
  "sort": [
    {
      "account_number": {
        "order": "desc"
      }
    }
  ],
  "from": 0,
  "size": 20
}

6、若想查詢指定的字典值,可以使用match語句,指定單個單詞;若想查詢詞組的話,可以使用match_phase;若想構造更復雜的查詢的話,可以使用bool查詢,其中可以指定必須滿足條件(must match),可滿足條件(should match),必須不滿足(must not match);
7、must/should/must_not在bool查詢中作爲查詢子句,其中must或should查詢子句會貢獻文檔查詢相關分數,而must_not只作爲查詢過濾條件,不參與文檔分數評估;除此之外,bool查詢中還可以直接使用過濾器查詢;
8、聚合函數可以組合成更復雜的查詢語句,實現更復雜的統計功能;
9、可以使用terms聚合的內嵌聚合結果進行排序來取代針對結果的sort排序;

10、es啓動時可以指定以守護進程啓動並記錄pid,同時也可在啓動時指定環境參數;

$ ./bin/elasticsearch -d -p pid
$ ./bin/elasticsearch -d -Ecluster.name=my_cluster -Enode.name=node_1

11、es中配置的三個位置:elasticsearch.yml、jvm.options、log4j2.properties;

12、es關鍵配置參數:
1)、path.data和path.logs
2)、cluster.name
3)、node.name
4)、network.host

13、線程池:es針對不同的操作使用多種線程池進行處理;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章