阿里云ODPS 讓數據處理平民化
原創阿里云,致力于打造互聯網數據分享***平臺,成為以數據為中心的云計算服務公司,在經歷了飛天平臺、5K集群,對外開放了很多云計算服務后,在今年7月,阿里云正式迎來了大數據服務,也真成兌現了以數據為中心的云計算服務公司的承諾。
阿里云總裁王文彬表示,“中國市場需要一個大數據公共服務,通過阿里巴巴自身驗證后的大數據平臺,阿里云開放對外的數據服務,讓數據處理變成平民化的過程,讓數據處理變成人人都可以使用的服務。”
ODPS是什么?
阿里云ODPS團隊的工程師形象的將ODPS比喻為榨果汁的過程,把數據海洋里的水灌進ODPS,設定好一套參數,擰開水龍頭,出來的就是鮮榨果汁!
ODPS(Open Data Processing Service,開放數據處理服務)是一項Web服務,用戶不用花很多錢建立數據中心,就能分析海量數據。但是,值得注意的是,ODPS是通過SQL語句進行查詢作業,因此,ODPS應該只能處理結構化數據處理,這一說法也得到了阿里云事業部高級專家、云產品產品經理湯子楠的認可。“ODPS最早是支持阿里巴巴內部的業務成長起來的,因此,分析的數據基本上都是交易數據和用戶行為數據,大多都屬于結構化或半結構化數據,因此也就決定了ODPS在發展最初專注于業務的需求。ODPS更擅長處理結構化數據,比較擅長處理半結構化數據,不能處理非結構化數據。”
但是如今,非結構化數據占據了數據的主要類型,更多的信息來源于視頻、社交媒體等更豐富的渠道,將內部的結構化數據與外部非結構化數據融合進行分析,相信對決策優化更加有所幫助。對于非結構化數據的處理,湯子楠表示,未來,ODPS也會在非結構化數據層面做探索,但主要還是看用戶的需求。
ODPS***層是Linux+PC Server,上層軟件是阿里云開發的分布式系統軟件飛天,基于Java的MapReduce編程框架,開發語言是C++。所有的功能是以RESTful API的形式對外提供,所以從系統邊界上說,這層API隔離了ODPS平臺和用戶的系統。在經過了5年時間,阿里云的工程師寫下了250萬行代碼,ODPS逐步完善,并且公測商用。
目前ODPS已經開放的SQL功能主要用于數據倉庫和日志分析;后續還將開放UDF和MapReduce,支持用戶編程的離線計算;ODPS準實時,支持交互式BI分析;ODPS流處理,支持實時計算等。
ODPS安全么?
開放服務的安全是用戶最關心的問題,而大數據的公共服務也不例外?在ODPS發布時,阿里云沒有披露ODPS的SLA,只是公布了一些性能以及價格。湯子楠告訴記者,ODPS的SLA(服務等級協議)分為兩部分,***部分是存儲,阿里云提供10個9的可靠性,保證數據不丟失。承諾的數據安全行主要有兩點,一是數據放在ODPS中,絕對不會泄漏,也不會有其他人訪問用戶的數據,第二是阿里云不會看用戶數據;第二部分是計算,阿里云不承諾用戶提交的所有作業都能夠計算成功,但是承諾因為阿里云或客戶的原因,導致作業失敗,是不會收費的。
在技術上,阿里云是如何保證企業數據安全呢?ODPS設計之初就是為了對外開放,做基于互聯網的多租戶的公共數據處理服務,所以安全性在ODPS的設計和實現中具有***的優先級。ODPS是國內首家通過了CSA-STAR和ISO27001兩項國際云安全認證的公司,在各個環節都采納了國際上***進的數據安全管理標準。ODPS采用了多項技術保證用戶存儲在阿里云的數據不丟失、不泄露、不越權訪問;從管理上,阿里云內部對于ODPS的運維和運營人員的操作有嚴格的監控和審計,確保內部人員不會接觸到用戶的數據。
ODPS通過API提供服務,包括數據上傳、下載、計算,所有API請求都是經過認證的,所有API請求都可以進行https加密。從平臺設計和技術實現角度說,ODPS充分考慮了數據安全性,ODPS團隊對于平臺的優先級定義是數據安全性大于可用性大于規模的。
使用ODPS的門檻有多高?
雖然,阿里云想把ODPS打造成人人都可以使用的大數據服務,但是使用ODPS也需要一定的門檻。湯子楠強調,ODPS不是每個人都能使用,但是每一個做數據分析的人都可以使用。
對于用戶的要求分為兩方面,首先是要具有數據分析的技能,要精通SQL語言,或者是程序員,可以寫Java腳本來處理;其次是還要有數據敏感度和對業務的洞察力。
但是,對于不會SQL語句以及編程的用戶來說,是否就不能使用ODPS了呢?湯子楠告訴記者,“阿里云會開放一款基于ODPS的ETL(數據倉庫技術)和BI(商業智能)工具,協助用戶編寫SQL語句,甚至不用SQL語句也可以進行數據分析,降低ODPS的門檻。同時,阿里云還會引入第三方合作伙伴,幫助沒有數據使用能力的公司進行培訓,協助他們搭建數據模型并且進行數據分析。”
使用ODPS在人員的技能上有要求,同時對產品上也是有要求的。湯子楠表示,使用ODPS***還是先使用阿里云的云計算服務,這樣數據在進行分析前,可以通過阿里云內網,將數據從ECS(阿里云服務器產品)上傳到ODPS中從而進行分析。若客戶堅持使用自己的數據庫,通過公網上傳數據到ODPS中,數據安全問題得不到保障。此外,對于數據上傳費用,用戶也不需要支付,用戶只需要支付計算、存儲、下載三方面的費用即可。湯子楠表示,“用戶***結合阿里云其他產品使用ODPS,其實是從降低用戶成本、提高用戶體驗的角度給出的建議,用戶也可以單獨使用ODPS。”
阿里內部的登月計劃
2013年10月,為了融合阿里小貸和支付寶的數據,支付寶希望ODPS團隊協助他們搬家,將支付寶數倉業務從Hadoop機群搬到ODPS上,登月1號項目啟動。2014年5月,登月1號項目順利成功,小微金融服務的全部數據業務開始基于ODPS發展。
在2013年底,受到登月1號項目的啟發,阿里數據平臺團隊聯合技術保障部和集團各事業部,開始了一系列宏大的登月計劃,致力于將搜索、廣告、物流等多個BU的數據統一,未來ODPS將成為承載阿里集團全部數據的統一處理平臺。“登月計劃”共計劃了20多個項目,涉及阿里巴巴和小微金服所有的事業部,覆蓋集團全部數據人員,其牽扯人員、資源之多,在集團內部罕見。
從Oracle到Hadoop,阿里云解決了海量數據如何存儲和分析的問題,阿里的數據業務不再受制于規模的瓶頸;從Hadoop到ODPS,更是一次質的飛躍,為后續大數據業務的開展掃清了障礙。