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针对不同的操作使用多种线程池进行处理;

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