OSS服務和自建服務器存儲對比

1 OSS

1.1 什麼是OSS

  阿里雲對象存儲服務(Object Storage Service,簡稱OSS),是阿里雲提供的海量、安全、低成本、高可靠的雲存儲服務。它是一個分佈式的對象存儲服務,提供的是一個Key-Value對形式的對象存儲服務。用戶能夠根據Object的名稱(Key)惟一的獲取該Object的內容。它具備與平臺無關的RESTful API接口,可以提供99.99999999%的服務持久性。能夠在任何應用、任什麼時候間、任何地點存儲和訪問任意類型的數據。OSS適合各類網站、開發企業及開發者使用。html

1.2 OSS中的一些基本概念

1.2.1 存儲空間(Bucket)web

  存儲空間是用於存儲對象(Object)的容器,全部的對象都必須隸屬於某個存儲空間。能夠設置和修改存儲空間屬性用來控制地域、訪問權限、生命週期等,這些屬性設置直接做用於該存儲空間內全部對象,所以能夠經過靈活建立不一樣的存儲空間來完成不一樣的管理功能。安全

  • 同一個存儲空間的內部是扁平的,沒有文件系統的目錄等概念,全部的對象都直接隸屬於其對應的存儲空間。
  • 每一個用戶能夠擁有多個存儲空間。
  • 存儲空間的名稱在OSS範圍內必須是全局惟一的,一旦建立以後沒法修更名稱。
  • 存儲空間內部的對象數目沒有限制。

1.2.2 對象/文件(Object)服務器

  對象是OSS存儲數據的基本單元,也被稱爲OSS的文件。對象由元信息(Object Meta),用戶數據(Data)和文件名(Key)組成。對象由存儲空間內部惟一的Key來標識。對象元信息是一個鍵值對,表示了對象的一些屬性,好比最後修改時間、大小等信息,同時用戶也能夠在元信息中存儲一些自定義的信息。網絡

  根據不一樣的上傳方式,對象的大小限制是不同的。分片上傳最大支持48.8TB的對象大小,其餘的上傳方式最大支持5GB。併發

  對象的生命週期是從上傳成功到被刪除爲止。在整個生命週期內,對象信息不可變動。重複上傳同名的對象會覆蓋以前的對象,所以,OSS不支持修改文件的部份內容等操做。分佈式

  OSS提供了追加上傳功能,用戶可使用該功能不斷地在Object尾部追加寫入數據。工具

1.2.3 Region(地域)性能

  Region表示OSS的數據中心所在的地域,物理位置。用戶能夠根據費用、請求來源等綜合選擇數據存儲的Region。通常來講,距離用戶更近的Region訪問速度更快。目前已開通的Region詳見[1]。優化

  Region是在建立Bucket的時候指定的,一旦指定以後就不容許更改,該Bucket下全部的Object都存儲在對應的數據中心,目前不支持Object級別的Region設置。

1.2.4 Endpoint(訪問域名)

  Endpoint表示OSS對外服務的訪問域名。OSS以HTTP RESTful API的形式對外提供服務,當訪問不一樣的Region的時候,須要不一樣的域名。經過內網和外網訪問同一個Region所須要的Endpoint也是不一樣的。

1.2.5 AccessKey(訪問密鑰)

  AccessKey,簡稱AK,指的是訪問身份驗證中用到的AccessKeyId和AccessKeySecret。OSS經過使用AccessKeyId和AccessKeySecret對稱加密的方法來驗證某個請求的發送者身份。AccessKeyId用於標識用戶,AccessKeySecret是用戶用於加密簽名字符串和OSS用來驗證簽名字符串的密鑰,其中AccessKeySecret必須保密。

  更多基本概念詳見[2]

1.3 功能概覽

功能概覽

1.4 文件上傳

1.4.1 簡單上傳

  適用場景

  簡單上傳指的是用戶使用OSS API中的Put Object方法上傳單個Object,能夠適用在任何一次HTTP請求交互便可完成上傳的場景,好比小文件的上傳。

  上傳限制

  • 大小限制:Object的大小不能超過 5GB。
  • 命名限制
  • 使用UTF-8編碼。
  • 長度必須在1-1023字節之間。
  • 不能以「/」或者「\」字符開頭。

1.4.2 大文件上傳

  OSS支持單個文件的大小,從0~48.8TB。當咱們上傳大文件時,可能會有如下場景:

  • 單個文件超過5GB時,沒法使用簡單上傳方法。
  • 文件較大,雖然小於5GB,但網絡環境較差,常常出現網絡緣由形成超時或者連接斷開等錯誤的時候,上傳容易失敗。

  以上狀況下,可使用分片段點續傳方式或ossutil工具上傳。

1.4.2.1 分片段點續傳

  當使用SDK或API上傳大文件時,可使用分片段點續傳方式。分片段點續傳方式使用於如下場景:

  • 惡劣的網絡環境。如手機端,當出現上傳失敗的時候,能夠對失敗的Part進行獨立的重試,而不須要從新上傳其餘的Part。
  • 斷點續傳。中途暫停以後,能夠從上次上傳完成的Part的位置繼續上傳。
  • 加速上傳。要上傳到OSS的本地文件很大的時候,能夠並行上傳多個Part以加快上傳。
  • 流式上傳。能夠在須要上傳的文件大小還不肯定的狀況下開始上傳。這種場景在視頻監控等行業應用中比較常見。

  在這種上傳方式下,Object的大小是由Part來決定的。最大支持10000塊Part,每塊最小100KB(最後一塊能夠比100KB小),最大5GB。

1.4.2.2 ossutil上傳

  當須要使用工具(而不是使用API、SDK編寫代碼)上傳單個或多個大文件時,可使用工具ossutil。

1.4.2.3 ossimport上傳

  若是須要上傳大批量的文件(包括大文件)到OSS,也可使用ossimport工具。

說明:當文件數目不是特別多,建議優先使用ossutil。

1.5 使用限制

使用限制

1.6 OSS的優點

  1. 方便、快捷的使用方式
  • 提供標準的RESTful API接口、豐富的SDK包、客戶端工具、控制檯。能夠像使用文件同樣方便地上傳、下載、檢索、管理用於Web網站或者移動應用的海量數據。
  • 不限文件數量和大小。能夠根據所需存儲量無限擴展存儲空間,解決了傳統硬件存儲擴容問題。
  • 支持流式寫入和讀出。特別適合視頻等大文件的邊寫邊讀業務場景。
  • 支持數據生命週期管理。能夠自定義將到期數據批量刪除或者轉入到低成本的歸檔服務。
  1. 強大、靈活的安全機制
  • 靈活的鑑權,受權機制。提供STS和URL鑑權和受權機制,以及白名單、防盜鏈、主子帳號功能。
  • 提供用戶級別資源隔離機制和多集羣同步機制(可選)。
  1. 豐富、強大的增值服務
  • 圖片處理:支持jpg、png、bmp、gif、webp、tiff等多種圖片格式的轉換,以及縮略圖、剪裁、水印、縮放等多種操做。
  • 音視頻轉碼:提供高質量、高速並行的音視頻轉碼能力,讓音視頻文件輕鬆應對各類終端設備。
  • 內容加速分發:OSS做爲源站,搭配CDN進行加速分發,具備穩定、無回源帶寬限制、性價比高、一鍵配置的特色。

1.7 OSS的缺點

  文件系統是一種典型的樹狀索引結構,能夠很輕易的支持文件夾的操做,好比重命名目錄、刪除目錄、移動目錄等。對於OSS來講,能夠經過一些操做來模擬相似的功能,可是代價很是昂貴。好比重命名目錄,但願將test1目錄重命名成test2,那麼OSS的實際操做是將全部以test1/開頭的Object都從新複製成以test2/開頭的Object,這是一個很是消耗資源的操做。所以在使用OSS的時候要儘可能避免相似的操做。

  OSS保存的Object不支持修改(追加寫Object須要調用特定的接口,生成的 Object也和正常上傳的Object類型上有差異)。用戶哪怕是僅僅須要修改一個字節也須要從新上傳整個Object。而文件系統的文件支持修改,好比修改指定偏移位置的內容、截斷文件尾部等,這些特色也使得文件系統擁有普遍的適用性。但另一方面,OSS能支持海量的用戶併發訪問,而文件系統會受限於單個設備的性能。

  使用OSS應該充分發揮其優勢,即海量數據處理能力,優先用來存儲海量的非結構化數據,好比圖片、視頻、文檔等。

1.8 產品訂價

1.8.1 存儲類型

  OSS提供標準、低頻訪問、歸檔三種存儲類型。

  1. 標準存儲類型

      提供通用的對象存儲服務,適合頻繁訪問、有熱點存在的各種音視頻、圖片、網站靜態資源的存儲,支持高吞吐計算場景,適合各種計算資源的存儲。

  2. 低頻訪問存儲類型

      適合長期保存、較少訪問的數據,適合各種移動應用、智能設備、企業數據的備份,低頻訪問支持實時數據訪問。

  3. 歸檔存儲類型

      在三種存儲類型中單價最低,適合須要長週期保存的檔案數據、醫療影像、科學資料、影視素材,能有效優化長期存儲成本。保存爲歸檔存儲類型的數據,恢復到可讀取狀態須要等待1分鐘的解凍時間。

存儲類型

1.8.1.2 計費方式

  阿里雲OSS採用兩種計費方式:按量付費(後付費)和包年包月(預付費)。

  按量付費

  用戶先在阿里雲帳戶充值,系統每小時統計前一小時的實際用量並進行結算,從帳戶餘額中扣除實際消費金額,實際使用量能夠經過控制檯查看。按量付費支持全部的存儲類型。OSS 的計量項包括存儲量、流量、請求次數、數據處理。

  包年包月

  已使用的OSS資源在已購買的資源包規格內不收費,超過部分按量付費。包年包月目前只支持標準存儲類型。

詳細價格總覽和價格計算器見[3][4]

2 自建服務器

2.1 自建服務器的優點

  1. 在溝通環節和應對突發問題的速度上具備先天優點

2.2 自建服務器的缺點

  1. 成本高,需在公司單獨構建機房和租用專線上網,需投入高昂的專線及網絡相關設備費用,和配備專業的維護工程師。
  2. 穩定性差,須要有專業的團隊來進行維護,以達到365天全天候運營服務和監控服務;
  3. 安全性低,專線接入易受攻擊;
  4. 環境差,租用專線很難作到擁有多條高速光纖網絡,不易達到南北互聯互通,穩定性高、速度快、帶寬大,電力持續供應不能保證和達到兩路市電,沒有標準設施和24小時運做的機房專用空調系統,不能作到穩定的網絡帶寬、恆溫、防塵、防火、防潮、防靜電等良好的運行環璄。
  5. 擴展性差。

3 oss與自建存儲對比

4 總結

若需自建至服務器程度,建議使用oss

若僅自建上傳接口,建議自建,成本更低

[1]訪問域名和數據中心 https://help.aliyun.com/document_detail/31837.html?spm=5176.doc31827.2.6.UzcCzu

[2]基本概念介紹 https://help.aliyun.com/document_detail/31827.html?spm=5176.doc52830.2.4.84wBlj

[3]詳細價格總覽https://www.aliyun.com/price/product?spm=5176.doc48266.2.6.YzYwYC#/oss/detail

[4]價格計算器https://www.aliyun.com/price/product?spm=5176.doc48266.2.6.YzYwYC#/oss/calculator

相關文章
相關標籤/搜索