在我的一个应用程序中,我们需要索引大量数据(30GB)。我们正在使用 SOLR 来索引这些数据。我们的 schema.xml 中有 50 个字段。我正在索引来自不同数据库的数据。
但是在索引所有字段时,数据不可用。所以我们创建了多个核心并分别索引每个核心。
例如:- 使用 Core 0,我们使用单独的查询索引 5 个字段
从对偶中选择 Field1 ,Field2 ,Field3 ,Field4 ,Field5。
Field1 --- 跨核心的公共字段 Field2 --- 在这个核心中被索引的字段 Field3 - 在这个核心中被索引的字段 Field4 - 在这个核心中被索引的字段 Field5 - 在这个核心中被索引的字段
因此,除了上述 5 个字段之外,其余 core0 中的所有字段都将为空。
接下来为核心 1
核心 1 我们使用单独的查询索引 3 个字段
从对偶中选择 Field1 ,Field6 ,Field6。
Field1 --- 跨核心的公共字段 Field6 --- 在这个核心中被索引的字段 Field7 -- 在这个核心中被索引的字段
我们对所有核心使用通用的 schema.xml。
对于查询,我们编写了一个自定义请求处理程序,它分别查询每个核心,然后合并结果。此外,每个核心中的数据将每 3 小时刷新一次。我在 solr4.0 中尝试过部分更新功能,但是索引太费时间……没那么有用
他们有更好的方法/设计来处理这个问题吗?
谢谢,拉维