写点什么

HTAP 为实时数据服务插上翅膀

  • 2021-06-10
  • 本文字数:1576 字

    阅读完需:约 5 分钟

HTAP 为实时数据服务插上翅膀

成为主流趋势的 HTAP


由 Gartner 提出的 HTAP 数据库(混合事务 / 分析处理,Hybrid Transactional/Analytical Processing)成为希望。基于创新的计算存储框架,HTAP 数据库能够在一份数据上同时支撑 OLTP 和 OLAP 场景,避免在传统架构中,在线与离线数据库之间大量的数据交互。


HTAP 数据库基于分布式架构,支持弹性扩容,可按需扩展吞吐或存储,轻松应对高并发、海量数据场景。当下,由 HTAP 数据库提供的实时分析能力已经成为企业的核心竞争力之一。



业务挑战


智慧芽(PatSnap)是一家科技创新情报 SaaS(软件即服务)服务商,聚焦科技创新情报和知识产权信息化服务两大板块,为全球 50 多个国家超 10000 家科技公司、高校、科研与金融机构提供大数据情报服务。在数据源方面,智慧芽已存储了 1.5 亿多个全球专利数据、1.7 亿多个化学结构数据,以及千万级财务新闻、科技文献、市场报告、投资信息等海量数据。


随着业务场景的不断拓展和用户规模的迅速增长,业务运营过程中,智慧芽深度依赖对实时数据的分析和结果呈现,需要进行用户行为分析,提供实时大盘和特定场景的运营数据,对流量和服务的分析也不可或缺。


智慧芽原先采用 Segment 与 Redshift 的数据分析架构,仅构建出了 ODS 层,数据写入的规则和 schema 不受控制,且需要针对 ODS 编写复杂的 ETL,按照业务需求进行各类指标的计算来完成上层业务的数据请求。Redshift 中落库数据量大,计算慢(T+1 时效),影响对外服务的效率。


TiDB + Flink 实时数仓方案


经过多轮选型和对比测试,智慧芽选用 TiDB + Flink 实时数仓方案拓展数据分析架构体系的能力版图。

TiDB HTAP 是一个可扩展的行存和列存整合的架构,在存储上是可以使用分离的不同节点,可以确保 OLTP 和 OLAP 两边互相之间没有干扰,实时性、一致性、可延展性都能得到很好的保证。Flink 是一个低延迟、高吞吐、流批统一的大数据计算引擎,被普遍用于高实时性场景下的实时计算,具有支持 exactly-once 等重要特性。


结合了 TiDB HTAP 与 Flink 两者的特性,TiDB + Flink 的方案优势显而易见:首先是速度有保障,两者都可以通过水平扩展节点来增加算力;其次,TiDB 深度兼容 MySQL 协议,Flink 提供 Flink SQL 和强大的连接器来编写和提交任务,学习和配置成本相对较低。



智慧芽实时数据分析平台架构示意图


替换为基于 TiDB + Kinesis + Flink 构建的实时数仓架构后,不再需要构建 ODS 层。Flink 作为前置计算单元,直接从业务出发构建出 Flink Job ETL,完全控制了落库规则并自定义 schema,即仅把业务关注的指标进行清洗并写入 TiDB 来进行后续的分析查询,写入数据量大幅减少。


按用户/租户、地区、业务动作等关注的指标,结合分钟、小时、天等不同粒度的时间窗口等,在 TiDB 上构建出 DWD/DWS/ADS 层,直接服务业务上的统计、清单等需求,上层应用可直接使用构建好的数据,且获得了秒级的实时能力。


这套实时数据分析平台架构实现了真正意义的 Real Time Data as a Service,目前应用于慧芽用户行为分析和追踪、租户行为分析等实时分析场景,并为业务运营大盘提供实时数据支撑。


应用价值


在使用了新架构后,入库数据量、入库规则和计算复杂度都显著下降,数据在 Flink Job 中已经按照业务需求处理完成并写入 TiDB,无需基于 Redshift 的 全量 ODS 层进行 T+1 ETL。


基于 TiDB 构建的实时数仓,通过合理的数据分层,架构上获得了极大的精简,开发维护也变得更加简单,在数据查询、更新、写入性能上都获得大幅度提升。


在满足不同的 adhoc 分析需求时,不再需要等待类似 Redshift 预编译的过程,易于开发且扩容方便。



头图:Unsplash

作者:PingCAP

原文:https://mp.weixin.qq.com/s/p_hhX_UG2AfOvStaP8Ht0w

原文:TiDB X 智慧芽 | HTAP 为实时数据服务插上翅膀

来源:PingCAP - 微信公众号 [ID:pingcap2015]

转载:著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

2021-06-10 08:001870

评论

发布
暂无评论
发现更多内容

程序员如何提高开发效率?

万事ONES

项目管理 程序员 敏捷开发 ONES

Go 学习笔记之 字符串数据类型

架构精进之路

Go 语言 7月日更

腾讯上线零点巡航,用Java手撕一个人脸识别系统

北游学Java

Java 腾讯 人脸识别

对EF Core进行扩展使支持批量操作/复杂查询

Spook

EF Core

MUZIKA穆奇卡系统APP开发简介

百度搜索稳定性问题分析的故事(下)

百度Geek说

百度 后端 数据 软件架构 搜索

JAVA 九种排序算法详解(下)

加百利

Java 数组 排序 7月日更

监测生命体征、活动水平的可穿戴电子产品设计方案

不脱发的程序猿

物联网 ADI 可穿戴电子产品设计方案 监测生命体征、活动水平 智能传感器

MySQL连接数管理

Simon

MySQL

敏捷项目管理会不会代替传统项目管理?

万事ONES

项目管理 ONES 敏捷管理

手把手教你实现聚光灯效果

ThingJS数字孪生引擎

大前端 可视化 智能灯控 数字孪生

数据结构——平衡二叉树(AVL)

若尘

数据结构 二叉树 平衡二叉树

QuFi挖矿APP开发|QuFi挖矿系统软件开发

区块链时代下,企业如何打造数据要素的“新竞争力”?

旺链科技

大数据 产业区块链

字节跳动有状态应用云原生实践

火山引擎开发者社区

云原生 后端

数据归档 - 冷热数据处理大师

趣链科技

数据处理 区块链+

云图说|应用魔方AppCube:揭秘码农防脱神器

华为云开发者联盟

低代码 华为云 AppCube 云图说 应用魔方

云端赛车-Amazon DeepRacer 的前世今生

亚马逊云科技 (Amazon Web Services)

人工智能 开源

银行4.0时代的营销与风控之路

索信达控股

大数据 金融科技 数字化转型 银行数字化转型 营销数字化

渗透工程师必看-网络安全法条例-国家安全法介绍和案例

学神来啦

运维 黑客 安全 渗透

这套获50w+星标的算法神仙文档,足你解决90%的对手,牛逼

编程 程序员 架构 面试

部分简单网页的基础了解

Emotion

html html5 Html报文解析 内部样式、 CSS语法

Pandas

Flychen

记某百亿级mongodb集群数据过期性能优化实践

杨亚洲(专注MongoDB及高性能中间件)

Java MySQL 数据库 mongodb 分布式数据库mongodb

Java项目实战营总结

eoeoeo

手机如果能折叠能卷的话,电脑为什么不能呢?

船医特拉法尔加

开发者 工具 柔性屏

阿里的架构师一致好评!IT界首版全栈架构师全栈“成长笔记”开源!

Java架构追梦

Java 阿里巴巴 架构 面试 成长笔记

卧薪尝胆30天!啃透京东大牛的高并发设计进阶手册,终获P7意向书

Java 编程 程序员 架构 面试

爱了!阿里巴巴 Java 面试参考权威指南(泰山版)5月版开源

Java 编程 程序员 架构 面试

云原生打包工具:Buildpacks

QiLab

Docker 云原生 k8s buildpacks

共36万字!为上岸Alibaba,我把Github上Java面试题都整理了一遍

Java 编程 程序员 架构 面试

HTAP 为实时数据服务插上翅膀_语言 & 开发_PingCAP技术团队_InfoQ精选文章