V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
Philippa
V2EX  ›  搜索引擎技术研究

关于大量文本搜索的功能要怎么设计

  •  
  •   Philippa · 2020-06-11 01:57:17 +08:00 via iPhone · 4299 次点击
    这是一个创建于 1609 天前的主题,其中的信息可能已经有所发展或是发生改变。

    背景描述:目前有 10 万份到 100 万份单独英语文本,需求是首先抽取每个文本的每个单词出来,二是搜索时能够找出所有包含该关键字的文本出来,并能够对应到行。

    当前想法:的方案是 elasticsearch,分词的话找个 python 库处理一下,有点像个迷你的搜索引擎,但不确定是否需要那么重量级的工具。

    请教:有什么简单又直接又省运维成本的方案?非工作项目,所以全部上云,能不要内存型数据库就不要,能上 serverless 就上 serverless,以降每个月成本压到最低。Java 独有的技术线上不了,Python 、Go 和 JavaScript ( Node )都可以。谢。

    7 条回复    2020-06-12 02:01:17 +08:00
    noqwerty
        1
    noqwerty  
       2020-06-11 03:55:11 +08:00   ❤️ 1
    https://github.com/valeriansaliou/sonic
    这个可以考虑一下?
    Philippa
        2
    Philippa  
    OP
       2020-06-11 04:30:17 +08:00 via iPhone
    @noqwerty 十分感谢!里面介绍使用内存和 cpu 都很少,可运行在 5 刀的服务器上,另还有多种语言的 client 包,非常合适,明天就试试看:)
    love
        3
    love  
       2020-06-11 07:27:56 +08:00 via Android
    mysql?
    rogwan
        4
    rogwan  
       2020-06-11 08:49:29 +08:00 via iPhone
    英文不需要分词库,默认一般就可以吧?
    update
        5
    update  
       2020-06-11 09:03:04 +08:00
    manticoresearch(基于 sphinx)
    sphinx
    Philippa
        6
    Philippa  
    OP
       2020-06-12 01:41:01 +08:00
    @update 谢谢,这个看起来很重,配置有点多
    Philippa
        7
    Philippa  
    OP
       2020-06-12 02:01:17 +08:00
    @love mysql 数据量大了可能撑不住,撑得住也要考虑反应时间,除此之外还有扩展是否容易。

    @rogwan 英语有分词库,而且时态也需要考虑。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2842 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 00:19 · PVG 08:19 · LAX 16:19 · JFK 19:19
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.