数据小站
数据科学成长之路

ES大数据使用

cat api 查询集群中数据

get /_cat/health?v 快速查询集群的监控状态

get /_cat/indices?v 查询集群中有哪些索引

索引、类型查询

_search查询

/_search在所有的索引中搜索所有的类型

/gb/_search在 gb 索引中搜索所有的类型

/gb,us/_search在 gb 和 us 索引中搜索所有的文档

/g*,u*/_search在任何以 g 或者 u 开头的索引中搜索所有的类型

/gb/user/_search在 gb 索引中搜索 user 类型

/gb,us/user,tweet/_search在 gb 和 us 索引中搜索 user 和 tweet 类型

/_all/user,tweet/_search在所有的索引中搜索 user 和 tweet 类型

搜索一个索引有五个主分片和搜索五个索引各有一个分片准确来所说是等价的。

_search查询分页

Elasticsearch 接受 from 和 size 参数:size显示应该返回的结果数量,默认是 10,from显示应该跳过的初始结果数量,默认是 0

如果每页展示 5 条结果,可以用下面方式请求得到 1 到 3 页的结果:

GET /_search?size=5
GET /_search?size=5&from=5
GET /_search?size=5&from=10

_search返回结果

get /索引/类型/_search

took:耗费毫秒数
timed_out :是否超时
_shards : 数据拆成的几个分片
hits.totals : 返回结果集数量
hits.max_score : 相关度
hits.hits  :详细数据

query DSL 查询,将search参数放在body中进行查询

将查询条件放在http请求body中,用json格式

json体中通过query、sort 对数据进行查询、排序 、分组等待操作

查询的结果对指定字段进行排序:
{
  "query":{
      "match":{
           "name":".."
        }
   },
  "sort":[
     {"price":"desc"}
   ]
}
查询的结果展示指定的字段:
 {
  "query":{
      "match_all":{ }
   },
   "_source":["",""]
} 

多条件查询 bool

{
  "query":{
      "bool":{
           "march":{},
           "":{}
        }
   }
}

聚合统计aggs

{
  "aggs":{
      "groupby_.":{
           "terms":{.}
        }
   }
}

赞(0) 打赏
未经允许不得转载:技术文档分享 » ES大数据使用

评论 抢沙发