1、快速搭建一超高性能的時序空間大數據處理平臺快速搭建一超高性能的時序空間大數據處理平臺u 時序空間數據特點u 現有方案的弊端u TDengine基本介紹u 如何應對每天都在變化的大數據分析需求u 機械設備監測數據的實時計算大數據時代數據采集后被源源不斷的發往云端+物聯網、工業4.0的技術鏈傳感器數據采集通訊模組邊緣計算云數據引擎(存儲查詢計算)分析應用系統所有采集的數據都是時序的數據都是結構化的一個采集點的數據一定是它產生的數據很少有更新或刪除操作數據一般是按到期日期來刪除的物聯網、工業4.0數據特征:時序空間數據采集的數據量巨大,但有典型特征:數據以寫操作為主,讀操作為輔數據流量平穩,可以較為
2、準確的計算數據都有統計、聚合等實時計算操作數據一定是指定時間段和指定區域查找的數據量巨大,一天的數據量就超過100億條12346789510通用的解決方案將開源的Kafka,Redis,Hbase,MongoDB,Cassandra,ES,Hadoop,Spark,Zookeeper等大數據軟件拼裝起來,利用集群來處理海量數據。面臨的挑戰開發效率低因牽涉到多種系統,每種系統有自己的開發語言和工具,開發精力花在了系統聯調上,而且數據的一致性難以保證運行效率差非結構化數據技術來處理結構化數據,整體性能不夠,系統資源消耗大。因為多套系統,數據需要在各系統之間傳輸,造成額外的運行代價運維復雜每個系統都
3、有自己的運維后臺,帶來更高的運維代價,出問題后難以跟蹤解決,系統的不穩定性大幅上升應用推向市場慢集成復雜,得不到專業服務,項目實施周期長,導致人力攀升,利潤縮水TDengine應運而生TDengine 提供的功能消息隊列緩存流式計算訂閱數據庫完整的時序空間數據處理引擎TDengine 技術亮點快10倍的插入和查詢通過創新的存儲設計,并采用無鎖設計和多核技術,讓數據插入和查詢的速度比現有專業的時序數據庫提高了10倍以上超融合將大數據處理需要的消息隊列、緩存、數據庫、流式計算、訂閱等功能融合在一起,提升運行效率,保證整個系統的數據的一致性更高的水平擴展能力通過先進的集群設計,保證了系統處理能力的水
4、平擴展,而且讓數據庫不再依賴昂貴的硬件和存儲設備,不存在任何單點瓶頸和故障零學習成本使用標準的SQL語法,并支持JDBC,ODBC,REST接口,應用API與MySQL高度相似,讓學習成本幾乎為零極低的資源消耗整個完整安裝包才1.2M,內存的最低要求不到1M,計算資源不到通用方案的1/5。通過列式存儲和先進的壓縮算法,存儲空間不到傳統數據庫的1/10。零運維管理成本追求極致的用戶體驗,將復雜的運維工作完全智能化。無需分庫分表,數據備份、數據恢復完全自動;擴容、升級、IDC機房遷移輕松完成云服務或硬件成本不及通用方案的1/10研發成本大幅降低,無需培訓、無需集成其他軟件零管理,后期運營管理成本大
5、幅下降硬件云服務成本研發成本運營成本TDengine 整體成本優勢對比測試完整對比測試報告,請參閱:對比測試完整對比測試報告,請參閱:充分利用物聯網數據特點對于一個數據采集點而言,只有一個寫結構化數據s時序的。不基于任何開源產品,C/C+開發了存儲引擎集群調度、管理計算模塊SQL解析。TDengine 性能指標為何這么出眾量身定制只為物聯網數 據而設計不適合電商、社區、ERP、CRMTDengine 系統結構V0V1V3dnode 7V0V1V3M0V0V1V3V2V0V1V3V2dnode 0V0V1V3V2dnode1 dnode 2dnode 3V0V1V2dnode 4V0V1M1V2
6、dnode 5V0V2V3V1dnode 6M2V3完全無中心化設計使用KV或關系型DB,在多個數據采集點存在的情況下難以保證一個采集點的數據在內存或硬盤上的連續性TDengine,一個采集點的數據在一個塊里是連續存放的,塊的大小可配置采取Block Range Index,可快速定位要查找的數據所處的塊0 1 2 3 4 5012345連續存放WriteAppmemorydiskCommit logVnodeFILEFILEPeerVnodeFlushTDengine 數據寫入流程TDengine Metric:多個采集點的數據聚合Metric是表的集合,包含多張表,而且每張表的schema
7、是一樣的。同一類型的采集設備可以是一個Metric,除定義Schema外,還可定義多個標簽。標簽定義表的靜態屬性,如設備型號、顏色等。具體創建表時,指定使用哪個Metric(采集點的類型),并指定標簽值。應用可以象查詢表一樣查詢Metric,但可以通過標簽過濾條件查詢部分或全部數據采集點的記錄,并且可以做各種聚合、計算等,方便支持復雜查詢,應對業務需求。每個表(采集點)都有對應一行的標簽數據,保存在Meta節點,而且存放在內存并建有索引。標簽數據可以任意增加、刪除、修改。標簽數據與采集數據完全分離,大大節省存儲空間,并提高訪問效率。而且對于已經采集的歷史數據,事后可以打上新的標簽。實際場景中,
8、經常需要將多個采集點數據進行聚合處理,比如所有溫度傳感器采集的溫度的平均值。因為一個傳感器就是一張表,這樣需要將多張表聚合。為減少應用的復雜性,TDengine引入Metric概念。TDengine 聚合計算流程DataNode0DataNode 1MetaNodeDriverDataNodeApp5-14-24-04-15-05-2TDengine 時間軸上的數據聚合實際場景中,經常需要將一段時間的數據進行聚合,比如downsampling,采樣頻率為一秒一次,但最終只記錄一分鐘的平均值。TDengine引入關鍵詞interval,以進行時間軸上的聚合操作。時間軸的聚合既可以針對單獨一張表,
9、也可以針對符合標簽過濾條件的一組表進行。select avg(degree)from t1 interval(5m);查詢溫度傳感器t1記錄的溫度每五分鐘的平均值select avg(degree)from thermometer where loc=beijing interval(5m);查詢北京所有溫度傳感器記錄的溫度每五分鐘的平均值TDengine 實時Stream計算目前支持Avg,Max,Min,Percentile,Sum,Count,Dev,First,Last,Diff,Scale等操作。計算是針對時間段,同時可針對一張表或符合過濾條件的一組表進行聚合。實時計算的衍生數據可以
10、實時寫入新的表,方便后續的查詢操作。衍生數據還可以與其他原始數據或其他衍生數據進行各種聚合計算,生成新的數據。select avg(degree)from thermometer where loc=beijing interval(5m)sliding(1m);每隔一分鐘計算北京剛剛過去的五分鐘的溫度平均值create table d1 asselect avg(degree)from thermometer where loc=beijing interval(5m)sliding(1m);每分鐘計算一次北京剛過去的5分鐘的溫度平均值,并寫入新的表d1應用實例:三一重工華興數字 物聯網平臺架構CassandraMySQLmango DB北京望京科技園About TAOS Data北京濤思數據科技有限公司(TAOS Data)專注時序空間數據的采集、存儲、查詢、計算和分析。不依賴任何開源或第三方軟件,開發了擁有自主知識產權、自主可控的高性能分布式時序空間數據引擎TDengine,公司于2017年6月獲得明勢資本和蠻子基金的投資。公司創始人陶建輝在美國留學工作十多年后,回國創業,曾成功創辦了“和信”與“快樂媽咪”兩家高科技企業。公司研發團隊全部畢業于名牌大學,都擁有碩士或博士學歷,在分布式計算、數據存儲和數據庫上有多年的研發經驗。