首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >memgraphdb:支持图形数据库中的时间旅行查询

memgraphdb:支持图形数据库中的时间旅行查询
EN

Stack Overflow用户
提问于 2018-11-18 01:01:17
回答 1查看 146关注 0票数 1

假设我想要为一个有销售人员的图表建模。他们属于一个组织,有一个经理,等等。他们被分配到特定的地区和/或客户帐户。您的公司可能会与必须管理的外部合作伙伴合作,以此类推。一个很好的,不平凡的图表。

这张图中的元素一直在变化:销售人员来来去去,或者在组织内部流动,从而改变职责;客户签署合同或取消合同,……

在我的特定用例中,时间点非常重要。上个月底的图表是什么样子的?上一财年末?上周一我们运行作业ABC的时候。例如,上个月底经理的层次结构是什么?上个月底销售人员管理了哪些客户?诸若此类。

在我们的用例中,DELETE不会删除任何内容,但会更新某种end_date。UPDATE不会更新任何内容,但会创建新版本的记录。

我确信我可以将CREATED和START-/END_DATE属性添加到节点和关系中,当然我也可以创建查询。但是这些查询很难编写,而且几乎不可读,到处都是大量重复的where子句。

我希望图形数据库(和它们的图形查询构建器)能让我更容易地进行时间旅行,例如,通过将会话变量设置为时间点,并且为具有开始/结束日期属性的所有节点和引用自动添加所有where子句。对于不具有这些属性的对象,算法应该不会失败,但请考虑满足的条件。

你对这个用例有什么看法,memgraph为这些用例提供了什么帮助?

非常感谢尤尔根

EN

回答 1

Stack Overflow用户

发布于 2018-11-19 21:27:21

据我所知,没有任何图形数据库支持您直接询问的功能类型,尽管如@buda所指出的,您可以对时间序列数据进行建模和查询。我同意@buda所说的,你希望它工作的方式似乎有点不确定,并且非常特定于应用程序,所以我不希望这成为任何数据库的一个功能。

我能想到的最接近开箱即用的支持就是使用一个支持Tinkerpop的数据库和一个PartitionStrategy或SubgraphStrategy来创建你想要的时间的子图,然后根据这个子图进行查询。另一种选择是创建一种特定于领域的语言,以最大限度地减少在查询中需要重复编写代码的次数。

PartitionStrategy

SubgraphStrategy

Domain Specific Languages

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53353469

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档