天天看點

OSS 入門基礎篇-産品名詞

存儲空間(Bucket)

存儲空間是使用者用于存儲對象(Object)的容器,所有的對象都必須隸屬于某個存儲空間。存儲空間具有各種配置屬性,包括地域、通路權限、存儲類型等。使用者可以根據實際需求,建立不同類型的存儲空間來存儲不同的資料。

  • 同一個存儲空間的内部是扁平的,沒有檔案系統的目錄等概念,所有的對象都直接隸屬于其對應的存儲空間。
  • 每個使用者可以擁有多個存儲空間。
  • 存儲空間的名稱在 OSS 範圍内必須是全局唯一的,一旦建立之後無法修改名稱。
  • 存儲空間内部的對象數目沒有限制。

存儲空間的命名規範如下:

  • 隻能包括小寫字母、數字和短橫線(-)。
  • 必須以小寫字母或者數字開頭和結尾。
  • 長度必須在 3–63 位元組之間。

對象/檔案(Object)

對象是 OSS 存儲資料的基本單元,也被稱為 OSS 的檔案。對象由元資訊(Object Meta),使用者資料(Data)和檔案名(Key)組成。對象由存儲空間内部唯一的 Key 來辨別。對象元資訊是一組鍵值對,表示了對象的一些屬性,比如最後修改時間、大小等資訊,同時使用者也可以在元資訊中存儲一些自定義的資訊。

對象的生命周期是從上傳成功到被删除為止。在整個生命周期内,隻有通過追加上傳的 Object 可以繼續通過追加上傳寫入資料,其他上傳方式上傳的 Object 内容無法編輯,您可以通過重複上傳同名的對象來覆寫之前的對象。

對象的命名規範如下:

如果上傳 objectname 命名含有一些特殊字元,比如中文、空格、特殊符号等,需要客戶本地上傳或者下載下傳時将檔案的 objectname 做一個 URL encoder 編碼

  • 使用 UTF-8 編碼。
  • 長度必須在 1–1023 位元組之間。
  • 不能以正斜線(/)或者反斜線()開頭。

Region(地域)

Region 表示 OSS 的資料中心所在實體位置。使用者可以根據費用、請求來源等選擇合适的地域建立 Bucket。一般來說,距離使用者更近的 Region 通路速度更快。詳情請檢視 OSS 已經開通的 Region。

Region 是在建立 Bucket 的時候指定的,一旦指定之後就不允許更改。該 Bucket 下所有的 Object 都存儲在對應的資料中心,目前不支援 Object 級别的 Region 設定。

region 格式一般是 oss-$國家-$地域,比如 oss-cn-beijing ,就是代表存儲的實體位置是在北京。

Endpoint(通路域名)

Endpoint 表示 OSS 對外服務的通路域名。OSS 以 HTTP RESTful API 的形式對外提供服務,當通路不同的 Region 的時候,需要不同的域名。通過内網和外網通路同一個 Region 所需要的 Endpoint 也是不同的。例如杭州 Region 的外網 Endpoint 是 oss-cn-hangzhou.aliyuncs.com,内網 Endpoint 是 oss-cn-hangzhou-internal.aliyuncs.com。具體的内容請參見各個 Region 對應的 Endpoint。

bucket 公網域名

指的是 bucket 和 endpoint 結合在一起,讓使用者通路的公網域名。完整的格式是 $bucket.$endpoint ,比如我的 bucket 是 xiaoming,endpoint 在杭州(oss-cn-hangzhou.aliyuncs.com),那麼我的bucket 公網域名就是 xiaoming.oss-cn-hangzhou.aliyuncs.com

AccessKey(通路密鑰)

AccessKey(簡稱 AK)指的是通路身份驗證中用到的 AccessKeyId 和 AccessKeySecret。OSS 通過使用 AccessKeyId 和 AccessKeySecret 對稱加密的方法來驗證某個請求的發送者身份。AccessKeyId 用于辨別使用者;AccessKeySecret 是使用者用于加密簽名字元串和 OSS 用來驗證簽名字元串的密鑰,必須保密。對于 OSS 來說,AccessKey 的來源有:

  • Bucket 的擁有者申請的 AccessKey。
  • 被 Bucket 的擁有者通過 RAM 授權給第三方請求者的 AccessKey。
  • 被 Bucket 的擁有者通過 STS 授權給第三方請求者的 AccessKey。

    關于 AccessKey 可以在

    通路控制 詳細分析