Skip to content

Create Import/Export components for JsonL #1922

Description

@robfrank

Actually ArcadeDB provides importers for different format: xml, neo4j, orientdb.

There's a JsonL exporter that crates dump of the given db in jsonL

{"t":"info","c":{"description":"ArcadeDB Database Export","exporterVersion":1,"dbVersion":"25.1.1-SNAPSHOT","dbBranch":"main","dbBuild":"b863ebbafff70b7272fb8f472ae6f2c904aef7c0","dbTimestamp":"1737038106779"}}
{"t":"db","c":{"name":"performance","executedOn":"2025-01-16 15:49:16.406","executedOnTimestamp":1737038956406}}
{"t":"schema","c":{"schemaVersion":37,"dbmsVersion":"25.1.1-SNAPSHOT","dbmsBuild":"b863ebbafff70b7272fb8f472ae6f2c904aef7c0","settings":{"zoneId":"Europe/Zurich","dateFormat":"yyyy-MM-dd","dateTimeFormat":"yyyy-MM-dd HH:mm:ss"},"types":{"Friend":{"type":"e","parents":[],"buckets":["Friend_0"],"properties":{"id":{"type":"INTEGER","custom":{}}},"indexes":{"Friend_0_613251166865791":{"type":"LSM_TREE","bucket":"Friend_0","properties":["id"],"nullStrategy":"SKIP"}},"custom":{}},"Person":{"type":"v","parents":[],"buckets":["Person_0"],"properties":{"id":{"type":"INTEGER","custom":{}}},"indexes":{"Person_0_613251164602166":{"type":"LSM_TREE","bucket":"Person_0","properties":["id"],"nullStrategy":"SKIP"}},"custom":{}}}}}
{"t":"v","c":{"p":{"id":0},"r":"#6:0","t":"Person","o":["#2:6672","#2:6671","#2:6670","#2:6669","#2:6668","#2:6667","#2:3340","#2:3339","#2:3338","#2:3337","#2:3336","#2:3335","#2:3334","#2:6","#2:5","#2:4","#2:3","#2:2","#2:1","#2:0"],"i":["#2:9999","#2:9979","#2:9959","#2:9939","#2:9919"]}}
{"t":"e","c":{"p":{"id":9537},"r":"#2:161","t":"Friend","i":"#6:339","o":"#6:492"}}
{"t":"e","c":{"p":{"id":9534},"r":"#2:162","t":"Friend","i":"#6:338","o":"#6:492"}}
{"t":"e","c":{"p":{"id":9531},"r":"#2:163","t":"Friend","i":"#6:337","o":"#6:492"}}
{"t":"e","c":{"p":{"id":9528},"r":"#2:164","t":"Friend","i":"#6:336","o":"#6:492"}}
{"t":"e","c":{"p":{"id":9525},"r":"#2:165","t":"Friend","i":"#6:335","o":"#6:492"}}

the JsonLImporter should be able to read the given format.

Implementation hits: reuse the CompressedAny2RIDIndex for rid mapping

Acceptance Criteria

  • should be able to read the format crated by the jsonL exporter
  • comprehensive set of tests is in place
  • able to import big databases

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions