關(guān)于MaxComputer sql的學(xué)習(xí)筆記(1)

MaxComputer簡介

大數(shù)據(jù)計算服務(wù)(MaxCompute,原名ODPS)是一種快速珊擂、完全托管的EB級數(shù)據(jù)倉庫解決方案。

分布式的計算模型對數(shù)據(jù)分析人員要求較高且不易維護(hù)费变。數(shù)據(jù)分析人員不僅需要了解業(yè)務(wù)需求摧扇,同時還需要熟悉底層分布式計算模型。MaxCompute為您提供完善的數(shù)據(jù)導(dǎo)入方案以及多種經(jīng)典的分布式計算模型挚歧,您可以不必關(guān)心分布式計算和維護(hù)細(xì)節(jié)扛稽,便可輕松完成大數(shù)據(jù)分析。

DataWorks和MaxCompute關(guān)系緊密:DataWorks為MaxCompute提供一站式的數(shù)據(jù)同步滑负、業(yè)務(wù)流程設(shè)計在张、數(shù)據(jù)開發(fā)、管理和運維功能矮慕。

目前阿里有一個自帶方法論而且開發(fā)過程十分成熟的開發(fā)框架就是Dataphin

產(chǎn)品優(yōu)勢

大規(guī)模計算存儲

MaxCompute適用于 100GB 以上規(guī)模的存儲及計算需求帮匾,最大可達(dá)EB級別。(感覺這里EB級別有點不真實)

多種計算模型

MaxCompute支持SQL痴鳄、MapReduce瘟斜、UDF(Java/Python)、Graph、基于DAG的處理螺句、交互式虽惭、內(nèi)存計算、機器學(xué)習(xí)等計算類型及MPI迭代類算法蛇尚。簡化了企業(yè)大數(shù)據(jù)平臺的應(yīng)用架構(gòu)芽唇。

強數(shù)據(jù)安全

MaxCompute已穩(wěn)定支撐阿里全部數(shù)據(jù)倉庫業(yè)務(wù)9年以上,提供多層沙箱防護(hù)取劫、細(xì)粒度權(quán)限管理及監(jiān)控匆笤。

MaxCompute通過了獨立的第三方審計師針對阿里云對AICPA可信服務(wù)標(biāo)準(zhǔn)中關(guān)于安全性、可用性和機密性原則符合性描述的審計谱邪。審計報告請參見SOC 3報告疚膊。

低成本

與企業(yè)自建專有云相比,MaxCompute的計算存儲更高效虾标,可以降低30%~50%的采購成本寓盗。

免運維

基于MaxCompute的Serverless無服務(wù)器的設(shè)計思路,用戶只需關(guān)心作業(yè)和數(shù)據(jù)璧函,而無需關(guān)心底層分布式架構(gòu)及運維傀蚌。

極致彈性擴展

MaxCompute提供按量付費模式下的作業(yè)級別的資源管理。用戶無需受困于資源擴展難題蘸吓,系統(tǒng)會自動擴展計算善炫、存儲、網(wǎng)絡(luò)等資源库继,最大程度地節(jié)省成本箩艺。

系統(tǒng)架構(gòu)

MaxCompute以數(shù)據(jù)為中心,內(nèi)建多種計算模型和服務(wù)接口宪萄,滿足廣泛的數(shù)據(jù)分析需求艺谆。一切服務(wù)“開通”即用,更好地賦能數(shù)據(jù)業(yè)務(wù)拜英。


功能概述

數(shù)據(jù)通道

批量歷史數(shù)據(jù)通道

Tunnel是MaxCompute為您提供的數(shù)據(jù)傳輸服務(wù)静汤,提供高并發(fā)的離線數(shù)據(jù)上傳下載服務(wù)。支持每天TB/PB級別的數(shù)據(jù)導(dǎo)入導(dǎo)出居凶,特別適合于全量數(shù)據(jù)或歷史數(shù)據(jù)的批量導(dǎo)入虫给。Tunnel為您提供Java編程接口,并且在MaxCompute的客戶端工具中侠碧,提供對應(yīng)的命令實現(xiàn)本地文件與服務(wù)數(shù)據(jù)的互通抹估。

實時增量數(shù)據(jù)通道

針對實時數(shù)據(jù)上傳的場景,MaxCompute提供了延遲低弄兜、使用方便的DataHub服務(wù)药蜻,特別適用于增量數(shù)據(jù)的導(dǎo)入瓷式。DataHub還支持多種數(shù)據(jù)傳輸插件,例如Logstash谷暮、Flume、Fluentd盛垦、Sqoop等湿弦,同時支持日志服務(wù)Log Service中的投遞日志到MaxCompute,進(jìn)而使用DataWorks進(jìn)行日志分析和挖掘腾夯。

計算及分析任務(wù)

MaxCompute支持多種計算模型颊埃,詳情如下:

SQL:MaxCompute以表的形式存儲數(shù)據(jù),支持多種數(shù)據(jù)類型蝶俱,并對外提供SQL查詢功能班利。您可以將MaxCompute作為傳統(tǒng)的數(shù)據(jù)庫軟件操作,但其卻能處理TB榨呆、PB級別的海量數(shù)據(jù)罗标。

MaxCompute SQL不支持事務(wù)、索引积蜻,也不支持Update或Delete操作闯割。

MaxCompute的SQL語法與Oracle、MySQL有一定差別竿拆,您無法將其他數(shù)據(jù)庫中的SQL語句無縫遷移至MaxCompute中宙拉。詳情請參見與其他SQL語法的差異

MaxCompute主要用于100GB以上規(guī)模的數(shù)據(jù)計算丙笋,因此MaxCompute SQL最快支持在分鐘或秒鐘級別完成查詢返回結(jié)果谢澈,但無法在毫秒級別返回結(jié)果。

MaxCompute SQL的優(yōu)點是學(xué)習(xí)成本低御板,您不需要了解復(fù)雜的分布式計算概念锥忿。如果您具備數(shù)據(jù)庫操作經(jīng)驗,便可快速熟悉MaxCompute SQL的使用怠肋。

UDF:即用戶自定義函數(shù)缎谷。

MaxCompute提供了很多內(nèi)建函數(shù)來滿足您的計算需求,同時您還可以通過創(chuàng)建自定義函數(shù)來滿足不同的計算需求灶似。

MapReduce:MaxCompute MapReduce是MaxCompute提供的Java MapReduce編程模型列林,它可以簡化開發(fā)流程,更為高效酪惭。使用MaxCompute MapReduce希痴,需要對分布式計算概念有基本了解,并有相對應(yīng)的編程經(jīng)驗春感。MaxCompute MapReduce為您提供Java編程接口砌创。

Graph:MaxCompute提供的Graph功能是一套面向迭代的圖計算處理框架虏缸。圖計算作業(yè)使用圖進(jìn)行建模,圖由點 (Vertex)和邊(Edge)組成嫩实,點和邊包含權(quán)值(Value)刽辙。通過迭代對圖進(jìn)行編輯、演化甲献,最終求解出結(jié)果宰缤,典型應(yīng)用:PageRank單源最短距離算法?晃洒、K-均值聚類算法等慨灭。

Spark on MaxCompute:Spark on MaxCompute是阿里云開發(fā)的大數(shù)據(jù)分析引擎,為您提供大數(shù)據(jù)處理能力球及。詳情請參見Spark概述氧骤。

SDK

SDK是MaxCompute提供給開發(fā)者的工具包,當(dāng)前支持Java SDKPython SDK吃引。

安全

MaxCompute提供了功能強大的安全服務(wù)筹陵,為您的數(shù)據(jù)安全提供保護(hù),詳情請參見安全指南镊尺。

MaxCompute與DataWorks

DataWorks是基于MaxCompute計算和存儲惶翻,提供工作流可視化開發(fā)、調(diào)度運維托管的一站式海量數(shù)據(jù)離線加工分析平臺鹅心。在數(shù)加(一站式大數(shù)據(jù)平臺)中吕粗,DataWorks控制臺即為MaxCompute控制臺。

MaxCompute和DataWorks一起向用戶提供完善的ETL和數(shù)倉管理能力旭愧,以及SQL颅筋、MR、Graph等多種經(jīng)典的分布式計算模型输枯,能夠更快速地解決用戶海量數(shù)據(jù)計算問題议泵,有效降低企業(yè)成本,保障數(shù)據(jù)安全桃熄。更多使用說明請參見DataWorks什么是DataWorks先口。

您可以將DataWorks理解成MaxCompute的一種Web客戶端。MaxCompute是DataWorks的一種計算引擎瞳收。

MaxCompute與數(shù)據(jù)集成

MaxCompute可以通過數(shù)據(jù)集成加載不同數(shù)據(jù)源(例如:MySQL數(shù)據(jù)庫等)數(shù)據(jù)碉京,同樣也可以通過數(shù)據(jù)集成把MaxCompute的數(shù)據(jù)導(dǎo)出到各種業(yè)務(wù)數(shù)據(jù)庫。

數(shù)據(jù)集成功能已經(jīng)集成到DataWorks作為數(shù)據(jù)同步任務(wù)進(jìn)行配置螟深、運行谐宙。您可直接在DataWorks上配置MaxCompute數(shù)據(jù)源,再配置讀取MaxCompute表或者寫入MaxCompute表任務(wù)界弧,數(shù)據(jù)的導(dǎo)入和導(dǎo)出整個過程只需在一個平臺上進(jìn)行操作凡蜻。

MaxCompute與機器學(xué)習(xí)PAI

MaxCompute與QuickBI

數(shù)據(jù)在MaxCompute進(jìn)行加工處理后搭综,將Project添加為QuickBI數(shù)據(jù)源,即可在QuickBI頁面對MaxCompute表數(shù)據(jù)進(jìn)行報表制作划栓,實現(xiàn)數(shù)據(jù)可視化分析兑巾。

MaxCompute與AnalyticDB for MySQL

AnalyticDB for MySQL是海量數(shù)據(jù)實時高并發(fā)在線分析(Realtime OLAP)的云計算服務(wù),與MaxCompute結(jié)合實現(xiàn)大數(shù)據(jù)驅(qū)動業(yè)務(wù)系統(tǒng)的場景忠荞。通過MaxCompute離線計算挖掘蒋歌,產(chǎn)出高質(zhì)量數(shù)據(jù)后,導(dǎo)入分析型數(shù)據(jù)庫钻洒,供業(yè)務(wù)系統(tǒng)調(diào)用分析奋姿。

將MaxCompute數(shù)據(jù)導(dǎo)入到AnalyticDB for MySQL锄开,有以下兩種方式:

通過DMS for AnalyticDB for MySQL的導(dǎo)入導(dǎo)出功能進(jìn)行配置素标。

通過DataWorks配置數(shù)據(jù)同步任務(wù),MaxCompute ReaderAnalyticDB for MySQL 2.0 Writer萍悴。

MaxCompute與推薦引擎

推薦引擎是在阿里云計算環(huán)境下建立的一套推薦服務(wù)框架头遭,推薦服務(wù)通常由三部分組成:日志采集、推薦計算和產(chǎn)品對接癣诱,而推薦計算的離線計算輸入和輸出都是MaxCompute表计维。

在推薦引擎控制臺的資源管理頁面,通過添加云計算資源的方式撕予,將MaxCompute項目添加為推薦引擎的計算資源鲫惶。

MaxCompute與表格存儲

表格存儲(Table Store)是構(gòu)建在阿里云飛天分布式系統(tǒng)之上的分布式NoSQL數(shù)據(jù)存儲服務(wù),MaxCompute2.0支持直接通過外部表方式訪問表格存儲中的表數(shù)據(jù)并進(jìn)行處理实抡,詳情請參見訪問OTS非結(jié)構(gòu)化數(shù)據(jù)欠母。

MaxCompute與OSS

對象存儲OSS是海量、安全吆寨、低成本赏淌、高可靠的云存儲服務(wù),MaxCompute2.0支持直接通過外部表方式訪問對象存儲中的表數(shù)據(jù)并進(jìn)行處理啄清,詳情請參見訪問OSS非結(jié)構(gòu)化數(shù)據(jù)六水。

MaxCompute與OpenSearch

阿里云開放搜索OpenSearch是一款自主研發(fā)的大規(guī)模分布式搜索引擎平臺。數(shù)據(jù)通過MaxCompute進(jìn)行計算處理后辣卒,可以在OpenSearch平臺上通過添加數(shù)據(jù)源的方式將MaxCompute數(shù)據(jù)接入掷贾。

MaxCompute與移動數(shù)據(jù)分析

移動數(shù)據(jù)分析(Mobile Analytics)是阿里云推出的一款移動APP數(shù)據(jù)統(tǒng)計分析產(chǎn)品,為開發(fā)者提供一站式數(shù)據(jù)化運營服務(wù)荣茫。當(dāng)移動數(shù)據(jù)分析自帶的基礎(chǔ)分析報表不能滿足APP開發(fā)者的個性化需求時胯盯,APP開發(fā)者可以將數(shù)據(jù)一鍵同步至MaxCompute,結(jié)合自己的業(yè)務(wù)需求來進(jìn)一步加工计露、分析自己的數(shù)據(jù)博脑。

MaxCompute與日志服務(wù)

日志服務(wù)能快速完成數(shù)據(jù)采集憎乙、消費、投遞以及查詢分析等操作叉趣。日志數(shù)據(jù)采集后泞边,需要更多的個性化分析、挖掘疗杉,您可以通過DataWorks的數(shù)據(jù)集成將日志服務(wù)數(shù)據(jù)同步到MaxCompute阵谚,通過MaxCompute對日志數(shù)據(jù)進(jìn)行個性化、深層次的數(shù)據(jù)分析烟具、挖掘梢什。

如果您是MaxCompute初學(xué)者

如果您是初學(xué)者,建議您從以下模塊開始學(xué)習(xí):

產(chǎn)品簡介:MaxCompute產(chǎn)品的總體介紹以及包含的主要功能朝聋。通過閱讀該章節(jié)嗡午,您會對MaxCompute有一個總體的認(rèn)識。

快速開始:通過示例冀痕,指導(dǎo)您如何進(jìn)行申請賬號荔睹、安裝客戶端、創(chuàng)建表言蛇、授權(quán)僻他、導(dǎo)入導(dǎo)出數(shù)據(jù)、運行SQL任務(wù)腊尚、運行UDF/MapReduce程序等操作吨拗。

MaxCompute術(shù)語表常用命令列表:MaxCompute的基本概念及常用命令介紹。您可以進(jìn)一步熟悉如何操作MaxCompute婿斥。

工具:在分析數(shù)據(jù)之前劝篷,您需要掌握MaxCompute常用工具的下載、配置以及使用方法受扳。

我們?yōu)槟峁?a target="_blank">客戶端工具携龟,您可以通過此工具對MaxCompute進(jìn)行操作。

配置Endpoint:MaxCompute Region的開通情況和連接方式勘高,對您在與其他云產(chǎn)品(ECS峡蟋、TableStore、OSS)互訪場景中遇到的網(wǎng)絡(luò)連通性和下載數(shù)據(jù)收費等問題進(jìn)行說明华望。

建議您熟悉以上的模塊后蕊蝗,再有針對性地對其他模塊進(jìn)行深入學(xué)習(xí)。



如果您是數(shù)據(jù)分析師

如果您是數(shù)據(jù)分析師赖舟,建議您熟讀SQL模塊的內(nèi)容蓬戚。您可以查詢并分析存儲在MaxCompute上的大規(guī)模數(shù)據(jù)。包含的主要功能如下:

支持DDL語句宾抓。您可以通過CREATE子漩、DROP和ALTER語句對表和分區(qū)進(jìn)行管理豫喧。

您可以通過SELECT選擇表中的記錄,通過WHERE語句查看滿足條件的記錄幢泼,實現(xiàn)過濾功能紧显。

您可以通過等值連接JOIN實現(xiàn)兩張表的關(guān)聯(lián)。

您可以通過對某些列GROUP BY缕棵,實現(xiàn)聚合操作孵班。

您可以通過INSERT OVERWRITE/INTO把結(jié)果記錄插入到另一張表中。

您可以通過內(nèi)置函數(shù)和自定義函數(shù)(UDF)來實現(xiàn)一系列的計算招驴。

支持收集表的統(tǒng)計信息和設(shè)置表生命周期篙程。

支持正則表達(dá)式。

如果您擁有一定開發(fā)經(jīng)驗

如果您擁有一定的開發(fā)經(jīng)驗别厘,了解分布式概念虱饿,并且針對某些無法用SQL來實現(xiàn)數(shù)據(jù)分析,推薦您學(xué)習(xí)MaxCompute更高級的功能模塊丹允。如下所示:

MapReduce:MaxCompute提供的Java MapReduce編程模型郭厌。您可以使用MapReduce提供的接口(Java API)編寫MapReduce程序袋倔,處理MaxCompute中的數(shù)據(jù)雕蔽。

Graph:一套面向迭代的圖計算處理框架。使用圖進(jìn)行建模宾娜,圖由點(Vertex)和邊(Edge)組成批狐,點和邊包含權(quán)值(Value)。通過迭代對圖進(jìn)行編輯前塔、演化嚣艇,最終得出結(jié)果。

Tunnel:您可以使用Tunnel服務(wù)向MaxCompute批量上傳離線數(shù)據(jù)或者從MaxCompute下載離線數(shù)據(jù)华弓。

SDK:

Java SDK:向開發(fā)者提供Java接口食零。

Python SDK:向開發(fā)者提供Python接口。


?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末寂屏,一起剝皮案震驚了整個濱河市贰谣,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌迁霎,老刑警劉巖吱抚,帶你破解...
    沈念sama閱讀 216,372評論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異考廉,居然都是意外死亡秘豹,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,368評論 3 392
  • 文/潘曉璐 我一進(jìn)店門昌粤,熙熙樓的掌柜王于貴愁眉苦臉地迎上來既绕,“玉大人啄刹,你說我怎么就攤上這事∑喾罚” “怎么了鸵膏?”我有些...
    開封第一講書人閱讀 162,415評論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長怎炊。 經(jīng)常有香客問我谭企,道長,這世上最難降的妖魔是什么评肆? 我笑而不...
    開封第一講書人閱讀 58,157評論 1 292
  • 正文 為了忘掉前任债查,我火速辦了婚禮,結(jié)果婚禮上瓜挽,老公的妹妹穿的比我還像新娘盹廷。我一直安慰自己,他們只是感情好久橙,可當(dāng)我...
    茶點故事閱讀 67,171評論 6 388
  • 文/花漫 我一把揭開白布俄占。 她就那樣靜靜地躺著,像睡著了一般淆衷。 火紅的嫁衣襯著肌膚如雪缸榄。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,125評論 1 297
  • 那天祝拯,我揣著相機與錄音甚带,去河邊找鬼。 笑死佳头,一個胖子當(dāng)著我的面吹牛鹰贵,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播康嘉,決...
    沈念sama閱讀 40,028評論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼碉输,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了亭珍?” 一聲冷哼從身側(cè)響起敷钾,我...
    開封第一講書人閱讀 38,887評論 0 274
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎块蚌,沒想到半個月后闰非,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,310評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡峭范,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,533評論 2 332
  • 正文 我和宋清朗相戀三年财松,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,690評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡辆毡,死狀恐怖菜秦,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情舶掖,我是刑警寧澤球昨,帶...
    沈念sama閱讀 35,411評論 5 343
  • 正文 年R本政府宣布,位于F島的核電站眨攘,受9級特大地震影響主慰,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜鲫售,卻給世界環(huán)境...
    茶點故事閱讀 41,004評論 3 325
  • 文/蒙蒙 一共螺、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧情竹,春花似錦藐不、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,659評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至阱州,卻和暖如春挑秉,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背贡耽。 一陣腳步聲響...
    開封第一講書人閱讀 32,812評論 1 268
  • 我被黑心中介騙來泰國打工衷模, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留鹊汛,地道東北人蒲赂。 一個月前我還...
    沈念sama閱讀 47,693評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像刁憋,于是被迫代替她去往敵國和親滥嘴。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,577評論 2 353