[ https://issues.apache.org/jira/browse/ZOOKEEPER-3352?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16814466#comment-16814466 ]
David Mollitor commented on ZOOKEEPER-3352: ------------------------------------------- Ya, my drive here for using a third-party library on this is that ZK should not be writing its own data store. ZK would benefit from a lot of the work that these specialized projects are doing. As a start, I was thinking that the ZK Transaction Log could be replaced with Level/RocksDB. * Compression: faster writes * TTL for each record: TXN log entries expire automatically Since TXN logs are not read that often (as I understand it), the 'read' buffer for the DB would be disabled. However, as an entire database system for ZK, I think these key/value stores are probably a good fit for ZK since they keep everything sorted. For example, for the following znodes, if the storage key is the path, * /service/lock-001 * /service/lock-002 * /service/lock-003 To perform an 'ls' on the {{/service}} ZNode would only require a quick scan > Use LevelDB For Backend > ----------------------- > > Key: ZOOKEEPER-3352 > URL: https://issues.apache.org/jira/browse/ZOOKEEPER-3352 > Project: ZooKeeper > Issue Type: New Feature > Components: server > Reporter: David Mollitor > Assignee: David Mollitor > Priority: Critical > Fix For: 4.0.0 > > > Use LevelDB for managing data stored in ZK (transaction logs and snapshots). > https://stackoverflow.com/questions/6779669/does-leveldb-support-java -- This message was sent by Atlassian JIRA (v7.6.3#76005)