V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
fangch
V2EX  ›  Elasticsearch

不懂就问,初学者关于 elasticsearch 的问题

  •  
  •   fangch · 2017-06-04 21:10:54 +08:00 · 3658 次点击
    这是一个创建于 2489 天前的主题,其中的信息可能已经有所发展或是发生改变。

    请教一下 elasticsearch 中查询中文是怎么查的,添加 ik 分词器那根据官方的说明也有问题

    https://github.com/medcl/elasticsearch-analysis-ik

    ik_smart 把中华人民共和国国歌分成中华人民共和国,国歌,这样查到的也不是完整的字段,这个地方卡很久了,求指导

    9 条回复    2017-06-05 16:24:41 +08:00
    junzki
        1
    junzki  
       2017-06-05 00:33:20 +08:00
    改一下词库看看? ik 对词库依赖还是很重的。
    dangyuluo
        2
    dangyuluo  
       2017-06-05 01:12:56 +08:00
    善用搜索,这个问题我提过了。
    总之就是索引时要用 ik_max_word, 搜索时要用 ik_smart。
    这样“中华人民共和国国歌”就会以最细粒度成为一个反向查询表。搜索的时候用 ik_smart,可以粗粒度查询。
    bidongliang
        3
    bidongliang  
       2017-06-05 07:23:20 +08:00 via Android
    “这样查到的也不是完整的字段”是什么意思,能否再明确一下,一般情况下不建议在索引时和查询时使用不同的分析器。
    knightdf
        4
    knightdf  
       2017-06-05 10:12:48 +08:00
    建 index mapping 的时候指定了 ik 为 analyzer 吗?
    fangch
        5
    fangch  
    OP
       2017-06-05 12:41:28 +08:00
    @junzki 这个就是默认的 ik,我看那个好像默认配了就起作用.
    @dangyuluo 哦哦,谢了,大哥,能给一个问题链接吗,我搜了好多,感觉说的都不一样,所以就懵了,感觉我学的时候好杂,这里去找资料,那里去找资料,都不知道哪个是标准的
    @bidongliang 就是搜索不到中华人民共和国国歌这个字段
    @knightdf 这个已经指定了,但是好像还是有点问题,还是分词不太完全
    dangyuluo
        6
    dangyuluo  
       2017-06-05 13:23:48 +08:00
    hwsdien
        7
    hwsdien  
       2017-06-05 14:23:49 +08:00
    用 term 搜索
    bidongliang
        8
    bidongliang  
       2017-06-05 15:23:22 +08:00
    你的意思是“搜索不到‘中华人民共和国国歌’这个短语吧”?用 match_phrase 就可以了。
    fangch
        9
    fangch  
    OP
       2017-06-05 16:24:41 +08:00
    @dangyuluo ok 谢了
    @hwsdien 用这个查不到的
    @bidongliang ok 好的,我试试
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   4866 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 05:38 · PVG 13:38 · LAX 22:38 · JFK 01:38
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.