TinkerPop集成Hadoop+Spark
前言 前面介绍了 TinkerPop集成Neo4j 的配置方法,并且实现了HA操作。这里有一个突出问题就是不管是使用Neo4j,还是自带的TinkerGraph都不可避免的面临一个问题——大数据量场景,也即分布式问题。鉴于此, Tinkerpop 还提供了和Hadoop+Spark的集成解决方案,从而解决单节点问题。但是由于Spark中的数据一致性问题,不能修改数据,所以这种方案不能修改数据,也不能新增数据,只适合用来查询、计算,不得不说这是一个很大的缺点。如果有同学有更好的解决方法,欢迎在下面留言交流。另外,本文的所有操作同样都以Tinkerpop Server 3.4.4为例。 TinkerPop集成Hadoop+Spark 在 Tinkerpop官网 中已经给出了和Hadoop+Spark的集成方法,但是有两个问题。第一,所有的操作都是基于console完成的,没有server的操作步骤;第二,在使用SparkGraphComputer时,master都是local模式,对于使用YARN作为资源管理器的时候,参照官网资料往往是调试不成功的。原因主要有三点: SparkGraphComputer会创建自己的SparkContext,而不是通过spark-submit获取配置信息。 对于Spark运行在YARN上的模式,直到Tinkerpop 3.2.7/3.3.1版本之后才支持