gpt4 book ai didi

elasticsearch - 在具有多个模式的关系数据库上进行全文搜索

转载 作者:行者123 更新时间:2023-12-03 01:45:29 25 4
gpt4 key购买 nike

警告: Solr新手在这里

我有一个具有多个架构的PostgreSQL数据库。每个模式包含几个表。模式通常在表计数方面有所不同,并且表也不一定有太多共同之处。

关于尺寸:

  • 总共我将有几十个到数百个模式
  • 每个架构可能包含约10个表
  • 每个表包含数万行X几百列

  • 我想在整个数据库模式的数据中进行全文搜索。结果,我希望能够识别与搜索词匹配的架构,表和列。

    到目前为止,我自己一直在考虑的SOLR选项很少(我也很乐意提供有关ES解决方案的建议):

    1.创建一个多核,其中每个核代表数据库架构中的表

    这将很好地重用数据库模式,但最终我将拥有数千个我认为滥用的内核。

    2.整理索引,使其涵盖所有可能的值

    我在考虑 super 通用的Solr模式,该模式基本上可以导航到表中的单个单元格。类似于:
    <fields>
    <field name="schema" ... />
    <field name="table" ... />
    <field name="column" ... />
    <field name="row" ... />
    <field name="value" ... />
    </fields>

    在这种情况下,我觉得我可能会误用整个概念,因为值必须是某种通用类型(字符串?),它已经散发出来了:)

    此外,还需要组成ID,但是我了解 should be possible

    对于问题或建议的任何见解,将重点关注文档的哪一部分。

    最佳答案

    随着回应:

    @jeorfevre: the idea is I'll search for a word (like "Jerusalem") and the response needs to navigate me to the schema -> table -> column where this term exists. Being able to identify even row is a plus but not strictly required.



    我建议您使用单词索引而不是行/行全文。
    <fields>
    <field name="schema" ... />
    <field name="table" ... />
    <field name="column" ... />
    <field name="row" ... />
    <field name="myword" ... />
    </fields>

    这将比在solr中对X行进行全文本搜索要好得多。全文是solr中最慢的选项。这种搜索是最好的选择。

    您键入“耶路撒冷”,它将返回所有匹配的结果。
    你对那个怎么想的。比fulltextsearch好,它只会直接打1个单词。

    关于elasticsearch - 在具有多个模式的关系数据库上进行全文搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44398865/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com