Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
riak_mongo is a collection of things necessary to make Riak act like MongoDB to the clients
Erlang
branch: rework

This branch is even with pavlobaron:rework

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
deps
ebin
include
priv
src
test
.gitignore
Emakefile
Makefile
README
rebar
rebar.config

README

riak_mongo makes Riak look like Mongo to clients. In the first step, it will allow Mongo drivers to seamlessly connect to it using Mongo Wire Protocol and to map to the underlying Riak data store. In the next step it also might be interesting to have a Mongo based Riak backend.

Run it in a Riak node instance using:

> riak_mongo:start(temporary, "127.0.0.1", 32323).

I use the low level riak_kv Erlang API to talk to the local store. Right now, you can connect to it from the Mongo shell on the same machine using:

$ mongo --verbose -port 32323 collection

And do some basic commands:

> db.things.findOne()
> db.things.insert({a:1, b:2})

though getLastError is not yet supported.

Buckets in the Riak store must be named like "collection.things" - the prefix is thus the name of the database you connect from the Mongo shell to.

No auth, SSL and no IPv6 are considered yet - the implementiation is growing. Also the beauty of the code can be discussed, but shouldn't be yet.

The very huge task will of course be to understand and translate to Riak all the
mongo commands. But hey, the first step is done.
Something went wrong with that request. Please try again.