疫情已经持续了好几个月了,作为程序员滴我们也帮不上什么忙,只有老老实实呆在家里或者出门一定戴口罩准守一些规则,不给国家添乱。不过最近疫情开始有所扭转,但是还是对国家经济,对企业业务造成了很大的影响,我也被停止了实习。接下来,可能会面临着失业,破产等等严肃的问题。但是我们还是需要继续学习,提高自己的竞争力,才能在疫情过后,有自己的一席之地,可以在合适自己的地方发挥自己的作用。中国加油,武汉加油。
// 对比关系
索引集(indices)------------------------------------------------Databases 数据库 类型(type)---------------------------------------------Table 数据表 文档(Document)-----------------------------Row 行 字段(Field)----------------------Columns列
注意:Elasticsearch本身就是分布式的,因此即使你只有一个节点,Elasticsearch默认也会对你的数据进行分片和副本操作,当你向集群添加数据时,数据也会在新加入的节点中进行平衡。
{ // settings: 索引库的设置。 "settings": { "number_of_shards": 3, // 分片数量 "number_of_replicas": 2 // 副本数量 } }
{ "properties": { "字段名": { "type": "类型", "index": true, "store": true, "analyzer": "分词器" // 分词器 } } }
注意:如果存的是对象,比如:{girl: {name:"rose",age:21}} 会被处理成两个字段:girl.name和girl.age
POST /索引库名/类型名称/id值 { ... }
GET /索引库名/_search { "query": { "查询类型": { "查询条件":"查询条件值" } } } 例子: GET /article/_search { "query": { "match": { "title": { "query": "广州上海", "operator":"and" } } } }
GET /索引库名/_search { "query": { "multi_match": { "query": "查询内容", "fields": ["查询字段1","查询字段2"] } } }
GET /索引库名/_search { "query": { "term": { "查询字段":"查询内容" } } }
{ "_source": { # "includes": "过滤字段" # 和上面作用一样 "excludes":"排除过滤字段" } }
GET /索引库名/_search { "query": { "range": { "查询字段": { "gte": 数值, # 大于,可省略 "lte": 数值 # 小于,可省略 } } } }
GET /索引库名/_search { "query": { "bool": { "must": [ {"match": { "查询字段": "查询内容" }} ], "filter": { "range": { "过滤字段": { "gte": 数值 } } } } } }
"sort": [ { "排序字段": { "order": "desc" # 降序排序 } } ]
GET /索引库名/_search { "aggs": { "桶分组名称": { "桶分组方式": { "field": "分桶字段" } } } }
GET /索引库名/_search { "aggs": { "度量名称": { "度量运算": { "field": "运算字段" } } } } 例子:{ "size": 0, "aggs": { "popular_brand": { "terms": { "field": "make" }, "aggs": { "price_avg": { "avg": { "field": "price" } } } } } }
原文:https://www.cnblogs.com/sunxn77/p/12395083.html