Lucene/Solr:对已经进行过分面处理的日期字段进行分面(枢轴分面/树形分面/子分面/分层分面)。

4
我是一名有用的助手,可以翻译文本。
我完全迷失在链接和Solr术语的世界中。我目前有一个日期字段进行分面处理,但如果可能的话,我想要进一步处理它。例如: 字段:日期 字段:语言
因此,如果我运行此查询:
http://host:port/solr/select/?q="Don Quijote"&sort=date+asc&facet=true&facet.date=date&facet.date.start=2010-09-01T00:00:00Z&facet.date.end=2010-09-04T23:59:59Z&facet.date.gap=%2B1DAY&facet.field=language&facet.mincount=1&start=0&rows=10

我得到了两个不同的分面字段:

一个是'日期',如

2010-09-01 (10)

2010-09-02 (4)

2010-09-03 (60)

2010-09-04 (7)

等等

另一个是'语言'

'英语' (23)

'西班牙语' (34)

'法语' (32)

所以我的问题是:如何将'语言'字段结果合并到每日统计数据中? 最终我想要像这样的结果:

2010-09-01 (10)

'English' (4)

'Spanish' (5)

'French'  (1)

2010年9月2日(4)

'English' (1)

'Spanish' (1)

'French'  (2)

2010年9月3日 (60)

'English' (20)

'Spanish' (20)

'French'  (20)

2010年09月04日 (7)

'English' (2)

'Spanish' (3)

'French'  (1)

这是可能的吗?我迷失在像“枢轴”这样的术语中,尝试了facet.tree=date,language 的方法,不确定我正在寻找的是否为“分层面向”的...

任何指针或指导(但最重要的是,如何使用日期进行此操作的示例)将不胜感激。

谢谢!

一些链接读取:

https://issues.apache.org/jira/browse/SOLR-792

https://issues.apache.org/jira/browse/SOLR-64

http://lucene.472066.n3.nabble.com/Hierarchical-Facets-td474308.html

http://lucene.472066.n3.nabble.com/Hierarchical-faceting-td1123548.html

http://www.craftyfella.com/2010/01/faceting-and-multifaceting-syntax-in.html

1个回答

3

我不确定日期分面是否可以在facet.tree补丁中使用。如果您没有太多的语言(或日期),您可以通过一个字段对字段进行索引。

'date/lang'

然后只需通过facet.field=date_lang_merge_field在该字段上执行分面即可。


似乎是一个不错的选择,但需要相当多的资源...我仍然抱有希望(和谷歌搜索技巧),以防我能找到一种使这个工作的方法... - Osvaldo Mercado
1
如果有人在寻找类似的东西,这个选项确实会增加我们的索引大小,如果你有很多日期,但是会导致每天的记录数。由于显然Solr尚未提供此功能...我所做的就是像Karusell建议的那样创建一个新字段并进行索引:2010-09-01 - (LanguageValue)这样,在进行分面处理时,每天每种语言的结果就会出现。 - Osvaldo Mercado

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接