[
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)