【问题标题】:what is the difference between Titan and Spark-GraphX and which one is the preferred?Titan 和 Spark-GraphX 之间有什么区别,哪个是首选?
【发布时间】:2016-02-02 06:36:31
【问题描述】:

我正在寻找 Titan 和 Spark-GraphX 之间的区别,以及哪个最适合使用。我用谷歌搜索了它,但没有得到关于此的文章

有人能指点一下吗?

【问题讨论】:

    标签: graph-databases titan spark-graphx


    【解决方案1】:

    Apache TinkerPop 项目文档很好地概述了 OLTP 图形工具(图形数据库,例如 Titan)和 OLAP 图形工具(图形引擎,例如 Spark-GraphX)之间的区别。

    这不是哪个(Titan 或 Spark-GraphX)最好的问题,因为它们做的事情不同。

    TItan 支持许多用户同时在一个非常大的图上发出有针对性的查询,其中查询从单个(或仅几个)节点开始,并在返回答案之前对图进行短暂的遍历。

    像 Spark-GraphX 这样的图形引擎是批处理,它检查图形的大部分或全部以获得大局 - 例如聚类算法或最短路径计算。

    最好的图形解决方案通常会同时包含图形数据库和图形引擎。您应该注意的一个有效比较是 TinkerPop SparkGraphComputer 与 Spark-GraphX。

    许多人认为 TinkerPop SparkGraphComputer 是一种优于 GraphX 的图形引擎方法,原因至少有两个:

    1. 使用 TinkerPop 中的 SparkGraphComputer,您可以无缝运行直接从符合 TinkerPop 的图形数据库(如 Titan)中提取的图形引擎算法,为您提供预先集成的图形数据库和图形引擎功能。
    2. SparkGraphComputer 有一个可以说是更好的编程模型来开发自定义算法。除非您喜欢固定算法,否则您必须使用 GraphX 的 Pregel API 来进行自定义算法。

    【讨论】:

    • 但是它说Apache spark graphx 不能很好地扩展,并且适合在静态图上工作。我的问题是,如果我在 Titan db 中有数百万条边和顶点,我能否在 Titan db 上使用 graphx 分布式处理引擎对其进行处理?
    【解决方案2】:

    Titan 是Graph Database 的实现。它与后端(例如 HBase 或 Cassandra)一起使用,用于保存底层数据。

    GraphX 是“用于图形和图形并行计算的 API”。 简单 - GraphX 可用于查询和操作现有数据库,例如 Titan。它本身不存储任何数据。

    【讨论】:

    • GraphX 本身不是和 Titan 一样的图数据库吗?如何将 Titan-cassandra 图形数据库与 GraphX 或 SparkGraphComputer 一起用于图形挖掘、处理和机器学习?
    猜你喜欢
    • 2016-04-08
    • 2022-11-25
    • 2012-12-01
    • 1970-01-01
    • 2014-11-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-16
    相关资源
    最近更新 更多