失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > 阿里云 - MaxCompute研究

阿里云 - MaxCompute研究

时间:2018-08-16 12:56:51

相关推荐

阿里云 - MaxCompute研究

一、官方介绍

MaxCompute是适用于数据分析场景的企业级SaaS(Software as a Service)模式云数据仓库,提供离线和流式数据的接入,支持大规模数据计算及查询加速能力。

MaxCompute适用于100 GB以上规模的存储及计算需求,最大可达EB级别,适用于大型互联网企业的数据仓库和BI分析、网站的日志分析、电子商务网站的交易分析、用户特征和兴趣挖掘等。

与阿里云其他产品做了深度融合:

DataWorks:基于DataWorks实现一站式的数据同步、业务流程设计、数据开发、管理和运维功能。

机器学习PAI:基于机器学习平台的算法组件实现对MaxCompute数据进行模型训练等操作。

Quick BI:基于Quick BI对MaxCompute数据进行报表制作,实现数据可视化分析。

二、概述产品

MaxCompute原名ODPS,是一款存储与计算分离的产品,整体设计理念和Hadoop体系类似,我们知道Hive是建立在Hadoop体系架构上的一层SQL抽象(Hadoop生态及Hive、HBase、Impala、HDFS之间的关系),而MaxCompute对外暴露的SQL接口,基本等同于Hadoop体系里的Hive。

的时候,阿里云论坛上有一篇文章:阿里云大数据利器Maxcompute学习之-假如你使用过hive,这篇文章直接点明了MaxCompute底层技术的本质。

类似于Hadoop体系中的Hive,支持分区、支持SQL、语法也与Hive基本一致;

存储与计算分离,Maxcompute的数据是在飞天文件系统,对外不暴露文件系统;

所以,如果理解了Hadoop体系,那么再去理解MaxCompute就简单多了,如果不了解Hadoop体系,建议先熟悉Hadoop体系后再学习MaxCompute。

通过上图,可以看到看到:

MaxCompute的存储层存储层类似于Hadoop里的HDFS,并且支持对接OSS等外部存储;

MaxCompute的计算引擎部分,下意识地会将其对标理解为Hadoop里的MapReduce,但是我们看到这个图里计算模型通道里还有MapReduce,那么这里的MaxCompute Engine可能是更为底层的计算引擎,上层可以对接MapReduce等一系列的计算框架;

MaxCompute的计算模型通道里,并没有更进一步地划分层级,实际上还是有一些层级和依赖关系的。

三、版本信息

产品版本:

SAAS产品没有具体的版本,所有云上用户都是相同的产品版本,更新记录见:重要功能发布记录 ()

驱动版本:

通过JDBC连接MaxCompute时,用到的驱动有多个版本,最新的驱动版本是V3.2.9:使用JDBC连接 ()

数据类型版本:

MaxCompute 2.0推出了兼容开源主流产品的2.0数据类型和Hive兼容数据类型两个数据类型版本。加上原有的1.0数据类型版本,目前MaxCompute一共支持3个数据类型版本:数据类型版本说明 ()

1.0数据类型版本

2.0数据类型版本

Hive兼容数据类型

四、基础特性

MaxCompute SQL:

MaxCompute SQL 是MaxCompute 对外提供的诸多接口之一:SQL概述 ();

适用于海量数据(GB、TB、EB级别)、离线批量计算的场景,主要用于100 GB以上规模的数据计算;

提交MaxCompute作业后,会存在几十秒到数分钟不等的排队调度,所以适合处理批作业,提交一次作业批量处理海量数据,无法在毫秒级别返回结果。不适合直接对接需要每秒处理几千至数万笔事务的前台业务系统。

MaxCompute SQL不支持事务、索引。

语法的差异:与其他SQL语法的差异 ()

MaxCompute Tunnel:

Tunnel是MaxCompute的数据通道,可以通过Tunnel向MaxCompute中上传或者下载数据:Tunnel操作 ();

Tunnel功能及Tunnel SDK当前不支持外部表操作。您可以通过Tunnel直接上传数据到MaxCompute内部表,或者是通过OSS Python SDK上传到OSS后,在MaxCompute使用外部表做映射。

内部表与外部表:

MaxCompute的表格有两种类型:内部表和外部表(MaxCompute 2.0版本开始支持外部表)。

对于内部表,所有的数据都被存储在MaxCompute中,表中列的数据类型可以是MaxCompute支持的任意一种数据类型版本说明。

对于外部表,MaxCompute并不真正持有数据,表格的数据可以存放在OSS或OTS中 。MaxCompute仅会记录表格的Meta信息,您可以通过MaxCompute的外部表机制处理OSS或OTS上的非结构化数据,例如,视频、音频、基因、气象、地理信息等。

官方参考资料:

官网介绍:

云原生大数据计算服务 MaxCompute ()

使用JDBC连接 ()

数据类型版本说明 ()

Tunnel操作 ()

Tunnel命令与Tunnel SDK参考 ()

官方文档:

MaxCompute Reader ()

MaxCompute Writer ()

DataX/odpswriter.md at master · alibaba/DataX · GitHub

DataX/odpsreader.md at master · alibaba/DataX · GitHub

其他参考资料:

阿里云大数据利器Maxcompute学习之-假如你使用过hive-阿里云开发者社区 ()

MaxCompute理解数据、运算和用户的大脑:基于代价的优化器-阿里云开发者社区 ()

如果觉得《阿里云 - MaxCompute研究》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。