与Arangodb双态

时间:2016-05-13 17:14:18

标签: arangodb bi-temporal

是否有任何模式或示例可用于使用ArangoDB进行双时态建模?我正在评估选择数据库的选项,ArangoDB似乎具有所需的功能。

拉​​斯

1 个答案:

答案 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
 }

但是,如果您可以更详细地了解您的用例,可能会有更精确的答案。