惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
Webroot Blog
Webroot Blog
IT之家
IT之家
博客园_首页
Apple Machine Learning Research
Apple Machine Learning Research
Last Week in AI
Last Week in AI
Hugging Face - Blog
Hugging Face - Blog
爱范儿
爱范儿
G
Google Developers Blog
Stack Overflow Blog
Stack Overflow Blog
Blog — PlanetScale
Blog — PlanetScale
Recent Announcements
Recent Announcements
M
MIT News - Artificial intelligence
The Cloudflare Blog
Microsoft Security Blog
Microsoft Security Blog
aimingoo的专栏
aimingoo的专栏
F
Full Disclosure
H
Help Net Security
量子位
Martin Fowler
Martin Fowler
The GitHub Blog
The GitHub Blog
V
V2EX
U
Unit 42
Microsoft Azure Blog
Microsoft Azure Blog
美团技术团队
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO
Engineering at Meta
Engineering at Meta
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
I
InfoQ
博客园 - 叶小钗
V
V2EX - 技术
T
Tailwind CSS Blog
P
Proofpoint News Feed
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
T
Troy Hunt's Blog
N
News and Events Feed by Topic
E
Exploit-DB.com RSS Feed
S
Secure Thoughts
Recent Commits to openclaw:main
Recent Commits to openclaw:main
www.infosecurity-magazine.com
www.infosecurity-magazine.com
C
CXSECURITY Database RSS Feed - CXSecurity.com
C
Check Point Blog
Project Zero
Project Zero
O
OpenAI News
T
The Exploit Database - CXSecurity.com
P
Proofpoint News Feed
L
LINUX DO - 最新话题
C
Cybersecurity and Infrastructure Security Agency CISA
博客园 - 三生石上(FineUI控件)

Elasticsearch

es 过亿数据查询咨询 DocKit 首个稳定版 v1.0 - 更现代化的开源 NoSQL 桌面客户端 支持 DynamoDB, Elasticsearch 和 OpenSearch 大家好 Manticore Search 团队征询社区意见 欢迎反馈 - V2EX ElasticSearch 查询时如果不确定字段名如何进行搜索? - V2EX es 适合模糊查询吗? - V2EX opensearch data 节点,分片数均匀,磁盘存储不均匀, CPU 有些很高有些很低 - V2EX 关于 Elasticsearch 和 springboot 版本的依赖关系 - V2EX IK 分词器里自带的.dic 文件会被默认加载吗 - V2EX ‌Elasticsearch 怎么检索 oss 里面的文件 - V2EX 大量短记录字段的模糊查询如何实现? es 的分词器如何实现多语种记录的转换和分词呢? - V2EX CVE-2023-31419 es 漏洞除了升级版本还有其他解决方式吗? - V2EX 请教个 es 向量查询的问题 - V2EX ES 新人请教大佬精确查询的问题 - V2EX 一个月写了一个 ES GUI 客户端(笑) - V2EX 现在用 ES 还推荐通过分词插件的方式对 query 和 doc 进行处理吗? - V2EX 旧的 elasticsearch 集群能直接加到新的吗? - V2EX elasticsearch-analysis-ik 远程扩展词典最佳实践是? - V2EX 有没有精通 es 搜索的,可付费咨询 - V2EX es 相似度查询 - V2EX 基于 casdoor 的 ELK 开源登录认证解决方案: elk-auth-casdoor 请教一个 ElasticSearch 相关的业务问题 elasticsearch 查询、新增、更新数据都时快时慢怎么办? 请教 ES 怎么实现如下聚合查询: 按某关键字分组,每个分组找到最近的一条记录,筛选这条"最近记录"中状态字段为"特定状态" 除了 kibana 还有哪些可视化的 es 镜像恢复方案? 请教下各位大佬,如何在固定的 index 实施 ILM? es8.11.x 是否可以可视化接入 LDAP 呢? es 比如京东搜索商品的时候,如果输入是数字直接搜索,会直接按照分词查询还是通过正则等其他方式进行搜索了 请教并发问题(Elasticsearch 请求高峰) 关于 elasticsearch 机器的选择 elasticsearch 从 5.x 版本后就不允许使用 _id 字段进行排序了. 想问问新版本有什么办法? ELK 版本问题以及服务器数量问题 [求付费技术支持-ES]写入超慢 Elasticsearch 新增字段匹配查询的问题 请教一个 elasticsearch 的模糊查询语法 。 ES 高频词怎么优化 logstash 使用 redis input 插件时,要如何支持 redis cluster? Elasticsearch 底层日期存储格式疑问? 100G 8000 万条信息全文检索, Elasticsearch 是最优选择吗? elasticsearch 首次搜索过慢的问题, 4 千万数据 求教,是否可以把所有高亮的结果合并成一個结果? 为什么 ELK 都不提供一个在命令行停止/关机的命令? ES 如何让中文词条排序靠前? ES 从 File System Cache 到 Segment 大概会耗时多少呢 elasticsearch query url path 语法请教 elk 后台 discover 怎么展示新增的字段 有关 es 中 scroll 的疑问 请教 Elasticsearch 使用什么 ETL 工具 es 插入索引的正常性能应该是多少? Elasticsearch 类 top_hits 复杂搜索问题 ES 如何实现这种多维度多条件的搜索? elasticsearch 索引备份
商城项目中 ES 搜索怎么进行分词优化? - V2EX
3country · 2024-03-15 · via Elasticsearch

  • es
  • 分词
  • 优化

    15 条回复    2024-03-16 00:12:48 +08:00

    pushMeUp

    1

    pushMeUp      2024 年 3 月 15 日

    第一个问题,不知道
    按照我的理解 ik_max_word 会将词拆分到最细,所以 XL 汤锅,理应通过锅能搜索到的,插个眼看个答案。

    第二个问题
    护肝 2 个字应该是搜索词也被分词了,所以护肝被拆成了护和肝 ,这个可以通过 2 种方式解决,一种是用 keyword 进行搜索,这样搜索词不会被分词。 另外一种是指定搜索词的分词器为 ik_smart 这样分的词会尽量的少

    ghostwind

    2

    ghostwind      2024 年 3 月 15 日

    1. 第一个问题的话,你看下是不是汤锅变成了一个实体词。

    2. 之前我们做的时候是 case by case 你把护肝作为一个实体词,不允许拆分。

    PS:单字的搜索可以不优化,因为不准

    3country

    3

    3country      2024 年 3 月 15 日

    @sss15 其实原因就是汤锅没给分词,搜索锅搜索不到,护肝给分成了护和肝

    wu00

    4

    wu00      2024 年 3 月 15 日   ❤️ 1

    es 也有 explain 的自己看一下就知道了
    另外查询时最好也要指定分词器,比如你的关键词是”护肝”,用 A 分词器能分出 3 个词,B 分词器分出 1 个
    1 ,ik_max_word 也无法将"汤锅"拆分出“锅”,自己用_analyze 试下就知道了
    2 ,ik_max_word 可将“护肝”拆分成“护”和“肝”,需要自行维护词库

    3country

    5

    3country      2024 年 3 月 15 日

    @wu00 对于这种场景各大电商平台也是自己维护词库吗?还是说有自研之类的

    996635

    6

    996635      2024 年 3 月 15 日

    关键词:HMM

    wu00

    7

    wu00      2024 年 3 月 15 日

    大厂咱不知道,肯定没这么简单,应该有搜索引擎团队。
    你这种针对分词器维护一下行业词库,最多再做做 BM25 相关度调优就差不多了..

    zakokun

    9

    zakokun      2024 年 3 月 15 日   ❤️ 1

    ES 支持指定 tokenizer 做分词测试,你可以指定你们线上用的 tokenizer ,然后把商品名称输入进去,查看返回分词结果.

    按照你给的例子,第一个情况是分词器把你“汤锅”作为一整个 token ,所以用“锅”搜不到;

    第二个情况是分词器拆分出“护”这个 token ,然后你的关键词也拆出了“护”,所以匹配到了。

    规则和搜索匹配方式都需要开发自己去指定,包括匹配度,还有分词器,停用词,词库什么的,要和产品商量好。

    zakokun

    10

    zakokun      2024 年 3 月 15 日

    @zakokun 当然怎么拆还是看你配置,不一样是这样拆分的,你可以用_analyze 接口,带上你的分词器和查询内容,看看把它分成了什么,再对比你的搜索语句

    chippai

    12

    chippai      2024 年 3 月 15 日

    1. 汤锅是一个词,在 ik-max-word 分完后创建的是一个完整的汤锅索引,所以锅搜不出来
    1.1 将锅加到自定义词典,可以分为汤锅/锅,就可以检索到了
    1.2 对一些单字通过 should 模糊匹配去搜,可以降低一些分值排在后面
    2. 护关节被分为护/关节,护肝分为护/肝,护匹配到了
    2.1 增加护关节、护肝自定义词典,然后使用 ik-smart 去搜索
    通过命令查看 es 是咋分的
    POST _analyze
    {
    "analyzer": "ik_max_word",
    "text": "护关节"
    }

    chippai

    13

    chippai      2024 年 3 月 15 日   ❤️ 1

    2.2 可以先将 query 词使用 match_phrase 函数,然后 should 上 match 函数;增加 match_phrase 的分值权重

    publicWyt

    14

    publicWyt      2024 年 3 月 15 日

    这个时候就要参考一下 PDD 等网站了,搜搜看汤锅,商家的 title 是很大一串的相关锅词汇,目测是为了提高检索的命中,也为了让分词器更精准的分离出关键词,汤锅在_analyze 确实是不会分词到锅,但是平底锅高压锅等乱七八糟的都可以

    matrix1010

    15

    matrix1010      2024 年 3 月 16 日 via iPhone

    商品名这种短字符就别 ik 了,直接单字+2gram