云原生数仓 ADB PG 产品和架构介绍视频(一)| 学习笔记

本文涉及的产品
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
云解析 DNS,旗舰版 1个月
云原生数据仓库AnalyticDB MySQL版,基础版 8ACU 100GB 1个月
简介: 快速学习云原生数仓 ADB PG 产品和架构介绍视频

开发者学堂课程【云原生数据仓库 AnalyticDB PostgreSQL 产品入门:云原生数仓 ADB PG 产品和架构介绍视频(一)】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/1210/detail/18177


云原生数仓 ADB PG 产品和架构介绍视频

 

内容介绍

一、课前介绍

二、技术趋势-云计算加速数据库系统演进

三、ADB PG 产品和技术内部细节

四、Analytic DB Postgre SQL组件交互

五、Analytic DB Postgre SQL数据模型

六、Analytic DB Postgre SQL数据库对象

七、ADB PG 核心能力

八、Analytic DB Postgre SQL 成本

九、Analytic DB Postgre SQL 的安全性

十、Analytic DB Postgre SQL的扩展性

十一、Analytic DB Postgre SQL的生态集成

十二、Analytic DB Postgre SQL的未来展望

 

一、课前介绍

本次分享的是金融 ATM 团队八大精品课程之一的云原生数仓,ADB PG 产品和架构的介绍,希望通过这次介绍,大家可以更好的了解到 ADB PG 的一些基本功能以及核心技术和未来演进路线.

今天介绍主要目录,包括4部分,第一块是数据分析的一个背景以及技术演进。第二是 ADB PG 的一个基本架构介绍。第三是 ADB PG 的核心能力,最后是 ADB PG 的生态集成和未来规划。

 

二、技术趋势-云计算加速数据库系统演进

在开始讲整个ADB PG的架构和技术之前,先介绍一下整个云计算以及数仓方面总的一个业界演进趋势。

image.png

实际上可以看到从数据库的整个发展史来看,最初的数据库的模型关系型数据库诞生于上个世纪80年代,最早开始弹产生的一些数据库产品,包括 Oracle 和 SQL Server 等,他最开始主要是去处理一些 OLTP 的数据服务。90年代开始随着数据海量增加,就开始有了数据分析的场景需求,也就诞生了 OLAP 的概念。包括之前的 Oracle 和 Teradata,以及后来的 Greenplum 和 Hadoop 这样的生态,都是去为了处理海量数据而诞生的。与此同时,我们的数据库架构也从最开始的单节点架构演进到了分布式架构,从原来一个单实例内部数据进行分享,到我们多实例完成了数据的一个互联互通。到了近些年,人们都在提一个原生的概念,同样的在我们 OLAP 的领域也出现了很多优秀的产品,包括有 ADB 、Snowflake 和 BigQuery 他们越来越多地向云原生的方向发展。他们核心的一个技术差别是他们可以做到整个计算和存储的弹性,可以实现秒级资源共享以及动态资源池共享,可以最大降低计算和存储成本。


三、ADB PG 产品和技术内部细节

(1)Analytic DB postgre

介绍完整个数据分析技术的初步背景介绍,现在来看一下 ADB PG 产品和技术的一个内部细节,这是一整个 ADB PG的介绍。云原生数仓 ADB PG 即提供Pb级别数据实时交互分析,ETL/ELT 和 BI 报表展示功能,支持数据高通图实时写入与批量导入,提供 ACID 保证和标准事务隔离级别,采用 APP 架构是一款具有高性价比的云原生数舱产品,提供基于阿里云生态的公共云和混合云的服务。

image.png

它的特色主要包括了以下4点,一个是说它可以支持 Pb 级的数据实时响应,由于它采用的是 ADB PG 的水平扩展架构,就是海量存储,同时采用了新一代的 SQL 优化器以及向量化的计算引擎,能够去支持和提升用户的查询效率。同时 ADB PG 这个产品运行在阿里云企业版,敏捷版以 DB side 多种输出模式,经过多年沉淀的用于管理平台,能够去帮助用户实现一个超大规模集群的运行,以及一些简单的自运维,并且整个底座产品能够提供非常稳定的高可用能力。

ADB PG 这个产品支持 SQL2003,然后部分兼容 oracle 语法,同时支持用户自定义的 PL/SQL 存储过程,包括一些窗口函数视图等等,包括非常重要的事务能力,这样的话可以帮助客户更好地实现应用快速迁移和适配。同时 ADB PG 支持  POST GIS 能力以及自研的时空引擎,而且内置100+算法,帮助用户实现AI的数据分析,还支持向量检索算法以及以图搜图的等能力。

(2) ADB PG 技术架构

ADB PG 整体介绍完后,我们看一下它的技术架构,ADB PG 采用 Mapp 架构,它主要分成了两层,一层是 coodinator,也就是 master 层主要负责 SQL 解析以及全局分布式的事务管理。第二层是存储计算节点,分为存储层和计算层,计算层主要采用最新的向量化计算引擎加速计算效率。重组层则支持行存和列存两种模式,根据用户需求可以自主选择,同时 ADB PG 支持强制性的事务,以及 master 和 compute 两种不同的隔离级别,master 节点和计算节点提供了多副本的保障服务,高可用和数据高可靠。同时均支持通过 scale out 水平扩展来提高整齐全的整体写入查询并发和通途。

image.png

(3)ADB PG 模块组件

接下来看一下 ADB PG 的一个模块组件, master 节点主要负责客户端连接协议层的介入,认证、鉴权、SQL解析,重写,优化和执行分发协调。另外 master 节点还包含了全局的事务管理器,负责全局事务ID快照生成和分布式的事务管理。全局原数据目录则提供了记录用户库表、视图、索引、分布分区等数据对象的原数据信息。masters segment 节点则负责了具体的 SQL 执行和数据存储,其中本地源数据与 master 节点的 Global catalog 保持同步,起到了加速执行的功能。也就是说 segment 无需每次去访问 master 节点或者原数据信息,而本地的事务管理器提供了本地事务能力,缓存管理器则提供了数据的读写缓存,对于提升读写性能,执行引擎通通过向量化和即时编译等技术,相比于传统的逐行计算的火山模型获得了数倍的性能提升。

image.png


四、Analytic DB Postgre SQL 组件交互

介绍完模块组件,来看一下各个组件之间是如何交互运行的,也就是说用户发出一个 SQL 请求,整个 SQL 在 ADB 的一个执行过程,首先用户可以通过比如 GADC 或者 ADB PG 的客户端,去连接 ADB PG 连接上之后就可以发出一个标准的 circle,这个 circle 会首首先到 ADB PG 进 master 节点,master 节点收到这个 circle 后,会首先做一个语法语义的解析,并生成执行数。接下来优化器根据语法解析数进行优化,并生成对应的执行计划,得到执行计划后,会将其下发至集群内所有的计算节点,计算节点收到并并行执行计划后,会将执行后的结果返回给 master,最后master 节点会负责第二阶段的聚集和最终结果的收集,并返回给客户端,这是整体的一个执行过程。

然后在执行的过程中,我们每一个计算节点也就是 second segment,执行引擎,并行执行计划中的每一个具体数字,且可在不同执行引擎间交换数据,可以解决一些比如分布式场景划分序列的一些关联和计算。

image.png


五、Analytic DB Postgre SQL 数据模型

接下来我们看一下 ADB PG 的数据模型,APP 将表数据均匀的分布到各个节点中,是发挥集群整体 io 性能,提升存储容量,优化计算与网络传输效率的关键。除了默认的哈希分布策略,ABB PG 还支持了复制分布和随机分布。值得注意的是更改哈希分布策略将导致表数据在物理上重新分配到磁盘上,这可能是资源密集型的。如果用户声明相同的哈希散布策略,后从哈希更改为随机分布,除非用户声明 organize 这个参数为主,否则的话不会重新分发数据。同时 ADB PG 在将表数据分布到各个存储节点后,在单个节点上根据业务场景还可对表数据进行分区,在执行具体查询时进行数据裁剪,缩小查找和数据处理范围。

ADB PG 还支持了范围和列表分区类型,同时支持多级分区,如图展示如图展示了一张用户表显示通过 ID 哈希分布的三个节点,然后在每个节点上按时间列要,然后进行了范围分区,然后还可以再按其他的列进行列表的分区。图中最右边的每一个分区都对应了一份数据存储和索引,这些分区表可以是行存表,也可是也可以是列成表,或者是外表,比如业务上就完全可以对最近需要写入的分区,然后使用行总表,然后过去已经归档的分区是用列总表,出于降低成本的考虑,也可以对较少查询的分期使 用Oss 外表

image.png


六、Analytic DB Postgre SQL 数据库对象

atppg 不仅是关系型的,也是对象关系型。 App 嗯数据库的对象通常包括表视图、函数序列、索引、分区、词表、外部表等,而对象关系型则进一步支持用户自定义对象和它的属性,包括数据类型函数,操作符域和索引,甚至复杂的数据结构也可以被创建重组和检索。这些对象将将按照逻辑划分成不同的集合及组成模式,也就是 Schema,不同scheme 之间的数据是可以关联计算的,但是不同的 database,数据库之间的数据是无法管理计算的。数据库是数据库对象的物理集合,而模式则是数据库内部用于组织管理数据对象的逻辑集合,模式之下则是各种应用程序会接触到的对象,比如表索引、数据类型函数等使用模式,把数据库对象组织成逻辑组,让他们便于管理,用户用其实也是允许多个用户使用同一个数据库,不会互相干扰。用户是数据库全局范围内的一个权限控制系统,用于各种集群范围内所有的对象权限管理,用户不特定于某个单独的数据库,如果需要登录数据库管理系统则必须连接到一个数据库上,用户可以拥有各种数据库对象。

image.png

相关实践学习
阿里云百炼xAnalyticDB PostgreSQL构建AIGC应用
通过该实验体验在阿里云百炼中构建企业专属知识库构建及应用全流程。同时体验使用ADB-PG向量检索引擎提供专属安全存储,保障企业数据隐私安全。
AnalyticDB PostgreSQL 企业智能数据中台:一站式管理数据服务资产
企业在数据仓库之上可构建丰富的数据服务用以支持数据应用及业务场景;ADB PG推出全新企业智能数据平台,用以帮助用户一站式的管理企业数据服务资产,包括创建, 管理,探索, 监控等; 助力企业在现有平台之上快速构建起数据服务资产体系
相关文章
|
3月前
|
存储 缓存 Cloud Native
MPP架构数据仓库使用问题之ADB PG云原生版本的扩缩容性能怎么样
MPP架构数据仓库使用问题之ADB PG云原生版本的扩缩容性能怎么样
MPP架构数据仓库使用问题之ADB PG云原生版本的扩缩容性能怎么样
|
6月前
|
Cloud Native 关系型数据库 MySQL
云原生数据仓库产品使用合集之ADB MySQL湖仓版和 StarRocks 的使用场景区别,或者 ADB 对比 StarRocks 的优劣势
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。
|
6月前
|
Cloud Native 关系型数据库 OLAP
云原生数据仓库产品使用合集之阿里云云原生数据仓库AnalyticDB PostgreSQL版的重分布时间主要取决的是什么
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。
|
6月前
|
Cloud Native 关系型数据库 MySQL
云原生数据仓库产品使用合集之如何使用ADB MySQL湖仓版声纹特征提取服务
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。
|
6月前
|
运维 Cloud Native 关系型数据库
云原生数据仓库产品使用合集之原生数据仓库AnalyticDB PostgreSQL版如果是列存表的话, adb支持通过根据某个字段做upsert吗
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。
|
6月前
|
SQL Cloud Native 数据挖掘
云原生数据仓库产品使用合集之在使用 ADB 进行数据分析处理时,出现分区倾斜的情况,如何解决
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。
|
4月前
|
SQL 缓存 运维
云原生数据仓库使用问题之ADB写入响应时间变大是什么原因
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。
|
5月前
|
Cloud Native 关系型数据库 MySQL
《阿里云产品四月刊》—云原生数据仓库 AnalyticDB MySQL 版 新功能
阿里云瑶池数据库云原生化和一体化产品能力升级,多款产品更新迭代
103 3
|
5月前
|
存储 关系型数据库 MySQL
云原生数据仓库AnalyticDB产品使用合集之是否支持rdb数据库实时同步
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。
185 4
|
5月前
|
Cloud Native 关系型数据库 MySQL
云原生数据仓库AnalyticDB产品使用合集之是否支持修改主键
阿里云AnalyticDB提供了全面的数据导入、查询分析、数据管理、运维监控等功能,并通过扩展功能支持与AI平台集成、跨地域复制与联邦查询等高级应用场景,为企业构建实时、高效、可扩展的数据仓库解决方案。以下是对AnalyticDB产品使用合集的概述,包括数据导入、查询分析、数据管理、运维监控、扩展功能等方面。
299 3