阿里云存儲的本質及特性分析
最近兩年,鑒黃、CDN是云存儲提供商津津樂道的特性,但在阿里云看來,鑒黃只是視覺計算的一部分,視覺計算、CDN也不足以代表云存儲的研發方向。世界究竟需要什么樣的云存儲呢?在日前的北京云棲大會上,阿里云資深總監Jason和阿里云存儲專家承宗接受CSDN記者采訪,介紹了了他們對云存儲的理解,以及阿里云存儲的研發規劃和研發進展。
在阿里云存儲看來,相對于承擔傳統數據存儲的任務,云存儲更重要的是扮演整個大規模計算和大規模分發的底盤的角色。為了實現這種能力,阿里云存儲不僅要提供對象、文件、NAS、SAN以及數據完整性/安全性的保障,保證云存儲的通用性、兼容性(對存儲模式)以及其他各種企業級特性,更重要的是要能夠提供接口支持各種不同的計算框架,比如MapReduce、Hadoop和Spark等主流大數據技術,阿里云自研的MaxCompute(原ODPS)和流式計算,以及不同行業、不同類型的不同算法需求。
云存儲的本質
提出數據技術(DT)時代概念的阿里云,在談云存儲的時候,已經把重心放在數據和計算上。所謂大規模計算和大規模分發的底盤,意味著用戶只要將數據存儲在云存儲產品上,就能夠在上面隨時部署一套靈活的計算系統進行這些數據的計算,然后進行加工,并再次進行分發,從而實現數據價值的最大化。
阿里云表示,其他的云存儲廠商不會和基因公司產生很大的關聯,因為基因公司很多時候用到的是計算,但北京云棲大會會迎來一個基因計算專場,Genedock和安諾優達兩家基因公司會分享他們云上進行計算和數據交付的實踐經驗。此前,華大基因的專家曾介紹,華大基因在阿里云存儲和ECS上進行了大規模的算法的比較,由于吞吐和IO的線性擴展,基于云存儲可以大幅提高計算的效率。這得益于性能優化以及對大規模計算、大規模存儲的支持。
關注計算的原因在與釋放數據價值。對于阿里云存儲而言,目前主要有兩個方向:
當前數據是通過分發和交互產生價值的。針對娛樂領域,阿里云存儲會不斷加強與分發網絡以及圖片、音視頻多媒體的結合,和視頻云部門一起合作研發,整合出一些更好的應用。
數據產生價值的方式,有可能是數據加工,數據處理,以及數據的轉化,再次產生數據產生的價值,這就和計算緊密的相關。例如,針對當前業界最火的視覺計算,阿里云存儲已經在和數加團隊(阿里云的大數據處理團隊)展開聯合研發,未來會和數加以及更多的第三方公司在計算機視覺上進行深入的合作研發,目標是提供更好的數據產品。
視覺計算只是一部分。大概半年前,阿里云存儲就開始思考和實現一種“輕計算框架”,和包括數加團隊在內的各個集團技術團隊一起進行生命科學、交通控制、天氣預報、地震預測和研究等存儲加計算的合作。
對于一些免費提供云存儲同時提供收費CDN的做法,阿里云則認為,這種云存儲實際上已經轉型為CDN廠商,其目標是把CDN以比較高的價格賣出去,隱含的存儲成本被包含在CDN成本里,并且CDN包含的存儲也不可能是無限量的,超出一定數量的部分還是會收費。
輕計算框架的實現
所謂輕計算框架,作為阿里云存儲的戰略之一,就是希望打破傳統的存儲和計算弱相關的狀態(不同計算系統后端的數據存儲是一座孤島,各自割裂),從發掘數據價值的維度去考慮存儲系統設計與研發,以及存儲作為基礎設施如何與各種周邊產品和生態之間的合作。
具體而言,阿里云今天要解決的問題,就是為一份相同的數據提供一套不同的接口,讓用戶可以通過這些接口連接不同的計算框架或者計算系統,而且這些計算系統產生的數據又可以回流并被共享。
輕計算框架的實現有很多技術挑戰。首當其沖的是如何提供不同的API實現數據被不同的計算系統共享。阿里云存儲目前實現了哪些技術更新?專家從內部和外部兩方面分別說明。
首先,阿里云大數據計算框架MaxCompute(原ODPS)已經和阿里云存儲產品打通,提供結構化和非結構化數據的處理。數加平臺上很多計算,比如推薦系統的數據,都可以放在結構化或者是非結構化的存儲系統里面。
阿里云最近發布的E-MapReduce(EMR),也是一個典型的存儲跟計算之間融合打通的產品,用戶可以把數據存在非結構化的OSS上面,或者是結構化的表格存儲上面,然后在上面跑EMR。
同時,阿里云存儲也在和內部的流計算系統都有很好的融合和連接。
HPC整合。阿里云HPC產品可以把GPU的能力,以及GPU加速機器學習的算法提供給用戶,阿里云希望做一種diskless Computing——在計算單元里面不帶任何的磁盤,啟動、數據、計算、結果,一切都由外掛的云存儲支持。阿里云存儲在做兩種嘗試:
跟NAS系統連接起來,即所有的GPU和HPC的計算單元,結合進阿里云的NAS文件系統上。數據,既可以直接在NAS上讀寫;對于非結構化的數據,也可以在OSS上面進行讀寫。
視覺計算。視覺計算有很多不同的細分,鑒黃只是其中之一,阿里云利用輕計算的框架來提供一些已經定義好的功能,如廣泛使用的圖片水印,旋轉等功能,也可以讓用戶自定義一些計算,以類似于微服務的方式,把計算放到存儲上去,達到即存即處理的效果。
阿里云還提供一種UDF(user define function)的功能,用戶可以把自己定義的函數上傳成一個Docker鏡像。數據上傳后,自動觸發函數的調用,處理這些數據。處理后的結果又可以轉存回來。這個功能目前只對部分客戶開戶,很快會對所有人開放。
整個跟外部Hadoop開源的生態已經打通,OSS對象存儲已經像AWS S3一樣成為整個Hadoop存儲系統缺省的選項之一。如果用戶數據已經放在OSS上,同時有一套原生的Hadoop開源計算系統,他可以不需要修改任何代碼,只要有一個選項填上阿里云OSS,就可以直接用OSS的數據來做計算。這相當于一端可以用手機或者是用其他的終端來上傳數據,在另外一端可以用已有的大數據計算系統來處理這些數據。
Spark開源系統的整合。Spark底層存儲Tachyon,現已更名為Alluxio,已實現了對阿里云OSS的原生支持。OSS作為一個缺省的底層存儲的provider,讓存儲在Alluxio內存文件系統中的數據可以使用阿里云OSS服務來作為持久化存儲介質和數據交換平臺,極大增強了用戶體驗。
此外,阿里云存儲也在跟交通、氣象、地震等垂直領域做非結構化存儲、結構化存儲和計算之間的打通。
典型案例
典型的例子由于涉及國計民生的領域還不能談太多,阿里云簡單介紹了杭州的智能交通的處理系統,把各個點上的路況、車況監控的數據聯合在一起,這是非常龐大的數據集合,在這上面加上數加平臺的深度學習等算法,對整個交通狀況的改善取得了非常大的效果。
阿里云還有一款計算產品叫批量計算(Batch Compute),底層缺省的存儲就是OSS,有渲染和基因計算兩部分的用戶:
渲染:把素材放到OSS上,批量計算把這些素材拿過去進行渲染,渲染完把這些結果再寫回OSS。這是最早的和OSS進行打通的一個計算產品,《小門神》、《昆塔》等電影,實際上都是在上面渲染出來的。
基因計算:基因行業會把基因測序文件開得很大,單個人甚至是水稻基因組的數據放到OSS上,然后進行計算,最后的結果放在OSS,然后再通過某種方式,就是傳送給最終的醫療機構,把數據讓他們再取走。這就是云上的數據上傳、加工、計算、轉化,然后再分發的一個過程。當然這個過程有健全的通道和加密的方式。
阿里云強調,數據到云上來,會有更多的想象力。云存儲系統和各種不同的計算系統,甚至未來第三方數據加工商的系統能夠打通,通過完善的授權和簽權的方式,通過數據加密以及公鑰、密鑰的管理,能夠讓這些數據被它最需要去和最能夠被處理的算法,或者是處理的方式加工之后,再次產生分發的價值。實際上這是社會上的一個協作,但是這個協作今天看起來只能在云上發生。舉例來說,云上NAS和線下NAS,即便基礎功能特性相同,但本質是不一樣的。
云存儲的企業級特性
輕計算框架的基礎,當然還是穩定的存儲。阿里云存儲專家還介紹了阿里云存儲的一些企業級特性,包括容災、可用性及數據安全等。
容災
容災方面,阿里云從集群級別到數據中心級別都進行了設計。
集群級別的容災,設置了一個基本的出發點,在機器、磁盤和網絡隨時可以壞的假設情況下去做系統設計,做了很多的冗余度的處理。跨區域的容災,提供跨區域的數據復制,比如把數據從上海復制到北京,或者是從北京復制到深圳,這樣來提供跨區域的容災。同城多數據中心容災的延遲基本是分鐘級別的,北京到上海的跨區域的復制,SLA基本上也是保證在分鐘級之內,當然這得借助整個阿里巴巴高帶寬,低延遲的網絡基礎設施進行傳輸。混合云容災,如果用戶內部數據中心容災程度不是很高,可以通過高速網絡通道搭到我們阿里云的存儲上,提供容災的能力。如果業務系統也一起放到云上,線下的系統出問題時,可以快速在云上把系統啟動上來,達到備份加容災的效果。
非常好我支持^.^
(0) 0%
不好我反對
(0) 0%