搜索客社区日报 第1767期 (2024-01-03)
社区日报 • kin122 发表了文章 • 0 个评论 • 2668 次浏览 • 2024-01-03 23:23
https://manticoresearch.com/bl ... arch/
2.Elasticsearch:在不停机的情况下优化 Elasticsearch Reindex
https://blog.csdn.net/UbuntuTo ... 36303
3.Lucene编码与压缩算法
https://zhuanlan.zhihu.com/p/528406513
编辑:kin122
更多资讯:http://news.searchkit.cn
【搜索客社区日报】第1766期 (2024-01-02)
社区日报 • God_lockin 发表了文章 • 0 个评论 • 2908 次浏览 • 2024-01-02 13:28
2024新年快乐!
1. 抱脸出的NLP教程(需要梯子)
https://huggingface.co/learn/nlp-course
2. 2023 AI 大事记(需要梯子)
https://journal.everypixel.com/2023-the-year-of-ai
3. AI 领域的当红炸子鸡们(需要梯子)
https://writerbuddy.ai/blog/ai-industry-analysis
编辑:斯蒂文
更多资讯:http://news.searchkit.cn
INFINI Labs 产品更新 | Console 数据迁移支持 Percentiles 均匀分区
资讯动态 • liaosy 发表了文章 • 0 个评论 • 3636 次浏览 • 2023-12-30 16:25

INFINI Labs 产品又更新啦~,包括 Console v1.14.0,Gateway 1.21.0。其中 Console 数据迁移支持 Percentiles 均匀分区,修复已知 Bug 等。以下是本次更新的详细说明。
INFINI Console v1.14.0
INFINI Console 是一款非常轻量级的多集群、跨版本的搜索基础设施统一管控平台。通过对流行的搜索引擎基础设施进行跨版本、多集群的集中纳管, 企业可以快速方便的统一管理企业内部的不同版本的多套搜索集群。
Console 在线体验: <http://demo.infini.cloud> (用户名/密码:readonly/readonly)。
Console 本次更新如下:
Features
- 数据迁移支持 decimal 类型分区设置
- 数据迁移支持 number 类型均匀分区
Bug fix
- 修复告警恢复后,新周期内没有发送告警通知消息的问题
INFINI Gateway v1.21.0
INFINI Gateway 是一个面向搜索场景的高性能数据网关,所有请求都经过网关处理后再转发到后端的搜索业务集群。基于 INFINI Gateway 可以实现索引级别的限速限流、常见查询的缓存加速、查询请求的审计、查询结果的动态修改等等。
Gateway 本次更新如下:
Bug fix
- fix log error when temp file was missing
INFINI Framework
INFINI Framework 是 INFINI Labs 各产品依赖的内部核心公共代码库。
Framework 本次更新如下:
- feat: support even partition
- feat: support nested object
- fix log error when temp file was missing
期待反馈
欢迎下载体验使用,如果您在使用过程中遇到如何疑问或者问题,欢迎前往 INFINI Labs Github(<https://github.com/infinilabs>) 中的对应项目中提交 Feature Request 或提交 Bug。
- 下载地址: <https://www.infinilabs.com/download>
您还可以通过邮件联系我们:hello@infini.ltd
或者拨打我们的热线电话:(+86) 400-139-9200
欢迎加入 Discord 聊天室:<https://discord.gg/4tKTMkkvVX>
也欢迎大家微信扫码添加小助手(INFINI-Labs),加入用户群一起讨论交流。

关于极限科技(INFINI Labs)

极限科技,全称极限数据(北京)科技有限公司,是一家专注于实时搜索与数据分析的软件公司。旗下品牌极限实验室(INFINI Labs)致力于打造极致易用的数据探索与分析体验。
极限科技是一支年轻的团队,采用天然分布式的方式来进行远程协作,员工分布在全球各地,希望通过努力成为中国乃至全球企业大数据实时搜索分析产品的首选,为中国技术品牌输出添砖加瓦。
官网:<https://www.infinilabs.com>
【搜索客社区日报】第1765期 (2023-12-28)
社区日报 • Se7en 发表了文章 • 0 个评论 • 3376 次浏览 • 2023-12-28 13:24
https://www.bilibili.com/video/BV18j411J7C8
2.Elasticsearch “指纹”去重机制,你实践中用到了吗?
https://mp.weixin.qq.com/s/Cq4HZSJYOat-A8N07rWvWw
3.开启安全功能 ES 集群就安全了吗?
https://elasticsearch.cn/article/15070
4.在不停机的情况下优化 Elasticsearch 的 Reindex(需要梯子)
https://blog.stackademic.com/o ... 949d6
编辑:Se7en
更多资讯:http://news.searchkit.cn
【搜索客社区日报】第1764期 (2023-12-27)
社区日报 • kin122 发表了文章 • 0 个评论 • 3088 次浏览 • 2023-12-28 13:24
https://cloud.tencent.com/deve ... 62939
2.Elasticsearch 如何处理 Aggs 顺序中的大写字母和小写字母?
https://blog.csdn.net/UbuntuTo ... 32251
3.了解 ignore_above 参数对 Elasticsearch 中磁盘使用的影响
https://blog.csdn.net/UbuntuTo ... 35184
4. Elasticsearch 性能调优基础知识
https://blog.csdn.net/UbuntuTo ... 98712
编辑:kin122
更多资讯:http://news.searchkit.cn
请教一个计算平均差值的问题
Elasticsearch • God_lockin 回复了问题 • 3 人关注 • 3 个回复 • 3994 次浏览 • 2024-01-02 10:13
开启安全功能 ES 集群就安全了吗?
Easysearch • yangmf2040 发表了文章 • 0 个评论 • 3837 次浏览 • 2023-12-27 10:38
背景
经常跟 ES 打交道的朋友都知道,现在主流的 ES 集群安全方案是:RBAC + TLS for Internal + HTTPS 。

作为终端用户一般只需要关心用户名和密码就行了。作为管理和运维 ES 的人员来说,可能希望 ES 能提供密码策略来强制密码强度和密码使用周期。遗憾的是 ES 对密码强度和密码使用周期没有任何强制要求。如果不注意,可能我们天天都在使用“弱密码”或从不修改的密码(直到无法登录)。而且 ES 对连续的认证失败,不会做任何处理,这让 ES 很容易遭受暴力破解的入侵。
那还有没有别的办法,进一步提高安全呢? 其实,网关可以来帮忙。
虽然网关无法强制提高密码复杂度,但可以提高 ES 集群被暴力破解的难度。
大家都知道,暴力破解--本质就是不停的“猜”你的密码。以现在的 CPU 算力,一秒钟“猜”个几千上万次不过是洒洒水,而且 CPU 监控都不带波动的,很难发现异常。从这里入手,一方面,网关可以延长认证失败的过程--延迟返回结果,让破解不再暴力。另一方面,网关可以记录认证失败的情况,做到实时监控,有条件的告警。一旦出现苗头,可以使用网关阻断该 IP 或用户发来的任何请求。
场景模拟
首先,用网关代理 ES 集群,并在 default_flow 中增加一段 [response_status_filter](https://www.infinilabs.com/doc ... ilter/) 过滤器配置,对返回码是 401 的请求,跳转到 rate_limit_flow 进行降速,延迟 5 秒返回。
```
- name: default_flow
filter:
- elasticsearch:
elasticsearch: prod
max_connection_per_node: 1000 - response_status_filter:
exclude:
- 401
action: redirect_flow
flow: rate_limit_flow
- 401
- elasticsearch:
- name: rate_limit_flow
filter:
- sleep:
sleep_in_million_seconds: 5000
```

其次,对于失败的认证,我们可以通过 Console 来做个看板实时分析,展示。
折线图、饼图图、柱状图等,多种展示方式,大家可充分发挥。
最后,可在 Console 的告警中心,配置对应的告警规则,实时监控该类事件,方便及时跟进处置。
效果测试
先带上正确的用户名密码测试,看看返回速度。
.png)
0.011 秒返回。再使用错误的密码测试。
.png)
整整 5 秒多后,才回返结果。如果要暴力破解,每 5 秒钟甚至更久才尝试一个密码,这还叫暴力吗?
看板示例
此处仅仅是抛砖引玉,欢迎大家发挥想象。
.png)
告警示例
建立告警规则,用户 1 分钟内超过 3 次登录失败,就产生告警。
.png)
可在告警中心查看详情,也可将告警推送至微信、钉钉、飞书、邮件等。
.png)
查看告警详情,是 es 用户触发了告警。
.png)
最后,剩下的工作就是对该账号的处置了。如果有需要可以考虑阻止该用户或 IP 的请求,对应的过滤器文档在[这里](https://www.infinilabs.com/doc ... ilter/),老规矩加到 default_flow 里就行了。
如果小伙伴有其他办法提升 ES 集群安全,欢迎和我们一起讨论、交流。我们的宗旨是:让搜索更简单!
- sleep:
【搜索客社区日报】第1763期 (2023-12-26)
社区日报 • God_lockin 发表了文章 • 0 个评论 • 3229 次浏览 • 2023-12-27 10:38
1. 一个号称最流弊的AI powered搜索引擎(需要梯子)
https://www.perplexity.ai/
2. 数据工程师的端到端练习(I)(需要梯子)
https://medium.com/apache-airf ... ec55e
3. 数据工程师的端到端练习(II)(需要梯子)
https://medium.com/%40dogukann ... 5a9c8
编辑:斯蒂文
更多资讯:http://news.searchkit.cn
【搜索客社区日报】 第1762期 (2023-12-25)
社区日报 • yuebancanghai 发表了文章 • 0 个评论 • 3311 次浏览 • 2023-12-25 11:32
1. 小红书推搜场景下如何优化机器学习异构硬件推理突破算力瓶颈
https://zhuanlan.zhihu.com/p/670350407
2、Elasticsearch Relevance Engine-为AI变革提供高级搜索能力
https://zhuanlan.zhihu.com/p/662175828
3、Elasticsearch 写入优化探索:是什么影响了refresh 耗时
https://mp.weixin.qq.com/s/q8xPMBALoC0L8n9Qn9-6kA
4、elasticsearch 源码解析之选主选举过程
https://blog.csdn.net/taugast/ ... 46985
5、一起学Elasticsearch系列-深度分页问题
https://mp.weixin.qq.com/s/A7Vc291_czAu7WsZsLIdLg
编辑:yuebancanghai
更多资讯:http://news.searchkit.cn
【搜索客社区日报】第1761期 (2023-12-22)
社区日报 • laoyang360 发表了文章 • 0 个评论 • 3257 次浏览 • 2023-12-22 14:03
1、从 Elasticsearch 到 Apache Doris:升级可观察性平台
https://doris.apache.org/blog/ ... form/
2、使用C#向Elasticsearch 写入数据
https://csharpkh.blogspot.com/ ... .html
3、使用 Docker 和 Docker Compose 运行 Elasticsearch 的初学者指南
https://geshan.com.np/blog/202 ... cker/
4、升级到 elasticsearch-py 8.x 的 10 个理由
https://discuss.elastic.co/t/d ... 47292
编辑:铭毅天下
更多资讯:http://news.searchkit.cn
【搜索客社区日报】第1760期 (2023-12-21)
社区日报 • Se7en 发表了文章 • 0 个评论 • 3477 次浏览 • 2023-12-21 09:24
https://mp.weixin.qq.com/s/Gsa1rPVISjOdVteol78EoA
2.Source Filtering, Stored Fields, Fields 和 Docvalues Fields 介绍
https://opster.com/guides/elas ... alue/
3.使用 Elasticsearch 检测抄袭
https://www.elastic.co/search- ... earch
4.理解 Elasticsearch Percolate 查询
https://spinscale.de/posts/202 ... .html
编辑:Se7en
更多资讯:http://news.searchkit.cn
搜索客社区日报 第1759期 (2023-12-20)
社区日报 • kin122 发表了文章 • 0 个评论 • 3259 次浏览 • 2023-12-21 09:24
https://zhuanlan.zhihu.com/p/532944354
2.Lucene中文分词器:double-array trie与Viterbi算法 - 下篇
https://zhuanlan.zhihu.com/p/532945013
3.全文检索的索引设计
https://zhuanlan.zhihu.com/p/520001238
4. Lucene Filter & Query 深入分析
https://zhuanlan.zhihu.com/p/510441553
编辑:kin122
更多资讯:http://news.searchkit.cn
用_update只对文档部分字段更新的话性能高吗?
Elasticsearch • FFFrp 回复了问题 • 2 人关注 • 1 个回复 • 3668 次浏览 • 2023-12-25 11:40
INFINI Gateway 如何防止大跨度查询
Easysearch • yangmf2040 发表了文章 • 0 个评论 • 3158 次浏览 • 2023-12-19 23:54
背景
业务每天生成一个日期后缀的索引,写入当日数据。
业务查询有时会查询好多天的数据,导致负载告警。
现在想对查询进行限制--只允许查询一天的数据(不限定是哪天),如果想查询多天的数据就走申请。
技术分析
在每天一个索引的情况下,要进行多天的数据查询,有三种途径:
- 查询时,指定多个索引
- 查询时,写前缀+*号,模糊匹配多个索引
- 查询别名,别名关联多个索引
需求实现
我们只需用网关代理 ES 集群,并在 default_flow 中增加一段 [request_path_filter](https://www.infinilabs.com/doc ... ilter/) 过滤器的配置,只允许查询一个索引且格式如 "xxx-2023-12-06", "xxx.2023.12.06", "xxx20231206" 。
```- request_path_filter:
message: "Query scope exceeds limit, please contact the administrator for application."
must:
suffix:
- _search
regex: - \/[a-z]+[-.]?\d{4}[-.]?\d{1,2}[-.]?\d{1,2}\/
```

如果需要指定其他格式,请自行修改 regex 的正则表达式。
创建测试索引
在 [INFINI Console](https://www.infinilabs.com/docs/latest/console/) 开发工具中执行下列语句:
<br /> POST test-2023-12-06/_doc<br /> {<br /> "test":"test"<br /> }<br /> <br /> POST test-2023-12-6/_doc<br /> {<br /> "test":"test"<br /> }<br /> POST test.2023.12.06/_doc<br /> {<br /> "test":"test"<br /> }<br /> POST test.2023.12.6/_doc<br /> {<br /> "test":"test"<br /> }<br /> <br /> POST test20231206/_doc<br /> {<br /> "test":"test"<br /> }<br /> <br /> POST test/_doc<br /> {<br /> "test":"test"<br /> }<br />
查询测试语句
```预计成功的查询
curl localhost:8000/test-2023-12-06/_search?pretty
curl localhost:8000/test-2023-12-6/_search?pretty
curl localhost:8000/test.2023.12.06/_search?pretty
curl localhost:8000/test.2023.12.6/_search?pretty
curl localhost:8000/test20231206/_search?pretty预计失败的查询
curl localhost:8000/test-2023-12-06,test-2023-12-6/_search?pretty
curl localhost:8000/test-2023-12/_search?pretty
curl localhost:8000/test/_search?pretty
curl localhost:8000/*/_search?pretty
```
查询结果
预计成功的查询

预计失败的查询

此外,我们在 Console 中的 Request Analysis 看板中也能看到,哪些请求被拒绝,哪些请求被“放行”。

查询多个索引(多天)
现在我们已经实现了业务只能查一个索引,即一天的数据。当业务需要查询多天的索引时,我们只需创建一个别名,关联多个索引就行了。注意别名也要符合格式要求:字母开头 + 日期格式后缀。
下面我们创建一个 test-1111-1-1 的别名,关联前面的三个测试索引。
<br /> POST /_aliases<br /> {<br /> "actions" : [<br /> { "add" : { "indices" : ["test-2023-12-06", "test.2023.12.06","test-2023-12-6"], "alias" : "test-1111-1-1" } }<br /> ]<br /> }<br />
查询别名

待业务查询用完之后,删除别名即可。
<br /> POST /_aliases<br /> {<br /> "actions" : [<br /> { "remove": { "indices" : ["test-2023-12-06", "test.2023.12.06","test-2023-12-6"], "alias" : "test-1111-1-1" } }<br /> ]<br /> }<br />
最后,我们只需严格控制别名的创建,就能实现我们最初的需求了。
- _search
- request_path_filter:
【搜索客社区日报】第1758期 (2023-12-19)
社区日报 • God_lockin 发表了文章 • 0 个评论 • 2774 次浏览 • 2023-12-19 10:24
https://platform.openai.com/do ... ering
2. kibana里面的事件响应(需要梯子)
https://medium.com/%40wenray/i ... 60175
3. ES 的一些索引小技巧(需要梯子)
https://medium.com/%40nile.bit ... c11de
4. Elasticsearch in action 的练习题项目(需要梯子)
https://github.com/madhusudhan ... ction
编辑:斯蒂文
更多资讯:http://news.searchkit.cn