Following are the classes which has the logic of in-memory and persisting txn logs. It has the apis which would be doing respective functionalities.
Please look into these, probably will get more ideas.
In-mem structure : DataTree.java
Persistence logic : ZkDatabase.java, also refer org.apache.zookeeper.server.persistence for more...
ZooKeeper is using the data elements as records (Record.java interface) and passing it to diff modules as entities.
In your case, it would be CreateTxn, DeleteTxn, DataNode records etc.
Refer this for details about jmx : http://zookeeper.apache.org/doc/r3.4.2/zookeeperJMX.html
From: Prakash [[EMAIL PROTECTED]]
Sent: Wednesday, March 28, 2012 12:26 AM
To: [EMAIL PROTECTED]
Subject: Using zookeeper server as library
I have a requirement, where my servers have to store a data structure
similar to the zookepeer trees. Instead of writing it from scratch, i was
wondering if i can just leverage the existing zookeeper code.
The idea is to just link to the zookeeper.jar and use it locally via
function calls. I dont need the client / server communication part. I dont
need the replication part. I just need the code to create / delete nodes
etc in memory. Persisting it in the log is a plus if can just leverage that
too. The JMX stuff would be a bonus.
Before i go try to do this, i wanted to know if you guys had any thoughts
on this or if there any gotchas i need to look for.