Skip to content
This repository has been archived by the owner on Dec 6, 2022. It is now read-only.

Specifying graph builder's JSON format #21

Closed
wanderer opened this issue Apr 19, 2017 · 3 comments
Closed

Specifying graph builder's JSON format #21

wanderer opened this issue Apr 19, 2017 · 3 comments
Labels
closed for archival kind/support A question or request for support P2 Medium: Good to have, but can wait until someone steps up status/ready Ready to be worked

Comments

@wanderer
Copy link
Member

There might be a usecase for making the JSON format that ipld-graph-builer uses a specification. It would be usefully for doing things like partial or full dumps and imports of graphs. Also it could be used in ethereum for state imports. Related

@cdetrio @diasdavid

@daviddias
Copy link
Member

I believe there are some indeed :) We've been discussing and evaluating the possibility of having several layouts in addition to the several chunkers options that we currently support on the fly.

Currently, unixfs-engine, which is a graph-builder in itself, supports 3 different layouts for files: balanced, trickle and flat, and two layouts for directories: sharding and non sharding. Plus, files can have several chunkers (tar, zip, fixed-size, etc). This project is currently known as DEX (Data Importers / Exporters) and several people showed interest on it, it matches super well with IPLD transformations too.

Notes of these discussions:

//cc @pgte @jbenet @nicola

@wanderer
Copy link
Member Author

cool thank @diasdavid so i think the above issues are a bit different (let me know if im wrong here!). We already know the DAG structure, so we don't need to chuck the file or anything. We are assuming that data has already been merklized and turned into a DAG.

The goal here:

  1. to have a JSON dump that is human readable.
  2. to have full OR partially imports for example, lets say I have 90% of the graph already and just need to patch in a small update
    example:
update.json
{
   "alreadyHaveThisBranch": {
       "/":   "zdpuB3eZFjLEhDGiCaawbLyu56QfHGBNmr1zmZTkakCBpDFfE"
    },
   "newStuff": {
      "options": {
           "format": "dag-cbor",
          "hashAlg": "sha2-256"
       }
      "/": {
          "some": {
             "new": "data"
           }
       }
   }
}

@daviddias daviddias added status/ready Ready to be worked and removed status/ready Ready to be worked labels Oct 13, 2017
@daviddias daviddias added status/ready Ready to be worked kind/support A question or request for support P2 Medium: Good to have, but can wait until someone steps up labels Jan 25, 2018
@rvagg
Copy link
Member

rvagg commented Dec 6, 2022

closing for archival

@rvagg rvagg closed this as completed Dec 6, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
closed for archival kind/support A question or request for support P2 Medium: Good to have, but can wait until someone steps up status/ready Ready to be worked
Projects
None yet
Development

No branches or pull requests

3 participants