thingsboard(2.4 postgresql版)數據庫表結構說明

本文描述的表結構是根據thingsboard2.4(postgresql版)數據庫中整理出來的,不一定完整,後續有新的發現再補充文檔。

一、數據庫E-R關係

Thingsboard2.4社區版共22個表,主要包括實體信息表、關係信息表、字典表和系統配置表。

 

二、數據庫表結構

1、admin_settings 系統設置表

存儲系統設置信息,目前的設置信息包括系統的訪問URL地址,以及郵件發送相關配置信息。

序號

字段名

數據類型

是否爲空

註釋

說明

1

id

varchar(31)

NOT NULL

唯一ID

 

2

json_value

varchar

 

屬性值

json字符串

3

key

varchar(255)

 

屬性鍵key

 
           

CONSTRAINT "admin_settings_pkey" PRIMARY KEY ("id")

Key爲配置項,如general、mail,json_value是一個json字符串,是配置項對應的一個或多個鍵值對信息組成一個json字符串。

2、alarm 警告信息表

序號

字段名

數據類型

是否爲空

註釋

說明

1

id

varchar(31)

NOT NULL

唯一ID

 

2

ack_ts

bigint

 

創建時間

 

3

clear_ts

bigint

 

清除時間

 

4

additional_info

varchar

 

詳細描述

 

5

end_ts

bigint

 

結束時間

 

6

originator_id

varchar(31)

 

起因實體ID

 

7

originator_type

integer

 

起因實體類型

 

8

propagate

boolean

 

起因實體類型

 

9

severity

varchar(255)

 

嚴重程度

CRITICAL:危險,MAJOR:重要,MINOR:次要,WARNING:警告,INDETERMINATE:不確定

10

start_ts

bigint

 

開始時間

 

11

status

varchar(255)

 

狀態

ACTIVE_UNACK:激活未應答,ACTIVE_ACK:激活已應答,CLEARED_UNACK:清除未應答,CLEARED_ACT:清除已應答

12

tenant_id

varchar(31)

 

租戶ID

 

13

數據類型

varchar(255)

 

警報類型

 
           

CONSTRAINT "alarm_pkey" PRIMARY KEY ("id")

CREATE INDEX "idx_alarm_originator_alarm_type" ON "public"."alarm" USING btree ("tenant_id", "type", "originator_type", "originator_id");

 

 

3、asset資產信息表

可能與其他設備和資產相關的抽象物聯網實體。例如工廠,油田,車輛。

 

 

4、attribute_kv屬性信息表

存儲實體信息的屬性信息,屬性信息可以是靜態和動態的,屬性信息以鍵值對方式存儲。

序號

字段名

數據類型

是否爲空

註釋

說明

1

entity_type

varchar(255)

NOT NULL

實體類型

TENANT:租戶;CUSTOMER:客戶;ASSET:資產;DEVICE:設備;ENTITY_VIEW:實體視圖

2

entity_id

varchar(31)

NOT NULL

實體ID

屬性所屬實體的ID。

3

attribute_type

varchar(255)

NOT NULL

屬性範圍

SERVER_SCOPE:服務器端屬性,
CLIENT_SCOPE:客戶端屬性,
SHARED_SCOPE:共享屬性

4

attribute_key

varchar(255)

NOT NULL

屬性KEY

 

5

bool_v

boolean

 

存儲屬性的布爾值

 

6

str_v

varchar(10000000)

 

存儲屬性的字符串值

 

7

long_v

bigint

 

存儲屬性的數字值

 

8

dbl_v

precision

 

存儲屬性的小數值

 

9

last_update_ts

bigint

 

最後更新時間

 
           

CONSTRAINT "attribute_kv_pkey" PRIMARY KEY ("entity_type", "entity_id", "attribute_type", "attribute_key")

 

 

5、audit_log審計日誌

存儲客戶、用戶、資產、設備、實體視圖、儀表盤和規則鏈等實體信息的操作日誌。

序號

字段名

數據類型

是否爲空

註釋

說明

1

id

varchar(31)

NOT NULL

唯一ID

 

2

tenant_id

varchar(31)

 

租戶ID

 

3

customer_id

varchar(31)

 

客戶ID

 

4

entity_id

varchar(31)

 

實體ID

 

5

entity_type

varchar(255)

 

實體類型

CUSTOMER:客戶;

USER:用戶;

DASHBOARD:儀表盤;

ASSET:資產;

DEVICE:設備;

RULE_CHAIN:規則鏈; ENTITY_VIEW:實體視圖

6

entity_name

varchar(255)

 

實體名稱

 

7

user_id

varchar(31)

 

用戶ID

 

8

user_name

varchar(255)

 

用戶名稱

 

9

action_type

varchar(255)

 

操作類型

 

10

action_data

varchar(1000000)

 

操作數據

json字符串

11

action_status

varchar(255)

 

操作狀態

SUCCESS:成功;FAILURE:失敗

12

action_failure_details

varchar(1000000)

 

操作失敗詳情

 
           

CONSTRAINT "audit_log_pkey" PRIMARY KEY ("id")

action_data字段按照json字符串的格式存儲操作對象的信息。例如action_type字段是ADDED\UPDATED時,action_data字段的值是對象的鍵值對信息。

 

6、component_descriptor數據處理規則組件表

這是一個字典表,存儲規則鏈庫中具體各個數據處理規則組件信息。每個規則組件都有一個對應的java類,存儲在clazz字段中。configuration_descriptor以json格式存儲規則組件的說明、接口、js文件等相關配置信息。

序號

字段名

數據類型

是否爲空

註釋

說明

1

id

varchar(31)

NOT NULL

唯一ID

 

2

actions

varchar(255)

 

活動

示例數據中該字段值爲空。

3

clazz

varchar

 

對應的java類

org.thingsboard.rule.engine.*對應的java類名稱

4

configuration_descriptor

varchar

 

配置信息

json字符串

5

name

varchar(255)

 

部件名稱

 

6

scope

varchar(255)

 

範圍

示例數據中存儲的是“TENANT”。

7

search_text

varchar(255)

 

查詢文本

和name一致。

8

type

varchar(255)

 

規則分類

TRANSFORMATION:數據變換組件
ENRICHMENT:屬性集組件
EXTERNAL:外部的組件
ACTION:動作組件
FILTER:過濾器組件

           

CONSTRAINT "component_descriptor_pkey" PRIMARY KEY ("id"),

CONSTRAINT "component_descriptor_clazz_key" UNIQUE ("clazz")

 

7、customer客戶信息表

存儲客戶信息。客戶也是一個獨立的業務實體:購買或使用租戶設備和/或資產的個人或組織;客戶可能擁有多個用戶和數百萬設備和/或資產。客戶信息是通過租戶(tenant_id)進行隔離的,不同租戶有不同的客戶。

序號

字段名

數據類型

是否爲空

註釋

說明

1

id

varchar(31)

NOT NULL

唯一ID

 

2

additional_info

varchar

 

詳細描述

json字符串

3

address

varchar

 

地址

 

4

address2

varchar

 

地址2

 

5

city

varchar(255)

 

城市

 

6

country

varchar(255)

 

國家

 

7

email

varchar(255)

 

電子郵箱

 

8

phone

varchar(255)

 

手機號碼

 

9

search_text

varchar(255)

 

查詢文本

 

10

state

varchar(255)

 

州(省)

 

11

tenant_id

varchar(31)

 

租戶ID

 

12

title

varchar(255)

 

標題

 

13

zip

varchar(255)

 

郵政編碼

 
           

CONSTRAINT "customer_pkey" PRIMARY KEY ("id")

 

8、dashboard儀表盤信息表

存儲用於展示設備屬性和遙測數據的儀表板信息。可視化您的物聯網數據以及通過用戶界面控制特定設備的能力。

序號

字段名

數據類型

是否爲空

註釋

說明

1

id

varchar(31)

NOT NULL

唯一ID

 

2

configuration

varchar(10000000)

 

配置信息

json字符串,儀表板畫布及其中各展示組件的配置信息。

3

assigned_customers

varchar(1000000)

 

分配給哪些客戶

json字符串,存儲儀表盤分配給哪些客戶。

4

search_text

varchar(255)

 

查詢文本

和標題一致,字母轉換成小寫。

5

tenant_id

varchar(31)

 

租戶ID

 

6

title

varchar(255)

 

標題

 
           

CONSTRAINT "dashboard_pkey" PRIMARY KEY ("id")

configuration字段以json字符串存儲儀表板的配置信息,儀表板中各個顯示組件的配置信息,配置項及其信息比較多。

9、device設備信息表

存儲設備基本信息。這裏的設備是可能產生遙測數據和處理RPC命令的基本物聯網實體。例如傳感器,致動器,開關。

 

10、device_credentials設備憑據表

存儲設備的憑證信息,每一個設備都需要有相應的憑證。

設備憑證是物聯網設備和物聯網平臺連通的重要依據,是物聯網平臺對外訪問接口的安全訪問控制信息。

 

11、entity_view實體視圖表

實體視圖類似於SQL數據庫視圖,它限制了基礎表暴露給外部世界的程度,實體視圖限制了設備或資產遙測和屬性暴露給客戶的程度。作爲租戶管理員,您可以爲每個設備或資產創建多個實體視圖,並將其分配給不同的客戶。

 

12、event事件表

存儲客戶、資產、設備、實體視圖、規則鏈和規則節點等實體對象處理事件的信息。

 

13、relation 實體關係記錄表

存儲設備、資產、實體視圖、租戶、客戶、儀表板、規則鏈和規則節點間的連接關係,其中規則節點和規則節點之間的連接關係較爲複雜。

relation_type字段的值主要包括如下內容:

(1)在規則鏈中描述規則節點之間的鏈接關係(relation_type)包括如下幾種類型(不同節點關係會有所不同):

  1. Post attributes
  2. Post telemetry
  3. RPC Request from
  4. Device
  5. RPC Request to Device
  6. Activity Event
  7. Inactivity Event
  8. Connect Event
  9. Disconnect Event
  10. Entity Created
  11. Entity Updated
  12. Entiry Deleted
  13. Entity Assigned
  14. Entity Unassigned
  15. Attributes Updated
  16. Attributes Deleted
  17. Alarm Acknowledged
  18. Alarm Cleared
  19. Other
  20. Failure
  21. True
  22. False

(2)其它實體間的關係類型還有:Contains

14、rule_chain 規則鏈信息表

存儲規則鏈定義信息。

 

15、rule_node 規則節點信息表

存儲規則鏈中各個規則節點的信息。

 

16、tb_user 用戶

存儲系統用戶信息,包括系統管理員、租戶管理員和客戶的用戶。用戶是系統的使用者,系統管理員是內置的,系統管理員創建租戶及其管理員,租戶創建客戶及其用戶。

 

additional_info是一個json字符串,包含下面的信息:

(1)用戶描述信息;

(2)默認面板(儀表板需要先授權給該客戶),系統會存儲面板的ID;

(3)是否始終全屏。

 

17、tenant租戶信息表

存儲租戶基本信息,所有的實體信息表中都有租戶ID,都是按照租戶隔離了數據。

 

18、ts_kv時間序列key-value數據集

存儲設備的歷史遙測數據。

 

19、ts_kv_latest最新的key-value數據

存儲設備最新的遙測數據。

 

20、user_credentials用戶憑據

存儲用戶的登錄憑證信息。

 

21、widget_type儀表板顯示組件信息表

存儲儀表板顯示組件的詳細信息。通過alias字段和widgets_bundle表的alias字段關聯,區別不同的分類。Descriptor中通過json字符串的方式,詳細描述了顯示組件的信息。

 

22、widgets_bundle儀表板顯示組件分類表

存儲儀表板顯示組件的分類信息。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章