大約 2 分鐘
數據文件存儲
本節將介紹 IoTDB 的數據存儲方式,便于您對 IoTDB 的數據管理有一個直觀的了解。
IoTDB 需要存儲的數據分為三類,分別為數據文件、系統文件以及寫前日志文件。
數據文件
數據文件存儲了用戶寫入 IoTDB 系統的所有數據。包含 TsFile 文件和其他文件,可通過 data_dirs 配置項 進行配置。
為了更好的支持用戶對于磁盤空間擴展等存儲需求,IoTDB 為 TsFile 的存儲配置增加了多文件目錄的存儲方式,用戶可自主配置多個存儲路徑作為數據的持久化位置(詳情見 data_dirs 配置項),并可以指定或自定義目錄選擇策略(詳情見 multi_dir_strategy 配置項)。
系統文件
系統 Schema 文件,存儲了數據文件的元數據信息。可通過 system_dir 配置項進行配置(詳情見 system_dir 配置項)。
寫前日志文件
寫前日志文件存儲了系統的寫前日志。可通過wal_dir配置項進行配置(詳情見 wal_dir 配置項)。
數據存儲目錄設置舉例
接下來我們將舉一個數據目錄配置的例子,來具體說明如何配置數據的存儲目錄。
IoTDB 涉及到的所有數據目錄路徑有:data_dirs, multi_dir_strategy, system_dir 和 wal_dir,它們分別涉及的是 IoTDB 的數據文件、數據文件多目錄存儲策略、系統文件以及寫前日志文件。您可以選擇輸入路徑自行配置,也可以不進行任何操作使用系統默認的配置項。
以下我們給出一個用戶對五個目錄都進行自行配置的例子。
system_dir = $IOTDB_HOME/data
data_dirs = /data1/data, /data2/data, /data3/data
multi_dir_strategy=MaxDiskUsableSpaceFirstStrategy
wal_dir= $IOTDB_HOME/data/wal按照上述配置,系統會:
- 將 TsFile 存儲在路徑/data1/data、路徑/data2/data 和路徑 data3/data3 中。且對這三個路徑的選擇策略是:
優先選擇磁盤剩余空間最大的目錄,即在每次數據持久化到磁盤時系統會自動選擇磁盤剩余空間最大的一個目錄將數據進行寫入 - 將系統文件存儲在$IOTDB_HOME/data
- 將寫前日志文件存儲在$IOTDB_HOME/data/wal