全部產品
Search
文件中心

Tablestore:通道服務

更新時間:Jul 23, 2024

通道服務(Tunnel Service)是基於Table Store資料介面上的全增量一體化服務。通道服務提供了增量、全量、增量加全量三種類型的分布式資料即時消費通道。通過為資料表建立資料通道,您可以簡單地實現對錶中歷史存量和新增資料的消費處理。

建立通道

為資料表建立一個通道。

命令格式

create_tunnel -n name

配置項說明請參見下表。

配置項

是否必填

樣本值

說明

-t,--table

mytable

資料表名稱。

-n,--name

t1

通道名稱。

-m,--mode

stream_data_only

通道類型。取值範圍如下:

  • base_data_only:全量類型。只能消費處理全量資料。

  • stream_data_only(預設):增量類型。只能消費處理增量資料。

  • base_and_stream:全量加增量類型。全量資料消費處理完成後,再消費處理增量資料。

樣本

為資料表建立t1通道。

create_tunnel -n t1

返回結果如下:

New tunnel created, its id is '9933470d-8a5e-4972-a5b0-b7ae6f836460'.

擷取通道資訊

擷取通道的Tunnel資訊以及Channel資訊。

命令格式

describe_tunnel -n name

配置項說明請參見下表。

配置項

是否必填

樣本值

說明

-t,--table

mytable

資料表名稱。

-n,--name

t1

通道名稱。

-o,--output

D:\\otstest\\mytunnel.txt

將返回結果儲存到本地檔案中。

樣本

擷取t1通道的資訊。

describe_tunnel -n t1

返回結果如下:

Tunnel Info:
+--------------------------------------+------------+------------+---------------+---------+
| TunnelId                             | TunnelName | TunnelType | Stage         | Expired |
+--------------------------------------+------------+------------+---------------+---------+
| 9933470d-8a5e-4972-a5b0-b7ae6f836460 | t1         | Stream     | ProcessStream | false   |
+--------------------------------------+------------+------------+---------------+---------+

Channel Info:
+-------------------------------------------------------+-------------+---------------+----------+-------------------------------+
| ChannelId                                             | ChannelType | ChannelStatus | ClientId | ChannelRPO                    |
+-------------------------------------------------------+-------------+---------------+----------+-------------------------------+
| cfd2c05b-54b6-48ec-aa6f-feb427f0ca57_1635771329155688 | Stream      | OPEN          |          | 1970-01-01 08:00:00 +0800 CST |
+-------------------------------------------------------+-------------+---------------+----------+-------------------------------+

類比通道消費

建立通道後,通過類比資料消費可以預覽通道中的資料格式。

命令格式

consume_tunnel -n name -m mock_consume

配置項說明請參見下表。

配置項

是否必填

樣本值

說明

-c,--channel

cfd2c05b-54b6-48ec-aa6f-feb427f0ca57_1635771329155688

Channel ID。如果不設定此項,則表示消費所有Channel。

-t,--table

mytable

資料表名稱。

-n,--name

t1

通道名稱。

-m,--mode

mock_consume

消費模式。取值範圍如下:

  • shadow_copy(預設):複製線上Tunnel消費流量。

  • mock_consume:類比消費資料,但不會更新斷點記錄資訊。

  • real_consume:真實消費資料,會同時更新斷點記錄資訊。不推薦使用此模式。

樣本

在t1通道上類比資料消費。

consume_tunnel -n t1 -m mock_consume

執行命令後,當向表中寫入資料時,螢幕中會顯示資料消費記錄,返回樣本如下:

Starting consume tunnel 't1' of table 'mytable', it may take a few seconds to start, please wait...
{"Type":0,"Timestamp":1636360028961786,"SequenceInfo":{"Epoch":0,"Timestamp":1636360028961786,"RowIndex":1},"PrimaryKey":{"PrimaryKeys":[{"ColumnName":"uid","Value":"86"},{"ColumnName":"pid","Value":6771}]},"Columns":[{"Type":0,"Name":"name","Value":"redchen","Timestamp":1636360028962},{"Type":0,"Name":"country","Value":"china","Timestamp":1636360028962}]}

刪除通道

刪除不需要的通道。

命令格式

drop_tunnel -n name -y

配置項說明請參見下表。

配置項

是否必填

樣本值

說明

-t,--table

mytable

資料表名稱。

-n,--name

t1

通道名稱。

-y,--yes

不涉及

顯示確認資訊。命令中必須帶有此配置項。

樣本

刪除t1通道。

drop_tunnel -n t1 -y