博客 / 詳情

返回

時序數據庫 IoTDB 與 MyCat 集成,實現關係/時序數據無縫協同

工業物聯網平台搭建時,你是否也曾面臨這樣的困境:關係型數據庫中的設備台賬、業務信息與時序數據庫中的傳感器數據各自存儲在不同的數據庫,業務分析時不得不反覆跨系統查詢、手工拼接?更復雜的是,當業務系統需要同時訪問 MySQL 中的元數據與 IoTDB 中的海量時序數據時,“多源異構”往往意味着“多重負擔”。

時序數據庫 IoTDB 與 MyCat 最新完成的深度集成,正是為解決這一痛點而生 —— 通過 MyCat 的分庫分表中間件能力,將 IoTDB 作為時序數據存儲引擎納入統一數據訪問層,實現關係型數據與時序數據的透明化聯合查詢,讓異構數據庫協同處理變得像操作單庫一樣簡單。

01 MyCat-IoTDB 簡介

MyCat 是一個開源的數據庫中間件,可以作為數據庫代理,對外提供 MySQL 協議能力,對內對接 IoTDB。用户可以在第三方工具通過 MySQL 數據源連接 MyCat,從而間接訪問 IoTDB 數據,無需第三方工具原生支持 IoTDB,進而連接異構數據庫並提供跨平台訪問能力。

02 啓動 MyCat-IoTDB

  1. 聯繫天謀科技商務同學,獲取 MyCat-IoTDB 包並解壓縮。

  2. 在 conf/datasources/prototypeDs.datasource.json 配置文件中配置連接的 IoTDB 實例信息:

{
"dbType":"iotdb",
"idleTimeout":60000,
"initSqlsGetConnection":true,
"instanceType":"READ_WRITE",
"maxCon":1000,
"maxConnectTimeout":30000,
"maxRetryCount":5,
"minCon":1,
"name":"prototype",
"password":"{IoTDB-PASSWORD}",
"type":"JDBC",
"url":"jdbc:iotdb://{IoTDB-IP}:{IoTDB-PORT}/?sql_dialect=table",
"user":"{IoTDB-User}",
"weight":0
}

934018f9e51c434f8e1cf0c42385e2f9

  1. 在 conf/users/root.user.json 配置文件中配置 MyCat 用户信息:
{
"dialect":"mysql",
"ip":null,
"password":"{MyCat-PASSWORD}",
"transactionType":"proxy",
"username":"{MyCat-User}"
}

2d82f029ed0a368d84e8e7c604b61420

  1. 在 sbin 目錄下啓動 MyCat-IoTDB。

若想查看日誌信息,可前台啓動服務:

./mycat.bat console

若想在後台啓動服務,需要先安裝服務才能正確啓動:

./mybat.cat install./mybat.cat start

03 在第三方工具中通過 MySQL 連接 IoTDB

(1) DataGrip

  1. 啓動 MyCat-IoTDB 服務。

  2. 創建 MySQL 數據源:

035c3fe1f4063365cdfa1f93d5ba5afd

  1. 配置數據源信息,端口為 8066,用户密碼為 MyCat 的用户密碼:

e9bdca2e8f0cd3d8c7b90ad8b050bc6f

  1. 測試連接情況:

843247e22cc94ac9dbffa17dc6301830

  1. 數據源創建成功後,勾選所有架構:

424294474e5e832f414553171c5f34a6

  1. 可在左側逐級查看數據庫、表和列:

39ae7daa91f2d6e73443013689a4c300

  1. 點擊表可查看數據:

1ef3f3419099badf8f5de99db9dd4566

(2) Navicat

  1. 啓動 MyCat-IoTDB 服務。

  2. 創建 MySQL 數據源:

26937c31186443fc0c037addca1ab304

  1. 配置數據源信息,端口為 8066,用户密碼為 MyCat 的用户密碼:

d1784178eaf60576bc0b4384da3210db

  1. 測試連接情況:

1c132f21c05bc21aee982ccb6fa3e7d4

  1. 可在左側逐級查看數據庫、表和列:

b76c85ca77b7ddaa70c6747d40d21855

  1. 點擊表可查看數據:

c0343ba00861d1c975461562cf98414a

如果你的項目正面臨多源數據融合的挑戰,或是希望在業務系統與物聯網數據之間搭建一座高效橋樑,不妨試試這一組合。IoTDB 與 MyCat 的集成方案現已開放體驗,歡迎私信小助手(微信號:apache_iotdb)獲取安裝包,開啓異構數據協同的實踐之旅。

user avatar
0 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.