c0lc
V2EX  ›  问与答

TB 数据实时查询的问题

  •  
  •   c0lc · Oct 25, 2024 · 1772 views
    This topic created in 565 days ago, the information mentioned may be changed or developed.

    公司的一个小项目,大概有两个 TB 的数据,一共是有 3 个字段。需要做成一个 api 接口,对其中一个字段前 6 位进行批量的正则匹配查询。用什么数据库和架构可以做到准实时查询和响应,现在数据库是 Duckdb ,查询一次大概在 3 分钟左右,可以提供 2 ~ 3 台高配置( 24 核、128G 机器)。要求尽可能简单、性价比高。

    7 replies    2024-10-25 17:42:10 +08:00
    6HWcp545hm0RHi6G
        1
    6HWcp545hm0RHi6G  
       Oct 25, 2024
    ES
    dzdh
        2
    dzdh  
       Oct 25, 2024
    sagaxu
        3
    sagaxu  
       Oct 25, 2024
    放弃正则匹配
    tf2
        4
    tf2  
       Oct 25, 2024
    一个字段前 6 位正则匹配????

    这玩意应该没那么难吧。
    wei2629
        5
    wei2629  
       Oct 25, 2024
    正则本来就慢, 而且很难利用索引。 好的方式是 根据正则定向优化下。 看这个正则有没有规律,根据正则表达是 建立索引 。
    hhhhhh123
        6
    hhhhhh123  
       Oct 25, 2024
    可以尝试加一个字段 (前 6 位)。 没面对过 TB 级
    Jinnrry
        7
    Jinnrry  
       Oct 25, 2024
    ES +1

    但是你不能用默认的分词,你把你的前 6 位截取出来新建一个字段建立索引(或者你自己自定义一个分词器也行),原字段关闭掉索引
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   1165 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 38ms · UTC 23:25 · PVG 07:25 · LAX 16:25 · JFK 19:25
    ♥ Do have faith in what you're doing.