導語
今年參加了 2019 雲栖大會 下一代雲存儲技術與最佳實踐專場,分享了 “對象存儲海量資料管理和應用最佳實踐” 議題,重點介紹對象存儲 OSS 的架構原理、資料管理、最佳實踐,現整理相關内容和大家探讨。
一、企業資料存儲的挑戰和需求
資料是企業的生命線,企業的資料存儲也普遍面臨着 3 個挑戰:
- 資料快速增長。根據 IDC 統計全球資料量在 2020 年将高達 40,000EB , 人均 5TB。
- 資料不丢不錯。Gartner 報告經曆災難系統停運的公司有 40% 立即倒閉,剩下的 33% 兩年内破産。
- 法規遵從。根據行業合規要求,需要長期保留的資料越來越多、越來越嚴格,如金融雙錄需儲存 6 個月、證券投資警示材料與錄像需儲存 20 年、會計檔案需儲存 10~30 年,且不可修改。
通過大量的企業交流,從中總結了 5 個關鍵需求,如下圖所示:

- 可靠性,指在硬碟、伺服器、網絡等故障情況下,以及火災、地震、洪水等災害時,可以有效防止資料丢失,OSS 通過跨機機櫃、機房、區域的資料備援,實作了 12 個 9 的高可靠性。
- 可用性,指在伺服器故障時、光線挖斷時,可自動切換實作業務連續性,OSS 通過容錯設計,實作了 99.995% 的可用性。
- 安全合規,指資料通路的認證、授權、加密、以及行業法規遵從,OSS 支援多項合規認證,比如 KMS 加密、WORM 認證等。
- 自動擴容,能夠自适應業務資料快速增長,避免出現存儲空間被打爆,OSS 通過業界領先的資源供應鍊管理、軟體分布式彈性設計,實作 百 EB 級空間、百萬億級對象規模 能力。
- 自動生命管理,支援冷熱資料的管理,優化 TCO,OSS 提供标準、低頻、歸檔存儲,并自動化遷移,優化存儲使用成本。
二、對象存儲技術介紹
2.1 OSS 技術演進
OSS 實作上述業界領先的核心競争力,并不是一蹴而就,而是通過長期技術積累實作,如下是技術演進圖:
OSS 随着飛天作業系統發展而演進,它立項于 2008 年,和盤古一起起航;開發完成後,先在阿裡巴巴集團内打磨,2011 年正式在阿裡雲商業化釋出。此後,每年都在不斷釋出新功能、在更多可用區開服、滿足客戶關鍵應用需求。
今年是 OSS 的大年,核心演進到第二代(OSS 2.0):
- 硬體上,引入了 貔貅 3 存儲新機型,從媒體、伺服器、網絡等層面采用了業界領先的技術,提供了極具競争力的成本效益。
- 軟體上,切換了 盤古 2.0 引擎,提供更強大的分布式擴充能力。
同時,今年釋出了 9 大新特性,以滿足企業客戶的需求。
2.1.1 OSS 同城區域備援存儲新特性
首先,介紹最重要的
同城區域備援存儲特性,如下圖所示:
為了提高可靠性和可用性,它實作了跨 Location 的糾删碼技術,在任意一個 Location 故障後,資料依然能夠通路和存儲。通過對海量的開發運維資料分析,得到最優的 Location 間距離、帶寬設計,防止 Location 發生故障、災難,避免出現資料丢失或者業務中斷。最終,實作了 12 個 9 的高可靠性,99.995% 的高可用性,并且在 标準、低頻存儲類型 都可以使用。
2.1.2 其他新功能
同時,2019 年至今釋出了如下新功能:
- ZIP 包解壓 。實作上傳 ZIP 包自動解壓功能,它 同函數計算結合,提供圖形化界面,簡單易用。
- 智能資料處理 。包含 文檔預覽(支援近 50 種格式文檔格式)、人臉識别 AI 處理、标簽識别 AI 處理功能。
- 多版本 。提供資料按版本儲存功能,可以保護資料避免資料被誤删,并且通過讀寫版本分離提高一緻性。
- 标簽。提供 存儲空間标簽 、 對象标簽 功能,并且結合生命周期、安全政策一起使用。
- 授權管理。圖形化 Bucket Policy 管理 ,可授權其他使用者通路 OSS,并配置基于 通路 IP 的通路管理。
- 安全提升。提供了 用戶端加密 、日志透明化、 KMS 加密支援 BYOK 增強能力 。
- 單連結限速 。實作了單連結流控,限制該連結的上傳、下載下傳、拷貝,可配置範圍 100KB/s~100MB/s。
- 傳輸加速 。利用 OSS 底層的全球網絡,實作就近傳輸,最高可加速 4 倍,采用 CNAME 自定義加速區域。
2.2 OSS 架構原理
OSS 能夠在巨大的資料體量下更新核心、并釋出大量新特性,無疑就是飛行中更換飛機引擎,這需要優秀的架構來支撐,如下是 OSS 的架構原理圖:
資料平面的核心:包含 盤古分布式存儲 底座,有巢分布式KV 建構的對象存儲中繼資料,對象存儲 後端服務;在此之上,就可以通過 HTTP 服務端 和 網絡負載均衡 提供服務。
運維管控面的核心:主要是 赤骥 DEVOPS 平台,它提供了CI/CD、灰階釋出/更新、下限維修、監控、日志、營運大屏等豐富的功能。
該架構實作了 3 個亮點:
- Global的分布式能力。提供了分布式資料複制功能,實作智能中繼資料負載均衡,零錯誤擴容、更新、遷移,以及全球的跨區域複制能力。
- 強一緻性模型。對齊 PAXOS 複制協定實作強一緻的分布式中繼資料處理,資料修改立即可見、無中間态臨時資料,和最終一緻性系統相比仍能保證性能領先。
- 智能開發運維平台。實作多元度的資料可視化,全面的監控報警,智能日志分析,全面的白屏運維。
通過 十多年來穩定的架構設計,保證了系統的快速演進,結合智能開發運維平台提高效率,實作人效是傳統開發、運維方式的 3~5 倍。
2.3 OSS 智能資料處理架構
通過穩定的架構和功能開發,OSS 存儲了海量的資料,基于資料做智能分析、挖掘資料價值,将是存儲未來技術的重要趨勢。為此,OSS 通過智能資料分析處理架構,有效解除安裝算法實作高效資料處理,如下圖所示:
核心思想是建構計算架構,并将它和存儲關聯。為此,在對象存儲最近的位置,部署計算引擎,實作就近通路(無需傳輸資料出 OSS 存儲系統,極大的降低網絡帶寬開銷)。然後,在對象存儲的資料路徑上和計算架構打通,實作關聯。為了支援種類豐富的資料分析處理,設計了智能的排程架構,其特點是:
- 底層支援 CPU、GPU、FPGA 晶片,比對算法适配需求。
- 抽象機器為實體機、虛拟機、容器,進而為軟體屏蔽硬體差異。
- 支援 Linux、Windows 運作環境,并能自動部署各類解除安裝的算子。
- 通過叢集排程系統提供離線請求、實時請求的靈活排程,滿足業務對排程對需求。
通過該架構,隻需要認證解除安裝的算子,就可以快速部署起來,并基于架構的叢集化排程能力快速服務化,并提供類似阿裡雲服務的 SLA 能力。它的亮點是:降低帶寬開銷(近資料處理)、Serverless 體驗 (降低運維難度) 、簡單易用(基于 URL 使用方式),目前提供如下 4 類算法解除安裝:
- 圖檔處理 。通過使用 FPGA 加速,和自主搭建 CPU 方式相比,單機的吞吐率可提升 6 倍,時延下降 80%-90%,整體帶寬優化可以達到 5 倍。
- 視訊處理 。通過此方法,無需搭建多媒體流服務,就可以讓視訊處了解除安裝到對象存儲,并切還能支援音頻流,在時延要求不高時還可做直播。
- SQL 解除安裝 。和外部大資料平台實作 SQL 方式(OSS 未解除安裝)相比,時延減少到原來 1/12,帶寬最多減少 99%
- 文檔預覽 。目前支援近 50 種文檔格式的預覽,由于和 OSS 天然結合,進而也完全複用了 OSS 的 SLA 能力(大于 99.9%),并享受 OSS 的安全設計。
三、對象存儲最佳實踐
通過技術架構原理介紹, 基本掌握了 OSS 相關功能,本節重點講解 OSS 的資料管理和最佳實踐。
3.1 海量資料管理
3.1.1 遷移資料管理
希望上雲使用好對象存儲 OSS,先從遷移資料的管理開始;目前,OSS 遷移資料包括 2 大類方法:
- 閃電立方服務,包含如下子類:
- 線上遷移服務 ,将第三方資料輕松遷移至阿裡雲對象存儲 OSS,也可以在對象存儲 OSS 之間進行靈活的資料遷移。
- 離線遷移(閃電立方裝置) ,它是一種 PB 級别端到端的離線資料遷移服務,能夠使用安全裝置将大量資料傳入阿裡雲。2018 年遷移 115 網盤時,因為資料量有百 PB 量級、而且要求遷移時間短,是以選擇離線遷移的閃電立方裝置形式。
- 工具, 包括 ossimport ossutil hdfs2oss4emr OSS 鏡像回源 ,它們都可以簡單便捷的遷移資料。
在遷移資料時,要綜合考慮 容量、帶寬 選擇遷移方法,資料遷移後要對比資料的一緻性、保證資料全部被遷移成功,同時要結合應用的 易用性 內建上述方法的 API 或者工具。
3.1.2 資料空間管理
海量的資料需要做好組織,在資料空間管理上,建議先從如下 3 方面考慮:
- 命名空間。要合理控制桶的數目,在使用靜态網站托管功能時推薦 CNAME 綁定域名,對象名盡量散列、避免熱點。
- 目錄模拟。對象存儲不是檔案系統,而是采用字首模拟目錄;OSSFS 封裝的 POSIX 檔案系統插件,受限于伺服器作業系統 Linux 的 FUSE 架構,場景有限,不能提供高性能、豐富的檔案系統功能;如果有大量重命名目錄操作,對象存儲是不合适的,建議在上層封裝中繼資料實作。
- 對象管理。如果桶的對象太多、超過十億,盡量少執行 List 操作;而是采用對象清單來擷取對象清單,便于應用的查詢;同時,也可以利用對象清單實作對象的一緻性檢查。
海量的資料高效組織并存儲後,要在運作上保證業務連續性,建議從如下 4 個方向考慮:
- 提高可靠性。開啟同城區域容災,提高單區域故障後的容錯能力;使用跨區域複制,容忍區域級故障;打開多版本,降低誤删除資料影響。
- 提高可用性。應用在多區域建立桶、同時并行通路使用,跟蹤各區域時延、成功率,根據應用時延、成功率要求控制切換,在遇到請求錯誤時進行幂等回退處理。
- 流量控制。國内單使用者、單區域預設流量配額為 10Gbps,如需要更高帶寬請工單提升;在請求傳回流控錯誤碼時,根據帶寬能力合理設定幂等回退;同時,支援單連結限速,幫助應用合理控制用戶端流量。
- 安全管理。使用 RAM 控制授權使用者通路、并設定通路政策,控制通路的 IP 來源,使用資料加密和日志審計。
3.2 應用最佳實踐
基于OSS的架構、特性、資料管理建議,介紹 3 個近期最具代表意義的應用最佳實踐:
3.2.1 基因測序解決方案
該方案的客戶有兩個主要測序中心,采用專線連接配接到阿裡雲就近區域。本地 IDC 具備一定計算和存儲能力,用于處理部分業務,将處理資料歸檔到雲上,同時利用雲上的 K8S、批量計算、ECS 等做彈性大規模計算擴充。
它解決了 客戶 3 個痛點:專線網絡和 OSS 通信、直傳資料,K8S & 批量計算 和 OSS 對接、直接計算,基于 OSS 的生命周期管理自動歸檔資料、降低成本。
3.2.2 人工智能自動駕駛訓練應用解決方案
在該方案中,雲端資源實時響應業務需求,支撐了業務快速疊代。快速使用阿裡雲提供的新技術、新産品,享受技術紅利。CPFS 和 OSS 結合專為訓練優化性能和成本,提升訓練速度,釋放GPU的算力,使得整個 AI 計算平台效率更高。
該方案 展現了3個優勢:彈性資源供給,大帶寬的吞吐能力,整體優化的 TCO。
3.2.3 視訊監控應用解決方案
此方案實作了視訊監控統一存儲,通過部署網關、監控接入平台、混合雲存儲陣列,成功對接五家不同類型的攝像頭裝置,無縫完成攝像頭對接遷移,實作雲上、雲下的統一平台。該平台可彈性承載 10000+ 裝置接入,後續接入更多攝像頭時,可彈性擴充計算資源,而不影響原有業務。同時,本地混合雲存儲使用雲緩存技術,僅儲存近期幾天的資料,而将海量的近百天視訊檔案全量備份至雲端,完全滿足行業法規要求,而且還可以利用 OSS 的智能資料處理功能進行視訊内容的分析。
該方案 滿足了客戶 3 個典型需求:視訊監控統一存儲,資料高可靠、持久儲存支撐行業法規,彈性資源按需供給、滿足業務增長需求。
當然,OSS還有更多應用解決方案的最佳實踐,詳細資訊請參考
相關連接配接總結
建構業界領先的高可靠、高可用、易管理、安全合規的非結構化資料存儲平台目标,是阿裡雲對象存儲 OSS 不斷超越自我的驅動力,未來 OSS 将持續演進發展,滿足企業資料存儲要求。