我想知道最好的方法是存储营业时间并检索某个地方现在(或特定时间)是否开放。对于人类来说,Mo-Fr上午9点到下午5点,Sa上午10点到下午2点很好,但是如何让计算机理解并在基于NoSQL /文档的数据库中查询它,如Elasticsearch?
答案 0 :(得分:2)
FWIW:David Smiley(Solr / Lucene大师之一)和我在Solr中提出了一个工作解决方案(在epaper上,至少从未实现过)。如果您每周只需要1个时间段,这可能会有所简化,这可能是您想要的。
http://lucene.472066.n3.nabble.com/Modeling-openinghours-using-multipoints-td4025336.html
问题是,这是基于Solr 4中相当新的空间内容(其中的内容 - >阅读帖子),我很确定它还没有进入ES,但我可能会弄错。
没有guarentees,没有文档:)
一个直截了当的替代方案,如果你每周只有1个时间段,那么就有14个动态字段,代表7个结束时间和7个开放时间,并对正确的字段进行简单的布尔查询。