在lucene中搜索日期可用性的最佳方法

在lucene中搜索日期可用性的最佳方法,lucene,date-range,Lucene,Date Range,我有一个场景,其中我有一个对象,该对象与可用性属性关联。我将一个月内的日期编码为32位二进制,1表示可用,0表示不可用。现在我想搜索在一定日期范围内可用的对象。我怎样才能最好地与lucene合作 也许更好的存储方式是: available_on=20111028 available_on=20111029 其中,日期编码为整数,每个可用日期对应一个字段。然后可以使用NumericRangeQuery搜索可用性范围 如果做不到这一点,我想您可以编写一个过滤器,逐级检查用于位字段的每个值,然后选择

我有一个场景,其中我有一个对象,该对象与可用性属性关联。我将一个月内的日期编码为32位二进制,1表示可用,0表示不可用。现在我想搜索在一定日期范围内可用的对象。我怎样才能最好地与lucene合作

也许更好的存储方式是:

available_on=20111028
available_on=20111029
其中,日期编码为整数,每个可用日期对应一个字段。然后可以使用NumericRangeQuery搜索可用性范围


如果做不到这一点,我想您可以编写一个过滤器,逐级检查用于位字段的每个值,然后选择设置了一个必需位的值。

我正在考虑过滤器部分。这是一个好方法吗?在实现前一种方法时,您将有太多的条目,对吗?因此,如果它在10月份完全可用,您将有31个条目。这是一个好方法吗?多值字段中的nr值真的没有问题。。您可能也会在date上过滤查询FQ,并且只有使用不同值的nr,可用性才会快速缓存。只需确保您只需要有可用性信息,而不需要与每个可用性日期相关的一些数据,如定价。筛选在编制索引之前进行。。那么,在这种特殊情况下,它如何在我的搜索中发挥作用呢?或者我们可以添加自定义搜索方法吗?