是时候用 ES 拯救发际线啦

社区日报 第880期 (2020-03-13)

社区日报laoyang360 发表了文章 • 0 个评论 • 1018 次浏览 • 2020-03-13 16:56 • 来自相关话题

1、Elasticsearch快照指南(梯子)
http://t.cn/A6zI6iOI
2、使用Spark和ES-Hadoop在Elastic Search上进行机器学习(梯子)
http://t.cn/A6zI6axs
3、Elasticsearch中的地理空间查询(梯子)
http://t.cn/A6zI6Kwp

编辑:铭毅天下
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup

es7.1更改index的字段类型

Elasticsearchyangruideyang 回复了问题 • 3 人关注 • 3 个回复 • 5053 次浏览 • 2020-03-13 15:33 • 来自相关话题

es索引带科学记数法的double类型报错

回复

Elasticsearchsoulzhouxu 发起了问题 • 1 人关注 • 0 个回复 • 3398 次浏览 • 2020-03-12 22:47 • 来自相关话题

社区日报 第879期 (2020-03-12)

社区日报白衬衣 发表了文章 • 0 个评论 • 1013 次浏览 • 2020-03-12 19:20 • 来自相关话题

1.在Docker里运行Filebeat
http://t.cn/A6z5WgQt
2.Elasticsearch 平滑下线节点实践指南
http://t.cn/A6z5WsPL
3.如何使用Elasticsearch实现对动态字段的搜索
http://t.cn/A6z5lhdO

编辑:金桥
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup

logstash output http产生的问题

Logstashtrycatchfinal 回复了问题 • 3 人关注 • 2 个回复 • 2595 次浏览 • 2020-03-12 16:23 • 来自相关话题

java 调用.startScroll(),为什么无法排序,求解啊

Elasticsearchlaoyang360 回复了问题 • 2 人关注 • 1 个回复 • 1454 次浏览 • 2020-03-12 13:02 • 来自相关话题

社区日报 第878期 (2020-03-11)

社区日报千夜 发表了文章 • 0 个评论 • 1088 次浏览 • 2020-03-11 21:37 • 来自相关话题

1、95后运维小哥20天+通过 Elastic 认证考试经验分享
http://t.cn/A6zbKLpy
2、腾讯健康码16亿亮码背后的 Elasticsearch 系统调优实践
http://t.cn/A6zbKcx2
3、Elasticsearch 应用场景之 cross_fields
http://t.cn/A67FEMGY
 
编辑:江水
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub
沙龙:https://ela.st/cn-meetup
 

packbeat如何为fields.yml文件添加字段?

回复

BeatscrbEs 发起了问题 • 1 人关注 • 0 个回复 • 3993 次浏览 • 2020-03-11 17:58 • 来自相关话题

如何实现将mysql 1对多数据导入到es 的nested 嵌套字段中

Elasticsearchzwy_ 回复了问题 • 7 人关注 • 6 个回复 • 6175 次浏览 • 2020-03-11 16:43 • 来自相关话题

kibana是否支持多个index查询?

Kibanahope_dream 回复了问题 • 3 人关注 • 2 个回复 • 4151 次浏览 • 2020-03-11 14:12 • 来自相关话题

小白求问:elasticsearch kibana配置了xpack后 kibana登录账号后无法访问

Kibanaqinyuezhan 回复了问题 • 5 人关注 • 7 个回复 • 5029 次浏览 • 2020-03-10 21:37 • 来自相关话题

一种处理Elasticsearch对象数组类型的方式

Elasticsearchtrycatchfinal 发表了文章 • 0 个评论 • 6883 次浏览 • 2020-03-10 20:27 • 来自相关话题

目前情况

Elasticsearch中处理对象数组有两种格式array和nested,但这两种都有一定的不足。
以下面的文档为例:
<br /> {<br /> "user": [<br /> {<br /> "first": "John",<br /> "last": "Smith"<br /> },<br /> {<br /> "first": "Alice",<br /> "last": "White"<br /> }<br /> ]<br /> }<br />
如果在mapping中以array存储,那么实际存储为:
<br /> user.first:["John","Alice"]<br /> user.last:["Smith","White"]<br />
如果以must的方式查询user.first:Johnuser.last:White,那么这篇文档也会命中,这不是我们期望的。

如果在mapping中以array存储,Elasticsearch将每个对象视为一个doc,这例子会存储3个doc,会严重影响ES写入和查询的效率。

Flatten格式

我想到的存储方式很简单,就是将对象数组打平保存为一个keyword类型的字符串数组,故起名Flatten格式。
以上面文档为例,数组对象需要转换为下面的格式

<br /> "user.flatten": [<br /> "first:John",<br /> "last:Smith",<br /> "first:John&last:Smith",<br /> "first:Alice",<br /> "last:White",<br /> "first:Alice&last:White"<br /> ]<br /> <br />

这样以must的方式查询user.first:Johnuser.last:White,可以转换为term查询first:John&last:White,并不会命中文档。
同时,这种方式还是保存1个doc,避免了nested的缺点。

对于flatten格式有几点说明

user.flatten数组的大小

如果user对象个数为M,user属性个数为N,那么其数组大小为(2^N-1)*M

对象为空怎么处理

建议以null方式保存,例如:

<br /> {<br /> "first": "John",<br /> "last": null<br /> }<br />
转换后的格式

<br /> [<br /> "first:John",<br /> "last:null",<br /> "first:John&last:null",<br /> ]<br />

保存和查询对于对象属性的处理顺序要保持一致

上述例子都是按first&last顺序存储的,那么以must的方式查询user.first:Johnuser.last:White也要以first:John&last:White方式查询,不能用last:White&first:John

不足

  • 需要自己编码将JSON对象转换为字符串数组
  • 需要自己编码转换查询语句
  • 只支持term查询

社区日报 第877期 (2020-03-10)

社区日报kimichen123 发表了文章 • 0 个评论 • 1721 次浏览 • 2020-03-10 19:21 • 来自相关话题

1、Kafka连接Elasticsearch实战。
http://t.cn/A673xv8b
2、打开ElasticSearch、kibana、logstash的正确方式。
http://t.cn/A6z2U2px
3、在docker环境中部署Elasticsearch集群。
http://t.cn/A6z2UyIs

编辑:叮咚光军
归档:https://ela.st/cn-daily-all
订阅:https://ela.st/cn-daily-sub

我构建项目的时候出了个错误,有没有大佬能帮忙指个方向

回复

Kibanadforel 发起了问题 • 1 人关注 • 0 个回复 • 2375 次浏览 • 2020-03-10 18:41 • 来自相关话题

kibana 超长字段显示问题

回复

Kibanastudy_test 回复了问题 • 1 人关注 • 2 个回复 • 1494 次浏览 • 2020-03-10 14:23 • 来自相关话题