Table Store新一代数据实时消费通道:Tunnel Service介绍

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
对象存储 OSS,内容安全 1000次 1年
简介: 通道服务Tunnel Service是基于Table Store数据接口之上的全增量一体化服务,它通过一组Tunnel Service API和SDK为用户提供了增量、全量和增量加全量三种类型的分布式数据实时消费通道。

概述

通道服务Tunnel Service是基于Table Store数据接口之上的全增量一体化服务,它通过一组Tunnel Service API和SDK为用户提供了增量、全量和增量加全量三种类型的分布式数据实时消费通道。通过为数据表建立Tunnel Service数据通道,用户可以简单地实现对表中历史存量和新增数据的消费处理。

Table Store NoSQL数据库非常适合元数据管理、时序数据监控、消息系统等服务应用,这些应用的一个常见设计模式就是利用增量数据流或者先全量后增量的数据流来触发一些附加的操作逻辑,这些附加操作包括:

  • 数据同步,将数据同步到缓存、搜索引擎或者数据仓库中
  • 事件驱动,触发函数计算、通知消费端消费或者调用一些API
  • 流式数据处理,对接流式或者流批一体计算引擎
  • 数据搬迁,数据备份到OSS、迁移到容量型的Table Store实例等

利用Tunnel Service,我们可以针对这些模式轻松构建高效、弹性的解决方案,如下图:

tunnel1

功能简述

Tunnel Service是Table Store在stream功能之上推出的更强大的数据通道功能,Tunnel Service提供了:

  • 全增量一体的数据通道
    Tunnel Service不仅提供增量数据消费能力,还提供了可并行的全量数据消费和全量加增量数据消费功能
  • 增量数据变化保序
    Tunnel Service会为用户数据划分一到多个可并行消费的逻辑分区channel,每个channel下的增量数据按写入时间顺序保序,不同channel的数据可以并行消费
  • 消费延迟监控
    Tunnel Service通过DescribeTunnel API提供了客户端消费数据RPO(_恢复点目标,recovery point objective_)信息,并在控制台提供了Tunnel数据消费监控
  • 数据消费能力水平扩展
    Tunnel Service提供了逻辑分区channel的自动负载均衡,通过增加消费端数量,可以水平扩展数据消费速度

快速入门

我们可以使用table store控制台快速体验tunnel service功能:

  • 在控制台选择测试数据表,在通道服务管理页面创建通道,例如创建增量类型tunnel

tunnel2

tunnel3

  • 新建的tunnel页面下,可以查看tunnel中的数据内容、消费延迟监控、逻辑分区channel下的消费数据行数统计

tunnel4

  • 在控制台数据管理页面随机写入或删除数据

tunnel5

  • 使用模拟消费按钮可以预览通道中的数据格式

tunnel6

  • 复制通道ID,使用任一语言tunnel SDK,开启新建tunnel的数据消费
// 用户自定义数据消费Callback, 即实现IChannelProcessor接口(process和shutdown)
private static class SimpleProcessor implements IChannelProcessor {
    @Override
    public void process(ProcessRecordsInput input) {
        System.out.println("Default record processor, would print records count");
        System.out.println(
            String.format("Process %d records, NextToken: %s", input.getRecords().size(), input.getNextToken()));
        try {
            // Mock Record Process.
            Thread.sleep(1000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
    }
    @Override
    public void shutdown() {
        System.out.println("Mock shutdown");
    }
}
  
// TunnelWorkerConfig里面还有更多的高级参数,这里不做展开,会有专门的文档介绍。
TunnelWorkerConfig config = new TunnelWorkerConfig(new SimpleProcessor());
// 配置TunnelWorker,并启动自动化的数据处理任务。
TunnelWorker worker = new TunnelWorker($tunnelId, tunnelClient, config);
try {
    worker.connectAndWorking();
} catch (Exception e) {
    e.printStackTrace();
    worker.shutdown();
    tunnelClient.shutdown();
}
  • 在数据消费标准输出可以看到增量数据消费日志,在控制台或者使用describeTunnel接口也可以查看消费延迟,channel下的消费数据行数更新

tunnel7

SDK

表格存储钉钉

_

相关实践学习
阿里云表格存储使用教程
表格存储(Table Store)是构建在阿里云飞天分布式系统之上的分布式NoSQL数据存储服务,根据99.99%的高可用以及11个9的数据可靠性的标准设计。表格存储通过数据分片和负载均衡技术,实现数据规模与访问并发上的无缝扩展,提供海量结构化数据的存储和实时访问。 产品详情:https://www.aliyun.com/product/ots
目录
相关文章
|
6月前
|
存储 索引
表格存储根据多元索引查询条件直接更新数据
表格存储是否可以根据多元索引查询条件直接更新数据?
62 3
|
SQL 存储 弹性计算
玩转Tablestore:使用Grafana快速展示时序数据
Grafana 是一款采用 go 语言编写的开源应用,主要用于大规模指标数据的可视化展现,是网络架构和应用分析中最流行的时序数据展示工具,可以通过将采集的数据查询然后可视化的展示,实现报警通知;Grafana拥有丰富的数据源,官方支持以下数据源:Graphite,Elasticsearch,InfluxDB,Prometheus,Cloudwatch,MySQ
1644 0
|
1月前
|
分布式计算 DataWorks API
DataWorks常见问题之按指定条件物理删除OTS中的数据失败如何解决
DataWorks是阿里云提供的一站式大数据开发与管理平台,支持数据集成、数据开发、数据治理等功能;在本汇总中,我们梳理了DataWorks产品在使用过程中经常遇到的问题及解答,以助用户在数据处理和分析工作中提高效率,降低难度。
|
3月前
|
DataWorks NoSQL 关系型数据库
可以使用dataworks从tablestore同步数据到mysql吗?
可以使用dataworks从tablestore同步数据到mysql吗?
32 1
|
10月前
|
NoSQL 开发工具
TableStore表格存储(阿里云OTS)多行数据操作查询,支持倒序,过滤条件和分页
1. 批量读取操作 批量读取操作可以通过多种方式进行,包括: GetRow:根据主键读取一行数据。 BatchGetRow:批量读取多行数据。 GetRange:根据范围读取多行数据。
578 0
|
存储 消息中间件 NoSQL
物联网数据通过规则引擎流转到OTS|学习笔记
快速学习物联网数据通过规则引擎流转到OTS
273 0
物联网数据通过规则引擎流转到OTS|学习笔记
|
存储 负载均衡 开发者
表格存储数据多版本介绍| 学习笔记
快速学习表格存储数据多版本介绍。
225 0
表格存储数据多版本介绍| 学习笔记
|
存储 NoSQL 关系型数据库
基于TableStore的海量气象格点数据解决方案实战 王怀远
基于TableStore的海量气象格点数据解决方案实战 王怀远
311 0
基于TableStore的海量气象格点数据解决方案实战 王怀远
|
存储 SQL 运维
基于Tablestore 实现大规模订单系统海量订单/日志数据分类存储的实践
前言:从最早的互联网高速发展、到移动互联网的爆发式增长,再到今天的产业互联网、物联网的快速崛起,各种各样新应用、新系统产生了众多订单类型的需求,比如电商购物订单、银行流水、运营商话费账单、外卖订单、设备信息等,产生的数据种类和数据量越来越多;其中订单系统就是一个非常广泛、通用的系统。而随着数据规模的快速增长、大数据技术的发展、运营水平的不断提高,包括数据消费的能力要求越来越高,这对支撑订单系统的数据库设计、存储系统也提出了更多的要求。在新的需求下,传统的经典架构面临着诸多挑战,需要进一步思考架构优化,以更好支撑业务发展;
676 0
基于Tablestore 实现大规模订单系统海量订单/日志数据分类存储的实践
|
SQL 存储 运维
基于Tablestore的一站式物联网存储解决方案-数据操作篇
## 前言 上一章节介绍了共享充电宝场景的表结构设计。本章节主要为大家介绍如何使用表格存储Tabelstore数据表实现基本数据读写、批量更新,以及利用多元索引特性实现多维度查询功能。 ## 准备工作 - 测试数据说明 | 数据表 | 数据表名 | 数据行数 | 说明 | | --- | --- | --- | --- | | 元数据表 | cabinet | 一千万行 | 模拟一千万台机柜 |
442 0