Skip to content
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

Consider mapping of XDI graph to DB records #18

Open
peacekeeper opened this issue Dec 19, 2014 · 0 comments
Open

Consider mapping of XDI graph to DB records #18

peacekeeper opened this issue Dec 19, 2014 · 0 comments
Assignees
Milestone

Comments

@peacekeeper
Copy link
Member

The term "DB record" refers to whatever is the basic unit of storage in a given DB. E.g. "row" in MySQL, "document" in MongoDB, "key/value pair" in BDB, etc.

Current mapping patterns:

  • Whole XDI graph in one DB record (supported by FileWrapperGraphFactory): Perhaps best for small graphs, but not efficient for large graphs.
  • One DB record per XDI context (supported by BDBJSONGraphFactory, RedisJSONGraphFactory, MongoDBJSONGraphFactory): Maybe too granular.
  • One DB record per XDI statement (supported by BDBKeyValueGraphFactory, RedisKeyValueGraphFactory): Probably too granular.

Opportunity for improvement: Hybrid mapping patterns

  • E.g. in general have one DB record per XDI context, but have exceptions for certain well-known XDI features.
  • Link contracts should be stored in a single DB record, rather than having one DB record per XDI context or XDI statement.
  • $ref/$rep relations should probably be stored in a special way, so they can be retrieved efficiently.
@peacekeeper peacekeeper added this to the release-0.7 milestone Dec 19, 2014
@peacekeeper peacekeeper changed the title Re-evaluate mapping XDI graph to DB records Consider mapping XDI graph to DB records Dec 19, 2014
@peacekeeper peacekeeper self-assigned this Dec 19, 2014
@peacekeeper peacekeeper changed the title Consider mapping XDI graph to DB records Consider mapping of XDI graph to DB records Dec 19, 2014
@peacekeeper peacekeeper modified the milestones: release-0.7, release-0.8 Jun 9, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant