通道服务
通道服务(Tunnel Service)是基于表格存储数据接口上的全增量一体化服务。通道服务提供了增量、全量、增量加全量三种类型的分布式数据实时消费通道。通过为数据表建立数据通道,您可以简单地实现对表中历史存量和新增数据的消费处理。
背景信息
表格存储适合元数据管理、时序数据监控、消息系统等服务应用,这些应用通常利用增量数据流或者先全量后增量的数据流来触发一些附加的操作逻辑,支持的附加操作如下:
数据同步:将数据同步到缓存、搜索引擎或者数据仓库中。
事件驱动:触发函数计算、通知消费端消费或者调用一些 API。
流式数据处理:对接流式或者流批一体计算引擎。
数据搬迁:数据备份到 OSS、迁移到容量型的表格存储实例等。
您可以利用通道服务针对这些模式轻松构建高效、弹性的解决方案,如下图。
功能特性
通道服务提供了全增量一体的数据通道、增量数据变化保序、消费延迟监控和数据消费能力水平扩展功能。详细说明请参见下表。
通道服务支持表写入在 10 万每秒的量级下,从数据被更新到获取数据更新记录,延迟在毫秒级,并能按照更新顺序返回。
功能特性 | 描述 |
全增量一体的数据通道 | 通道服务不仅提供增量数据消费能力,还提供了可并行的全量数据消费以及全量加增量数据消费功能。 |
增量数据变化保序 | 通道服务为数据划分一个到多个可并行消费的逻辑分区,每个逻辑分区的增量数据按写入时间顺序保序,不同逻辑分区的数据可以并行消费。 |
消费延迟监控 | 通道服务通过 DescribeTunnel API 提供了客户端消费数据延迟(即当前消费到的数据的时间点)信息,并在控制台提供了通道数据消费监控。 |
数据消费能力水平扩展 | 通道服务提供了逻辑分区的自动负载均衡功能,负载均衡增加了消费端数量,从而提高水平扩展数据消费速度。 |
注意事项
Tunnel 的增量日志保留时间,其数值与数据表中 Stream 的日志过期时长(最长时长为 7 天)保持一致,因此 Tunnel 的增量日志最多保留 7 天。
增量或者全量加增量类型 Tunnel 消费数据时,可能会出现以下情况:
当 Tunnel 处于全量阶段时,如果全量数据在增量日志保留时间内(最多保留 7 天)未能完成消费,将会触发
OTSTunnelExpired
错误,从而导致无法继续消费后续数据。如果您预计全量数据无法在指定时间内完成消费,请及时联系表格存储技术支持或者加入钉钉群23307953(表格存储技术交流群-2)进行咨询。
当 Tunnel 处于增量阶段时,如果增量数据在增量日志保留时间内(最多保留 7 天)未能完成消费,Tunnel 将可能从最近可消费的数据处开始消费,因此存在漏消费数据的风险。
Tunnel 过期后,表格存储可能会禁用该 Tunnel,被禁用后的 Tunnel 无法消费数据。如果禁用状态持续超过 30 天,则该 Tunnel 将被彻底删除,删除后将无法恢复。
使用方式
您可以通过控制台、命令行工具或者 SDK 使用通道服务。
计费
当前通道服务本身没有额外的费用开销。在消费通道服务数据时,不同计费模式下的计费方式如下:
CU 模式(原按量模式)下,根据实际拉取的数据产生读吞吐量。更多信息,请参见 CU 模式(原按量模式)计量计费项。
CU 模式(原预留模式)下,根据实际拉取的数据会消耗VCU的计算资源。更多信息,请参见 CU 模式(原预留模式)计量计费项。