全部产品
云市场

大数据

更新时间:2019-07-02 10:01:53

面向 AWS 专业人员的阿里云

本文讨论 AWS 和 Alibaba Cloud 在其各自的云环境中提供的大数据服务的主要区别和相似之处,本文主要讨论以下服务类型情况和它涵盖以产品:

1. 数据采集

2. 数据计算

3. 数据分析

4. 数据可视化

5. 数据业务流程

以下表格列出了 AWS 大数据产品与 Alibaba Cloud 大数据产品的对比。

特性AWSAlibaba Cloud
数据采集AWS KinesisAlibaba Cloud Log Service

Alibaba Cloud DataHub
数据计算AWS Elastic MapReduce

AWS Redshift
Alibaba Cloud E-MapReduce

Alibaba Cloud MaxCompute
数据分析AWS QuickSightAlibaba Cloud Quick BI
数据可视化N/AAlibaba Cloud DataV
数据业务流程AWS Glue

AWS Data Pipeline
Alibaba Cloud DataWorks

1. 数据采集

AWS Kinesis 和 Alibaba Cloud Log Service & DataHub 都可以用来将数据提取或者采集到各自的云环境中或者对应的数据模型中。但是,每个服务使用不同的服务模型来完成此任务。

1.1 服务对比

AWS Kinesis 与 Alibaba Cloud Log Service & DataHub 的特性和术语对应关系如下:

特性 AWS Kinesis Alibaba Cloud Log Service Alibaba Cloud DataHub(中国站)
客户端支持&采集方式 原生Agent 原生Agent 原生Agent
开源客户端 开源客户端 开源客户端
API 30+采集端(Logstash、Fluent等) 多种采集端(移动设备、应用软件、网站服务、传感器等)
N/A API/SDK API/SDK
客户端扩容 N/A 支持 支持
保存天数 1 ~ 7 天 1 ~ 365 天 7 天
流计算支持 开源流计算引擎+Kinesis Analytic 开源流计算引擎 ARMS + Stream compute国际站后续上线,云监控. 支持流计算引擎 Stream Compute
部署地点 Region Region (global) Region (public beta)
投递目标端 S3/RedShift/ES OSS/MaxCompute/Table Store OSS/MaxCompute/等
大小 1 MB 3 MB 1 MB
吞吐量 5 MB/s, 5000 records/s. 无上限 弹性 最高支持单主题(Topic)每日T级别的数据量写入,每个分片(Shard)支持最高每日百GB级别的写入量
延时 S3/ES: 60~900/s

Redshift: >60s
OSS/Table Store: 60~900/s.

MaxCompute: 15 min.
最大延迟5min.
存储成本 USD 0.02/GB USD 0.01/GB 公测,暂时不收费
ETL 支持 Lambda JSON/CSV/Parquet

Function computer
对接 MaxCompute和blink平台,基于这两个平台上的etl工具都能用.
定价策略 Kinesis pricing Log Service pricing 公测,暂时不收费
安全性 自行定义用户和角色的权限+分组+访问控制. https + 传输签名 + 多租户隔离 + 访问控制 提供企业级多层次安全防护,多用户资源隔离机制提供多种鉴权和授权机制及白名单、主子账号功能.

1.2 主要功能情况

AWS Kinesis是提供流式计算的云服务提供者,让用户可以实时收集和处理数据。AWS Kinesis 提供多种核心能力,可以经济高效的出来对应的数据流。同时具有相应的灵活性,让您可以选择最符合应用程序需求的工具。

默认情况下,添加数据流的时间记录可以在加后的最长24小时内进行访问。您可以通过启用延迟数据保留期限来将该限制值提升到7天。记录内的数据块最大尺寸为1MB。用户可以通过使用REST API或者Kinesis Producer Library(KPL)将数据发送到AWS Kinesis。

Alibaba Cloud Log Service主要为日志采集,日志处理和实时分析的一站式服务。采集方式LogHub支持客户端、网页、协议、SDK/API(移动、游戏)等多种日志采集方式,所有采集方式均基于Restful API 实现,除此之外您也可以通过API/SDK实现新的采集方式。Alibaba Cloud Log Service数据块的最大尺寸是3MB,保留的数据期限用户可以选择为1-365天。ETL支持更加丰富,在吞吐量上支持弹性,无上限。

Alibaba Cloud DataHub当前为公测版本,目前只在国内开放,国际站后续开放。Alibaba Cloud DataHub服务可以对各种移动设备、应用软件、网站服务、传感器等产生的大量流式数据进行持续不断的采集、存储和处理。Alibaba Cloud DataHub数据块的最大尺寸是1MB,保留的数据期限为7天。 DataHub对接MaxCompute和blink平台,基于这两个平台上的ETL工具都能用。

1.3 数据投递

AWS Kinesis可以使用AWS Kinesis Firehose 将流数据加载到数据存储当中,他可以将数据量中的数据加载到AWS S3或者AWS Redshift以及AWS Elasticsearch Service中。

Alibaba Cloud Log Service可以使用LogShipper把实时采集到的数据实时投递到OSS、TableStore、MaxCompute等存储类Alibaba Cloud产品,您只需要在控制台配置即可完成,同时LogShipper提供完整状态API与自动重试功能。也可以配合E-MapReduce(Spark、Hive)、MaxCompute进行离线计算。

DataHub服务也提供分发流式数据到各种云产品的功能,目前支持分发到MaxCompute(原ODPS),OSS等。

1.4 定价

AWS Kinesis Streams定价是按碎片时间,PUT Payload Unit 和数据延迟保留期来进行定价。默认情况下,数据保留24小时。启用延长数据保留后,您需要按照额外费率针对数据流产生的每个碎片时间付费。 由于AWS Kinesis Streams使用预配模型,因此即使不使用资源,您也必须为所提供的资源付费。AWS Kinesis Firehose定价是按照数据传输量连进行付费定价。

Alibaba Cloud Log Service 提供按量计费的付费方式,根据资源的使用量进行按月梯度计费,同时日志服务增加了免费的额度,如果在免费额度内,则不收费,超过免费额度,则对超出部分进行收费,同时即将推出资源包功能,费用将更加得到优惠。

Alibaba Cloud DataHub 当前公测阶段,暂时不进行收费。

2. 数据计算

将采集到的数据收集到各自云环境后,可以转换数据,根据需要对数据进行过滤处理和计算。

2.1 服务对比

AWS Elastic MapReduce 与 Alibaba Cloud E-MapReduce 的特性和术语对应关系如下:

特性 AWS Elastic MapReduce Alibaba Cloud E-MapReduce
开源库 Apache Hadoop 和 Apache Spark Apache Hadoop 和 Apache Spark
服务集成
伸缩 手动 手动
Deployment Location Zonal Zonal
定价模型 按小时 按小时
部署单位 集群 集群
规模单位 节点(主,核心和任务) 节点(主+ slave可以扩展)
工作单位 Step Job
计算模型 MapReduce、Apache Hive、Apache Pig、Apache Spark、Spark SQL 和 PySpark。 MapReduce、Apache Hive、Apache Pig、Apache Spark、Spark SQL、Hbase 等。
Customized 引导操作 引导操作

AWS Redshift 与 Alibaba Cloud MaxCompute 的特性和术语对应关系如下:

特性 AWS Redshift Alibaba Cloud MaxCompute
计算级别 EB 级 EB 级
数据源 AWS S3、DynamoDB Activity Log、Kinesis、web app server 等 Application-generated data (RDS/OSS/AnalyticDB/SLS 等)已有数据中心(Oracle DB),独立的数据集(Hadoop Cluster)等
供应单位 节点 不适用(完全管理)
数据安全 使用VPC隔离集群,使用KMS管理秘钥 提供多层沙箱防护/监控、基于项目级别的数据保护机制、Package授权、Trusted模式、RAM、ACL授权
Zoom 手动 自动
备份管理 快照 集群灾备
部署 Zonal region
数据格式 TEXTFile、SequenceFile、RCFile、AVRO、Parquet、ORC等 TEXTFile、SequenceFile、RCFile、AVRO、Parquet、ORC等
生态链接 JDBC 和 ODBC. JDBC、ODBC、R、Python Pandas 和 IntelliJ IDEA。
社区兼容 PostgreSQL兼容等 标准SQL、MR、Tunnel等语句

2.2 主要功能

AWS EMR 是以Hadoop基础提供一种托管框架,能够以便捷、经济高效、安全的方式运行数据处理框架。AWS EMR 借助 Spark Streaming,使用和处理来自 AWS Kinesis、Apache Kafka 或其他数据流的实时数据。采用容错方式执行流分析,并将相应结果写入 AWS S3 或 HDFS 中。AWS EMR 可用于在大型数据集上快速且经济高效地执行数据转换工作负载 (ETL),例如分类、聚合和合并。

Alibaba Cloud E-MapReduce是运行在Alibaba Cloud 平台上的一种大数据处理的系统解决方案。E-MapReduce 构建于阿里云云服务器 ECS 上,基于开源的 Apache Hadoop 和 Apache Spark,让用户可以方便地使用Hadoop和Spark生态系统中的其他周边系统(如 Apache Hive、Apache Pig、HBase 等)来分析和处理自己的数据。不仅如此,用户还可以通过E-MapReduce将数据非常方便的导出和导入到阿里云其他的云数据存储系统和数据库系统中,如阿里云 OSS、阿里云 RDS 等。

AWS Redshift 数据仓库是一个企业级的关系数据库查询和管理系统。AWS Redshift 支持与多种类型的应用程序(包括商业智能 (BI)、报告、数据和分析工具)建立客户端连接。AWS Redshift Spectrum让您可以根据自己的需要自由存储数据,并在需要时随时处理。

Alibaba Cloud MaxCompute 是国内最大的大数据云服务平台,提供海量的数据存储,海量的数据计算,多组织间的数据交换。MaxCompute是Alibaba group自主研发的一套大型的分布式计算系统,MaxCompute支持多集群双活/灾备,用户不用关注基础设施稳定性,而是关注自己的业务内容,MaxCompute本身提供服务的一致性与连续性。Alibab Cloud MaxCompute 提供了一组丰富的大数据开发工具,改进了数据的导入和导出的解决方案,以及各种经典的分布式计算模型,能够更快速的解决海量数据计算问题,有效降低企业成本,并保障数据安全。

在生态连接和社区兼容方面Alibaba Cloud MaxCompute支持的丰富一些。在数据格式支持方面,Alibaba Cloud MaxCompute和AWS Redshift基本一致,数据安全方面各自都有自己的安全策略,但是Alibaba Cloud MaxCompute安全策略更加丰富。在数据备份方面,AWS Redshift 的自动快照功能可持续将集群上的新数据备份到 AWS S3。快照将以连续、递增的方式自动创建。AWS Redshift 按用户定义的周期存储您的快照,此周期可以是 1 到 35 天。而Alibaba Cloud MaxCompute 数据是存储在飞天系统的集群当中,飞天系统中盘古是一式三份的,盘古通过多master机制来保证master的可用性,从而保证数据的可靠性。盘古对外承诺两层高可用性:数据高可用性,服务高可用性。另外Alibaba Cloud MaxCompute支持定时备份数据功能。

同时MaxCompute开发了下一代引擎2.0。MaxCompute2.0作为阿里巴巴内部和阿里云的大数据平台,高性能,低成本是计算平台最根本的指标,在架构和性能两方面我们在持续优化。语言支持方面,NewSQL是我们最新推出的新一代大数据语言,结合imperative与Declarative优势。多机器协作方面,我们部署了超过10多个集群,数据作业在集群间智能调度,同时具备多集群容灾,达标金融级稳定性。计算模式方面,支持批MR,基于DAG的处理,交互式,内存计算,集群学习等多种计算模式,通过联合计算平台,做到开源兼容。

2.3 扩展性

Cloud E-MapReduce和AWS EMR有非常相似的服务模式。 利用开源大数据生态系统,(包括Hadoop, Spark,Hive,Storm,和 Pig 等)紧密集成。为用户提供集群、作业、数据等管理的一站式大数据处理分析服务。在这两种服务中,用户都会创建一个包含多个节点的群集。该服务创建一个主节点和一个可变数量的工作节点。

AWS EMR和Cloud E-MapReduce 都允许您在群集启动后手动调整群集中的节点数量。集群的大小以及扩展操作由可监控集群的性能和使用情况的用户或管理员决定如何管理。在两者中,用户都支付所提供的节点的数量。

与AWS EMR和Cloud Alibababa E-MapReduce使用的Apache Spark模型相比,如果AWS Redshift用户想要扩展或缩减群集,例如,在低使用率期间降低成本,或在大量使用期间增加资源,则必须手动完成。

MaxCompute此模型提供了更高的灵活性和安全性,功能丰富,集成一体化,且规模可以无限扩展,具有丰富的支撑工具。同时,DataWorks 和 MaxCompute 关系紧密,DataWorks 为 MaxCompute 提供了一站式的数据同步,任务开发,数据工作流开发,数据管理和数据运维等功能,详情请参见DataWorks.

2.4 成本

AWS EMR支持按需定价以及短期和长期使用的折扣。AWS EMR和E-MapReduce都按小时计价。

在购买E-MapReduce 集群时,会自动购买阿里云 ECS,所以您不需要提前准备 ECS。如果您有 ECS 的优惠折扣,这里购买时同样享有该折扣。具体请参阅 E-MapReduce pricing descriptions.

AWS Redshift计费方式为:

  1. 按需计费,没有预付成本,基于集群中的阶段类型和数量支付小时费用

  2. AWS Redshift Spectrum计费:对AWS S3中的数据运行的SQL查询,只需为扫描的自己数付费

    3.预留实例定价,通过承诺使用Redshift的适用时间,相比按需费用可以节省费用。

MaxCompute 分两种计算计费方式:

  1. 按量后付费方式。即以作业的消耗作为计量指标,在作业执行后收取费用

  2. 另一种是按CU预付费方式。即用户提前预定一部分资源,按CU预付费方式仅在 阿里云大数据平台上提供,具体计费请参阅 大数据计算服务.

3. 数据分析

对收集到的大量数据通过计算,处理和分析,使其转换为对企业有用的信息,为企业规划,产品研发,包括市场行情提供有用的价值。

3.1 服务对比

AWS QuickSight 与 Alibaba Cloud Quick BI 的特性和术语对应关系如下:

特性 AWS QuickSight Alibaba Cloud Quick BI
数据联接 强关系数据库、多维数据库、NoSQL数据库、Hadoop&本地文件. 关系数据库、多维数据库、NoSQL数据库、Hadoop&本地文件、阿里生态.
数据模型 Cube支持、系统时间周期(日、周、月、季、年)、离线数据源加速(RDS加速、高成本)。 Cube支持、系统时间周期(日、周(7种)、月、季、年、MTD、QDT、YTD、财年)、离线数据源加速(计算式加速、全覆盖、低成本)。
报表制作 标准的Table、复合型电子报表. 标准的Table、复合型电子报表(Excel专业能力)。
数据可视化 数据组件(14种)、大屏制作、筛选控件(时间、下拉、按钮)。 数据组件(16种)、大屏制作、筛选控件(时间、下拉、文本、按钮、比较、评论)。
仪表板&分享 支持 支持
权限管理 分配ADMIN或USER角色. 分为组织权限管理和行级权限管理.
数据查看 移动、web端,邮件推送. 移动、web端、门户制作、钉钉账号支持、邮件推送.
系统能力 专业性(企业级BI)、易用性(网页交互 良)、集成性(支持第三方嵌入)。 专业性(企业级BI)、易用性(网页交互 优)、集成性(支持第三方嵌入)。

3.2 主要功能对比

AWS QuickSight和Alibaba Cloud QuickBI都是基于云计算的业务分析服务,通过提高智能化的数据建模,将云的规模和灵活性引入业务分析来解决业务的需求,帮助企业完成数据分析和数据动画,同时能够在业务数据化过程中当中,提供更高效的能力和方式.

QuickSight采用SPICE,一种超快速,并行,内存计算引擎,提供快速响应的查询性能,可以同时在各种AWS数据源上执行快速交互式分析。Alibaba Cloud QuickBI是采用内置智能查询加速引擎,从而实现了可以对海量数据进行实时在线分析,无需提前进行大量的数据预处理,就能流畅地进行海量数据分析,极大提高了分析效率,Quick BI同样支持多种数据源包括阿里云的数据源以及阿里生态相关的。

AWS QuickSight和Alibaba Cloud Quick BI都支持Cube,即多位数据库或者理解为多维数据立方体, Cube的使用就是在处理数据时,把所需要的数据进行打包,尤其针对要处理的数据很大的时候,比如FineBI的FineCube,可以避免建模,数据处理起来会很快。在离线数据加速这块Alibaba Cloud Quick BI采用计算式加速,全面覆盖,比AWS QuickSitht采用RDS加速的成本低。同时Alibaba Cloud Quick BI在系统时间周期内的数据支持上面更加丰富。

都支持标准的Table,但是阿里云在符合性电子报表(Excel专业能力)这块的能力更加突出。当然标准版本只包含工作表功能,在高级版本中,才包含电子表格能力。

数据可视化方面: AWS QuickSight有一项名为AutoGraph的技术,可以根据数据属性(如基数和数据类型)选择最合适的可视化。同样Alibaba Cloud Quick BI支持丰富的数据可视化效果,满足不同场景的数据展现需求,同时自动识别数据特征,智能推荐合适可视化方案。

在权限管理这块: AWS QuickSight在创建账号的时候,默认情况下具有管理权限, AWS QuickSight用户可以邀请其他用户,且可以给其分配ADMIN或者USER角色。Alibaba Cloud Quick BI安全管控数据权限分为内置组织成员管理,支持行政级别数据权限,满足不同人不同的权限需求。

在分享和数据查看方面: AWS QuickSight可以使用服务界面中的共享图标来共享分析,仪表板或表格。在与他人共享内容之前,可以选择收件人(电子邮件地址,用户名或组名),权限级别和其他选项。同样Alibaba Cloud Quick BI支持将工作表/电子表格、仪表板、数据门户分享给其他登录用户访问,支持将仪表板公开到互联网供非登录用户访问。数据查看支持反面Alibaba Cloud Quick BI 和AWS QuickSight 都支持移动端、web端、邮件推送方式,但Alibaba Cloud Quick BI同时支持钉钉账号,可以让钉钉的用户使用。包括支持门户制作,负责将仪表板拖拽式组装为数据门户,支持内嵌链接(仪表板),支持模板和菜单栏的基本设置。

3.3 系统能力

AWS QuickSight和Alibaba Cloud Quick BI都可以支持企业级的BI能力,在集成性上都支持第三方嵌入能力。但Alibaba Cloud Quick BI具有灵活的报表集成方案,可以将阿里云 Quick BI 制作的报表嵌入到自有系统里,直接在自有系统访问报表, 并实现免登。在易用性上,Quick BI 使用起来更加简单,通过提供智能化的数据建模工具,极大降低了数据的获取成本和使用门槛,通过支持拖拽式操作和提供丰富的可视化图表控件,帮助您轻松自如地完成数据透视分析、自助取数、业务数据探查、报表制作和数据门户搭建等工作。

3.4 成本

AWS QuickSight 和Alibaba Cloud Quick BI都是基于用户数量和订阅时间来定价的,它们都提供了两种版本(标准版和企业版),它们具有不同的定价选项。AWS QuickSight 要求每年订阅。购买Alibaba Cloud Quick BI实例最多可以持续一年。您可以选择用户数量和服务时长。当您的实例将过期时,系统会发送一条消息提醒您及时续费。

4. 数据可视化

DataV是一个功能强大且易于使用的数据可视化工具,具有丰富的地理演示功能和用户友好的界面。

4.1 使用场景

  • 演示:展示业务表现数据(投资者关系,公共关系,展览,路演和接待区)。

  • 监控:利用数据推动业务增长(实时运行监控,预警和快速响应支持)。

  • 数据驱动:发现隐藏的数据值(多维数据的实时呈现可以带来新的机会)。

4.2 主要功能

4.2.1 各种方案的模板

DataV为控制中心,地理分析,实时监控和操作演示等场景提供了多种模板,可以在轻微的客户端定制后使用。 您可以在没有设计师的情况下设计出高质量的视觉表现。

4.2.2 开放和丰富的可视化组件库

除基本图表外,DataV还擅长将数据与地理信息相结合,例如基于地图的交通路线,热图和散点图。还能够绘制包括海量数据的地理轨迹、地理飞线、热力分布、地域区块、3D 地图、3D 地球,地理数据的多层叠加。此外还有拓扑关系、树图等异形图表供您自由搭配。

4.2.3 支持各种数据源

能够连接各种数据源,包括阿里云的AnalyticDB、RDS和API,支持动态请求。存储在CSV和JSON中的静态数据也被支持。

4.2.4 用户友好的界面

借助图形界面和配置小部件,用户只需使用拖放操作即可创建专业的可视化项目,只需极少的编程技能。

4.2.5 灵活发布和编辑

项目可以作为网页发布,也支持使用密码或访问令牌进行发布,以控制仪表盘上显示的访问和安全信息。 为了在拼接屏幕上显示,进行了优化以提高显示分辨率。

4.2.6 支持内部部署

在特殊情况下,数据过于机密而无法联机,或者网络访问受到限制的情况下,内部部署解决方案可能成为替代方案。 在DataV编辑器的云版本中编辑仪表板界面之后,用户可以将编辑内容打包成单个文件并下载到本地DataVServer,然后连接到本地数据库并在本地发布。

4.2.7 仪表盘广播和拼接的实用工具

DataV还为广播和拼接仪表板提供了一个轻量级的解决方案。 不同于传统的解决方案,Mscreen确保每个接口作为一个独立的过程稳定运行,并可拼接在一起,形成一个定制的解决方案,用于信号的单通道输出。

4.2.8 组件定制

DataV提供了一个二次开发环境,开发人员可以将自己的JavaScript组件集成到DataV解决方案中。 用户可以像本地组件一样配置自定义组件的数据源和样式。 开发人员也可以通过阿里云市场出售他们自己的组件库。

4.3 成本

DataV目前提供基础版和企业版两个版本,以下是版本功能明细和售价。

功能描述 基础版 ($360/年) 企业版 ($3000/年)
发布分享 - 公开发布 支持 支持
发布分享 - 加密发布 N/A 支持
发布分享 - 动态Token鉴权 N/A 支持
发布分享 - 项目拷贝他人 仅支持目标账户是企业版拷屏 企业版间可以项目拷屏,基础版可以向企业版拷屏
项目及模板 - 可用模板数 5 全部模板(更新中)
项目及模板 - 可创建项目数 5 20
数据源 - RDS for MySQL 支持 支持
Data source - Analytic DB 支持 支持
数据源 - MySQL兼容数据库 支持 支持
数据源 - CSV 支持 支持
数据源 - API 支持 支持
数据源 - 静态JSON 支持 支持
数据源 - DataV数据代理服务 支持 支持
数据源 - RDS for PostgreSQL N/A 支持
数据源 - RDS for SQLServer N/A 支持
数据源 - HybridDB for PostgreSQL N/A 支持
数据源 - 阿里云API网关 N/A 支持
数据源 - Table Store N/A 支持
数据源 - 阿里云内网IP N/A 支持
数据源 - OSS N/A 支持
数据源 - 阿里云日志服务 N/A 支持
数据源 - Oracle N/A 支持
数据源 - SQLServer N/A 支持
可视化组件 - 基础图表 支持 支持
可视化组件 - 基础地图 支持 支持
可视化组件 - 高级地图 N/A 支持
可视化组件 - ECharts 组件库 N/A 支持

5. 数据业务流程

对数据进行数据传输、数据转换等相关操作,从不同的数据存储引入数据,对数据进行转化处理,最后将数据提取到其他数据系统,完成整个数据的采集、转换、开发、分析流程。

5.1 服务对比

AWS Glue、AWS Data Pipeline 与 Alibaba Cloud DataWorks 的特性和术语对应关系如下:

功能分类 特性 AWS Glue AWS Data Pipeline Alibaba Cloud DataWorks
数据采集 实时采集 不支持 不支持 支持
批量采集 支持 支持 支持
客户端采集 支持 支持 支持
本地数据 N/A 不支持 支持
云数据 支持 支持 支持
异构数据源 S3、DynamoDB、RDS、Redshift、JDBC S3、DynamoDB、RDS、Redshift、JDBC 支持20多种(RDBMS、NoSQL、MPP、非结构化存储、大数据存储等)
数据管理 搜索发现数据 支持 N/A 支持
捕获元数据 支持 N/A 支持
版本管理 支持 N/A 不支持
捕获schema变化 支持 N/A 不支持
自动识别检测 支持 N/A 不支持
批注/阐述 不支持 N/A 不支持
收藏/结构化标签 不支持 N/A 不支持
数据血缘 N/A N/A 支持
数据转换开发 自动生成代码 支持 不支持 不支持
在线编辑 支持 N/A 支持
版本管理 通过GIT支持 通过GIT支持 支持
方式 运行在Spark容器,自动scaling 基于计算引擎(SQL,Shell scripts,EMR,Hive Pig) 基于计算引擎(ODPS SQL, SHELL, PAI)
编排及任务调度 触发方式 周期、事件触发、lambda 周期 周期、API触发
serveless 支持 支持 支持
自动重跑 支持 支持 支持
监控告警 监控仪表盘 支持 支持 支持
告警 支持 支持 支持
数据质量 离线监控 不支持 不支持 支持
在线监控 不支持 不支持 支持
自定义监控规则 不支持 不支持 支持
开放性 API N/A 支持 支持
SDK N/A 支持 不支持

5.2 产品对比概览

AWS Glue

AWS Glue是一项完全托管的ETL(提取、转换和加载) 服务,用于经济高效地对数据进行分类、清理和扩充,并在各种数据存储之间可靠地移动数据。AWS Glue由一个称为AWS Glue数据目录的中央元数据存储库、一个自动生成Python或Scala代码的ETL引擎,以及一个处理依赖项解析、作业监控和重试的灵活计划程序组成。AWS Glue是无服务器服务,因此无需设置或管理基础设施。
使用 AWS Glue 控制台可发现数据,转换它,并使其可用于搜索和查询。控制台调用底层服务来协调转换数据所需的工作。此外也可以使用 AWS Glue API 操作来与 AWS Glue 服务交互,使用熟悉的开发环境来编辑、调试和测试 Python 或 Scala Apache Spark ETL 代码。

AWS DataPipeline

Amazon DataPipeline 是一项Web服务,让您能够实现数据移动和转换的自动化。通Amazon Data Pipeline,可以定义以数据为目标的工作流程,这样一来,任务便可以根据之前任务是否成功完成来执行后续操作。

DataWorks

  • 产品定位:一站式大数据平台,覆盖数据集成、数据管理、数据开发、数据运维、数据服务共享、数据安全、数据质量等大数据生命周期中的各个阶段
  • 方法论:Cloud Data Warehouse、流计算
  • 目标用户:数据开发者(数据集成、数据开发、数据运维)、数据管理者(数据管理、数据安全、数据质量)、数据使用者(数据管理、数据服务、实时分析)
  • 使用方式:Web端
  • 部署方式:公有云Serverless、专有云
  • 开发语言:SQL、Java(OpenMR)、Python、R等
  • 服务等级:公测(数据集成已正式商业化)
  • 底层引擎:MaxCompute、Blink。

5.3 产品优劣势对比

Amazon Glue产品优势

  • 通过元数据抽象兼容不同存储形式

AWS Glue支持包括CSV、JSON等非结构化文件在内的数据,以及JDBC形式的数据库连接。通过将不同的存储形式映射为Database、Table、Schema等元数据,抹平差异,从而降低数据转换过程的开发难度,同时做到代码复用。

  • 分类器(Classifier)实现对非结构化文本的预处理

通过分类器,可以自动对获取到的非结构化文本进行结构化处理,内置12种不同格式,还支持用户通过Grok等方式自定义。实现了非常好的兼容性。

  • 支持动态元数据获取

除了手动创建或通过Crawler爬取元数据外,Glue还支持元数据的动态获取。Crawler本身支持通配符,支持新增表的元数据获取。Glue还支持通过cron格式定义Crawler的运行计划。对于新增、变更、删除的表,还支持定义不同的处理策略。通过这些措施,实现元数据对数据源的跟踪,同时还可以保留变更记录。

  • 与Spark生态紧密集成

与AWS自家的Data Pipeline不同,Glue只支持Spark on YARN一种底层引擎,并将Spark代码提交接口直接开放给用户。在ETL job的开发过程中,用户可以直接在线开发或上传PySpark或Scala文件。只需更改几个Data Frame实现类,即可完成已有Spark脚本的迁移。
同时,Glue还集成Zeppline Notebook Server与Spark Shell,作为调试环境,方便用户手工运行编写的Spark脚本。由于集成了Zeppline Notebook,Glue还能将Spark集群的计算能力开放出来,作为OLAP工具使用。

Amazon Glue产品劣势

  • 支持引擎单一

目前Amazon Glue只支持自带的Spark引擎,而不支持直接操作Redshift、S3中的数据。这种设定会造成额外的网络传输开销。

Amazon Data Pipeline产品优势

  • 支持众多计算引擎通过丰富的Activity扩展,支持EMR、Hive、Redshift、Pig、关系型数据库作为计算引擎。

  • 积木式架构,只实现核心功能,与其他产品无缝结合

Data Pipeline的使用场景和DataWorks有一定的重合。但是对比功能模型,Data Pipeline的功能相比而言要简单很多。大部分功能需要通过配合AWS的其他产品实现。

  • 面向程序员,脚本化定义,灵活性较强

Data Pipeline的图形化界面只展现了一小部分功能,且使用体验并不理想。
主要操作手段是通过JSON。JSON即一切的思路也代表了Data Pipeline的程序员化的产品设计语言。通过完善的语法定义,通过JSON可以灵活的使用Data Pipeline的很多“隐藏”功能。许多使用场景,例如参数化运行、复杂调度设置、状态继承等,都可以通过JSON来方便的定义。
相同的功能,如果使用GUI展现,需要复杂的交互设计。但是通过Json使用则规避了这个问题。面向程序员是AWS许多产品的主要设计思路。

Amazon Data Pipeline产品劣势

  • 调度模型简单

Pipeline的调度是基于时间的,并且以“天”为基本调度单位(小于天的称为高频任务,最短为15分钟)。
同时,与DataWorks不同,每一个Pipeline都是原子化、无状态化的。所谓原子化,即不同Pipeline是相互独立的。不同Pipeline不能相互触发,其中的Activity也无法交叉依赖。所谓无状态化,即Pipeline本身不支持参数输入,其中的Activity间也没有变量传递。

  • 界面简陋,功能单一

在界面设计上,Data Pipeline的界面交互极为简单,某些高级功能无法通过GUI使用;Activity脚本的编辑,只提供简单的文本框,没有语法高亮等辅助开发功能。
在功能设计上,Data Pipeline聚焦在任务调度上,其他大部分功能,需要调用AWS其他产品实现:

  1. Data Pipeline支持的数据源种类很少,但可通过Glue将数据转换为支持的类型。
  2. Data Pipeline不支持参数输入和变量传递,但可通过多种DataNode的支持来变相实现。
  3. Data Pipeline也不提供代码管理,SQL以纯文本形式保存,Jar包的上传通过S3实现。
    以上这些组合成立的前提,是DataPipeline与其他产品无缝结合,数据传输的延迟足够小,发生兼容性问题的可能性足够低。

5.4 对比结论

综上所述,在数据仓库及数据业务流程领域,DataWorks的优势在于:

  • 数据集成:支持流控,支持实时同步。
  • 数据开发:强大的在线编辑功能,体验媲美离线IDE。
  • 监控运维:支持业务基线监控。
  • 数据管理:完整的数据管理功能,更提供分级分类与数据脱敏等独特功能。
  • 数据质量:竞品中独有功能。