Description
Investigate the different solution for handling transaction buffer which is causing delete block delay till 1000 ratis transaction is done in SCM,
- SCM flush the db update after 1000 (default) ratis transaction when ratis takes snapshot.
This creates delay, and investicate different mechanism to handlle
3 type of solution as been investigated till now,
- RocksDB BatchWriteWithIndex (
HDDS-7483) - This provides similar performance as BatchWrite currently present, and allow to read the data from batchWrite buffer - Manual WAL flush for rocksDB (HDDS-8469) - This is alternative simpler approach, but current performance comparison is slower, 3-9 times for different scenario
- Timer based solution (
HDDS-7111)- Simpler approach flush on time based if not flushed by Ratis (With additional protection of ratis apply transaction parallel - not present currently), Performance will not be hitted
erose Nibiruxu Can have discuss and conclude, as per recent discussion, approach "3"seems to be simpler with few additional changes.
Attachments
1.
|
RocksDB BatchWriteWithIndex to handle SCM buffer transaction |
|
Resolved | Sumit Agrawal |
2.
|
SCMHADBTransactionBuffer not flushed in time |
|
Resolved | Unassigned |
3.
|
SCMHATransactionBuffer flush based on time |
|
Resolved | Sumit Agrawal |