搜索
文章平均质量分 79
mania_yan
平安科技AI中心技术领域专家
展开
-
【独家深度】Gitlab基于Elasticsearch的站内搜索设计
通过分析Gitlab的站内搜索设计,借鉴其设计经验,来改进自己的站内搜索方案,包括领域对象划分,索引设计,权限控制设计。这可能是国内第一篇详细解剖Gitlab站内搜索设计实现的文章。原创 2023-12-20 14:55:38 · 2019 阅读 · 0 评论 -
ES如何对搜索缓存进行空间压缩
ES搜索时,如果Query里包含了filter,则会对filter进行缓存,方便其他Query的复用。(must和should条件都不会缓存,只有filter会)filter语句会返回什么id,这个信息缓存在内存中。为了能在有限的内存中缓存更多的filter,ES对filter对应的ids存储进行了压缩。原创 2023-12-19 17:30:28 · 434 阅读 · 0 评论 -
Elasticsearch应用Suggestion的代码示例
ES的java有2个主流客户端,官方的和spring data的。不管哪一个,关于suggestion的代码示例都非常少。这里就是为了弥补这个空白。原创 2023-12-18 16:13:01 · 559 阅读 · 0 评论 -
【深度】ES到底是如何对倒排索引进行速度和空间优化
倒排索引虽然很快,但是空间消耗很大。需要优化保证搜索速度更快(优势更明显)空间占用减小(缺点缩小)ES的优化设计ES对性能和空间节省做了大量的优化。原创 2023-12-15 17:18:12 · 1136 阅读 · 0 评论 -
搜索引擎演进调研
搜索引擎的演进方向采用能充分释放硬件性能的新语言进行开发(如,rust)更低成本(存储计算分离,索引改造),更易用(用户/开发体验),更快(新语言)的方向演进产品混合搜索 (文本及向量的混合搜索)原创 2023-12-15 17:09:25 · 1386 阅读 · 0 评论 -
基于Mybatis实现PG文本搜索的最简易方法
在数据库表sparring_workflow中,需要在workflow_name和workflow_desc中实现文本搜索。(前端可以在name和desc中搜索到用户需要的信息)原创 2023-11-28 18:15:02 · 1143 阅读 · 0 评论 -
基于Mybatis实现PG文本搜索的更优实现
分词,这里采用最简单的分词工具hanlp 1.x(同类产品还有jieba,ikanalyse),如果需要更好的分词效果,可以通过API调用外部的基于深度学习的分词模型(如hanlp 2.x)。负责将java函数和SQL进行映射,其中,SQL由另一个SQL Builder的类负责动态生成SQL语句(根据java函数的入参,动态生成包含实际入参的SQL)。因此,中文搜索涉及的文本处理,需要外置实现。通过mapper,将java函数和sql进行映射,这样,执行java搜索函数时,实际执行的是PG对应的SQL。原创 2023-11-28 18:17:26 · 1142 阅读 · 0 评论 -
基于Elasticsearch Phrase Suggester的地址纠错设计
使用elasticsearch的phrase suggester实现地址的纠错设计原创 2023-01-19 12:08:15 · 376 阅读 · 1 评论 -
基于Elasticsearch Term Suggester的地址纠错设计
基于elasticsearch的term suggester技术实现地址信息的纠错设计方案原创 2023-01-19 12:04:47 · 434 阅读 · 0 评论 -
如何从天眼查获取海量公司信息
从天眼查获取海量公司地址的方法原创 2023-01-19 11:55:30 · 5136 阅读 · 1 评论 -
基于Postgresql的低成本简单搜索
传统搜索需要使用elasticsearch,需要额外建设,这里使用postgresql低成本实现简单搜索原创 2023-01-19 11:42:36 · 528 阅读 · 0 评论