关于MaxComputer sql的学习笔记(1)

MaxComputer简介

大数据计算服务(MaxCompute,原名ODPS)是一种快速、完全托管的EB级数据仓库解决方案。

分布式的计算模型对数据分析人员要求较高且不易维护。数据分析人员不仅需要了解业务需求,同时还需要熟悉底层分布式计算模型。MaxCompute为您提供完善的数据导入方案以及多种经典的分布式计算模型,您可以不必关心分布式计算和维护细节,便可轻松完成大数据分析。

DataWorks和MaxCompute关系紧密:DataWorks为MaxCompute提供一站式的数据同步、业务流程设计、数据开发、管理和运维功能。

目前阿里有一个自带方法论而且开发过程十分成熟的开发框架就是Dataphin

产品优势

大规模计算存储

MaxCompute适用于 100GB 以上规模的存储及计算需求,最大可达EB级别。(感觉这里EB级别有点不真实)

多种计算模型

MaxCompute支持SQL、MapReduce、UDF(Java/Python)、Graph、基于DAG的处理、交互式、内存计算、机器学习等计算类型及MPI迭代类算法。简化了企业大数据平台的应用架构。

强数据安全

MaxCompute已稳定支撑阿里全部数据仓库业务9年以上,提供多层沙箱防护、细粒度权限管理及监控。

MaxCompute通过了独立的第三方审计师针对阿里云对AICPA可信服务标准中关于安全性、可用性和机密性原则符合性描述的审计。审计报告请参见SOC 3报告

低成本

与企业自建专有云相比,MaxCompute的计算存储更高效,可以降低30%~50%的采购成本。

免运维

基于MaxCompute的Serverless无服务器的设计思路,用户只需关心作业和数据,而无需关心底层分布式架构及运维。

极致弹性扩展

MaxCompute提供按量付费模式下的作业级别的资源管理。用户无需受困于资源扩展难题,系统会自动扩展计算、存储、网络等资源,最大程度地节省成本。

系统架构

MaxCompute以数据为中心,内建多种计算模型和服务接口,满足广泛的数据分析需求。一切服务“开通”即用,更好地赋能数据业务。


功能概述

数据通道

批量历史数据通道

Tunnel是MaxCompute为您提供的数据传输服务,提供高并发的离线数据上传下载服务。支持每天TB/PB级别的数据导入导出,特别适合于全量数据或历史数据的批量导入。Tunnel为您提供Java编程接口,并且在MaxCompute的客户端工具中,提供对应的命令实现本地文件与服务数据的互通。

实时增量数据通道

针对实时数据上传的场景,MaxCompute提供了延迟低、使用方便的DataHub服务,特别适用于增量数据的导入。DataHub还支持多种数据传输插件,例如Logstash、Flume、Fluentd、Sqoop等,同时支持日志服务Log Service中的投递日志到MaxCompute,进而使用DataWorks进行日志分析和挖掘。

计算及分析任务

MaxCompute支持多种计算模型,详情如下:

SQL:MaxCompute以表的形式存储数据,支持多种数据类型,并对外提供SQL查询功能。您可以将MaxCompute作为传统的数据库软件操作,但其却能处理TB、PB级别的海量数据。

MaxCompute SQL不支持事务、索引,也不支持Update或Delete操作。

MaxCompute的SQL语法与Oracle、MySQL有一定差别,您无法将其他数据库中的SQL语句无缝迁移至MaxCompute中。详情请参见与其他SQL语法的差异

MaxCompute主要用于100GB以上规模的数据计算,因此MaxCompute SQL最快支持在分钟或秒钟级别完成查询返回结果,但无法在毫秒级别返回结果。

MaxCompute SQL的优点是学习成本低,您不需要了解复杂的分布式计算概念。如果您具备数据库操作经验,便可快速熟悉MaxCompute SQL的使用。

UDF:即用户自定义函数。

MaxCompute提供了很多内建函数来满足您的计算需求,同时您还可以通过创建自定义函数来满足不同的计算需求。

MapReduce:MaxCompute MapReduce是MaxCompute提供的Java MapReduce编程模型,它可以简化开发流程,更为高效。使用MaxCompute MapReduce,需要对分布式计算概念有基本了解,并有相对应的编程经验。MaxCompute MapReduce为您提供Java编程接口。

Graph:MaxCompute提供的Graph功能是一套面向迭代的图计算处理框架。图计算作业使用图进行建模,图由点 (Vertex)和边(Edge)组成,点和边包含权值(Value)。通过迭代对图进行编辑、演化,最终求解出结果,典型应用:PageRank单源最短距离算法 、K-均值聚类算法等。

Spark on MaxCompute:Spark on MaxCompute是阿里云开发的大数据分析引擎,为您提供大数据处理能力。详情请参见Spark概述

SDK

SDK是MaxCompute提供给开发者的工具包,当前支持Java SDKPython SDK

安全

MaxCompute提供了功能强大的安全服务,为您的数据安全提供保护,详情请参见安全指南

MaxCompute与DataWorks

DataWorks是基于MaxCompute计算和存储,提供工作流可视化开发、调度运维托管的一站式海量数据离线加工分析平台。在数加(一站式大数据平台)中,DataWorks控制台即为MaxCompute控制台。

MaxCompute和DataWorks一起向用户提供完善的ETL和数仓管理能力,以及SQL、MR、Graph等多种经典的分布式计算模型,能够更快速地解决用户海量数据计算问题,有效降低企业成本,保障数据安全。更多使用说明请参见DataWorks什么是DataWorks

您可以将DataWorks理解成MaxCompute的一种Web客户端。MaxCompute是DataWorks的一种计算引擎。

MaxCompute与数据集成

MaxCompute可以通过数据集成加载不同数据源(例如:MySQL数据库等)数据,同样也可以通过数据集成把MaxCompute的数据导出到各种业务数据库。

数据集成功能已经集成到DataWorks作为数据同步任务进行配置、运行。您可直接在DataWorks上配置MaxCompute数据源,再配置读取MaxCompute表或者写入MaxCompute表任务,数据的导入和导出整个过程只需在一个平台上进行操作。

MaxCompute与机器学习PAI

MaxCompute与QuickBI

数据在MaxCompute进行加工处理后,将Project添加为QuickBI数据源,即可在QuickBI页面对MaxCompute表数据进行报表制作,实现数据可视化分析。

MaxCompute与AnalyticDB for MySQL

AnalyticDB for MySQL是海量数据实时高并发在线分析(Realtime OLAP)的云计算服务,与MaxCompute结合实现大数据驱动业务系统的场景。通过MaxCompute离线计算挖掘,产出高质量数据后,导入分析型数据库,供业务系统调用分析。

将MaxCompute数据导入到AnalyticDB for MySQL,有以下两种方式:

通过DMS for AnalyticDB for MySQL的导入导出功能进行配置。

通过DataWorks配置数据同步任务,MaxCompute ReaderAnalyticDB for MySQL 2.0 Writer

MaxCompute与推荐引擎

推荐引擎是在阿里云计算环境下建立的一套推荐服务框架,推荐服务通常由三部分组成:日志采集、推荐计算和产品对接,而推荐计算的离线计算输入和输出都是MaxCompute表。

在推荐引擎控制台的资源管理页面,通过添加云计算资源的方式,将MaxCompute项目添加为推荐引擎的计算资源。

MaxCompute与表格存储

表格存储(Table Store)是构建在阿里云飞天分布式系统之上的分布式NoSQL数据存储服务,MaxCompute2.0支持直接通过外部表方式访问表格存储中的表数据并进行处理,详情请参见访问OTS非结构化数据

MaxCompute与OSS

对象存储OSS是海量、安全、低成本、高可靠的云存储服务,MaxCompute2.0支持直接通过外部表方式访问对象存储中的表数据并进行处理,详情请参见访问OSS非结构化数据

MaxCompute与OpenSearch

阿里云开放搜索OpenSearch是一款自主研发的大规模分布式搜索引擎平台。数据通过MaxCompute进行计算处理后,可以在OpenSearch平台上通过添加数据源的方式将MaxCompute数据接入。

MaxCompute与移动数据分析

移动数据分析(Mobile Analytics)是阿里云推出的一款移动APP数据统计分析产品,为开发者提供一站式数据化运营服务。当移动数据分析自带的基础分析报表不能满足APP开发者的个性化需求时,APP开发者可以将数据一键同步至MaxCompute,结合自己的业务需求来进一步加工、分析自己的数据。

MaxCompute与日志服务

日志服务能快速完成数据采集、消费、投递以及查询分析等操作。日志数据采集后,需要更多的个性化分析、挖掘,您可以通过DataWorks的数据集成将日志服务数据同步到MaxCompute,通过MaxCompute对日志数据进行个性化、深层次的数据分析、挖掘。

如果您是MaxCompute初学者

如果您是初学者,建议您从以下模块开始学习:

产品简介:MaxCompute产品的总体介绍以及包含的主要功能。通过阅读该章节,您会对MaxCompute有一个总体的认识。

快速开始:通过示例,指导您如何进行申请账号、安装客户端、创建表、授权、导入导出数据、运行SQL任务、运行UDF/MapReduce程序等操作。

MaxCompute术语表常用命令列表:MaxCompute的基本概念及常用命令介绍。您可以进一步熟悉如何操作MaxCompute。

工具:在分析数据之前,您需要掌握MaxCompute常用工具的下载、配置以及使用方法。

我们为您提供客户端工具,您可以通过此工具对MaxCompute进行操作。

配置Endpoint:MaxCompute Region的开通情况和连接方式,对您在与其他云产品(ECS、TableStore、OSS)互访场景中遇到的网络连通性和下载数据收费等问题进行说明。

建议您熟悉以上的模块后,再有针对性地对其他模块进行深入学习。



如果您是数据分析师

如果您是数据分析师,建议您熟读SQL模块的内容。您可以查询并分析存储在MaxCompute上的大规模数据。包含的主要功能如下:

支持DDL语句。您可以通过CREATE、DROP和ALTER语句对表和分区进行管理。

您可以通过SELECT选择表中的记录,通过WHERE语句查看满足条件的记录,实现过滤功能。

您可以通过等值连接JOIN实现两张表的关联。

您可以通过对某些列GROUP BY,实现聚合操作。

您可以通过INSERT OVERWRITE/INTO把结果记录插入到另一张表中。

您可以通过内置函数和自定义函数(UDF)来实现一系列的计算。

支持收集表的统计信息和设置表生命周期。

支持正则表达式。

如果您拥有一定开发经验

如果您拥有一定的开发经验,了解分布式概念,并且针对某些无法用SQL来实现数据分析,推荐您学习MaxCompute更高级的功能模块。如下所示:

MapReduce:MaxCompute提供的Java MapReduce编程模型。您可以使用MapReduce提供的接口(Java API)编写MapReduce程序,处理MaxCompute中的数据。

Graph:一套面向迭代的图计算处理框架。使用图进行建模,图由点(Vertex)和边(Edge)组成,点和边包含权值(Value)。通过迭代对图进行编辑、演化,最终得出结果。

Tunnel:您可以使用Tunnel服务向MaxCompute批量上传离线数据或者从MaxCompute下载离线数据。

SDK:

Java SDK:向开发者提供Java接口。

Python SDK:向开发者提供Python接口。


©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,539评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,911评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,337评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,723评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,795评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,762评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,742评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,508评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,954评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,247评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,404评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,104评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,736评论 3 324
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,352评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,557评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,371评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,292评论 2 352