我在欺诈/反洗钱(反洗钱)领域工作,我们正在探索使用一个图表数据库来挖掘隐藏的连接和链接。我最近阅读了大量的图表数据库(主要是neo4j,但我认为不同产品的概念是相似的?),据我所知,它们似乎非常适合这个领域。问题是,我很难从技术管理层那里买到东西,因为他们似乎认为,我们可以用我们现有的数据报告模型( Hadoop )做同样的事情,基本上是一个数据仓库,它有特定的表,在核心表之间提供多到多个链接表(我认为Kimball称它们为“桥”表?)
在某种程度上,它们似乎提供了与图DB中的关系表相同的功能。考虑到我们已经构建了Hadoop中的链接表,图形数据库会为我们想要做的事情提供任何性能优势(例如,客户A是如何连接到客户B),还是通过构建所有的链接表在很大程度上否定了图DB的任何性能优势?
发布于 2021-03-04 14:57:48
在类似的硬件平台上,当执行“路径间”查询时,关系数据库将永远无法与构造良好的图形数据库保持一致。绝不可能。
每个图形数据库产品都有自己的内部存储表示,但它们基本上都是为了存储节点和边缘,并支持跨这些节点和边缘的导航查询。如果没有新的图形支持特性,关系数据库将很难提供类似图形的功能。
使用本机图形数据库的另一个优点是,图形查询语言专门设计为支持查询之间的路径。在object/DB,一个可大规模扩展和可分布的对象/图形数据库中,我们可以使用DO查询语言来查找两个实体之间的所有路径,以毫秒或秒为单位,找到两个实体之间的所有路径。DO查询可能如下所示:
Match p = (:Account { accountId = "1234"})
-[*..100]->
(:Account { accountId = "5678"})
return p;在这里,我们是说:找到所有的路径(p)从帐户1234到帐户5678,其中他们之间的1到100度之间。
在关系数据库中创建和执行相同的查询要复杂得多(不向数据库添加图形特性),在关系数据库中执行这样的查询将需要更多的资源(内存、cpu、I/O)。
如果您有机会为您的项目探索图形数据库,请确保您了解您的可伸缩性和数据分发需求。这些信息将是选择正确产品的关键。
免责声明:我是客观的外勤业务总监。
https://stackoverflow.com/questions/66467313
复制相似问题