Skip to main content

No project description provided

Project description

Neo4j Nodestream Plugin for Nodestream

This plugin provides a Nodestream interface to Neo4j.

Installation

pip install nodestream-plugin-neo4j

Usage

# nodestream.yaml
targets:
  neo4j:
    database: neo4j
    uri: bolt://localhost:7687
    username: neo4j
    password: neo4j
    database_name: neo4j # optional; name of the database to use.
    use_enterprise_features: false # optional; use enterprise features (e.g. node key constraints)

Extractor

The Neo4jExtractor class represents an extractor that reads records from a Neo4j database. It takes a single Cypher query as input and yields the records read from the database. The extractor will automatically paginate through the database until it reaches the end. Therefore, the query needs to include a SKIP and LIMIT clause. For example:

- implementation: nodestream_plugin_neo4j.extractor:Neo4jExtractor
  arguments:
    query: MATCH (p:Person) WHERE p.name = $name RETURN p.name SKIP $offset LIMIT $limit
    uri: bolt://localhost:7687
    username: neo4j
    password: neo4j
    database_name: my_database # Optional; defaults to neo4j
    limit: 100000 # Optional; defaults to 100
    parameters:
      # Optional; defaults to {}
      # Any parameters to be passed to the query
      # For example, if you want to pass a parameter called "name" with the value "John Doe", you would do this:
      name: John Doe

The extractor will automatically add the SKIP and LIMIT clauses to the query. The extractor will also automatically add the offset and limit parameters to the query. The extractor will start with offset set to 0 and limit set to 100 (unless overridden by setting limit) The extractor will continue to paginate through the database until the query returns no results.

Concepts

Migrations

The plugin supports migrations. Migrations are used to create indexes and constraints on the database.

As part of the migration process, the plugin will create __NodestreamMigration__ nodes in the database. This node will have a name property that is set to the name of the migration.

Additionally, the plugin will create a __NodestreamMigrationLock__ node in the database. This node will be exit when the migration process is running and will be deleted when the migration process is complete. This is used to prevent multiple migration processes from running at the same time.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nodestream_plugin_neo4j-0.15.0a5.tar.gz (15.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nodestream_plugin_neo4j-0.15.0a5-py3-none-any.whl (19.2 kB view details)

Uploaded Python 3

File details

Details for the file nodestream_plugin_neo4j-0.15.0a5.tar.gz.

File metadata

File hashes

Hashes for nodestream_plugin_neo4j-0.15.0a5.tar.gz
Algorithm Hash digest
SHA256 b7c316b6bb03435cc6f824cd9d08d4311d1e39310bb012cf06b8ef90b224fb2c
MD5 f3a4bcc2f24673d498ea5adc54e1ca25
BLAKE2b-256 77a09de9f4329531313c44b0b4c2b94bbbcaf5d1dd81d37e216a7ab7ab2961fd

See more details on using hashes here.

Provenance

The following attestation bundles were made for nodestream_plugin_neo4j-0.15.0a5.tar.gz:

Publisher: release.yaml on nodestream-proj/nodestream-plugin-neo4j

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file nodestream_plugin_neo4j-0.15.0a5-py3-none-any.whl.

File metadata

File hashes

Hashes for nodestream_plugin_neo4j-0.15.0a5-py3-none-any.whl
Algorithm Hash digest
SHA256 e829d44c150f97bf05206c30fc6586c261e95315d30bbe2d1ff845c566ab5cba
MD5 39c9b9f102cbb0e3430fdb411fcb0e77
BLAKE2b-256 619d9f2fbdf0d50bdbf79f77fe2448c2bdfe6b7e752b3e9ed6d48cc618ea074b

See more details on using hashes here.

Provenance

The following attestation bundles were made for nodestream_plugin_neo4j-0.15.0a5-py3-none-any.whl:

Publisher: release.yaml on nodestream-proj/nodestream-plugin-neo4j

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page