對象(Object)是OSS儲存資料的基本單元,也被稱為OSS的檔案。和傳統的檔案系統不同,Object沒有檔案目錄層級結構的關係。
Object類型
Object包含以下三種類型。
不支援在不同類型的Object之間相互轉換。例如,Normal類型的Object無法轉換為Multipart或者Appendable類型。
類型 | 定義 | 說明 |
Normal | 通過簡單上傳產生的Object類型。 |
|
Multipart | 通過分區上傳產生的Object類型。 |
|
Appendable | 通過追加上傳產生的Object類型。 | 調用AppendObject完成首次上傳後,在已上傳Appendable類型Object後面直接追加內容。 |
Symlink | 通過PutSymlink產生的軟連結。 | 通過設定軟連結,便捷訪問Bucket內的常用Object。 |
Delete Marker | 未指定Object版本ID發起DeleteObject請求產生的刪除標記。 | 對已開啟或已暫停版本控制的Bucket中的Object發送DeleteObject請求時,如果在DeleteObject請求中未指定Object的版本ID,則不會刪除Object ,而是插入刪除標記作為Object的目前的版本,便於後續恢複誤刪除的資料。 |
Object資訊
Object包含以下資訊:
Key:Object的名稱,可用於查詢Object。
Data:您儲存的資料,可由任意長度的位元組組成。
Version ID:將Object上傳至開啟版本控制的儲存空間(Bucket)後,OSS產生標識該對象的版本ID。
Object Meta:Object中繼資料,是一組索引值對,表示了Object的一些屬性,例如最後修改時間、大小等資訊。您也可以在中繼資料中儲存一些自訂的資訊。
相關操作
下表匯總了OSS支援的Object相關操作。
操作 | 說明 |
簡單上傳指的是使用OSS API中的PutObject介面上傳小於5 GB的單個檔案(Object),適用於一次HTTP請求互動即可完成上傳的情境。 | |
分區上傳是指將待上傳的檔案分成多個片段(Part)分別上傳,上傳完成之後再調用CompleteMultipartUpload介面將這些Part組合成一個Object。 | |
通過斷點續傳上傳的方式將檔案上傳到OSS前,您可以通過Checkpoint檔案指定斷點記錄點。上傳過程中,如果出現網路異常或程式崩潰導致檔案上傳失敗時,將從斷點記錄處繼續上傳未上傳完成的部分。 | |
OSS在完成檔案(Object)上傳時可以提供回調(Callback)給應用伺服器。您只需要在發送給OSS的請求中攜帶相應的Callback參數,即可實現回調。 | |
用戶端直傳是指用戶端直接上傳檔案到Object Storage Service。相對於服務端代理上傳,用戶端直傳避免了商務服務器中轉檔案,提高了上傳速度,節省了伺服器資源。 | |
表單上傳是指使用OSS API中的PostObject請求來完成Object的上傳,上傳的Object不能超過5 GB。 | |
追加上傳指的是在已上傳的Appendable類型Object後面直接追加內容。 | |
OSS支援使用RTMP協議推送H264編碼的視頻流和AAC編碼的音頻流到OSS。推送到OSS的音視頻資料可以點播播放;在對延遲不敏感的應用情境,也可以做直播用途。 | |
簡單下載指的是使用OSS API的GetObject介面,下載已上傳的Object,適用於一次HTTP請求互動即可完成下載的情境。 | |
OSS提供了從Object指定的位置開始下載的功能,在下載大的Object的時候,可以分多次下載。如果下載中斷,重啟時也可以從上次完成的位置開始繼續下載。 | |
您可以在不提供資源擁有者所屬帳號的存取金鑰(AccessKey)的情況下,通過臨時訪問憑證以及簽名URL的方式授權第三方下載檔案Object。 | |
Bucket內的Object預設按照字母序排列。您可以結合實際情境列舉當前Bucket的所有Object、指定首碼的Object、指定個數的Object等。 | |
拷貝檔案是指在不改變檔案內容的情況下,將同一地區下的源Bucket內的檔案複製到目標Bucket。 | |
在同一個Bucket內重新命名某個Object。 | |
Object上傳至Bucket後,您可以通過檔案URL將檔案分享給第三方預覽或下載。 | |
當您向Bucket上傳了大量的Object時,OSS支援通過指定檔案名稱首碼快速搜尋並定位目標檔案。 | |
冷歸檔或者深度冷Archive Storage類型的Object需要解凍(Restore)之後才能讀取。 | |
您可以通過多種方式刪除Bucket中不再需要保留的Object。 | |
OSS支援使用標籤對Bucket中的Object進行分類,您可以針對同標籤的Object設定生命週期規則、存取權限等。 | |
軟連結功能用於快速存取Bucket內的常用Object。設定軟連結後,您可以使用類似於Windows的捷徑,通過軟連結檔案快速開啟Object。 | |
檔案中繼資料是對檔案的屬性描述,包括HTTP標準屬性(HTTP Header)和使用者自訂中繼資料(User Meta)兩種。您可以通過設定檔案HTTP頭來自訂HTTP請求的策略,例如檔案快取策略、強制下載策略等。您還可以通過設定使用者自訂中繼資料來標識Object的用途或屬性等。 | |
用戶端訪問OSS內的Object時會佔用較大頻寬,在某些不容易控制流程控的用戶端上可能會對其他應用造成影響。為避免此類問題,您可以通過OSS提供的單連結限速功能在上傳、下載檔案等操作中進行流量控制,以保證其他應用的網路頻寬。 | |
您可以使用SelectObject對目標檔案執行SQL語句,返回執行結果。 | |
進行分區上傳時,Object會被切成若干個Part,這些Part被稱為片段。當您將這些Part上傳到OSS服務端後,可以調用CompleteMultipartUpload將這些Part組合成一個完整的Object。 | |
與傳統檔案系統中的層級結構不同,OSS內部使用扁平結構儲存資料。即所有資料均以Object的形式儲存在Bucket中。為方便您對Object進行分組並簡化許可權管理,您可以通過目錄的層次來組織Object。 | |
資料索引是OSS對外提供的Object中繼資料索引能力。您可以利用Object的中繼資料自訂索引的條件,從而快速擷取Object列表。資料索引可以協助您更好地管理與瞭解資料結構,方便您後續查詢、統計和管理Object。 |