是否有任何模式或示例可用于使用ArangoDB进行双时态建模?我正在评估选择数据库的选项,ArangoDB似乎具有所需的功能。
拉斯
答案 0 :(得分:1)
不,我们目前还不知道在Arangodb中如何做到这一点的现有例子。
然而,阅读the code project article about Bitemporal Database Design你会在ArangoDB中做类似的事情 - 有两个属性,包括开始日期和结束日期。
然而,这种方法的问题在于,您无法在一个跳过列表索引中组合两个属性的范围。通过将start属性的范围指定在查询范围内,可以解决此问题。然后,第二个过滤器将对不符合结束时间戳的文档进行分类:
FOR item IN testCollection
FILTER item.startTime < @startTimeMin AND item.startTime > @startTimeMax
FILTER item.endTime < @endTimeMax
RETURN item
使用绑定值:
{
startTimeMin: '2016.01.15',
startTimeMax: '2016.01.30',
endTimeMax: '2016.01.25
}
但是,如果您可以更详细地了解您的用例,可能会有更精确的答案。