Details
-
Improvement
-
Status: Open
-
Major
-
Resolution: Unresolved
-
None
-
None
-
None
Description
Allow ZooKeeper server to write the transaction log to multiple drives. I can imagine two different ways of doing this:
- Allow special namespace ZNodes under the root node. Upon creation, the user can specify the location of the log file for all activity under this node.
- Write each transaction out to more than one drive and return an ACK when any of the writes complete. Cancel any pending writes and delete the files that are furthest behind on merge.
- Write each transaction out to more than one drive and obtain a lock on a target drive before each write. If the lock for the first drive is taken, attempt to get the lock on the second drive, and so on, ... combine logs on merge being mindful that one of the transactions may have failed and created a small hole in the middle of the log.