Skip to main content
Version: 1.0.0

Neo4j

Certified

Important Capabilities​

CapabilityStatusNotes
Detect Deleted Entities✅Optionally enabled via stateful_ingestion.remove_stale_metadata

CLI based Ingestion​

Starter Recipe​

Check out the following recipe to get started with ingestion! See below for full configuration options.

For general pointers on writing and running a recipe, see our main recipe guide.

source:
type: 'neo4j'
config:
uri: 'neo4j+ssc://host:7687'
username: 'neo4j'
password: 'password'
env: 'PROD'

sink:
type: "datahub-rest"
config:
server: 'http://localhost:8080'

Config Details​

Note that a . is used to denote nested fields in the YAML recipe.

FieldDescription
password ✅
string
Neo4j Password
uri ✅
string
The URI for the Neo4j server
username ✅
string
Neo4j Username
env ✅
string
Neo4j env
stateful_ingestion
StatefulIngestionConfig
Stateful Ingestion Config
stateful_ingestion.enabled
boolean
Whether or not to enable stateful ingest. Default: True if a pipeline_name is set and either a datahub-rest sink or datahub_api is specified, otherwise False
Default: False

Integration Details​

Neo4j metadata will be ingested into DataHub using CALL apoc.meta.schema() YIELD value UNWIND keys(value) AS key RETURN key, value[key] AS value;
The data that is returned will be parsed and will be displayed as Nodes and Relationships in DataHub. Each object will be tagged with describing what kind of DataHub object it is. The defaults are 'Node' and 'Relationship'. These tag values can be overwritten in the recipe.

Metadata Ingestion Quickstart​

Prerequisites​

In order to ingest metadata from Neo4j, you will need:

  • Neo4j instance with APOC installed

Code Coordinates​

  • Class Name: datahub.ingestion.source.neo4j.neo4j_source.Neo4jSource
  • Browse on GitHub

Questions

If you've got any questions on configuring ingestion for Neo4j, feel free to ping us on our Slack.