开发者学习笔记【阿里云云数据库助理工程师(ACA)认证:云原生数据仓库AnalyticDB MySQL版/PostgreSQL版(一)】
课程地址:https://edu.aliyun.com/course/3112080/lesson/19084
云原生数据仓库AnalyticDB MySQL版/PostgreSQL版(一)
课程目标:
1、了解阿里云云原生数据仓库 AnalyticDB 产品特性。
2、掌握产品基本技术原理和应用场景。
内容介绍:
一、包括数据仓库的技术趋势
二、AnalyticDB 产品特性
三、AnalyticDB 场景案例
一、 数据仓库领域技术趋势
如上图,在数据仓库领域,当今的技术趋势是云原生、湖仓一体和数据库大数据一体化。
主要表现在采用原生的技术架构,支持全量数据集中在统一的平台,支持数据的实时更新、实时计算。
云原生数据仓库是近年热点
从市场上来讲,云原生数据仓库的市场也是在迅猛发展,每年有数十亿美元的市场空间。去年Snowfiake上市,创造了市值超过700亿美金的奇迹,如下图:
全球云源生数据仓库的主要服务商包括:Redsjift、 Snowflake、BigQuery、Azure Synapse Analytics、阿里云 AnalyticDB
阿里云云原生数据仓库的整体架构
如下图所示:
AnalyticDB简称ADB,分为MYSQL版和PG版。用户可根据自己的数据情况以及开发用的技术背景,选择其中任一版本。用户可以基于AnalyticDB统一数据存储、计算的平台。支持企业全网数据的实时同步更新、实时计算和实时服务。就这样,极大的简化整个数仓的技术架构。可以通过云上的DTS等等同步工具,实时将数据源中的数据统一到AnalyticDB里。
云上的主要数据源包括关系数据库、MySQL数据库以及OSS等等。同时可以通过DMS 、it works等等数据管理和开发工具进行ETL任务的开发、调度、统一管理、运维并进行数据资源管理。在数据业务层面,可以支持QuickBI、Tableauf、FineBI等等常见的BI工具。还可支持用户自助开发的这种数据产品的数据工具平台。
二、 AnalyticDB 产品特性
主要特性如下:
nalyticDB MySQL 版它是基于云原生的技术架构,采用容器技术进行轻量化的部署,用户间的集群资源隔离独享,支持全球化部署。它更兼容 MySQL 协议最多可以支持250个数据库,支持支。
数据库的数据实时更新,实时删除,兼容MySQL的权限体系。它支持云原生的弹性扩容,存储空间可从GB级扩展到PB级别,存储计算分离,按量计费,弹性计算节点。
最新的弹性版本性能得到大幅提升。在TBC-DS,标准测试级的性能测试里面排名全球第一,它同时具备数据库的很多优良特性,还基于Raft 协议,保证数据的强一致,数据写入过后立即可见,实时可查。支持ETL计算的ACLD的能力。AnalyticDB中的数据具有非常高的可靠性,默认提供三副本的存储。提供,每周两次的全量备份,加上日志的实时备份,可进行任意时间点的数据恢复。
如上图:
2020年11月份发布的弹性模式新增了很多企业级的核心功能。
它实现了存储计算分离的架构,可以根据业务特点和负载的特点,针对性的优化计算资源和存储资源,降低扩容成本。其次,他支持资源的分式弹性,可按时间段编排计算资源,按实际使用量计费,降低了计算资源的成本,支持资源组隔离。
可以将稳定的业务放在一个资源组,把临时的或者开发中的任务放在其他的资源组,可以保证核心计算任务的稳定运行不受临时和异常情况的影响。它支持冷热数据分层。
可以将对于性能要求高的热数据存储在高性能介质里面。将低频访问的冷数据存储在廉价的存储介质里面。如此既能保证热数据的高性能的访问,同时又能极大的降低数据存储成本,最多可以降低90%。
MYSQL版的数据模型如下:
最上面一层为实例和集群这种级别由若干台机器构成一个集群,我们叫做一个实例。
在实例下面是数据库级别。它一个集群最多可支持256个逻辑数据库。用于权限隔离和表空间的管理。数据库下面是表,表可以分为普通表、维度表,普通表又称分布式表用来存储明细数据的,可以通过指定分布键,将数据分布到多台机器。
同时也支持维度表又成广播表,他会在每个节点冗余一份,从而达到加速关联计算速度的目的。表下面是分片,在建表的时候,通过指定分布键将数据分成多个指标,分布到若干台机器,一个分片也叫一个Shard。在分片下面还可以指定一个字段进行进行分区。
可以通过数据分区,指定分区的生命周期功能可以实现两条数据的分成,加上数据的生命周期淘汰的功能。
AnalyticDB PG版 兼容PostgreSQL生态,高度兼容Oracle语法生态,它基于MPP水平扩展架构,可支持PB级数据查询秒级响应。还支持存储过程、窗口、函数、触发器、视图等等数据库的常见功能,也支持很多的机器学习的算法,可以支持向量检索和以图收图等等。
如上图:AnalyticDB PostgreSQL实现了HA高可用架构,支持分布式事务。数据本地商户本存储可以实现高吞吐的数据导入和导出。可以进行计算节点的任意水平扩展。
如上图:对数据表来说,还可定义按传统行式数据存储或者按列式数据存储,对于高并发的检查场景适合用航程。对于大批量数据加载和全表的扫描聚合计算。这种适合列式数据储存。
AnalyticDB PostgreSQL版弹性扩展,如下图:
在线扩容,增加MPP集群的节点,可自动进行数据的重新分布,可以不中断业务查询。
AnalyticDB PostgreSQL版特点是支持丰富的函数、支持存储过程,支持用户自定义的自定义函数。如图: