企业级云原生分布式数据库系统
如果无法正常显示,请先停止浏览器的去广告插件。
1. 企业级云原生分布式数据库系统
Next Generation Enterprise Cloud Native Distributed Database Systems
李飞飞
阿里云智能-数据库产品事业部
阿里巴巴达摩院-数据库与存储实验室
2. 目
录
云原生分布式数据库系统的发展历程
数据库系统架构的对比及趋势
云数据库技术高速发展的现状
阿里云数据库总结
3. 云原生分布式数据库系统的发展历程
4. 数据库系统演进
Evolution of Database System
Oracle
IBM DB2
Sybase
SQL Server
Informix
1980 - 1990
商业起步
Postgres
MySQL
1990 – 2000
开源
Teradata
Sybase IQ
Greenplum
1990 – 2000
分析
结构化数据在线处理 海量数据分析
RDBMS
[ SQL+OLTP ]
Data warehouse
Data Cube
[ ETL+OLAP ]
Hadoop
HBase
SAP Hana
MongoDB
Redis AWS Aurora, Redshift
Azure SQL Database
Google Spanner
PolarDB
AnalyticDB
2000 – 2010
异构NoSQL 2010 – 2019
云原生、一体化分布式、
多模、HTAP
异构数据类型
关系型数据库
结构化 图数据 NoSQL/NewSQL数据库
时序 向量数据 云原生分布式/软硬一体化
文本数据 [ Multi-Model + HTAP ]
多模 + 混合业务
空间/时空
5. 数据库: 云上应用关键一环
Database: the Key to Empower Business using Cloud
“The real battle will be in databases”
Source:
“How Amazon Web Services aims to win cloud computing’s next big battle” SiliconANGLE
“AWS to Oracle: Now it's our turn and we got next”ZDNet
IaaS
数据库
数据的产生,存储, 消费
智能化应用
6. 数据库发展-业务视角
Database Development - Business Perspective
๏ 事务性数据库 (OLTP)
‣ 结构化数据库
‣ 银行转账记账,淘宝下单订单商品库存管理
‣ 挑战: 高并发,高可用,高性能下的正确性和数据一致性
๏ NoSQL数据库及专用型数
据库
‣ 非结构化或半结构化数据
(例如文档,图),不强
制数据一致性
๏ 分析型数据库 (OLAP)
‣
‣
‣
‣
海量数据,数据类型复杂
分析条件复杂
深度智能化分析
挑战: 高性能,分析深度,与TP数据库的联动联动
๏ 数据库服务+管理类工具 ๏ 数据库管控平台
‣ 数据传输,数据备份,数据库管
理等 ‣ 实例管理、资源管理和调度、高可用、备
份、安全等
7. 数据库系统DBMS的价值
What’s a DBMS (Database Management System)?
8. 数据库系统的核心模块
Key Modules inside a DBMS
Application Interface 应用接口
SQL Interpreter SQL接口
Query Evaluator 查询执行引擎
Plan Generator
计划生成器
Crash Recovery
崩溃恢复
Concurrency Control
并发控制
Plan Optimizer
计划优化器
Plan Executor
计划执行器
Data Access 数据访问模块
Transaction Manager
事务处理
Buffer Manager
内存处理
Security Manager
安全管理
File & Index Manager
文件和索引管理
Storage Manager 存储引擎
Data Files
数据文件
Index Files
索引文件
System & Metadata Files
系统及元数据文件
9. 查询分析处理过程
Lifecycle of a database query
Data
Hash/Indexed table
带索引的数据表
Frame 1 Frame 2 Frame 3
Frame 4 Frame 5 Frame 6
Frame 7 Frame 8 Frame 9
内存池:数据 page frame
持久化存储的数据page
10. 数据库系统挑战
Challenge of DBMS
软件应用 (e.g. 客户端)
软件应用
DBMS
数据
Update Inventory Set stock = stock + 100
Where sku = ‘ABC123’
并行冲突 concurrent with …
Update Inventory Set stock = stock + 150
Where sku = ‘ABC123’
Select…
Update…
Create Table…
Drop Index…
Help…
Delete…
并行访问时的读写冲突和数据一致性
11. 数据库系统挑战
Challenge of DBMS
Insert Into Archive
Select * From Inventory Where sold = ‘Y’;
Delete From Inventory Where sold = ‘Y’;
内存、缓存中存储的数据块
(data page)更新
系统宕机
批量写入
DBMS DBMS DBMS
Data Data Data
系统宕机或出错
系统宕机或出错
12. 事务处理
Transactions in DBMS
Transactions 事务
一系列的SQL语句被当做一个整体来看待:
•
从用户视角看事务是隔离运行的
• 如果系统有异常: a)全部执行完毕 b)一个也没有被执行
A tomicity
C onsistency
I solation
D urability
原子性
一致性
隔离性
持久性
T1:
start transaction;
insert into course values (111, `Database Systems’, ‘Computer Sciences’);
commit;
T2:
start transaction;
select * from course;
commit;
13. 事务处理
Transactions in DBMS
T1: BEGIN
T2: BEGIN
A=A+100,
A=1.06*A,
T1:
A=A+100,
T2:
B=1.06*B
B=B-100
B=1.06*B
END
END
B=B-100,
A=1.06*A,
用户在他的两个账户之间转账
银行给所有账户派息
正确的执行方式
错误方式1: 用户得利-转账的100块被派息2次
T1:
T2:
A=A+100,
T1: B=B-100
R(A), W(A),
A=1.06*A, B=1.06*B T2:
R(A), W(A), R(B), W(B)
错误方式2: 银行得利-转账的100块没有获得利
息
T1:
T2:
A=1.06*A,
B=1.06*B
A=A+100, B=B-100
数据库内核执行顺序
T1:
R(A), W(A), R(B),
W(B)
T2:
R(A), W(A),
数据库内核视角
R(B), W(B)
14. 数据库系统挑战
Challenge of DBMS
预测寄送给客户的货品的退货率
用各种货品以及客户下单信息来进行建模并预测
Label
Features
Flag CustId Region Total Discount Flag2 1 10 2 100 0.2 0 20 0.5
0 20 1 200 0.0 0 100 0.1
0 20 1 500 0.1 0 300 0.2
……
……
Total2 Discount2
15. 数据库系统挑战
Challenge of DBMS
Joining 7 Tables from TPC-H
In order to predict the return_flag of an item ℓ1
shipped to a customer c, we may want to look at
another item ℓ2 shipped to the same customer c
and include the return_flag of ℓ2 as a feature
16. 数据库系统挑战
Challenge of DBMS
在7个表的join结果上训练一个简单的SVM 机器学习模型
–
–
7个表的join需要12个小时 (TPC-H scale factor 40).
SVM模型的训练一直未能完成(join的结果数据量巨大导致)
A B
B
1 2
1
2 2
2
3 4
3
4 4
4
C
C
2 D
1
2 1
2
4 2
3
4 3
4
4
D
E
E 2 F
2 F G
1 2 2 G
2 1 2
2 4 2 1
4 2 2
3 4 4 2
4 3 4
4 4 3
4 4
4
A B C D E F G H
H
2
2
4
4
⋈
1 2 2 1 2 1 1 2
2 1 2 2 3 3 2 2
Training
Accuracy = 80%
3 4 5 3 2 3 3 4
……
Evaluation
17. 面向未来的企业级数据库技术与产品
Future-oriented Enterprise Database Technology & Products
18. 云原生数据库:要解决什么问题?
Key issues to address for cloud native databases
• 传统架构依赖高端硬件,每套数据库系统服务器少,架构相对简单
但无法支持新业务的扩展需求
• 云计算架构通过虚拟化技术带来池化资源
• 新的云原生分布式数据库架构,实现大规模扩展,每套数据库系统横跨多台
服务器/虚拟机,带来全新的系统管理挑战
• 云原生分布式架构的问题
- 存储计算分离实现弹性所带来的扩展性挑战
- 多服务器安装部署,复杂的配置
- 管理、监控如何实现,节点故障、性能问题如何定位
- 每个数据库系统都如此复杂,多业务系统系统如何管理
- 学习入门难度上升,DBA 及运维对于业务迁移没有信心
19. 弹性+高可用: 按需按量使用,资源高效利用
计算节点资源需求
在线资源消耗
离线资源消耗
新品上市
Yearly subscription---50% off
促销活动
时间
分钟级别弹性按需按量
20. 云原生数据库管控平台:DBaaS 智能化简化管理维护
DBaaS: Intelligent cloud native database management platform
多实例统一管理
全图型化,无需命令行
用户
Web
管控
分钟级安装,集群部署
自动备份,时间点恢复
动态扩容、缩容
性能监控,优化调整
21. 阿里巴巴数据库发展历史
Evolution of Database Ecosystem at Alibaba
Oracle RAC
亚太最大规模
Oracle RAC集群
RDS、DRDS PolarDB
AnalyticDB
OceanBase
基于开源数据库
实现深度内核重构 全面推动自研战略
存储、计算全分布式
形成全球领先的
分库分表技术 积极发表全球论文
影响业界生态发展
实现商业化服务 行业生态集成
多渠道业务扩展
商业数据库时代
集团内部自用 开源数据库
阿里云服务化支持 自型数据库时代
专有云、一体机、软件化被集成
云上云下市场化支持
2005 - 2009
第一阶段 2010 – 2015
第二阶段 2016 – 今
第三阶段
22. 灵活的部署形态
公有云
专有/私有云
混合云
软硬件
一体化独立部
署
纯软件化
输出
23. 以Oracle为例 (credit: Oracle)
24. 以Oracle为例 (credit: Oracle)
25. Multi-Model多模数据库系统
Multi-Model Database System
北向
查询接口
与标准
SQL Put/Get
DocQL GQL
SPARQL
...
数据库引擎
南向
数据结构
与类型
图
结构化数据
文档
时空数据
时序
向量
非结构化数据
26. 数据库智能化+自动化管控平台
Intelligent Database + Automated Management Platform
自感知
自决策
自恢复
自优化
提升数据库内核与数据库平台运行效率、节省运行成本
平台Portal数据展现
自动优化 自动异常修复 自动安全保护 容量自动管理 SQL优化 异常检测 安全检测 资源预测 资源管理 安装配置升级
空间优化 运行保护 安全保护 容量预警 HA、容灾 监控告警
配置优化 异常定位 漏洞定位 智能调度 备份恢复 扩容缩容
全链路优化 异常修复 安全修复
机器学习算法
运维自动化
元数据
任务调度
数据采集
27. 新硬件: 软硬件一体化设计
New Design: Integration of Hardware and Software
异构处理器支持
(飞腾、鲲鹏)
RDMA
Open-Channel SSD
APPS
File system
F T L
Open Channel 10 Library
NVMe Driver
Open Channel Firmware
SSD Controller
海光
NVM 3DX Point
申威
GPU/FPGA
28. 行存储 vs. 列存储
Row store vs. Column Store
+ 高效简易访问一整条记录来处理更新
- 需要访问和读取不需要的数据信息
+ 只需读取所需数据
- 更新一条记录不同属性时需要多次访问
29. 行存储 vs. 列存储
Row store vs. Column Store
30. HTAP: 事务处理与分析处理一体化
HTAP: Hybrid Transaction and Analytical Processing
C1
C2
C3
C4
C1
C1
C1
C4
C1
C1
OLTP
OLAP
C2 C3
C2 C3
C4
C4
Hybrid: HTAP
31. HTAP: 事务处理与分析处理一体化
HTAP: Hybrid Transaction and Analytical Processing
ĉ + 行存事务引擎:适合实时数据更新
+ 列存分析引擎: 只用读取所需数据
ĉ - 行存事务引擎: 分析时带来大量冗余数据读取
- 列存分析引擎: 更新数据记录代价高
32. 云原生架构: 弹性 x 高可用 x 企业实践 x 开放生
态
Cloud Native Architecture: Elasticity x High Availability
x Enterprise Practice x Open Ecosystem
DB = cpu + memory
共享状态
单节点
分布式
Network
DB
本地磁
盘
部署简单
传统开源及商业数据库
Network
DB
DB
DB
共享存
储
兼容性, scale up
PolarDB, Aurora, CynosDB, TaurusDB
DB DB DB DB
Disk Disk Disk Disk
水平拓展, scale out
PolarDB-X, OB, ADB,
GaussDB, TDSQL, TiDB, Redshift, Spanner
33. 从集中式、共享存储 到 分布式
传统如:
• Oracle 及其 RAC 架构
• Sybase、SQL Server
共享状态
单节点
Network
DB
本地磁
盘
DB
DB
DB
分布式共享存储
纵向扩展
优势:
• 易于实现事务一致性
• 无需多层复杂管理
劣势:
• DB 节点扩展能力受限
• 存储扩展能力及IO性能
依赖高端共享存储
34. 从集中式、共享存储 到 分布式
分布式
DB
Disk
DB
Disk
水平拓展
DB
Disk
DB
Disk
代表如各类 数据分片、MPP分析数据库:
•
Oracle 12c Sharding
•
阿里云 PolarDB分布式版
PolarDB-X
•
阿里云 AnalyticDB (ADB)
•
MyCat / TiDB / OB
•
Teradata
•
Sybase IQ
优势:
•
良好的可水平扩展能力
•
数据多副本存储,无需共享存储
劣势:
•
计算及存储能力需同时扩展灵活性不足
•
分布式查询、分布式事务处理的开销
35. 下一代企业级数据库:
云原生+分布式+HTAP
Next Generation Enterprise-level Database System: Cloud Native + Distributed
弹性
高可用
Shared Storage/Everything + Shared Nothing
Network
DB= Memory + CPU
水平拓展
DB
DB
DB
DB
Shared Storage
DB
Shared Storage
Scale Up
PolarDB-X
DB
DB
DB
Shared Storage
Scale Out
DB
36. 分布式系统CAP理论
All up nodes can
satisfy all requests.
Linearizability
C
Consistency
Availability
Partition Tolerant
一致性
可用性
网络分区容错性
A
P
No Man’s Land
Still operate correctly
despite message loss.
37. CAP理论: 一致性
Must see both changes or no changes
Set A=2, B=9
A=2
Read B=9
A,B
Application
Server Application
Server
Master Replica
A=2
A=1
B=8
B=9
Node 1
NETWORK
A=2
A=1
B=8
B=9
Node 2
38. CAP理论: 可用性
B=8
Read B
Read
A
A=1
Application
Server
A=1
B=8
Node 1
Application
Server
NETWORK
A=1
B=8
Node 2
39. CAP理论: 网络分区容错性
Set A=2, B=9
Set A=3, B=6
Application
Server Application
Server
Master Master
A=2
A=1
B=8
B=9
Node 1
NETWORK
A=3
A=1
B=8
B=6
Node 2
40. 分布式数据库系统基本思想
Commit
Execute Begin
Queries
Node 1
Application
Server
Node 2
41. 分布式数据库系统基本思想
Safe to commit?
Coordinator
Commit Request
Lock Request
Application
Server
Partitions
Acknowledgement P1 P2
P3 P4
P5
42. 分布式数据库系统基本思想
Partitions
Application
Server
Middleware
Query Requests
P1 P2
P3 P4
P5
43. 分布式数据库系统基本思想
Partitions
Safe to commit?
Commit Request
Application
Server
P1 P2
P3 P4
P5
44. 分布式数据库系统: 高可用
High Availability: HA
Primary Replica
(sync)
Replica
(async) Replica
(sync)
Replica
(async)
P1 P1 P1 P2
P3 P2 P2 P3
P4 P4 P3 P4
主节点+备节点 分区高可用数据库
o 快速切换至备节点当主节点发生宕机故障
o 只读业务处理可以分发至备节点处理
o 主备不一致的挑战 o 通过分布式数据一致性协议来确保分区数据一致性
45. 拜占庭将军问题
Byzantine Generals’ Problem
将军1的部队, 山谷1
将军2的部队, 山谷2
将军3的部队, 山谷3
必须确保同时发起攻击才能击溃敌军
何时发起 攻击 ?
(两种模型: 失败的将军部队停止通讯, 失败的将军部队可能会发出错误信
息)
46. 分布式数据一致性协议
Distributed consensus protocol
• 分区进程一定可以对一个数据的取值达成一致
Group of processes must agree on a single value
• 对一个数据的取值一定可以有一个可取值被提议
Value must be proposed
• 一旦分区进程对一个数据的取值达成一致,所有分区进程最终都可以得到这个取值
After value is agreed upon, it can be learned
47. Oracle 从 RAC 到 Sharding
• 自 Oracle 9i 起推动 RAC 大量使用,实现基于集中式存储的计算横向扩展
• 多年来,Oracle 面向市场“云化”受扩展灵活性、实时性及规模的挑战
• 2017年 Oracle 12c R2 正式发布,提供 Sharding 实现数据分片技术
48. 新一代企业级数据库: 云原生 + 分布式
Next Generation Enterprise Database : Cloud Native + Distributed
49. 数据库技术与产品是完整的生态体系
Alibaba Cloud Database Technology & Products is a Complete Ecosystem
Singles Day (11/11) 2019
135x
First second on 00:00:01,11/11/2019
数据库和应用迁移 ADAM
数据传输 DTS
自动生成应用评估、迁移与实施报告
一键无缝迁移上云
PostgreSQL
Oracle
MySQL
DB2
阿里云市场及第三方合作伙伴
丰富的第三方合作生态
AnalyticDB
云原生+分布式
支持PB级数据库实时分析
50. 云原生数据库: PolarDB(VLDB2018, SIGMOD2019)
Cloud Native Database: PolarDB(VLDB2018, SIGMOD2019)
共享存储 + 一写多读: 弹性+按 唯快不破
需+按量 分钟级 备份恢复
存储计算分离 秒级 弹性扩容
100TB 存储容量
100万 QPS/节点
高可用 兼容生态
Raft 协议提供金融级高可用 100%兼容 MySQL 5.6
2019:MySQL 8.0, Oracle, PG
51. PolarDB架构细节: 用分布式架构解决集中式数据库的弹性与扩展能
力 Architect
Details of PolarDB
协议层
智能路由
PostgreSQL
MySQL
自定义读写分离
自动负载均衡 安全防护模块
计算节点
快速高可用切换
读取
更新
主节点
Oracle
只读节点A 只读节点A 只读节点A
Buffer Pool Buffer Pool Buffer Pool Buffer Pool
libpfs libpfs libpfs libpfs
RDMA
共享存储
Data Chunks Data Chunks Data Chunks
A a a
b
c
B
Parallel Raft
c
b
C
52. 把云数据库带回家PolarDB Box: 高性能一体机
Running Cloud Database On-Premise: PolarDB Box, a High Performance and Oracle Compatible Database Appliance
53. PolarDB-X: 分布式版本支持水平拓展+HTAP
PolarDB-X: Distributed version provides Scalability and HTAP
SQL(DML/DDL/DCL)
distributed relational database service
Stateless computation nodes
SQL Parser
SQL
Optimizer
SQL Router
Transaction Manager
SQl optimizer and distributed SQL
execution engine
Shared everything in each
POLARDB instance
Cross-AZ, LSM-tree based tiered
storage
PolarDB PolarDB PolarDB
plan executor plan executor plan executor
transaction service transaction service transaction service
X-engine
(SIGMOD 2019) X-engine
(SIGMOD 2019) X-engine
(SIGMOD 2019)
Shared distributed storage
PolarFS (VLDB 2018)
Distributed file system
PolarStore
利用高可用副本实现行列混存支持HTAP
54. PolarDB分布式版本: SQL引擎(DRDS)
POLARDB-X: Distributed version provides Scalability and HTAP
SQL引擎(DRDS)
• 分布式事务
• 全局二级索引
• Parallel Query
• 多租户
Access Layer
Network & MySQL Protocol
JDBC
SQL Engine
SQL Parser
Plan Cache
Outline
Hint
Data Placement (Rule)
Information schema
Cascade Optimizer (RBO & CBO)
Shared Nothing
DB
DB
DB
Physical Plan For TP
DB
Data Type
Sequence
DDL Operators
Physical Plan For AP
Functions
Session Users
AP Operators
(Fireworks) Admin &
Profile
Operators
TP Operators
Join、Sorting、Grouping、Project、Filter and
Etc
DCL Operators
Transaction
(XA/2PC)
Global Secondary
Index
Storage Driver
Storage
行存
行存
X-Paxos协议
高可用
行存
列存
利用高可用副本实现行列混存支持HTAP
55. PolarDB分布式版本: 存储引擎(X-Engine)
POLARDB-X: Distributed version provides Scalability and HTAP
Multi Model
存储引擎(X-Engine)
• 查询下推
• 高写性能
• 高压缩率
Shared Nothing
DB
Flush / Compaction
Scheduler
Log & Recovery
Lock/Snapshot
DB
Paxos
DB
GIS
Storage Service Handler
Transaction Management
DB
Document
KV
SQL
Compactor
Extent / Stream / FPGA
Data Access (Read & Write)
Cache
Row / Block / Index
Meta
Storage Meta
PolarFS
/ Filter /
Data Encoder / Decoder
Mem Table
Extent Space
Layered Storage
ESSD
SAN
I/O Scheduler
Ceph
56. 三节点金融级高可用集群
Alibaba Cloud Database 3-Node Financial Grade High Availability Cluster
高可用
高可靠
高性能
业务 99.99%可用性
任一节点故障不影响集群可用性
运维 事务数据强一致
AZ级别的故障数据零丢失
研发 Paxos智能并行发包高效同步
提供更专业的秒杀场景优化
Leader
X-Paxos
Binlog Replication
Follower
Follower
57. 两地多中心
应用/User Applications
数据库接入层
Gateway/Proxy
Gateway/Proxy
日志同步
Backup Master Backup
AZ-A AZ-B AZ-C
DTS
(Data Transmission Service)
Backup
Master
Parallel Raft/Paxos for Binlog
Master: Shanghai(3 Azs 可用区)
Backup:Beijing(1 AZ可用区)
58. Big Data + Fast Data: 将海量数据转为在线实时可用
Real-time Data
VOLUME
VERACITY
VELOCITY
VARIETY
Full
Data
Fast+Online
Realtime
Computing
VALUE
Cloud Native (Large-Scale)
AnalyticDB
Data Lake Analytics
59. 基于分布式集群的大数据计算与分析系统: 由数据库系统演进而来
60. MapReduce vs. Spark: 都是基于BSP模型
map
map
map
reduce
reduce
reduce
RDD
RDD
RDD
RDD
Map and reduce tasks
operate on key-value
Spark operates on
Resilient Distributed Dataset (RDD)
61. 100 TB on 1000 machines
½ - 1 Hour
Hard Disks
1 - 5 Minutes
Memory
In memory computation over a cluster
62. Spark 系统架构框架
63. Spark SQL: 大数据与数据库技术在快速融合
Spark SQL
Spark
SQL
Spark
Streaming
real-time
GraphX
graph
Spark
MLlib
machine
learning
64. 大数据系统的核心: 并行处理方式
several
threads
several
threads
c
o
r
e c
o
r
e c
o
r
e c
o
r
e
1 2 3 4
hyper-threads
L1 cache
C O R E 0
several
threads
C O R E 1
several
threads
L1 cache
L2 cache
memory
65. 基于DAG的调度和计划器
B:
A:
F:
Stage 1
groupBy
C:
D:
E:
join
Stage 2
map
= RDD
filter
= cached partition
Stage 3
66. 技术趋势:Serverless Storage + Serverless Compute
Serverless
Computing
多数据源
计算
分析
67. 智能化OLAP: AnalyticDB实时交互式数据仓库 (VLDB 2019)
Intelligent OLAP: AnalyticDB Real Time Interactive DW
兼容生态
MySQL版本兼容MySQL生态
PostgreSQL版本兼容PG生态 行列混存引擎
高吞吐写入 (140,000 rows/s)
高并发查询 海量数据处理
PB级数据存储+分析
查询优化
CBO+全量代码生成
低延时分析 (毫秒级别响应) 高可用
99.99 HA 向量分析
结构化+非结构化数据联合分析
INSERT
JDBC
Coordinator
Coordinator
Coordinator
Coordinator
Fuxi
Resource
Manager
SELECT
CUP
Write
Node
#1
Write
Node
#3
Write
Node
#2
Read Node
#1
Read Node
#2
SSD Cache
SSD Cache
Read Node
#3
CUP
SSD Cache
CUP
CUP
Pangu Distributed Storage System
disk
disk
disk
disk
disk
disk
CUP
disk
disk
CUP
68. DB for AI :新一代数据仓库OLAP AnalyticDB
结合数据库、大数据、AI算法技术、实现结构化和非结构化数据融合在线分析, 放大数据在线价值
By using DB,big data, AI algorithmic technique in combination to achieve OLAP of
structured and unstructured data fusion, and enlarge the value of OLAP
极速
性能
融合
分析
融合
全文、图像、视频、音频
毫秒响应
高效索引、GPU加速100X
超大
规模 开放
易用
MPP弹性扩展
1000亿 PB级规模 算法突破
首创结构化+非结构化SQL分析
AnalyticDB
NLP 模型 传统结构化SQL在线分析
人脸模型 文本检索
语音模型 以图搜图
视频分析
结构化&非结构化融合存储
并行计算
融合分析
高效索引
硬件加速
声纹比对
69. Data Lake Analytics – 数据湖:全域数据,全局开放分析
RDBMS
APP
Frontnode
MySQL / Spark Compatibility
NoSQL
Optimizer
Unify
Access
Manager
(CBO/HBO/RBO + AI Empowered)
Hadoop
Presto 极致优化版
20x 性能提升
Parquet/ORC/..
File
Spark
GraphX/ML/Streaming/…
Unify
Metadata
Manager
Serverless Resource Manager
OSS/DBS/Logs/..
ECS | K8S(FPGA / GPU )
Streaming
Dataworks
Kafka/IoT/….
….
公共云
某互联网电商
数据源
OSS
RDS
无服务器化、扩容能力极强,助力分析极低成本
✓ 智能的存储感知和分层缓存设计
存储0预留成本
✓ 智能的资源弹性调度和计算引擎感知 支持快速扩容至2000 worker
统一元数据,双计算引擎按需切换
✓ 极速分析引擎Presto优化TPC-H、TPC-DS
✓ Spark引擎 支持共享内存加速 2x
转换
Text->ORC
10000+
周查询数
分析
QuickBI
回流
MySQL
1TB+
周扫描数据量
关联
MySQL
100+
内置分析函数
计算0预留成本
无需迁移即可统一分析全域数据
✓ RDMS 5+ (MySQL/Oracle/…)
✓ Hadoop 4+ (ORC/Parquet/…)
✓ NoSQL 3+ (MongoDB/…)
✓ OSS/DBS/SLS/...
15+
数据源
70. 企业级NoSQL:
非结构化和半结构化数据库套件
Enterprise NoSQL Database : Semi-structured or Non-structured Database Set
71. NoSQL: 非结构化与半结构化数据处理
Unique Enhanced Function provided by Alibaba Cloud NoSQL
阿里云NoSQL全面覆盖非结构化和半结构化数据解决方案
Key Object
Redis
(Tair)
Time Series
TSDB
持久化缓存数据库
对比社区版3倍性能提升
持久化能力
冷热数据分离降低成本
多模数据结构
时序时空数据库
相比传统数据库10倍压缩率
支持SQL聚合统计分析
弹性扩展收缩能力
毫秒级写入延迟
Wide Column
HBase & Cassandra
(Lindorm)
Document
MongoDB
Graph
GDB
海量KV存储数据库
千万QPS,99%延迟低于 100ms
双集群高可用
内置Spark与Phoenix SQL模块
Serverless按需付费
文档型数据库
中国唯一战略合作伙伴
支持MongoDB最新4.2坂本
企业级数据安全:TDE+SSL
图数据库
亿级边存储,毫秒查询
兼容 Gremlin & Cypher
面向图优化事务与索引处理
并行查询执行器
72. 企业级缓存Redis+Tair (FAST 2020):持久存储的缓存储服务
高性能访问接入层
• 多线程网络框架
• 高性能二进制访问协议
Redis Protocol Layer + Multi-Model Module
多模数据访问
• BloomFilter
• GIS
• Doc
冷热数据分离
• 热数据内存驻留,低延迟
• 冷数据置换外存,低成本
Memory
All keys + Hot Value
Swap
冷数据直读
Direct load
• 优化冷数据随机读取路径
Log异步同步
• LSM引擎优化Log写入吞吐
• 格式兼容Redis AOF,生态兼容
Binlog
Async
LSM Engine
与社区版Redis兼容
• 支持互为主备,部署架构灵活
• 兼容社区版Redis集群管理方案
Redis企业版
(Tair)
3x
73. 丰富的数据库生态: 数据迁移的高速公路
Alibaba Cloud DB: Expressway to send up Data to the Cloud
74. 数据库统一管理架构
数据库网关
统一管理
数据传输DTS
数据管理DMS
数据库备份DBS
数据库自治服务DAS
数据访问
数据备份
监控信息采集
Gateway Cloud Service1
数据库网关
Gateway Cloud Service2
Gateway Cloud Service3
互联网
双向通信,agent主动发起并建立通道
Database Gateway Agent1
网络设备
数据访问、数据备份、监控信息采集
自建IDC
关系型数据库
NoSQL
Others
- VPN网关
- 智能网关
- 物理专线
75. 数据传输云服务DTS
Data Transmission Service
数据传输高速公路
DTS
源端数据库
目标数据库
OpenAPI
用户控制台
数据迁移
调度服务
数据迁移
--------
元数据
全量数据
增量数据
预检查
ETL
PolarDB
MongoDB Redis
Writer
全量抽取
增量抽取
RDS
DStore
数据校验
数据同步
数据订阅
SDK
ADB DRDS
DLA ……
数据实时订阅 API/HTTP/SQL
…
搜索
流计算
自定义业
务
76. 企业数据管理功能矩阵
数据操作统一入口: 研发 | DBA | 内审 |运营决策
•
数据分析
精准赋权 数据脱敏 日常操作全自助
权限隔离 规则自定 变更流程自定义
逻辑库执行引擎
阿里云
内网访问
MySQ
L
PolarD
B
数据脱敏引擎
安全规则引擎
VPC专线
内网访问
公网访问
ADB
慢查分析
Oracl
e
SQLServ
er
OceanBa
se
DevOps
SQL任务执行引擎
性能监控
企业研发流程
变更稳定
• 智能SQL审核
• 大批量数据变更
• 大表结构变更(OnlineDDL)
变更稳定
客户端和移动终端
•
安全管控
• 安全引擎主动拦截
• 数据脱敏(L1-L4级别定义)
• 审计日志
安全管控
跨库查询
•
直观的GUI开发工具
• 支持20+种数据源
• 支持客户端版本
• 支持线下和混合云环境
• 打通企业数据、人员、权限
业务报表服务
数据库网关
Redi
s
MongoD
B
e.g., DMS 阿里内部10年沉淀的数据库研发工具,支撑经济体研发工程师每周百万SQL安全查询和3万日常工单。
77. 数据安全保障
从“审计”到“主动拦截”
精确记录SQL操作:
- 真实操作人
- 业务审计
- 影响审计
DMS基础权限隔离体系
SQL
数据库
自动识别敏感数据:
- 基于字段规则
- 基于字段内容
- 基于机器学习训练规则
SQL
检查点拦截
检查点拦截
用户
网络访问
隔离
库表权限
隔离
字段敏感性
隔离
操作权限
隔离
安全规则管控引擎
安全规则库
动作Action
规则执行器
检查点
DMS数据库研发流程安全体系
78. 数据库备份DBS
秒级RPO、低成本,国家灾备等级4
使用场景:
100%业务读写流量
自建DC或
其他云厂商
阿里云
OA ERP
CRM APP
Application
...
快速恢复 Data Recovery
可查询 Data Validate
Database
DLA
OSS Select
自建IDC的云上备份
跨云数据库备份
异地备份、转储
备份架构实施:
打通网络
实时备份
数据库备份
DBS
...
OSS
DBS热备到云OSS 故
障时云端快速恢复
79. 企业级云原生管控平台
Alibaba Cloud DBaaS Platform: Enterprise Level Cloud Native Database Service
80. 独立主机组,大客户专享集群:公有云中的“专有云”
稳定
安全
MySQL
SQL Server
Redis
• 专属独立物理主机集群
• 主机层面的VPC网络隔离
PostgreSQL
MongoDB
深度
被集成 •
•
•
• 自定义资源调度策略,自主调度迁移
灵活弹性策略(如单独调升CPU/IOPS等)
开放主机权限,用户强把控和干预能力
更多底层API,与用户运维体系深度集成
专属
DBaaS •
•
•
• 与实例级RDS/Redis等同等功能和体验
AliSQL等阿里自研内核深度集成
集群内资源隔离和“超卖”能力
更提供多引擎混合部署能力
客户专属的主机硬件集群
面向客户群
• 在IDC/ECS自建的规模性客户
• 用户自主把控需求
81. 数据安全
Data Security on the Cloud
HTTPS
BYOK
TLS
Database
Database
Database
Data at Rest
Encryption
File System
Raw Dev
Raw Dev
Transparent
Data Encryption
KMS
HSM
Raw Dev
外部 – 黑客攻击
Inside Attack
Trusted Log
•保证日志在不可信环境中的完整性
•管理员/用户越权操作
•任何人(包括管理员)无法篡改日志文件
•窃取数据备份
•eg – Amazon AWS QLDB, 阿里云数据库管控日志
•恶意修改数据
SQL
SQL
SQL
Verifiable Queries
Encrypted Database
•保证查询结果在不可信环境中的正确性
•任何人(包括管理员)无法篡改查询结果
•eg. – Microsoft Research Concerto (研究项目)
•数据在存储、查询、共享过程中全程加密
•任何人(包括管理员)无法获取明文数据
•eg. – Microsoft Azure Always-Encrypted for SQL Server
手机
电脑
平板
82. 全程加密数据永不泄露
Data Security and Safety Guaranteed by Cloud to Terminal End-to-end Encryption
全加密云数据库- ApsaraDB RDS Encrypted
全加密数据库
ApsaraDB RDS(PostgreSQL版)
数据库操作
Computer & Mobile Apps
SELECT Balance, BranchID
FROM Account
WHERE AccountID = ‘0xD3A4786C26AB’
神龙裸金属服务器(安全芯片TEE技术)
用户数据表
手机
电脑
平板
AccountID
数据不可见(高安全)
0x6C26AB73B725
0x4AC703FDDDE9
0xDCDF1DEFE6A3
0xA14D22F48BC1
0xBED9DA9DD0CE
......
• 支持用户侧加密敏感数据
• 云数据库全程处理密文数据
Application/Database Services
数据可查询(全功能)
?
• 支持密文数据上的查询计算
• 兼容PG中的任意SQL查询
Inaccessible
SQL
SQL
SQL
Balance BranchID
0x7F632FD0172D
0xC1F5680E4AB5
0x2AE0A0490C5B
0x5354DF60B937
0xA4392C6C0CA1
...... 0xE7FA882EF20F3B8F
0x87FC50491C9B7F9C
0xCF435347CF6E155A
0xFDB11AC3DC55BA9B
0x7026E351DA6B59D7
......
执行结果
Balance
0x1B787CD2E838
BranchID
0xACCA00CFE0DAA04A
83. Oracle迁移
Oracle Migration
84. Oracle架构迁移标准化解决方案
数据库和应用迁移(Advcanced Database and Appliction Migration,简称ADAM)是阿里巴巴基于内部多年的
Oracle数据库和应用架构梳理、架构选型、系统改造经验,研发的一套帮助企业客户进行传统数据库和应用架构改
造、云化的解决方案产品,提供企业从数据和应用架构梳理、架构选型、业务改造、数据迁移、系统割接及运维优化
等一整套产品化服务能力,并结合丰富的合作伙伴生态,为企业用户提供专业数据和应用改造解决方案。
评估
数据库智能分析
数据采集
•
•
•
采集Oracle
采集应用
安全、脱敏
决策
•
•
•
•
Oracle数据库画像
识别Oracle关键用法
可行性分析
对象兼容分析
目标数据库决策
应用评估分析
•
•
•
•
评估Oracle对象兼容
评估可行性
评估风险
评估目标库规格
评估实施工作量
数据库&应用改造
•
•
•
•
•
•
•
改造建议
改造点分级、定位
自动兼容性转换
存储过程转Java
SQL在线翻译工具
数据库对象改造
应用对象改造
•
•
•
•
实施 优化
项目实施 割接护航
ADAM studio
DTS
结构迁移/订正
SQL对测工具
•
•
•
•
数据库护航
性能评测
优化服务
运维保障
85. ADAM - ORACLE迁移全链路解决方案
Adam产品服务+ADAM认证迁移生态工具(阿里云DTS+DSG for ADAM等)+应用交付生态
On-Premise
DTS
源端数据库
目标数据库
其他云
混合云
搬站评估 RDS MYSQL/PG
架构发现 POLARDB
数据库选型
业务
迁移评估
应用改造
业务系统
ADB
POLARDB BOX
……
应用解构
……
数据迁移
…
基于阿里巴巴多年的最佳实践
科学的方法论
智能系统
专业服务
Oracle”一键上云” PolarDB for Oracle
PolarDB for Oracle
•
•
•
•
高度兼容Oracle
海量存储、享受云原生技术的普惠
极速弹性应对突增负载
数据库安全稳如磐石
86. Oracle 迁移的科学方案选型
【大型核心系统】
去 IOE
【中小型业务系统】
• Oracle 扩展规模受限 ,需分布式重构 • 兼容 Oracle 语法,快速迁移
• 微服务、分布式重构
避免存储过程,合理使用分布式事务 • 无需进行新架构设计
可持续使用存储过程等数据库能力
• 充分利用新架构带来的灵活性及规模效应
OLTP推荐方案:PolarDB-X 分布式
OLAP 推荐方案:AnalyticDB 实时分析
【科学的迁移建议】
• 快速替代,但无法无限扩展
推荐方案:PolarDB 兼容Oracle语法
一写多读扩展
Oracle
• 数据库采集分析
• JAVA 应用采集分析
• 增量迁移,降低割接停机时间
迁移推荐报告
DTS 数据传输
增量同步
目标
目标
目标
数据库
数据库
数据库
87. 技术落地+创新
Technology + Research
88. 全球顶级科技成果:核心技术突破
顶级数据库与大数据国际会议ACM SIGMOD 2019大会报告介绍阿里巴巴数据库技术
如何支持2018双11场景
89. OLTP核心技术突破及奖项
世界互联网大会
领先科技成果
中国数据库大会
2019年度最佳创新产品
信通院
关系型云数据库认证
90. OLAP核心技术突破及奖项
信通院能力评测
分布式分析型数据库
600节点大规模性能测试
91. 阿里云数据库总结
92. 企业级数据库云服务
代表自主研发产品
工具
产品
引擎
产品
DTS
数据传输服务,异构多活数据同步中
心
ADAM
数据库和应用迁移评
估 (Oracle)
DMS
数据管理服务,数据库统一管理
/DevOps/研发效率与安全
代表基于开源及第三方产品
DBS
数据库云备份服务
DAS
混合云自治数据库管理
OLTP: 在线交易 OLAP: 分析在线化 PolarDB-X
分布式关系型数据库系统,横向扩展架构设计
应用于跨IDC多活和双十一等高并发业务场景 AnalyticDB
海量数据实时高并发实时在线智能化分析 GraphDB
高性能分布式缓存系统及基
于此的图数据库 TSDB
时序时空数据库
/IoT, 5G
Data Lake Analytics
Serverless化的联邦数据湖交互式分析服务
集成Presto+Spark 交互式分析 Hbase (Lindorm)
分布式列式存储数据库,结
构化和半结构化数据 MongoDB
文档型数据库
PolarDB
云原生数据库,基于共享存储计算分离架构的软硬件
一体化设计、弹性缩扩容
AliSQL-MySQL/PG/MSSQL/MariaDB/PPAS
开源及第三方商业数据库
运营
管控
代表基于开源自主可控产品
云管控平台DBaaS 数据库云服务
Clickhouse
开源及第三方OLAP产品
NoSQL: 非结构化及专有领域
Redis (Tair)
缓存云服务、提供持
久化能力
全链路监测与分析
Cassandra
开源KV存储
93. Gartner评估数据
Analyst Report by Gartner
94. 国际化
International Market
95. 以自主技术,扩展全球业务
让阿里云基础设施
服务全球数据库用户
•
•
•
•
自主创新:坚持自主研发,形成创新竞争力及专利保护,冲击全球指标
生态为本:支持国产芯片、操作系统、中间件,实现上下游市场化规模
开放融合:全面兼容 Oracle、MySQL、PG 等协议,降低迁移门槛
全球战略:依托全球化战略,以一带一路为基础,将阿里云数据库推向全球
96. 自主技术+产品全球竞争
AWS
Azure
Google
POLARDB
Hyperscale*
SQL Data Warehouse
Bigquery
BigQuery
Citus/Hyperscale
AWS DMS
ADB
MongoDB *
Cosmos DB
Data Lake Analytics
Alibaba
Azure DMS
• 英文文档+案例:提升文档和案例国际化水平
• 全球同发:核心产品实现全球同发
Data Lake Analytics
PolarDB分布式(DRDS+)
DTS
97. 总结
Conclusion
98. 数据库上云/迁移是一个生态,而不是一个项目
数据管理DMS
数据库开发者工作台
企业数据库研发管理套件
数据访问
结构设计
数据分析
智能诊断优化
研发
规范
规则
引擎
实时数据处理
云外数据库
数据同步与传输
DTS
SQL Server
流程
管控
权限
管控
任务
管控
时序/时空数据
(IoT、监控、时空信息)
在线应用
数据上云
MySQL/MariaDB
数据库实验室
缓存/KV数据
分布式扩展
DRDS
关系数据
文档数据
图数据
数据缓存
Redis/Tair
时序/时空数据
TSDB
Oracle
关系型数据库RDS
DB2
PostgreSQL
Redis
混合云数据库管理
DAS: HDM
AliSQL-MySQL/SQL
Server/PostgreSQL
数据同步与传输
DTS
HBase…
文档型数据
MongoDB
图数据
GraphDB
海量数据存储
Hbase
DTS数据同步/分发
MongoDB
数据库备份
DBS
云原生数据库
PolarDB
PolarDB-X
在线
分析
分析型数据库:
实时交互式在线分析
AnalyticDB
数据湖服务
Data Lake Analytics
(Presto+Spark)
非结构化多模数据存储
HBase
99. 总结
产品架构与技术创新: 云原生 + 分布式 (弹性、高可用)
数据挑战: 多模, 结构化与非结构化数据 (多源异构数据)
数据处理与分析:海量数据分析在线化 (实时在线交互式分
析)
系统能力提升: 智能化 + 安全 (使用方便可靠、运维简易)
数据库和应用迁移 ADAM
数据传输 DTS
自动生成应用评估、迁移与实施报告
一键无缝迁移上云
PostgreSQL
Oracle
MySQL
DB2
阿里云市场及第三方合作伙伴
丰富的第三方合作生态
AnalyticDB
云原生+分布式
支持PB级数据库实时分析
100. 谢谢!
Q&A