阿里云 - MaxCompute研究

news2025/1/20 18:36:03

一、官方介绍

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

17年的时候,阿里云论坛上有一篇文章:阿里云大数据利器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产品没有具体的版本,所有云上用户都是相同的产品版本,更新记录见:重要功能发布记录 (aliyun.com)

驱动版本:

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

数据类型版本:

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

  • 1.0数据类型版本

  • 2.0数据类型版本

  • Hive兼容数据类型

四、基础特性

MaxCompute SQL:

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

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

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

  • MaxCompute SQL不支持事务、索引。

  • 语法的差异:与其他SQL语法的差异 (aliyun.com)

MaxCompute Tunnel:

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

  • 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 (aliyun.com)

  • 使用JDBC连接 (aliyun.com)

  • 数据类型版本说明 (aliyun.com)

  • Tunnel操作 (aliyun.com)

  • Tunnel命令与Tunnel SDK参考 (aliyun.com)

  • 官方文档:

  • MaxCompute Reader (aliyun.com)

  • MaxCompute Writer (aliyun.com)

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

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

其他参考资料:

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

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/161326.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

全国青少年软件编程(Scratch)等级考试一级考试真题2022年12月——持续更新.....

1.小明想在开始表演之前向大家问好并做自我介绍,应运行下列哪个程序?( ) A. B. C. D. 正确答案:D 答案解析: 外观积木配合显示时间,才能看清楚内容。 2.舞台有两个不同的背景,小猫角色的哪个积木能够切换舞台背景?( ) A.<

UVC静态杀菌模组的工作原理及应用

现代紫外线消毒技术是基于现代防疫学、光学、生物学和物理化学的基础上&#xff0c;利用特殊设计的高效率&#xff0c;高强度和长寿命的C波段紫外光发生装置&#xff0c;产生的强紫外C光照射空气或物体表面&#xff0c;当空气或固体表面中的各种细菌、病毒、寄生虫、水藻以及其…

C/C++ 三维数组和二维数组指针的结合

示例程序&#xff1a;#include <iostream> #include <stdio.h> int main() {int a[3][4] {{1,2,3,4},{2,3,4,5},{3,4,5,6}};int b[3][4] {{10,11,12,13},{11,12,13,14},{12,13,14,15}};int(*aa[2])[4] { a,b };int* p1[3] {a[0],a[1],a[2]};int* p2[3] {b[0],…

小学三年级奥数(和差倍问题)

例题5&#xff1a;学校合唱团成员中,女生人数是男生的3倍,而且女生比男生多80人&#xff0c;合唱团里男生有多少人&#xff1f;女生有多少人&#xff1f;思路分析&#x1f604;&#xff1a;抓住关键语句&#xff0c;女生人数是男生的3倍&#xff0c;那么把男生看成1份&#xff…

《图机器学习》-Graph as Matrix:Page Rnak,

Graph as Matrix一、Graph as Matrix二、PageRank三、PageRank&#xff1a;How to solve&#xff1f;四、Random Walk with Restarts and Personalized PageRank五、Matrix Factorization and Node Embedding一、Graph as Matrix 本小节将从矩阵的角度研究图形分析和学习。 把…

centos 一个ip绑定双网卡

nmcli con show (绿正常&#xff0c;黄白不正常) nmcli con del uuid &#xff08;eg&#xff1a;nmcli con del 585bdacc-314f-423e-a935-18295d0fb48b&#xff09; nmcli con add type bond ifname bond0 mode active-backup &#xff08;bond0只是一个名称&#xff0c;可以…

操作系统导论-并发

操作系统导论-并发 一.并发 操作系统为了进程能有多个执行点&#xff0c;为进程提供了一种抽象&#xff1a;线程。线程与进程类似&#xff0c;一个进程中的所有线程共享地址空间&#xff0c;但有自己独立的栈。 1.并发问题 线程的执行顺序也需要操作系统来进行调度。由于线程…

DeViSE:A Deep Visual-Semantic Embedding Model

这篇是2013年文章提出的DeViSEDeViSEDeViSE,主要是综合了传统视觉识别的神经网络和词向量处理word2vecword2vecword2vec中的Skip−gramSkip-gramSkip−gram模型&#xff0c;实现了一个视觉和语义兼顾的ZSLZSLZSL模型&#xff0c;取得了 较好的效果&#xff0c;时至今日&#xf…

【阶段三】Python机器学习21篇:机器学习项目实战:GBDT算法的核心思想、原理概述、原理举例与GBDT回归模型

本篇的思维导图: GBDT算法的核心思想 GBDT是Gradient Boosting Decision Tree(梯度提升树)的缩写。GBDT算法也是一种非常实用的Boosting算法,它与AdaBoost算法的区别在于:AdaBoost算法根据分类效果调整权重并不断迭代,最终生成强学习器;GBDT算法则将损失函数的…

浅聊版本发布

在一般情况下&#xff0c;升级服务器端应用&#xff0c;需要将应用源码或程序包上传到服务器&#xff0c;然后停止掉老版本服务&#xff0c;再启动新版本。但是这种简单的发布方式存在两个问题&#xff0c; &#xff08;1&#xff09;在新版本升级过程中&#xff0c;服务是会暂…

Qt 之 findChild

文章目录一、简述二、原型三、使用示例注意&#xff1a;Widget根据容器的不同寻找的方式不一样比如QWidget_3里面有LineEdit只需要直接找ui.QWidget_3但是如果是QStackWidget里面的化就是直接放ui->stackedDecive2->widget(0)里面就可以了一、简述 在Qt编程过程中&#…

Arm Linux Can

Arm Linux Can一:can-utils 安装二:can-utils 使用can网络关闭can波特率设置查询can0设备的参数设置can网络开启查询工作状态can发送数据can接受数据三:can回环测试四:C语言CAN编程初始化数据结构数据发送错误处理过滤规则回环设置五:Linux 系统中CAN 接口应用程序示例报文发送…

Spring 整合 Redis 的三个简单步骤

一、导入 Redis 依赖 1、导入 Redis 客户端 jar 包依赖 导入 jar 包是需要注意&#xff0c;Redis 是属于 CS 架构模式&#xff0c;服务端需先启动&#xff0c;然后客户端主动去连它。但是客户端怎么去连接服务端呢&#xff1f;这里有两种方式&#xff1a;一种是 Jedis 客户端…

糖果(差分约束+找最小值)

糖果 题目描述 幼儿园里有 n 个小朋友&#xff0c; lxhgww 老师现在想要给这些小朋友们分配糖果&#xff0c;要求每个小朋友都要分到糖果。 但是小朋友们也有嫉妒心&#xff0c;总是会提出一些要求&#xff0c;比如小明不希望小红分到的糖果比他的多&#xff0c;于是在分配糖果…

区块链技术相关概述

第一节区块链技术相关概述一、区块链定义区块链其实就相当于一个去中介化的数据库&#xff0c;是由一串数据块组成的。狭义&#xff1a;区块链是就是一种按照时间顺序来将数据区块以顺序相连的方式组合成的一种链式数据结构&#xff0c;并以密码学方式保证的不可篡改和不可伪造…

WebDAV之葫芦儿·派盘+MiXplorer

MiXplorer 支持WebDAV方式连接葫芦儿派盘。 手机内存不够用了?东西太多清理不过来?快来试试这款MiXplorer。 MiXplorer是一款非常强大实用的手机文档管理器,能给用户提供了一系列的文档处理功能,包括本地文件浏览、文件排序、文件筛选、切换视图、新建文件、添

SSH免密登录配置

情况 服务器A: 192.168.0.101 服务器B: 192.168.0.102 在服务器A上 可以使用 ssh root192.168.0.102 无需密码登录到192.168.0.102 配置 服务器A: 192.168.0.101 上查看是否有ssh公钥 1.进入.ssh目录&#xff1a; cd ~/.ssh 2.找到id_rsa.pub文件&#xff1a; ls 3.查看公钥…

ucos3+emwin+appwizard控制硬件LED

1.新建appwizard项目2.AppWizard 设计器导出代码&#xff0c;点击 File→Export&Save 3.移植代码到keil其中&#xff0c;Soure 和Resource 中的C文件&#xff0c;添加到项目代码Simulation和Soure 和Resource 中的h文件,添加到编译器的include path。修改Source\Generated下…

Docker容器管理常用

Docker容器管理常用docker容器管理命令创建容器进入容器Attach和exec暂停容器删除容器创建容器并在停止时销毁容器查看容器查看容器的详细信息查看容器执行的完整命令查看容器日志查看已退出容器的日志查看容器指定日期的日志修改容器名指定容器实例的主机名容器特权privileged…

从零开始学习Redis

非关系型数据库简述 关系型数据库(SQL)&#xff1a;Mysql,oracle 特点&#xff1a;数据和数据之间、表和字段之间&#xff0c;表和表之间是存在关系的。 优点&#xff1a;数据之间有关系、进行数据的增删改查时非常方便、关系型数据库有事务操作&#xff0c;保证数据的完整性…