soap0X
V2EX  ›  Java

想问个问题传统 Java 站点搜索一般是怎么处理的

  •  
  •   soap0X · Oct 13, 2024 · 3406 views
    This topic created in 595 days ago, the information mentioned may be changed or developed.

    0.因为没有实际的线上经验想了解下线上的技术栈(针对 java 的,网上资料很少)。

    1.之前一段时间学了点基础,但也有很多问题没解决。

    传统的:分词(切词器)+索引(数据结构+索引文件处理)+打分( BM25)

    疑问:常见的错别字+同义词类的处理 索引的更新问题实时和非实时一般都是怎么抉择处理的

    2.还有就是现在的搜索感觉多多少少都会和机器学习挂点勾(学机器学习的话精力和理解跟不上了)

    3.单纯看点 elasticsearch 是否能满足一个垂直站点的需求

    6 replies    2024-10-14 18:30:42 +08:00
    fredcc
        1
    fredcc  
       Oct 13, 2024
    select * from xxx where content like '%aaa%';
    soap0X
        2
    soap0X  
    OP
       Oct 13, 2024 via Android
    @fredcc 用全文检索吗
    liangdi
        3
    liangdi  
       Oct 13, 2024
    elasticsearch/opensearch 当然可以满足,机器配置够的话,这是最简单的方案,性能,功能,扩展性都满足
    soap0X
        4
    soap0X  
    OP
       Oct 13, 2024 via Android
    @liangdi 👌🏻
    ntedshen
        5
    ntedshen  
       Oct 14, 2024
    说起来我上 v2 最初好像就是为了这个事的来着。。。
    N 个前的前司用的 coreseek 已倒闭
    elk 全家桶主要是显著的供过于求
    mysql/mariadb 的 innodb 分词不怎么适配 cjk 大区
    目前在用岛国的 groonga 全家桶,pgroonga 和 mroonga 都是开箱即用。。。
    不过 groonga 基于的 mecab 现在也是十几年没更了,只能说堪用。。。
    soap0X
        6
    soap0X  
    OP
       Oct 14, 2024 via Android
    @ntedshen 谢了,后面了解下
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   2747 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 41ms · UTC 04:47 · PVG 12:47 · LAX 21:47 · JFK 00:47
    ♥ Do have faith in what you're doing.