Repository navigation
Releases: SamsungDS/xZTL
Release list
v0.6
Release Notes: v0.6
=================
In the released assets, you could find:
- xZTL-v0.6.src.tar.gz - Full source archive (no xNVMe dependencies)
Version 0.6
- The release provids host-managed garbage collection (GC) feature in xZTL
- GC feature is optional by users with the macro ZNS_GC_SWITCH
- Host-managed GC has host resource overhead and impacts the overall performance. It is recommanded to use in space sensative scenarios
- Support RocksDB v6 and v7
v0.5
Release Notes: v0.5
=================
In the released assets, you could find:
- xZTL-v0.5.tar.gz - Full source archive (no xNVMe dependencies)
Version 0.5
- The release as a RocksDB plugin for easier deployment.
- You may select the IO path from the option (thread pool, io_uring, SPDK, etc)
- RocksDB benchmark.sh is available to benchmark RocksDB performance with xZTL
v0.4
Release Notes: v0.4
Among the released assets, you could find:
- xZTL-v0.4.src.tar.gz - Full source archive, no xNVMe dependencies
Version 0.4
There are several major improvements to the performance of xZTL along with some bugs fixed.
-
A number of zones (the default number is 64) is grouped into a zone group (node)
Node 0 Node 1 ... Node N zone 0 zone 64 ... zone X ... ... ... ... zone 63 zone 127 ... zone X+63
- The data placement of SST files of RocksDB has changed. One level SST files of RocksDB are mapped into node (s). When all SST files are deleted of the node, all zones of the node would be reset and reclaimed.
| Level # | Node # |
|---|---|
| Level 0 (SST files of level 0, WAL files) | Node 0, Node 1, Node 4 ... |
| ... | |
| Level N (SST files of level N) | Node 3, Node 2 ... |
-
Meta-data is adapted for data recovery
-
It supports various IO paths through xNVMe, e.g. character abstraction of thread pool/io_uring, block abstraction of thread pool/libaio and SPDK
-
RocksDB benchmark.sh is available to benchmark RocksDB performance with xZTL
-
MyRocks (MySQL with RocksDB engine) and [sysbench tool](https://github.com/akopytov/sysbench) is available to run
Known Issues
- xNVMe backend is hard-coded now, To change the xNVMe backend, we need to change the code in
src/ztl-media.c:znd_media_registerfunction first. - xZTL-based RocksDB uses hybrid storage, ZNS SSD and conventional SSD. SST and WAL files are stored on ZNS SSD and other files are stored on conventional SSD
v0.3.1
v0.3.1
Release Notes: v0.3
Among the released assets, you could find:
xZTL-v0.3.src.tar.gz - Full source archive, no xNVMe dependencies
Known Issues
xNVMe backend is hard-coded now, To change the xNVMe backend, we need to change the code in
src/ztl-media.c:znd_media_registerfunction first.Even RocksDB options
--target_file_size_base, --write_buffer_sizeare set, there may exist the error of oversized file especially in multiple threads. The issue will be fixed in the next patch.