【发布时间】:2014-12-25 17:40:49
【问题描述】:
我们有 4 个不同的数据集,并希望对它们执行分面搜索。 我们目前正在使用 SolrCloud 并在将它们索引到 Solr 之前将这些数据集展平。尽管我们有关系数据,但我们的主要目标是分面搜索,而 Solr 似乎是正确的选择。
我们数据的粗略结构:
Dataset1(col1, col2, col3,col4)
Dataset2(col1,col6,col7,col8)
Dataset3(col6,col9,col10)
扁平化数据集:dataset(col1,col2,col3,col4,col6,col7,col8,col9,col10)。
最后,我们将它们展平,使其具有一个共同的结构,并在不存在值的地方具有空值。到目前为止,Solr 效果很好。
问题:现在我们有额外的数据集进来,每个数据集大约有 50-60 列。从技术上讲,我仍然可以将这些变平,但我认为这不是一个好主意。我知道我可以为每个数据集提供具有不同模式的不同集合。但是,我们对这些文档执行分组,所以我们需要一个模式。
有没有什么方法可以在一个集合下维护具有模式字段子集的文档而不将它们展平?如果没有,是否有更好的解决方案来解决这个问题?
例如:
DocA(field1, field2) DocB(field3,field4).
Schema(field1, field2, field3, field4).
我们可以在具有上述架构的一个集合下拥有 DocA 和 DocB 吗?
我们的后端位于 Cloudera Hadoop(CDH4.6 和 5.2)发行版之上,我们可以选择任何属于 Hadoop 生态系统的工具作为可能的解决方案。
【问题讨论】:
-
您的问题得到答案了吗?如果你能分享它会很棒。我也在找一样的。
标签: search hadoop solr faceted-search solrcloud