【云驻共创】GaussDB(DWS)如何实现实时,批量和交付式查询一站式开发

举报
炒香菇的书呆子 发表于 2021/05/31 23:11:26 2021/05/31
【摘要】 GaussDB(DWS)如何实现实时,批量和交付式查询一站式开发

1 数据分析平台的挑战

在智能数据时代多样性应用、海量数据、实时处理对数据平台提出挑战

image-20210530213848633

数据应用快速发展,现阶段主要矛盾是数据的供需矛盾

数据平台建设重心转向支撑业务应用上线,现阶段的主要矛盾是

数据平台无法满足业务部门日益增长的==数据消费==需求的无法处理多样化==数据供给==之间的矛盾

image-20210530214103962

1.1 当前典型的数据架构

image-20210530214127954

1.2主要痛点

  • 七国八制,组件多,开发方式不统一,数据格式不统一,需要反复转换;
  • 组件间数据流转开发复杂,流转效率不高;跨集群,跨组件数据一致性差;
  • 依赖于Oracle提供实时数据接入和交互式查询,分析的扩展性差;

1.3 GaussDB(DWS)整体解决方案

image-20210530214256479

1.3.1 解决思路:

—套架构支撑实时、此量和交互式查询

与Kafka/Flink等组件联合提供批比流合—能力
与Hadoop、OBS联合提供历史数据存储、归档、数钢交换和查询能力

1.3.2周边配套的云服务:

数据接入:
Kafka:做流式弋规接入;
DRS:从业务数据库中实时同步增量数据;
CDM:从业务数据库或者文本数据同步批量数据。

数据存储:
DWS本地存储:数据有存储在DWS的数据盘;
HDFS:与大数MRS配合方案时,大数据加口工后的数据可以使用DWS外表方式读取;
OBS:大量数热导入到DWS时,可以先放到OBS上,再以DWS外表方式写入到DWS;或者是历史数据可以归档到OBS中,使用是可以以DWS外表方式读取。
数据治理:
DAYU:做数据加工、数据治理、业务调度。

数据展示:
BI工具:专业BI工具可以使用严选中的永洪、帆软。

2GaussDB(DWS)如何支撑实时、批量和交互式查询的

2.1 GaussDB(DWS)产品策略:一套架构支撑实时、批量和交互式查询

产品目标:围绕==企业级内核==(高性能,高扩展,高可用,融合分析,智能运维)、==实时分析==、==云原生==三大方向构筑业界第一数据仓库关键竞争力:

  • 架构归一:一套架构支撑标准数仓、实时数仓、云数仓,支持一站式实时、批量和交互式查询
  • 业界首创:实时数仓、2048节点大集群、逻辑集群(流程IT)
  • 持续领先:大规模集群(G行,480节点上线)、性能领先,非对称容灾(RTO<30min)、在线扩容、Cloud-Native运维

image-20210530214707609

2.2 GaussDB(DWS)实时处理技术:实时数据接入+实时分析

方案价值
实时数据接入:支持lot数据接入和交易数据实时接入,lot时序数据接入10w/s/节点,流数据接入60w/s/节点;
数据更新秒级同步:交易数据实时接入,支持增删改数据
实时数据和维度数据、历史数据关联分析:实时数仓可以存储维度数据、历史数据,并支持关联分析,负载隔离。
关键技术
数据复制:交易数据实时接入,支持增删改数据
流引擎:流数据接入、持续计算

时序引擎:时序数据接入、实时合并

Delta引擎:微批数据接入、实时合并

image-20210530214922948

应用举例:

某国有保险实时系统:40+节点,~500TB数据,3W+表分钟级实时接入,整体替换掉100+单机SQL server库。

2.3 GaussDB(DWS)批量处理技术:高性能+大集群

image-20210530215310191

image-20210530215323266

应用举例:

某国有大行EDW系统:480节点,3PB+数据,3W+批处理作业

2.4 GaussDB(DWS)交互式查询技术

核心问题:如何处理高并发点查询;如何如何处理Adhoc复杂SQL;如何防止烂SQL搞跨整集群

image-20210530215642532

分布式查询优化核心技术

  • 分布式查询重写: 30+查询重写技术,10+项分布式查询重写,查询重写相关专利4篇
  • 分布式查询优化:基于Poisson的估算模型、全局/单点cOst估算模型
  • —健式SQL调优:简易SQL调优

异常资源实时监控核心技术

  • 运行态实时视图:实时监控运行状态和资源消耗
  • 基于规则的异常资源实时监控

应用举例

某国有大行分析师平台:480节点,3PB数据,每天支撑10w+笔查询,1w+分析师。

3 实时、批量和交互式查询一站式分析的开发实践及案例

3.1 GaussDB(DWS)一站式技术负载感知的优化执行技术,实现多种负载混合管理

多种技术提升混合负载并发能力
1.优化器动态感知系统负载,根据资源状况生
成最优执行计划。

  1. CN队列控制全局并发,资源池队列控制局部
    并发,利用资源池优先级管理混合负载复杂场景。
  2. 分时复用机制,限额配额分酉配机制保证资源
    的隔离的基础上实现充分利用。
  3. 快慢车道实现复杂查询和简单查询的混合运
    行。
  4. 资源限额保证资源绝对隔离,资源配额保证
    系统充分利用。

image-20210530220017010

3.2 GaussDB(DWS)—站式技术逻辑集群,支持多业务统一管理和隔离,实现纵向扩展

在企业传统的数据分析系统中,各系统烟囱式建设、资源无
法池化共享,各个业务分散部署,缺乏统—管理。

image-20210530220152505

将不同用户的数据存放在不同的物理节点组(逻辑集群),元数据统―管理,实现数据共桌的同时实现资源的绝对隔离。

image-20210530220227555

3.3 GaussDB(DWS)—站式技术融合分析,互联互通,支持直接读写HDFS/OBS数据

多种互联互通:

  • 通过Extension Connector和Oracle、Hive等数据源互联互通
  • 通过FDW外表机制实现和HDFS、oBS数据读写,支持HDFS外表、OBS外表、MPP外表
  • HDFS外表支持ORC/txt/csv/Parquet文件格式,OBS外表支持ORC/txt/csv文件格式

应用透明,兼容标准SQL:

  • 标准ANSI SQL2003
  • 标准开发接口JDBC、ODBC
  • 支持SQL2003标准访问HDFS、OBS

image-20210530220305532

3.4 场景一:分时复用资源,实现实时、交互式查询一站式

资源池队列实现资源隔离与负载管理,解决业务核心痛点:

  • 业务高峰期,批量作业一启动,实时查询大量排队等待,影响使用
  • 某业务部门上线烂SQL,吃光所有系统资源,影响其他部门正常使用
  • 多ISV合作,互相抢占集群资源,影响作业性能指标
  • 利用资源池分时计划,合理规划不同类型作业执行时间,充分使用系统资源

image-20210530220459910

3.5 场景二:多逻辑集群实现实时、批量、交互式查询的库内数据流转

系统特点

  • 在一套集群内,规划不同的节点,分别承载实时数据接
    入,批量处理以及高并发查询
  • T+0数据接入实时集群,提供实时分析和微批运算
  • T+0数据根据时间戳,采用Insert into … Select的方式定时导入到批量集群
  • 批量计算后的分析汇总数据根据时间戳,采用Insert into … Select的方式定时导入到交互式查询逻辑集群

image-20210530220640400

优缺点分析

  • 系统资源完全隔离,各业务可无干扰并行运行
  • 数据同步可使用SQL,方便高效,不需要额外数据存储空间
  • 数据同步需拷贝数据

3.6 场景三:多集群互联互通,分别承载实时、批量、交互式查询,实现集群间数据流转

系统特点

  • 规划不同的物理集群,分别承载实时数据接入,批量处理以及高并发查询
  • T+0数据接入实时集群,提供实时分析和微批运算
  • 实时集群T+0数据根据时间戳,采用OBS外表导出的方式导出
    到OBS,批量集群采用OBS外表导入的方式导入到批量集群
  • 批量计算后的分析汇总数据根据时间戳,采用OBS外表导出的方式导出到OBS,查询集群采用OBS外表导入的方式导入交互式查询逻辑集群
  • image-20210530220939788

优缺点分析

  • 系统资源完全隔离,各业务可无干扰并行运行
  • 数据同步可使用SQL,方便高效
  • 需要设计外表,并有额外空间存储同步数据

3.7 典型案例(RY)︰批量与查询业务一站式

按照数仓设计模型,将业务数据加工链路映射至读写分离的逻辑集群

  1. 业务领域需要加工,清洗,汇总的贴源数据、明细
    数据,从数据湖直接抽取入库批量逻辑集群
  2. 公共维数据,从数据湖抽取到批量和查询逻辑集群
  3. 在批量集群中进行指标计算、汇总计算,加工成各
    类指标维数据、集巿数据
  4. 面向业务对象萃取标签(事实规则类、统计类、算
    法类)汇总数据,通过ETL导入到查询逻辑集群。
  5. 分析师、业务人员从查询逻辑集群中进行联机分析

image-20210530221152168

3.8 典型案例(SD城商)︰一套系统分时实现批量和交互式查询

系统特点:混合负载

批量作业和实时查询,集群规模:12节点 4*12DN,5CN 数据量12OT+

**批量系统 **完成数据归档,数据加工,五大会计报表作业,共17W/天

  1. 数据归档,xx家商业银行,xxx家村镇银行的曰增量数据
    批量入库,每日23:00 – 1:00;

  2. 数据加工,核心作业7W个2h内加工完成。

实时系统 手机银行终端7×24小时实时查询业务

  1. 个人用户量1xxxW+,企业用户量xxW+,交易量xxxW+
    笔/天,并行日间批量作业10W+个;
  2. 实时查询在批量高峰期3s内响应,跑批和实时作业互不
    影响。

image-20210530221344572

4一站式分析的未来规划

4.1 GaussDB(DWS)云数仓,基于云存储实现冷热数据,跨集群数据共享,数据同步

基于本地盘进行性能加速,OBS作为冷数据区、共享交换区,备份数据区,实现一体化的数据仓库

image-20210530221858729

4.2 GaussDB(DWS)云数仓,基于云存储实现跨集群数据共享

image-20210530222051882

关键技术:

  • 文件级多版本,实现多集群读写不冲突基于云存储实现一份
  • 数据跨集群共享访问,并保证数据一致性

4.3 GaussDB(DWS)云数仓,基于云存储实现跨集群数据同步

image-20210530222206960

关键技术

  • 单SQL实现跨集群数据同步,透明访问
  • 流水线文件读写,异步传输,性能高;
    5 结语

华为云数仓GaussDB(DWS)针对数据分析中,从生产到消费各个环节的痛点需求和技术挑战,持续投入,不断突破关键技术,打造业界首选企业级数据仓库。作为一款华为云对标世界一流企业级数据库的产品,当前已经完成从0到1的孵化,正在不断迭代优化,走向成熟,并在企业级数据库构建方面取得了一定的话语权。通过改变当前典型数据库架构,兼容接入其它类型数据库,联合其它云服务商打造实时,批量和交付式查询一站式开发平台

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。