Nebula Exchange (Exchange for short) is a tool developed by the Nebula Graph team. It is used to migrate cluster data in bulk from Spark to Nebula Graph in a distributed environment. It supports migration of batch data and streaming data in various formats.
Nebula Exchange v2.0 has just been released. Below is a brief introduction to the latest version.
Features
- Support to import VID of String type
- Support to import data of Null, Date, DateTime, and Time types
- Support to import data from other Hive sources than Hive on Spark
- Added record and retry of the
INSERT
statement failure during the import
Compiling
Nebula Exchange v2.0 depends on the latest Nebula Java Client 2.0, not nebula-client-2.0.0-beta.jar
Compile Nebula Java Client 2.0
$ git clone https://github.com/vesoft-inc/nebula-java.git
$ cd nebula-java
$ mvn clean install -Dmaven.test.skip=true -Dgpg.skip -Dmaven.javadoc.skip=true
After the compiling, you can see the newly generated /com/vesoft/client/2.0.0-beta/client-2.0.0-beta.jar in your local Maven repository.
Compiling Nebula Exchange 2.0
$ git clone https://github.com/vesoft-inc/nebula-spark-utils.git
$ cd nebula-spark-utils/nebula-exchange
$ mvn clean package -Dmaven.test.skip=true -Dgpg.skip -Dmaven.javadoc.skip=true
After the compiling, you can see the newly generated nebula-exchange-2.0.0.jar under this directory nebula-spark-utils/nebula-exchange/target/.
How to Use Nebula Exchange
Please refer to this blog post for how to import data from Neo4j to Nebula Graph with Nebula Exchange.
As to how to configure external Hive data sources, please refer to server_application.conf.