Does the underlying storage engine in Apache IoTDB use other mature storage engine, like RocksDB, LevelDB or Cassandra? Or it implements its own storage engine from sratch?
2 Answers
Apache IoTDB does not rely on any existing storage engine indeed. In fact, it has its own implementation for the datastore based on a newly developed file format tsfile
(which is related to Apache Parquet). More information on the tsfile
Format can be found here: http://iotdb.apache.org/SystemDesign/TsFile/Format.html
Also for metadata storage, Apache IoTDB relies on its own implementation of the known algorithms / concepts like BTrees, the write ahead log (WAL) or the Raft protocol (in Cluster mode).
In the following picture you see a sketch of the storage engine / architecture of Apache IoTDB taken from http://iotdb.apache.org/SystemDesign/StorageEngine/StorageEngine.html:
TL;DR: Apache IoTDB does not rely on existing projects but implements everything related to its storage engine completely new based on a binary file format for mass data storage.

- 438
- 3
- 13
We build Apache IoTDB from scratch :)
The data file is called TsFile (Time series File), which is optimized for time series data query.
IoTDB engine is built based on TsFile.

- 114
- 1
- 3
- 5
-
Your answer could be improved with additional supporting information. Please [edit] to add further details, such as citations or documentation, so that others can confirm that your answer is correct. You can find more information on how to write good answers [in the help center](/help/how-to-answer). – Community Oct 06 '21 at 07:25