TDengine是taosData的産品,taosData是由陶姓海歸創立的,目測是用自己的姓氏命名的。。。網站:https://www.taosdata.com/
TDengine号稱是專為物料網設計的平台,在我看來就是一個時序資料庫而已,就像influxDB,它也和influxDB進行對比,讀寫速度,存儲空間各方面性能都強于influxDB。
TDengine社群版免費,開源協定是AGPL協定,這個協定要求引用它的産品也遵從AGPL協定,即要将代碼開源出來。
TDengine用C/C++編寫的,在linux上以服務的方式運作,主要控制台指令是taos
TDengine是關系型資料庫,采用類SQL語句可以操作資料庫
TDengine中的資料模型
表(table),要求每個采集裝置單獨建表,且每個表的第一列必須為時間戳類型,為自動為時間戳列建立索引。資料是用列式存儲方式儲存
超級表(stable),可以了解為表(table)的模闆,普通表示超級表的執行個體,建立超級表的時候指定tag則為超級表,tag最少一個,最多六個,tag主要存儲靜态屬性。
TDengine服務主要包含兩大子產品:管理節點子產品(MGMT) 和 資料節點子產品(DNODE)
為了更高效地利用資源,以及友善将來進行水準擴充,TDengine内部對資料節點進行了虛拟化,引入了虛拟節點(virtual node, 簡稱vnode)的概念,作為存儲、資源配置設定以及資料備份的單元。每一個表隻存在于一個vnode中,vnode資源隔離,在磁盤上有獨立的存儲目錄,并且都有緩存。
TDengine寫入資料的流程,最重要的是預寫日志算法,接受到用戶端的資料後會現将資料寫入到預寫日志(什麼東西?)中,然後定時或者當資料量達到一定規模後才會寫入到磁盤中。