A simple, distributed RDF store in ZooKeeper
Python Shell
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
test
README.md
gk-launch.sh
gk-shutdown.sh
gk.py
graphkeeper.py
ntriples.py

README.md

GraphKeeper - a simple, distributed RDF store in ZooKeeper

GraphKeeper is a simple, distributed RDF store in ZooKeeper. Read the design notes first to get an idea.

Dependencies and configuration

This software has been developed and tested under MacOS Lion. I'm using ZooKeeper 3.3.5 with Python bindings in an Python 2.7.1 environment. I have the following content in conf/zoo.cfg in the ZooKeeper home dir:

tickTime=2000
initLimit=10
syncLimit=5
dataDir=tmp
clientPort=2181

Usage

To launch GraphKeeper you have to initially chmod 755 gk-launch.sh once and set the path to your ZooKeeper installation. Then you can ./gk-launch.sh to fire up ZooKeeper and after which you should see something like:

JMX enabled by default
Using config: /Users/michael/Documents/dev/zookeeper-3.3.5/bin/../conf/zoo.cfg
-n Starting zookeeper ... 
STARTED

Then you can try out GraphKeeper by running:

$ python gk.py test/dataset0.nt 
Set up of GraphKeeper ...

To shut down GraphKeeper you do chmod 755 gk-shutdown.sh once and then you can ./gk-shutdown.sh it.

Todo

  • Payload codec
  • Named graph to znode look-up table
  • TriG parsing

License

The software provided here is in the Public Domain.