My current project does something similar. There's a single hierarchical, consistent, scalable database, and a library of distributed systems primitives that implement everything, from RPC to leader election to map/reduce, through database calls.
All other services are stateless. I just shoot the thing and redeploy, and it only costs me an acceptable few seconds of downtime.
All other services are stateless. I just shoot the thing and redeploy, and it only costs me an acceptable few seconds of downtime.