通道服务

更新时间:
复制 MD 格式

通过命令行工具创建和管理通道,实现数据表的增量、全量或全量加增量数据消费。

前提条件

  • 已安装命令行工具并完成访问凭证配置。具体操作,请参见命令行工具

  • 已创建数据表并开启数据变更日志(Stream)。具体操作,请参见数据表操作

创建通道

为数据表创建通道。

create_tunnel -n <tunnelName>

参数

必填

说明

-t,--table

数据表名称。已通过use选定数据表时可省略。

-n,--name

通道名称。

-m,--mode

通道类型。取值:

  • 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'.

查看通道列表

查看数据表下的所有通道。

list_tunnel

参数

必填

说明

-t,--table

数据表名称。已通过use选定数据表时可省略。

示例

list_tunnel

查看通道信息

查看通道的 Tunnel 和 Channel 信息。

describe_tunnel -n <tunnelName>

参数

必填

说明

-t,--table

数据表名称。已通过use选定数据表时可省略。

-n,--name

通道名称。

-o,--output

将返回结果保存到本地文件。

示例

查看 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 <tunnelName> -m mock_consume

参数

必填

说明

-c,--channel

Channel ID。不设置时消费所有 Channel。

-t,--table

数据表名称。已通过use选定数据表时可省略。

-n,--name

通道名称。

-m,--mode

消费模式。取值:

  • shadow_copy(默认):复制线上 Tunnel 消费流量。

  • mock_consume:模拟消费数据,不更新断点记录信息。

  • real_consume:真实消费数据,同时更新断点记录信息。不推荐使用。

示例

在 t1 通道上模拟数据消费。

consume_tunnel -n t1 -m mock_consume

执行命令后进入消费等待状态。向数据表写入数据时,终端会输出对应的消费记录。返回示例如下:

{"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 <tunnelName> -y

参数

必填

说明

-t,--table

数据表名称。已通过use选定数据表时可省略。

-n,--name

通道名称。

-y,--yes

确认删除,跳过交互式确认提示。

示例

删除 t1 通道。

drop_tunnel -n t1 -y