基于Tablestore的一站式物联网存储解决方案-Flink 实时计算

简介: ## 需求分析在共享充电宝场景中,会有一些对实时性要求较高的计算场景。例如大屏展示每个省份、每个机柜的营收情况。这类场景不同于离线计算类的场景,需要实时地根据订单数据的变化来统计营业额,并不能采用前文中介绍的Spark近实时流批计算来实现。整个场景需求链路为根据订单增量变化,触发计算逻辑,计算结果写入Tablestore表中,提供给大屏展示。大致可以归纳成**增量写入-实时

需求分析

在共享充电宝场景中,会有一些对实时性要求较高的计算场景。例如大屏展示每个省份、每个机柜的营收情况。这类场景不同于离线计算类的场景,需要实时地根据订单数据的变化来统计营业额,并不能采用前文中介绍的Spark近实时流批计算来实现。整个场景需求链路为根据订单增量变化,触发计算逻辑,计算结果写入Tablestore表中,提供给大屏展示。大致可以归纳成增量写入-实时计算-回写/展示一系列动作。

Tablestore通道服务介绍

在介绍实时计算实现方案之前,先需要了解一下表格存储Tablestore功能之一通道服务。
通道服务是表格存储数据接口上的全增量一体化服务。可提供增量、全量、全增量三种分布式数据实时消费通道。通过对数据表建立通道,可以实现对表中存量、增量数据进行实时消费。下图介绍了通道服务的一些常见应用场景

Tablestore+Blink方案

Tablestore实现了实时计算Blink的connector,可以基于通道服务实现实时消费增量数据。本方案共分四个模块。

  • 订单源表。以表格存储Tablestore作为订单源表的存储库。在源表上建立增量类型通道,可实时监听表格中的数据变化。
  • Blink集群。Blink提供了分布式实时计算服务,可无缝动态对接表格存储通道服务,对增量数据进行分布式计算,并回写到订单结果表中。
  • 订单结果表。以表格存储Tablestore作为订单数据计算完的结果表。
  • DataV。通过DataV访问表格存储,可将表格存储数据可视化展现。

通过上述四个模块之间的对接可实现此场景需求,方案整体架构如下图所示:

实现步骤

创建源表和结果表

  1. 登录实时计算官网。开通实时计算服务。
  2. 登录表格存储官网,进入控制台,进入订单表管理-实时消费通道页面。创建增量类型通道。

  1. 创建Blink独享集群。进入集群管理创建项目。

  1. 进入项目,编写作业SQL。

    1. 创建订单数据源表

      create table order_source(
      order_Md5ID VARCHAR,
      cabinet_province VARCHAR,
      order_start_time BIGINT  ,
      order_end_time BIGINT ,
      cabinet_pricePerHour  DOUBLE 
      ) with (
      type ='ots',
      endPoint ='Tablestore实例VPC服务地址',
      instanceName = 'Tablestore实例名',
      tableName ='order',
      tunnelName = '增量通道名',
      accessId ='',
      accessKey ='',
      ignoreDelete = 'false'
      );
      
    2. 创建订单结算结果表

      CREATE TABLE order_sink (
      order_province VARCHAR,
      total_price DOUBLE,
      order_count BIGINT,
      primary key(order_province)
      ) WITH (
      type = 'ots',
      endPoint ='Tablestore实例VPC服务地址',
      instanceName = 'Tablestore实例名',
      tableName ='order_sink',
      accessId ='',
      accessKey ='',
      valueColumns = 'total_price,order_count'
      );
      

      实时计算作业

  2. 编写实时计算作业SQL。按照省份实时聚合营业额,计算结果回写Tablestore结果表。

INSERT INTO order_sink
SELECT
    cabinet_province AS province,
    sum((order_end_time - order_start_time)/3600/1000 * cabinet_pricePerHour) AS             total_price,
    count(order_Md5ID) AS order_count
    FROM order_source
    GROUP BY cabinet_province;
  1. 上线作业,启动实时计算任务。

3、Tablestore中ots_sink表实时聚合结果展示

数据可视化

  1. 登录DataV官网,开通服务,进入DataV控制台。
  2. 添加Tablestore数据源,配置AK。

  3. 设置Tablestore数据源读取方式,配置数据过滤器。DataV数据可视化实时大屏展示结果如下。

小结

通过实时计算Blink对接表格存储Tablestore源表,在订单表上建立增量数据通道,可实现分布式实时消费充电宝订单增量数据,并将全国实时营收数据的计算结果回写到Tablestore表中,通过对接DataV实现数据可视化的能力,完成大屏展示的系列过程。

联系我们

如对本章节所述有疑问或有其他问题需要咨询,欢迎加入钉钉群:“表格存储公开交流群-2”。群内提供免费的在线专家服务,欢迎扫码加入,群号23307953。

相关实践学习
基于Hologres轻量实时的高性能OLAP分析
本教程基于GitHub Archive公开数据集,通过DataWorks将GitHub中的项⽬、行为等20多种事件类型数据实时采集至Hologres进行分析,同时使用DataV内置模板,快速搭建实时可视化数据大屏,从开发者、项⽬、编程语⾔等多个维度了解GitHub实时数据变化情况。
阿里云实时数仓实战 - 用户行为数仓搭建
课程简介 1)学习搭建一个数据仓库的过程,理解数据在整个数仓架构的从采集、存储、计算、输出、展示的整个业务流程。 2)整个数仓体系完全搭建在阿里云架构上,理解并学会运用各个服务组件,了解各个组件之间如何配合联动。 3 )前置知识要求:熟练掌握 SQL 语法熟悉 Linux 命令,对 Hadoop 大数据体系有一定的了解   课程大纲 第一章 了解数据仓库概念 初步了解数据仓库是干什么的 第二章 按照企业开发的标准去搭建一个数据仓库 数据仓库的需求是什么 架构 怎么选型怎么购买服务器 第三章 数据生成模块 用户形成数据的一个准备 按照企业的标准,准备了十一张用户行为表 方便使用 第四章 采集模块的搭建 购买阿里云服务器 安装 JDK 安装 Flume 第五章 用户行为数据仓库 严格按照企业的标准开发 第六章 搭建业务数仓理论基础和对表的分类同步 第七章 业务数仓的搭建  业务行为数仓效果图  
目录
相关文章
|
7月前
|
存储 分布式计算 数据处理
「48小时极速反馈」阿里云实时计算Flink广招天下英雄
阿里云实时计算Flink团队,全球领先的流计算引擎缔造者,支撑双11万亿级数据处理,推动Apache Flink技术发展。现招募Flink执行引擎、存储引擎、数据通道、平台管控及产品经理人才,地点覆盖北京、杭州、上海。技术深度参与开源核心,打造企业级实时计算解决方案,助力全球企业实现毫秒洞察。
690 0
「48小时极速反馈」阿里云实时计算Flink广招天下英雄
|
8月前
|
存储 人工智能 搜索推荐
Tablestore OpenMemory MCP : 跨会话、跨模型的智能记忆解决方案
本文介绍了Mem0的原理与应用场景,并基于Mem0构建了Tablestore OpenMemory MCP服务,实现个性化旅行规划助理。Mem0是一种为大型语言模型设计的智能记忆层,通过向量数据库持续学习用户交互信息,实现跨会话的个性化记忆管理。该服务提供多种MCP工具,便于集成到各类AI应用中。最后演示了个性化旅行规划应用,并介绍了服务的运行与配置方式。
1151 0
|
存储 SQL 缓存
Flink 2.0 存算分离状态存储 — ForSt DB 
本文整理自阿里云技术专家兰兆千在Flink Forward Asia 2024上的分享,主要介绍Flink 2.0的存算分离架构、全新状态存储内核ForSt DB及工作进展与未来展望。Flink 2.0通过存算分离解决了本地磁盘瓶颈、检查点资源尖峰和作业恢复速度慢等问题,提升了云原生部署能力。ForSt DB作为嵌入式Key-value存储内核,支持远端读写、批量并发优化和快速检查点等功能。性能测试表明,ForSt在异步访问和本地缓存支持下表现卓越。未来,Flink将继续完善SQL Operator的异步优化,并引入更多流特性支持。
1390 88
Flink 2.0 存算分离状态存储 — ForSt DB 
|
存储 分布式计算 流计算
实时计算 Flash – 兼容 Flink 的新一代向量化流计算引擎
本文介绍了阿里云开源大数据团队在实时计算领域的最新成果——向量化流计算引擎Flash。文章主要内容包括:Apache Flink 成为业界流计算标准、Flash 核心技术解读、性能测试数据以及在阿里巴巴集团的落地效果。Flash 是一款完全兼容 Apache Flink 的新一代流计算引擎,通过向量化技术和 C++ 实现,大幅提升了性能和成本效益。
4205 74
实时计算 Flash – 兼容 Flink 的新一代向量化流计算引擎
zdl
|
消息中间件 运维 大数据
大数据实时计算产品的对比测评:实时计算Flink版 VS 自建Flink集群
本文介绍了实时计算Flink版与自建Flink集群的对比,涵盖部署成本、性能表现、易用性和企业级能力等方面。实时计算Flink版作为全托管服务,显著降低了运维成本,提供了强大的集成能力和弹性扩展,特别适合中小型团队和业务波动大的场景。文中还提出了改进建议,并探讨了与其他产品的联动可能性。总结指出,实时计算Flink版在简化运维、降低成本和提升易用性方面表现出色,是大数据实时计算的优选方案。
zdl
667 56
|
消息中间件 关系型数据库 MySQL
Flink CDC 在阿里云实时计算Flink版的云上实践
本文整理自阿里云高级开发工程师阮航在Flink Forward Asia 2024的分享,重点介绍了Flink CDC与实时计算Flink的集成、CDC YAML的核心功能及应用场景。主要内容包括:Flink CDC的发展及其在流批数据处理中的作用;CDC YAML支持的同步链路、Transform和Route功能、丰富的监控指标;典型应用场景如整库同步、Binlog原始数据同步、分库分表同步等;并通过两个Demo展示了MySQL整库同步到Paimon和Binlog同步到Kafka的过程。最后,介绍了未来规划,如脏数据处理、数据限流及扩展数据源支持。
854 0
Flink CDC 在阿里云实时计算Flink版的云上实践
|
存储 关系型数据库 BI
实时计算UniFlow:Flink+Paimon构建流批一体实时湖仓
实时计算架构中,传统湖仓架构在数据流量管控和应用场景支持上表现良好,但在实际运营中常忽略细节,导致新问题。为解决这些问题,提出了流批一体的实时计算湖仓架构——UniFlow。该架构通过统一的流批计算引擎、存储格式(如Paimon)和Flink CDC工具,简化开发流程,降低成本,并确保数据一致性和实时性。UniFlow还引入了Flink Materialized Table,实现了声明式ETL,优化了调度和执行模式,使用户能灵活调整新鲜度与成本。最终,UniFlow不仅提高了开发和运维效率,还提供了更实时的数据支持,满足业务决策需求。
|
SQL 运维 数据可视化
阿里云实时计算Flink版产品体验测评
阿里云实时计算Flink基于Apache Flink构建,提供一站式实时大数据分析平台,支持端到端亚秒级实时数据分析,适用于实时大屏、实时报表、实时ETL和风控监测等场景,具备高性价比、开发效率、运维管理和企业安全等优势。
|
运维 搜索推荐 数据安全/隐私保护
阿里云实时计算Flink版测评报告
阿里云实时计算Flink版在用户行为分析与标签画像场景中表现出色,通过实时处理电商平台用户行为数据,生成用户兴趣偏好和标签,提升推荐系统效率。该服务具备高稳定性、低延迟、高吞吐量,支持按需计费,显著降低运维成本,提高开发效率。
376 1

相关产品

  • 物联网平台