Comments (4)
Seems that I missed that issue, sorry. There are no proper documentation for Irmin yet, but I plan to write a one in the next weeks (before the mirage 2.0 release).
The data is organised as a prefix tree (ie, a filesystem-like), with the natural corresponding queries (ie. get all the subdirs of a given path). More complex queries will depend on the underlying data-structures. For instance, you can encode persistent queues and efficiently query the head of queue, see https://github.com/samoht/merge-queues
Which kind of queries are you interested in ?
from irmin.
Hi, no problem! Thanks for the reply! Its good to know the next mirage release is so close!
After exploring the code and the examples I am gradually starting to understand the core principles of the database. The way it uses Git on the storage level and the way views provide partial representation of the database paths.
I started experimenting with Irminsule to build a storage backend for a knowledge graph. My idea is to represent the user data as a graph with items and relations between them. In the same fashion it's done in graph-based and ontology-based databases.
As you said, the queries that are not hierarchical by nature need to be adapted to the underlying data structure.
How would you advise to model the graph data structure on top of Irminsule? Do you think a custom view could be the good way to go?
from irmin.
Closing. The latest post on the mirage blog provides a good description of the architecture. After reading it I understand that my last question is out of the scope of the project.
from irmin.
It's not entirely out of scope -- you could build the knowledge graph representation on top of the basic DAG structure that Irmin exposes. One advantage (for example) might be that index branches could be updated in lock step with insertions, so that a client can pull a search index of the graph that's consistent with the graph itself.
from irmin.
Related Issues (20)
- irmin-pack: handle LRU purge in read-only instances after a GC
- Invalid conduit source address specified HOT 2
- irmin-pack: improve control file's atomic write properties HOT 1
- irmin-pack: extend GC to unlimited history stores HOT 1
- irmin-pack: integrity check doesn't use ppf for results handling
- index: readonly index creates a folder
- irmin-pack: Unlink can be slow HOT 1
- irmin-pack: change the default indexing strategy
- irmin-pack: clean up OS-specific output for integrity check logging
- irmin-cli: change `--store irf` to `--store fs`
- irmin-cli creates broken git repository HOT 10
- irmin-pack: implement `fresh` for lower layer
- Performance issue in Tree.length HOT 1
- Pack_error: "Invalid_argument" when calling `integrity-check-index` command
- invalid checksum when using irmin-pack HOT 1
- irmin-pack: error `unknown inode key`
- Tutorial - CLI- GraphQL snippet HOT 1
- libirmin fails to build with OCaml 5.2 HOT 1
- calling `Tree.fold` raises strange error "exception Invalid_argument("error expected JSON text (JSON value)")" HOT 2
- GraphQL / Irmin OCaml / Javascript
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from irmin.