【问题标题】:Correct use case of multiple cores in Solr 4Solr 4 中多核的正确用例
【发布时间】:2014-09-21 13:33:32
【问题描述】:

我们的项目使用 Solr 4.8。

一位同事在同一实例中创建了 2 个内核来索引来自同一来源的 80GB 文档 XML。他说一个核心最多可以包含 50GB 的索引数据,所以我们将 80GB 拆分为 2 个核心。这些核心具有相同的配置文件和架构。 对于索引,他将奇数文档放在第一个核心中,将偶数文档放在第二个核心中。 对于搜索,他使用 SolrJ API 之一来查询来自每个核心的所有文档。

由于我们只有一台服务器,因此项目没有申请分发和复制。

我的问题:这个架构是 Solr 多核的正确用例吗?有人有什么建议吗?

【问题讨论】:

    标签: solr multicore


    【解决方案1】:

    您应该创建 solrcloud,它会自动在分片之间分配数据,而不是存储两个索引并手动管理在不同核心上的文档存储。它还允许您将数据分布在多台机器上。

    它也会让你的性能更好,查询会更容易,你也可以添加多个集合(具有不同的架构)。

    【讨论】:

    【解决方案2】:

    您应该使用具有 2 个分片的集合的 Solr Cloud。看看https://cwiki.apache.org/confluence/display/solr/SolrCloud

    【讨论】:

      【解决方案3】:

      通常创建核心以区分不同集合实体格式的应用程序数据。 将核心数据从较低版本迁移到较高版本通常会变得有用。你可以在 solr 中有很多内核。假设您从两个不同的来源收集数据,例如一个来自 X 来源,另一个来自 Y 来源,我们通常会将它们存储在 2 个单独的核心中。

      在您的情况下,最好在同一组数据集上使用 2 个内核,因为内存限制很大。通常一个内核可以容纳大量的内存。在我看来,这只是你的资源能力的问题(RAM 和 HDD 等硬件配置)

      【讨论】:

        猜你喜欢
        • 2013-08-06
        • 2023-03-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-02-12
        • 1970-01-01
        相关资源
        最近更新 更多