zookeeper-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "David Mollitor (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (ZOOKEEPER-3352) Use LevelDB For Backend
Date Wed, 10 Apr 2019 13:59:00 GMT

    [ 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

View raw message