添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接
ES Kotlin 用于Kotlin的Elasticsearch查询 DSL 。 该库旨在最大程度地减少Elasticsearch JSON查询 DSL 与编写kotlin应用程序时使用的API之间的差距。 它与现有的Java API集成在一起,仅提供了更好的语法来构建查询。 Gradle repositori es { mavenCentral() maven { url " http://dl.bintray.com/mbuhot/maven " dependenci es { compile ' mbuhot: es kotlin:0.7.0 ' 请参阅了解支持以前的客户端版本的较旧版本。 完整详细信息 < dependency> < groupId>mbuhot</ groupId 包 es 提供了Elasticsearch查询 DSL 。 不建议使用Go“点导入”,但是,如果您想在这种情况下利用点导入的表现力,我建议将此逻辑抽象为更高级别的查询功能和程序包。 我不建议直接将其点导入其他包中。 如果您不介意疯狂 嵌套 : query := Pretty ( Query ( Aggs ( Agg ( "r es ults" , Filter ( Term ( "user.login" , "tj" ), Range ( "now-7d" , "now" ), Aggs ( Agg ( "repos" , Terms ( "repository.name.keyword" , 100 ), Aggs ( const convert = require('elasql').convert convert('SELECT id,name FROM shop WHERE shop_id BETWEEN 5 AND 10 AND type = "cat"') "query": { "bool": { "must": [ "match": { "type": "cat" "must_not": [], "filter": [ 英文全称Domain Specific Language,解释为领域专用语言。 DSL 是针对某个特定领域而开发的语言,而我们平时接触 到的C/C++,Java,Python/Ruby, 都属于通用语言, DSL 就是为了弥补这些通用语言而出现的。 说到编程离不开最基础的CURD DSL 也一样 我们先说查询,直接上实例 1.全检索 GET 索引名/_search "quer... "dttime":{ -- 按照dttime字段过滤时间 "gte":"2022-02-01T00:00:00.116+08:00", "lt":"2022-03-01T00:00:00.116+08:00" "match":{ "user_id":"0001dd" -- ES 分组 聚合 查询 均值 及toHits使用使用场景实现步骤1.注册 es 客户端2. 构造请 3. DSL 语句及查询示例 对 es 中某些字段进行 分组 并对某一个列 聚合 均值 /最大值/等,并展示未 分组 的列的值,并且用 得平 均值 排序 1.注册 es 客户端 用账号密码连接 es 集群 @Configuration @Data public class ElasticSearchConfig { @Value("${elasticsearch.host}") private String h aggregations 聚合 ,相当于SQL中的group by,但是功能更强大。 es 聚合 分为四种方式:指标 聚合 ,桶 聚合 ,矩阵 聚合 ,管道 聚合 。 常用的为前两种,指标 聚合 ,桶 聚合 。 1:指标 聚合 指标 聚合 :Metrics Aggregations,类似于SQL中常见的一些统计方法 COUNT() 、 SUM() 、 MAX() 等。 terms相当于 分组 后统计各组的count()结果 "aggs": { "t es t" : { "terms" : { 之前有个查询 es 分组 求和 的需 ,类似关系型数据库  select a ,b ,sum(c)  from table group by a,b  当时用 DSL 查询语句实现 这边记录下: GET  /my_index/my_type/_search     "from": 0,     "size": 0,     "aggs": {         "_A_": { ES 聚合 查询主要分为3类:指标 聚合 、桶 聚合 和管道 聚合 。 本文主要是介绍其中指标 聚合 的相关使用。 如果说桶 聚合 主要是用来做 分组 的,那么指标 聚合 就主要是用来做数据计算的。 桶 聚合 和指标 聚合 一般都会配合使用。