Translate

Wednesday, January 12, 2011

What is HyperGraphDB?

HyperGraphDB (http://www.hypergraphdb.org/) is a storage framework based on generalized hypergraphs as its underlying data model. Borislav Iordanov is a creator for HyperGraphDB. It originated from an AI project (http://www.opencog.org) and its power is partly in its data model and in its open-architecture framework.

Two unique features of HyperGraphDB:
  1. Higher-order, n-ary relations are unique to HyperGraphDB
  2. Open-architecture: there’s a very strong “frameworky” aspect to HyperGraphDB, it’s not a black box with fixed, restrictive data-model. The storage layout is open and documented. One can plugin customized indexing, customized type handling, customized back-end storage, customized distribution algorithms etc.
A HyperGraphDB database is a generalized graph of entities. The generalization is two-fold:
  1. Links/edges "point to" an arbitrary number of elements instead of just two as in regular graphs.
  2. Links can be pointed to by other links as well.
Feature Summary:
  1. Powerful data modeling and knowledge representation.
  2. Graph-oriented storage.
  3. N-ary, higher order relationships (edges) between graph nodes.
  4. Graph traversals and relational-style queries.
  5. Customizable indexing.
  6. Customizable storage management.
  7. Extensible, dynamic DB schema through custom typing.
  8. Out of the box Java OO database.
  9. Fully transactional and multi-threaded, MVCC/STM.
  10. P2P framework for data distribution.
More I learn about it., more interesting it becomes. Still working on examples. Detailed information is coming up soon.

HyperGraphDB Resources:
  1. Home: http://www.hypergraphdb.org/
  2. Downloads: http://www.hypergraphdb.org/downloads
  3. API Doc: http://www.hypergraphdb.org/docs/javadoc/index.html
  4. Q&A (Faqs): http://www.hypergraphdb.org/learn?project=hypergraphdb&page=QuestionsAndAnswers

No comments:

Post a Comment