Riak & Zotonic
marc at worrell.nl
Tue Dec 13 05:17:05 EST 2011
We are working on the distributed version of Zotonic (the Erlang CMS), as some know.
We have some home-grown Dynamo like software for the ring-management.
Still I want to do a reality check, as I much prefer to go with more "standard" software.
For Riak we bumped into the following problems with some Zotonic use-cases:
1. It must be safe out of the box. This means:
- Only ports open that are controlled by the Zotonic access control.
- So no Riak APIs (webmachine, protocol buffers, handoff listeners etc.)
Are there configurations for Riak to disable those ports?
2. A very common install is a single machine/node, growing when needed.
We don't want to store three copies of all data on a single machine when that is so common.
Is it possible to tune the riak put/get FSMs to group requests to vnodes on the same node?
Do the vnodes
In that case we might be able to use a special storage engine per node.
3. We have many sites with many tables in a single install.
Think of 20+ sites with 30+ tables.
It must be possible to:
- keeps these tables/data separated
- move all data for one site between servers
How can this be done without having a too big gossip state and how can we keep the data partitioned?
4. We need ad-hoc queries.
I have the impression that the full text and 2i indexing of Riak is problematic for us because:
- we have document based queries (Riak full text is term based)
- many documents have the same terms (think categories etc)
As a solution I think of implementing a SQL backend (PostgreSQL and Sqlite3) with its own commands.
We are doing that already in our own Dynamo trials.
What problems should I expect when following that route?
5. We have services per site, not only per node.
- Is it possible to use more complex service names than just an atom?
6. We are using a Webmachine clone, which is much faster for our use case.
I understand to use our version I need to clone the whole Riak repo and modify rebar.config files, is that correct?
Guess I will have more questions when we do decide to take the Riak route.
More information about the riak-users