《阿里云认证的解析与实战-数据仓库ACP认证》——云原生数据仓库AnalyticDB PostgreSQL版解析与实践(上)——二、产品架构及原理

本文涉及的产品
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
云解析 DNS,旗舰版 1个月
简介: 《阿里云认证的解析与实战-数据仓库ACP认证》——云原生数据仓库AnalyticDB PostgreSQL版解析与实践(上)——二、产品架构及原理

1. 产品架构

 

AnalyticDB PostgreSQL版具有MPP水平扩展,海量数据实时分析,兼容Oracle语法生态,高可用HA架构,支持分布式事务等优势。

 

image.png

 

AnalyticDB PostgreSQL具有协调节点和计算节点:

 

多活协调节点:主要负责Cascade架构SQL优化器和全局分布式事务管理。

计算节点水平扩展:计算任务全并行执行、新一代向量化计算引擎(包括Laser引擎和PG计算引擎)、非结构化数据检索。

高可靠存储引擎:本地数据双副本、支持行存储/列存储、具备高吞吐导入/导出。

分布式事务支持:支持分布式事务,保证强一致性,支持SI/RC隔离级别。

 

2. 模块组件

 

AnalyticDB PostgreSQL版的架构主要包含Master Node和Compute Node两大组件,中间通过Interconnect进行互联通信和数据交换传输。

 

1) Master Node

 

负责客户端连接协议层接入,认证和鉴权, SQL解析,重写,优化,和执行分发协调。

全局事务管理器(Global Transaction Manager)负责全局事务ID、快照生成和分布式事务管理。

全局元数据目录(Global Catalog)则记录了用户,库,表,视图,索引,分布分区等数据库对象的元数据信息。

 

image.png

 

2) Compute Node

 

Compute Node包含了组Segment。

部署形态上可以是物理机,VM或者容器。

 

3) Segment

 

Segment是负责具体的SQL执行和数据存储节点。

执行引擎通过向量化和及时编译(JIT)等技术,相比传统逐行计算的火山模型获得数倍性能提升。

数据和索引(Data&Index)支持行存表,列存表,和外表以及相应索引。

 

image.png

 

SQL在执行查询时,组件之间的交互

 

接受客户端连接,用户认证鉴权。

语法语义解析,生成解析树。

根据语法解析树优化并生成执行计划。

分配集群segment并下发执行计划,协调执行并返回最终结果。

Segment QE并行执行计划中的每个具体算子(Scan,Join,etc.),在不同QE间交换数据(Motion)。

Sacan算子读取数据和索引。

Master QE负责第二阶段聚集和最终结果收集(Gather Motion)。

 

3. 数据模型

 

image.png

 

ADB PG属于对象-关系型数据库,数据库的对象通常包括:表、视图、函数、序列、索引、分区子表、外部表等,而对象-关系型则进一步支持用户自定义对象和它的属性,包括数据类型、函数、操作符,域和索引,甚至复杂的数据结构也可以被创建,存储和检索。

 

1) 支持行存表、列存表和外表

 

行存表:数据按行存放,支持主键,B+树索引,Bitmap索引,GIN索引等,适合数据实时写入更新删除,点查,范围查。

列存表:数据按列存放,高压缩比,适合追加写(少量更新删除)场景。

外表:元数据存放在本地系统表,数据存放在OSS,支持的数据格式包括ORC,Parquet,CSV,JSON,支持表分区,其中ORC和Parquet支持列过滤和谓词下推,提升分析性能。

除OSS外,同时也支持Hadoop(HDFS,Hive)外表。

 

image.png

 

2) 表数据分布

 

将表数据均匀的分布到各个节点中,是发挥集群整体IO性能、提升存储容量、优化计算与网络传输效率的关键。

image.png

 

ADB数据库里表的数据分布如图,最左边为Lineitem表,首先需要定义分布键orderkey,然后对orderkey做HASH均匀分布到每个节点上,这样每个节点上都存了表的一部分数据,也可以按照日期做分区,方便查询时做分区的裁剪。

相关实践学习
阿里云百炼xAnalyticDB PostgreSQL构建AIGC应用
通过该实验体验在阿里云百炼中构建企业专属知识库构建及应用全流程。同时体验使用ADB-PG向量检索引擎提供专属安全存储,保障企业数据隐私安全。
AnalyticDB PostgreSQL 企业智能数据中台:一站式管理数据服务资产
企业在数据仓库之上可构建丰富的数据服务用以支持数据应用及业务场景;ADB PG推出全新企业智能数据平台,用以帮助用户一站式的管理企业数据服务资产,包括创建, 管理,探索, 监控等; 助力企业在现有平台之上快速构建起数据服务资产体系
相关文章
|
8天前
|
运维 持续交付 云计算
深入解析云计算中的微服务架构:原理、优势与实践
深入解析云计算中的微服务架构:原理、优势与实践
34 1
|
19天前
|
SQL Java 数据库连接
Mybatis架构原理和机制,图文详解版,超详细!
MyBatis 是 Java 生态中非常著名的一款 ORM 框架,在一线互联网大厂中应用广泛,Mybatis已经成为了一个必会框架。本文详细解析了MyBatis的架构原理与机制,帮助读者全面提升对MyBatis的理解和应用能力。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
Mybatis架构原理和机制,图文详解版,超详细!
|
26天前
|
人工智能 云计算 网络架构
阿里云引领智算集群网络架构的新一轮变革
11月8日~10日在江苏张家港召开的CCF ChinaNet(即中国网络大会)上,众多院士、教授和业界技术领袖齐聚一堂,畅谈网络未来的发展方向,聚焦智算集群网络的创新变革。
阿里云引领智算集群网络架构的新一轮变革
|
25天前
|
人工智能 运维 网络架构
阿里云引领智算集群网络架构的新一轮变革
11月8日至10日,CCF ChinaNet(中国网络大会)在江苏张家港召开,众多院士、教授和技术领袖共聚一堂,探讨网络未来发展方向。阿里云研发副总裁蔡德忠发表主题演讲,展望智算技术发展趋势,提出智算网络架构变革的新思路,发布高通量以太网协议和ENode+超节点系统规划,引起广泛关注。阿里云HPN7.0引领智算以太网生态蓬勃发展,成为业界标杆。未来,X10规模的智算集群将面临新的挑战,Ethernet将成为主流方案,推动Scale up与Scale out的融合架构,提升整体系统性能。
|
8天前
|
监控 持续交付 API
深入理解云计算中的微服务架构:原理、优势与实践
深入理解云计算中的微服务架构:原理、优势与实践
18 0
|
7月前
|
Shell Android开发
Android系统 adb shell push/pull 禁止特定文件
Android系统 adb shell push/pull 禁止特定文件
580 1
|
7月前
|
Android开发 Python
Python封装ADB获取Android设备wifi地址的方法
Python封装ADB获取Android设备wifi地址的方法
156 0
|
开发工具 Android开发
Mac 安卓(Android) 配置adb路径
Mac 安卓(Android) 配置adb路径
860 0
|
4月前
|
Shell Linux 开发工具
"开发者的救星:揭秘如何用adb神器征服Android设备,开启高效调试之旅!"
【8月更文挑战第20天】Android Debug Bridge (adb) 是 Android 开发者必备工具,用于实现计算机与 Android 设备间通讯,执行调试及命令操作。adb 提供了丰富的命令行接口,覆盖从基础设备管理到复杂系统操作的需求。本文详细介绍 adb 的安装配置流程,并列举实用命令示例,包括设备连接管理、应用安装调试、文件系统访问等基础功能,以及端口转发、日志查看等高级技巧。此外,还提供了常见问题的故障排除指南,帮助开发者快速解决问题。掌握 adb 将极大提升 Android 开发效率,助力项目顺利推进。
101 0
|
7月前
|
Shell Android开发
ADB更改Android设备屏幕显示方向
ADB更改Android设备屏幕显示方向
358 5