在 TDengine 3.3.0.0、3.3.2.0 版本(ben)中,我們進一(yi)步(bu)增(zeng)強了(le)數(shu)據(ju)接(jie)入(ru)功(gong)(gong)能,實現了(le)傳統關系型數(shu)據(ju)庫向 TDengine 的平滑遷移。這兩次版本(ben)更(geng)新重點打通了(le) MySQL、PostgreSQL、Oracle、SQL Server 到 TDengine 的遷移路徑。本(ben)篇文章將講述增(zeng)加關系型數(shu)據(ju)庫接(jie)入(ru)功(gong)(gong)能的必要性及其操作方式,給到有需要的小伙伴參考。
打造關系型數據庫 Connector 的必要性
在(zai)工業和(he)電力(li)領(ling)域(yu),實時(shi)監測是(shi)解決傳統流程工業問題的關鍵。通(tong)常,實時(shi)數(shu)據(ju)(ju)庫(ku)(ku)用(yong)(yong)于實時(shi)監測,而歷史數(shu)據(ju)(ju)則存(cun)(cun)儲在(zai)關系數(shu)據(ju)(ju)庫(ku)(ku)中。然而,使(shi)用(yong)(yong)關系數(shu)據(ju)(ju)庫(ku)(ku)存(cun)(cun)儲時(shi)序數(shu)據(ju)(ju)存(cun)(cun)在(zai)諸(zhu)多缺點,包括:
1. 海量時序數據讀寫性能低:關系數據庫在處理大規模時序數據時,讀寫性能往往無法滿足需求,導致數據處理效率低下。
2. 分布式支持差:關系數據庫在分布式環境中的支持較弱,難以實現大規模分布式部署。
3. 查詢性能下降:隨著數據量的增加,關系數據庫的查詢速度顯著下降,無法滿足高效的數據檢索需求。
4. 時序數據特有分析能力欠缺:關(guan)系數據庫缺乏針(zhen)對(dui)時(shi)序數據的專用(yong)分析功能,開發人員需要編寫復雜的應用(yong)程序來實現特(te)定(ding)的分析需求。
海量設備數據的激增和實時性要求,使得 MySQL、Oracle 一類的關系型數據庫在處理大規模數據時的性能瓶頸日益凸顯。對于許多使用此類數據庫存儲數據的物聯網和工業互聯網系統來說,隨著接入系統設備數量的不斷增加和用戶對數據實時性反饋要求的提高,數據庫系統越來越無法滿足業務需求。為了解決這一問題,越來越多的企業開始進行數據架構改革,時序數據庫 TDengine 成為眾多(duo)企(qi)業的首(shou)選解決方案之(zhi)一。
以為例,智慧出(chu)行是其業務(wu)中(zhong)的典型場(chang)景(jing)之一。中(zhong)移(yi)物聯需(xu)要(yao)存(cun)儲(chu)車聯網設備的軌跡(ji)(ji)(ji)數(shu)(shu)據(ju),并支持對這些軌跡(ji)(ji)(ji)進行高效查詢(xun)。最(zui)初(chu),他們使(shi)(shi)用 Oracle 小型機進行單表分(fen)區存(cun)儲(chu),但這種方法運維復雜且(qie)難(nan)以管理(li)。2017 年(nian),為響應集(ji)團去 IOE 的要(yao)求,中(zhong)移(yi)物聯開始使(shi)(shi)用 MySQL 集(ji)群(qun)。然而,隨著產(chan)品在 2019 年(nian)提出(chu)更高的數(shu)(shu)據(ju)存(cun)儲(chu)需(xu)求,中(zhong)移(yi)物聯調研了國(guo)產(chan)數(shu)(shu)據(ju)庫 TiDB,但由(you)于(yu)其存(cun)儲(chu)成本過高,不適合低價值(zhi)的軌跡(ji)(ji)(ji)數(shu)(shu)據(ju)存(cun)儲(chu),并且(qie)無法滿足行業客戶對軌跡(ji)(ji)(ji)數(shu)(shu)據(ju)存(cun)儲(chu)周期的定(ding)制化需(xu)求。
最(zui)終,中移物聯選擇(ze)了(le) TDengine 作(zuo)為新的(de)數(shu)據存(cun)儲引擎。替(ti)換 MySQL 方案后,其存(cun)儲空間減(jian)少到(dao)原來的(de) 1/7,業務寫入峰值達到(dao) 1.2-1.3 萬行(xing)/秒,數(shu)據遷移過程(cheng)中可以(yi)達到(dao) 20 萬行(xing)/秒,讀取數(shu)據性能也非常出(chu)色(se),最(zui)常用的(de)單(dan)設備單(dan)日查詢可以(yi)在 0.1 秒內返回結果。這些改進顯著提升了(le)中移物聯的(de)運維效率和數(shu)據處理能力。
近些(xie)年,從(cong)傳統(tong)的關系型數(shu)據庫升級至(zhi) TDengine 的案例數(shu)量顯著增加,對其他客(ke)戶案例感(gan)興趣(qu)的小伙(huo)伴可移至(zhi) //yakult-sh.com.cn/tdengine-user-cases 查看更多經(jing)驗分享。
為了方便更多被關系型數據庫性能瓶頸困擾的企業更順滑地向 TDengine 進行數據遷移,研發團隊歷時數月打造 MySQL Connector、PostgreSQL Connector、Oracle Connector、SQL Server Connector。通過這些連接(jie)器,不僅數據(ju)遷(qian)移(yi)的穩定性(xing)(xing)和完整(zheng)性(xing)(xing)極大提(ti)升,遷(qian)移(yi)過程也大幅縮短,使企業在不影(ying)響現(xian)有業務(wu)的前(qian)提(ti)下,輕松(song)享受到 TDengine 帶來的高效性(xing)(xing)能。
從幾大關系型數據庫向 TDengine 遷移僅需三步
以 MySQL Connector 為(wei)例,其具備(bei)多項亮點,包括支持歷史數(shu)據(ju)(ju)遷移和實(shi)時(shi)數(shu)據(ju)(ju)同步(bu)、遷移過程(cheng)中的斷點續(xu)傳、transformer 功(gong)能、以及無(wu)需工廠側有公網 IP 的 Agent 運行(xing)模式。此外,用(yong)戶(hu)可以通過可視化界面管理這些功(gong)能,并在數(shu)據(ju)(ju)傳輸(shu)過程(cheng)中進行(xing)數(shu)據(ju)(ju)壓縮,實(shi)現(xian)秒(miao)級延遲的實(shi)時(shi)數(shu)據(ju)(ju)同步(bu)。
MySQL Connector 的(de)運(yun)作原理就(jiu)是先(xian)通過 SQL 語(yu)句將(jiang) MySQL 中(zhong)的(de)時序(xu)數據(ju)查詢出來,按照用戶配(pei)置的(de) transformer 規(gui)則進行(xing)轉換,然(ran)后(hou)寫入 TDengine 中(zhong)。借助(zhu) MySQL Connector,我(wo)們只需進行(xing)少量配(pei)置,三個步驟(zou)即可將(jiang) MySQL 的(de)數據(ju)輕(qing)松(song)接(jie)入 TDengine。
配置連接信息

配置 SQL 信息

進行數據映射

其他幾(ji)種關系型數(shu)據庫的(de)(de)遷移操(cao)作同樣如(ru)此簡單,你還在(zai)等什(shen)么?趕緊(jin)嘗(chang)試一下吧,體驗高效便捷的(de)(de)數(shu)據遷移過程!
結語
在數據接入方面,TDengine 目前已實現與多種數據源的無縫對接,包括 AVEVA Historian、OPC、Kafka、MQTT、InfluxDB 和 PI System 等。針對傳統關系型數(shu)(shu)據(ju)庫(ku),已實現了 MySQL、PostgreSQL、Oracle、SQL Server 到 TDengine 的平滑遷移。隨著數(shu)(shu)據(ju)源(yuan)種類的增(zeng)加,TDengine 的靈(ling)活性和選擇(ze)性也越(yue)來越(yue)豐富,這意味著用戶可以輕松地將不同數(shu)(shu)據(ju)源(yuan)的數(shu)(shu)據(ju)導入(ru) TDengine 中進行統一管(guan)理和分(fen)析。
目前,TDengine 3.0 企業版和 TDengine Cloud 均支持數據接入功能。如果(guo)你也(ye)想(xiang)體驗平滑遷移的(de)便捷性,立(li)即注(zhu)冊 TDengine Cloud,即可(ke)獲得價值(zhi) 600 元的(de)體驗券,開啟前所(suo)未有的(de)數(shu)據之旅!如需了解(jie)更多關(guan)于(yu) TDengine 企業(ye)版和(he) TDengine Cloud 的(de)信息,可(ke)以添加小(xiao)T微信(tdengine),與(yu)專(zhuan)業(ye)的(de)解(jie)決方(fang)案(an)專(zhuan)家一對(dui)一溝通。


























