Skip to content

[FEATURE] Neo4j Bulk CSV Export (neo4j-admin import) #261

@KaifAhmad1

Description

@KaifAhmad1

Objective

Enable exporting Semantica graphs into Neo4j-compatible bulk CSV format
for use with neo4j-admin import.

Motivation

Bulk CSV import is the fastest and most reliable way to ingest large graphs
into Neo4j without writing Cypher queries.

Functional Requirements

  • Generate node CSV files with:
    • Neo4j-compliant headers
    • Stable node IDs
    • Labels and properties
  • Generate relationship CSV files with:
    • START_ID and END_ID
    • Relationship type
    • Properties
  • Support multiple node labels

Technical Requirements

  • Follow Neo4j bulk import specifications
  • Ensure correct quoting and escaping
  • Deterministic file naming

Tests

  • Unit tests validating CSV structure
  • Header correctness tests
  • Sample import test (dry-run validation)
  • Edge cases:
    • Multiple labels
    • Missing properties

Documentation

  • Provide example neo4j-admin import command
  • Document mapping assumptions

Files

  • semantica/export/neo4j_csv_exporter.py
  • tests/export/test_neo4j_csv_exporter.py

Acceptance Criteria

  • Generated CSVs pass Neo4j import validation
  • Clear documentation for end users

Metadata

Metadata

Assignees

No one assigned

    Labels

    help wantedExtra attention is neededmedium-scopeRequires moderate effort (1–3 days)

    Projects

    Status

    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions