這種列儲存檔案格式專為滿足物聯網的獨特需求而設計,旨在減少網路傳輸和雲計算資源的消耗。
翻譯自 tsfile: A Standard Format for IoT Time Series Data,作者:Susan Hall。 tsfile 專案已達到 10,提交正在努力使其成為 Apache 軟體協會內的乙個獨立專案。
TSfile 是一種列儲存檔案格式,專為時間序列資料而設計,採用先進的壓縮技術,可最大限度地減少儲存空間、高吞吐量讀寫能力,以及與 Apache 專案 Spark 和 Flink 等處理和分析工具的深度整合。 例如,隨著工業物聯網的發展,單個風力渦輪機會產生大量資料。 根據該項目的GitHub頁面,“特別是當物聯網進入工業網際網絡時,智慧型裝置產生的資料比面向消費者的物聯網多一兩個數量級”,獲得可操作的見解變得更加複雜。 它指出,TSfile 旨在支援“每秒多達數千萬個資料點的高吞吐量攝取,僅用於稀疏更新以糾正低質量資料; 資料密集打包,長期歷史資料深度壓縮; 傳統的順序查詢和條件查詢、複雜的探索性查詢、訊號處理、資料探勘和機器學習。 ”
TSfile 是 Apache IoT 時序資料庫的基礎儲存檔案格式。 iotdb代表了中國清華大學軟體學院十多年的研究成果。 2020年成為Apache軟體協會的頂級專案。 “在TSFILE出現之前,時間序列資料缺乏標準的檔案格式,使資料收集和處理變得複雜。 專案委員會發言人鄭鵬程在一封電子郵件中說。
通過TSFILE,使用者可以在IoTDB中進行可移植的資料解除安裝和載入,使底層資料的管理和遷移更加靈活。 即使沒有資料庫,使用者也可以直接使用 SDK 從 TSFILE 中讀取資料,實現一些輕量級的資料讀寫場景。 ”
使用者可以將資料寫入終端裝置或閘道器中的TSFILE,然後將其傳送到雲端,以IotDB或其他統一管理系統。 它本身不是乙個資料庫,而是一種通過壓縮和高效儲存來減少雲端網路傳輸和計算資源消耗的格式。
TSfile 可以儲存來自單個裝置或多個裝置的時間序列。 雖然來自多個裝置的資料儲存在乙個 tsfile 中,但每個裝置都有自己的儲存引擎,因此與傳統資料庫一樣在物理上是隔離的。 資料按時間維度索引,提高查詢效能,實現時序資料的快速篩選和檢索。
在 IotDB 中,它同時支援事務處理 (OLTP) 和分析處理 (OLAP),而無需將資料重新載入到不同的儲存中。
IoT 原生資料模型將來自裝置和感測器的時間序列資料組織到日誌結構合併樹中,以適應延遲的資料到達,使其適用於寫入密集型工作負載。 對於較短的延遲,資料首先快取在 memtables 中,然後重新整理到 tsfiles 中。
TSfile 允許使用者直接寫入資料,無論是否預定義的架構和過濾器,而新版本增加了對更多資料型別和演算法的支援。 儘管最初是用 J**a 編寫的,但根據 Zheng 的說法,對多種語言的 tsfile 實現的需求正在增長,例如 C++、Go 和 Rust。 其使用者通常在高效資料儲存、快速訪問和分析至關重要的場景中工作,例如物聯網、智慧型控制系統、財務分析和日誌分析。
他指出,TSFaffe 因其專注於時間序列資料的獨特需求而脫穎而出。
過去,企業通常以各種使用者定義的檔案格式編寫時間序列資料,缺乏統一性,或者使用常見的列式檔案格式,如 [Apache Project] Parquet 和 ORC,這使得資料收集和處理變得複雜,沒有標準。 “TSFafile 提供了諸如長期歷史資料的深度壓縮、高吞吐量和處理罕見更新等優勢。 它與IoTDB和其他系統整合的能力進一步凸顯了其優勢。 使用者可以在嵌入式裝置或閘道器上寫入 TSfile 資料,然後將 TSFILE 直接傳輸到雲端,而無需傳統的 ETL [提取、轉換、載入] 過程。 這樣,減少了雲端的網路傳輸和計算資源需求。 “未來,委員會希望讓 TSFaffe 成為乙個獨立的專案,擁有自己的 SDK 和更易於使用的文件,增加對更多語言的支援,在 TSBog 中整合更多的編碼和壓縮方法,並提供更多視覺化、解析和修復工具等工具。 “然而,這些計畫並不是不可撤銷的,因為我們是以Apache的方式進行合作的,每次討論新的見解時,都可能有助於修改和優化,”鄭先生說。
蘇珊·霍爾(Susan Hall)是《新堆疊》(The New Stack)的贊助編輯。 她的工作是幫助贊助商為他們的貢獻獲得盡可能廣泛的讀者群。 她從《新堆疊》的早期就開始寫作,等等。 閱讀更多關於蘇珊·霍爾的資訊。