想问一下图数据库neo4j和spark下面的graphx有什么区别?
neo4j是一个数据库(可以理解为类似于hbase的东西,但是neo4j几乎是一个独立的数据库。与hbase不同,hbase的数据存储在hdfs上,由hdfs进行维护。hdfs将数据存储在exfat和其他独立文件系统上。
neo4j将数据直接格式化到独立的文件系统。每个服务器都存储完整的图形数据。graphx是一个计算引擎(类似于mapreduce)。它的数据是使用sql从shark读取的,或者rdd操作符从文件读取,然后直接计算。另外,数据库和计算引擎都可以执行计算任务,但数据库的接口相对较弱,只支持简单的查询,计算引擎提供了强大的计算接口,便于编程。pagerank和其他的图形算法很容易实现。graphx应该更便于数据挖掘。由于有几个通用编程端口,neo4j需要编写自己的代码。编程很麻烦,但在性能上可能有优势
图形数据库中的每个对象都是一个节点,它们之间的关系是一条边。与关系数据库相比,图形数据库能够处理大量复杂的、互联的、低结构的、变化迅速的、需要频繁查询的数据。在关系数据库中,这些查询会导致大量的表连接,从而导致性能问题,不便于设计和使用。
图形数据库适用于社交网络、推荐系统和其他侧重于构建关系图的系统。
图形数据库的代表有neo4j、flockdb、infogrid、allegrograph、graphdb等。
原文标题:图数据库应用 想问一下图数据库neo4j和spark下面的graphx有什么区别?,如若转载,请注明出处:https://www.saibowen.com/news/23879.html
免责声明:此资讯系转载自合作媒体或互联网其它网站,「赛伯温」登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,文章内容仅供参考。