下一代企业级云上数据分析服务:Data Lake Analytics

0. Data Warehouse VS Data Lake

0.1 传统数仓

  • 数据来源于各类云数据存储、NoSQL和关系型数据库等系统,比如OSS、Table Store、NAS、 云HBase、RDS、PolarDB等;
  • 数据以实时、分钟、小时、天等级别进行ETL抽取与同步到数仓系统中;
  • 在数仓中进行实时、定时调度、汇总计算分析。

关注到数仓的实时同步、实时海量数据的分析能力,可以关注阿里云的分析型数据库AnalyticDB(https://www.aliyun.com/product/ads),在云上打造实时数仓的解决方案。

下一代企业级云上数据分析服务:Data Lake Analytics_第1张图片

从数据、Schema、价格、性能、数据质量、用户、分析的workload等各类特征维度比较传统数仓和Data Lake的解决方案和应用场景的区别:(注:部分内容翻译于:https://amazonaws-china.com/big-data/what-is-a-data-lake/)

特征
Data Warehouse(传统数仓)
Data Lake
数据
来自于交易型系统的典型的关系型数据和各类业务线的应用数据
来自IoT物联网设备、网站、移动设备、社交媒体和企业应用的各类非关系型和关系型数据
Schema
Schema-on-write
(在数仓规划和实现前预先设计好Schema和ER关系)
Schema-on-read
(分析时确定或伴随着分析时进行获取)
价格、性能
更高的数据存储开销,获得最好的分析查询性能
比较低的数据存储开销,以还不错的速度获取分析查询结果
数据质量
高度策划、清洗过的数据,提供最核心关键的数据信息和决策支持
任何数据(清洗或者未清洗过的)
用户
Business analysts
Data scientists, Data developers和 Business analysts (使用高度策划和清洗过的数据)
分析
批量报表、BI和可视化展现
机器学习、预测分析、数据发现和画像

0.2 Cloud Data Lake分析分层

在云上构建数据湖分析场景的架构分层比较清晰,自底向上分三层:

  • 第一层:多样选择的“南向多模”云原生数据存储和数据库服务。用户面向一系列云原生的数据存储服务和云数据库系统存储、摆放自己的数据,多样的选择包括:性价比高的对象云存储(非常方便存储文件,结构化、半结构化、非结构化的raw data,多媒体文件),NoSQL(TableStore、云HBase等),RDS、PolarDB等云数据库服务。
  • 第二层:面向“南向多模”而构建的云原生Data Lake分析服务层。该层强调云原生Cloud Native中很重要的一个特质,就是Serverless无服务器化,是云上打造SaaS化的基础服务,除了Data Lake分析场景,还有更加泛在的Serverless PaaS(https://serverless.aliyun.com/)和FaaS(比如阿里云的函数计算: https://www.aliyun.com/product/fc)。本文重点关注Data Lake分析场景的Serverless分析能力,总的来看我们总结为三个方面:

    • 第一,Elastic。强调弹性化能力,能够按需、及时弹性,有预测性,智能的混合负载处理能力;
    • 第二,Resilient。用户无感知的高可用能力,包括透明的滚动升级、快速Failover、跨AZ(可用区)的容灾能力等;
    • 第三,Federated & Analytical。面向多模的联邦分析能力,包括对多种格式、系统的分析对接能力,全面的分析功能和优秀的交互式分析性能和体验,包括数据、计算并行化处理能力,良好的接口兼容能力等。
  • 第三层:数据分析应用、可视化应用层。基于Data Lake分析服务层打造的业务逻辑,还包括云上的数据分析工具和产品DataV( https://data.aliyun.com/visual/datav ),QuickBI( https://data.aliyun.com/product/bi ),或者未来在云市场( https://market.aliyun.com/ )上上线的各类其他数据分析产品和工具等。

在云上,用户能够非常方便的直接与三层的云产品、服务交互,构建自己的云数据湖分析场景和解决方案。

下一代企业级云上数据分析服务:Data Lake Analytics_第2张图片

1. Data Lake Analytics概述

1.1 Data Lake Analytics生态分层

在上一节Cloud Data Lake分析分层的基础上,Data Lake Analytics的生态分层分为:Result结果层,Serverless分析层,数据源Source层,以及BI SaaS层。

  • 数据源Source层:支持OSS、NoSQL(TableStore等)、RDS(MySQL、PostgreSQL、SQL Server)等数据的并行化联邦分析;
  • Serverless分析层:是Data Lake Analytics的核心计算、分析层;
  • Result结果层:通过Data Lake Analytics内置的多源、多路的ETL能力,将分析结果回流到OSS、NoSQL系统、RDS等RDBMS关系型数据库,以及一些其他的数据缓存系统等;
  • BI SaaS层:兼容性在持续增强,目前支持Qlik、Tableau、Microstrategy、阿里云QuickBI以及其他主流MySQL客户端工具以MySQL数据源的方式,连接Data Lake Analytics服务进行分析。

下一代企业级云上数据分析服务:Data Lake Analytics_第3张图片

1.2 产品特点

无服务器化
标准SQL与连接
异构数据源
优化的计算引擎
  • 无基础设施和管理成
  • 零启动时间
  • 透明升级
  • QoS弹性服务
  • 兼容标准SQL
  • 丰富的内置函数支持
  • JDBC/ODBC支持
  • BI工具兼容
  • 激活OSS数据分析需求
  • 激活Table Store数据SQL服务
  • 跨多数据库实例的联邦数据分析
  • 多数据源轻松互联分析
  • Analytics in “Data Lake”
  • 支持非结构化数据
  • 向量化执行优化
  • 算子流水线优化
  • 资源隔离与优先级
  • FPGA/GPU加速(待推出)

2. Data Lake Analytics云上部署架构

在单个阿里云region内,Data Lake Analytics服务的部署架构如下所示:

  • Alibaba Cloud Management Zone(OXS区)

    • Admin Proxy属于产品的管控节点,部署在OXS区,向下负责与阿里云售卖系统、计量、ALB、SLA、云监控、SLS、RAM等系统交互,完成所有云产品属性的管控和服务功能,向上负责提供POP API,为产品控制台提供服务入口;
  • Alibaba Cloud Public Cloud Zone(售卖区)

    • DLA所有服务角色都运行于VPC内的ECS,包括Resource Manager,Frontnode,Computenode,Meta Store等;
    • Resource Manager是Data Lake Analytics资源调度的大脑,负责服务进程拉起、看护、版本升级;
    • Resource Manager负责调用为DLA定制化的ROS模板,进行各个阿里云region上DLA服务的初始化;
    • Resource Manager还负责根据集群服务的资源利用率和繁忙情况,控制计算服务节点的水位和ECS水位,其中,ECS水位,通过调用ESS进行弹性伸缩,有效控制集群资源利用率;
    • Frontnode是DLA查询分析服务的入口,多个Frontnode挂载在ALB的EIP后,提供查询访问连接的负载均衡;
    • Computenode为无状态的查询任务计算节点;
    • Meta Store服务为DLA集群的元数据中心,基于VPC内RDS for MySQL存储,为其他服务角色提供统一的元数据存储和查询服务。
  • 通过ALB提供的服务接口支持SingleTunnel VPC、经典网络IPv4和经典网络IPv6的服务入口(Data Lake Analytics是阿里云公共云上第一批支持IPv6服务入口的产品之一:https://www.aliyun.com/solution/ip/ )。

下一代企业级云上数据分析服务:Data Lake Analytics_第4张图片

3. 针对数据湖存储OSS的分析

3.1 目标用户与应用场景举例

0)对存储在OSS中的数据有数据分析需求的人;
1)熟悉SQL的云上开发和分析人员;
2)对云上数据有临时探索、分析、发现的人;
3)寻求在OSS上构建Data Lake的用户和企业。

下一代企业级云上数据分析服务:Data Lake Analytics_第5张图片

3.2 典型使用流程

0) 用户把业务产生的数据如Log、CSV、JSON等格式的文件,直接上传到OSS,然后用Data Lake Analytics直接指向文件或者文件夹进行建表查询,使用BI工具进行业务数据分析展现;

image.png | left | 713x104

1)用户在其他Hadoop生态的Legacy系统上有Parquet、ORC、RCFile、Avro等格式的数据,直接复制上传到OSS,然后用Data Lake Analytics直接指向文件或者文件夹进行建表查询,使用BI工具进行业务数据分析展现;

image.png | left | 710x99

2)为了让后续OSS上的数据分析具备更好的查询性能和更低的存储成本,可以把数据进行格式转换,比如转换成Parquet或ORC格式来提升数据反复分析的性价比。

下一代企业级云上数据分析服务:Data Lake Analytics_第6张图片

在TPC-H原始数据量在1GB的情况下,各类数据格式的对应数据量比例如下图所示。

下一代企业级云上数据分析服务:Data Lake Analytics_第7张图片

3.3 DBS结合Data Lake Analytics的数据备份查询分析

  • DBS ( https://www.aliyun.com/product/dbs )服务是云数据库的数据备份服务,提供数据的全量和增量备份;
  • DBS备份数据存储在OSS上,存储成本较低;
  • 过去对于备份数据基本没有分析能力,DBS结合DLA后,无需进行备份恢复,就能直接对OSS上的历史备份数据进行分析;
  • DBS结合DLA,使得用户围绕云上数据库的备份与恢复、甚至历史数据分析的整个体验大大提升。

下一代企业级云上数据分析服务:Data Lake Analytics_第8张图片

4. 结合OSS Select优化DLA的查询性能

OSS Select是OSS团队开发的靠近OSS存储的单文件简单查询分析服务(https://yq.aliyun.com/articles/593910),由于OSS Select更靠近OSS,加上OSS Select对CSV文件的分片索引优化和数据反序列化优化,Data Lake Analytics结合OSS Select在CSV文件的分析场景下,性能提高50% ~ 90%不等,在大文件数据过滤的极端场景下,有数十倍的性能提升。在TPC-H SF 10(原始10GB数据)的workload测试下,DLA开启OSS Select的查询计算下推功能和不开启的查询比较如下图所示。

下一代企业级云上数据分析服务:Data Lake Analytics_第9张图片

5. 安全与跨云产品访问

安全永远是云上数据访问和操作的标准,Data Lake Analytics在云产品的各个层面follow云上的安全实践:

  • 云账号、子账号在控制台的访问控制;
  • DLA自建服务账号通过KMS信封加密技术,保障用户服务账号的安全性;
  • 采用数据库体验的ACL机制,进行对象的授权与访问控制;
  • 售卖区服务角色全部部署于VPC内,保障计算、服务实例的网络隔离性;
  • 跨云产品的服务访问,全部通过RAM角色授权 + STS方式进行访问。

下一代企业级云上数据分析服务:Data Lake Analytics_第10张图片

6. Data Lake Analytics数据流

在Data Lake Analytics整体上下游数据流生态中,目前主要支持OSS、Table Store、AnalyticDB和RDS(MySQL、PostgreSQL和SQL Server)。

下一代企业级云上数据分析服务:Data Lake Analytics_第11张图片

源(Source,查询)和目标(Sink,数据回流)的详细支持情况列表:

数据系统
源(查询
查询优化
目标(数据回流)
写入优化
OSS
1536130838741-5b18bd19-b57a-4c36-b997-fe
支持OSS Select单文件的计算下推优化
1536130838741-5b18bd19-b57a-4c36-b997-fe
Table Store
​​
1536130838741-5b18bd19-b57a-4c36-b997-fe
针对Table Store SDK进行列式压缩调用返回优化,性能提升近4倍
​​
1536130838741-5b18bd19-b57a-4c36-b997-fe
AnalyticDB
​​
1536130838741-5b18bd19-b57a-4c36-b997-fe
支持分区级别并行优化
​​
1536130838741-5b18bd19-b57a-4c36-b997-fe
数据batch insert到AnalyticDB表中
RDS
(MySQL,PostgreSQL,SQL Server)
​​
1536130838741-5b18bd19-b57a-4c36-b997-fe
针对包含AUTO_INCREMENT列的表,进行range切片的数据分片并行查询优化
1536130838741-5b18bd19-b57a-4c36-b997-fe
MongoDB
​​
1536130838741-5b18bd19-b57a-4c36-b997-fe
​​
Redis
​​
1536130838741-5b18bd19-b57a-4c36-b997-fe
​​
PolarDB
​​
1536130838741-5b18bd19-b57a-4c36-b997-fe
​​
1536130838741-5b18bd19-b57a-4c36-b997-fe

7. 小结

Data Lake Analytics(https://www.aliyun.com/product/datalakeanalytics)产品公测二维码:

下一代企业级云上数据分析服务:Data Lake Analytics_第12张图片

技术介绍、教程、使用相关

  • Data Lake Analytics-数据分析时代迎来新变革
  • 为数据赋予超能力,阿里云重磅推出Serverless数据分析引擎-Data Lake Analytics
  • 基于 DataLakeAnalytics 的数据湖实践
  • 教程:使用Data Lake Analytics + OSS分析CSV格式的TPC-H数据集
  • 教程:Data Lake Analytics + OSS数据文件格式处理大全
  • Data Lake Analytics中OSS LOCATION的使用说明
  • 教程:如何使用Data Lake Analytics创建分区表
  • 使用Data Lake Analytics从OSS清洗数据到AnalyticDB
  • OLAP on TableStore:基于Data Lake Analytics的Serverless SQL大数据分析
  • 如何在阿里云上使用Data Lake Analytics分析Table Store数据
  • 教程:使用Data Lake Analytics读/写RDS数据

应用场景、案例

  • 搭乘阿里云Data Lake Analytics快车,探索区块链大数据世界

你可能感兴趣的:(下一代企业级云上数据分析服务:Data Lake Analytics)