-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: CARv2 MultiIndex #63
base: main
Are you sure you want to change the base?
Conversation
|
||
## Abstract | ||
|
||
A multi-index is a CARv2 index format that allows multiple CARv2 indexes to be grouped together in a single index. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I may be missing something and/or this might grow on me, but there's a pedant inside me saying that when we talk about multi* things in the IPFS ecosystem (ie, multihash, multiaddress) we're usually talking about a string of bytes that may be one of a number of different formats, and so when I glanced at this the first thing I thought was "oh this is about a thing that lets you disambiguate different strings of bytes that represent encoded indices" rather than "this is a thing that concatenates different indices together."
Not remotely a blocker, but might be worth clarifying or trying to find a different name - at the very least I just want to confirm that this isn't a multi* thing in the sense of multihashes or multiaddresses, is that right?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not remotely a blocker, but might be worth clarifying or trying to find a different name - at the very least I just want to confirm that this isn't a multi* thing in the sense of multihashes or multiaddresses, is that right?
Yes that is correct - I'm open to a better name suggestion 🙂
CombinedIndex
, AggregateIndex
...? ...not sure. Want to express that it's not just a joining, since it also carries information about what CAR each index pertains to.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a good feedback, I also thought about the naming creating some confusion. Could DagIndex
or would we want to use this out of the context of representing a Dag? I think that naming could work well given it can be an index for either a root CID having all its blocks, as well as sub-dags that could be optimized.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@travis I could get behind ZordIndex
...
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
CombinedIndex
- join or merge to form a single unit or substanceCompositeIndex
- made up of several parts or elementsCompoundIndex
- a thing that is composed of two or more separate elements
Would be good to get a name sorted - I'd like to merge this as we're using it in production for rollup indexes in freeway.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
ShardedDAGIndex
- for when a DAG is sharded amongst multiple CARs
A multi-index is a CARv2 index format that allows multiple CARv2 indexes to be grouped together in a single index.