使用跨區域復制以實現合規、降低延時、確保安全性和可用性
跨區域復制(Cross-Region Replication)是指將相同或者不同賬號某個地域下源存儲空間(Bucket)中Object的創建、更新和刪除等操作自動、異步(近實時)地復制到另一個地域下的目標Bucket,以實現合規、降低延時、確保安全性和可用性等目的。
使用場景
跨區域復制功能滿足Bucket跨區域容災或用戶數據復制的需求。目標Bucket中的Object是源Bucket中Object的精確副本,它們具有相同的Object名、版本信息、元數據以及內容,例如創建時間、擁有者、用戶定義的元數據、Object ACL、Object內容等。您可以通過配置跨區域復制規則來實現以下場景需求。
合規性要求
雖然OSS默認對每個存儲的Object有數據冗余機制,但合規性要求數據跨一定距離需要保存一份副本。通過跨區域復制,可以在遠距離的OSS數據中心之間復制數據,以滿足合規性要求。
最大限度減少延遲
客戶處于兩個地理位置。為了最大限度縮短訪問Object時的延遲,可以在地理位置與用戶較近的OSS數據中心維護Object副本。
數據備份與容災
您對數據的安全性和可用性有極高的要求,對所有寫入的數據,都希望在另一個數據中心顯式地維護一份副本,以備發生特大災難(如地震、海嘯等)導致一個OSS數據中心損毀時,還能啟用另一個OSS數據中心的備份數據。
數據遷移
由于業務原因,需要將數據從OSS的一個數據中心遷移到另一個數據中心。
操作原因
您在兩個不同數據中心中擁有分析同一組Object的計算集群。您可以選擇在兩個不同區域中維護Object副本。
功能特性
跨區域復制支持特性如下:
數據復制時間控制RTC
開啟RTC后,OSS會在幾秒內復制您上傳到OSS的大多數Object,并在10分鐘內復制99.99%的Object。此外,RTC功能還提供數據復制的實時監控,方便您查看復制任務的各項指標。
準實時復制數據
對于數據的新增、刪除、修改等操作能夠準實時復制到目標Bucket。
數據一致性
默認情況下,在源Bucket將數據復制到目標Bucket的過程中,OSS會保證兩端數據的最終一致性。如果在復制過程中,您通過目標Bucket寫入同名文件,OSS將無法保證兩端數據的最終一致性。
歷史數據遷移
支持將源Bucket配置復制關系后新寫入的數據復制到目標Bucket的同時,還支持將未配置復制關系前的歷史數據進行復制。
獲取復制進度
能夠針對復制數據展示最近復制的時間節點,針對歷史數據的遷移展示遷移的百分比。
版本控制
對同時處于開啟版本控制狀態的源Bucket和目標Bucket,保證其數據版本的最終一致性。如果數據復制方式為寫(增、改)同步,則源Bucket指定版本刪除的操作不會復制到目標Bucket,源Bucket創建的刪除標記會復制到目標Bucket。
傳輸加速
支持通過傳輸加速功能提高中國內地各地域與非中國內地各地域之間進行跨區域復制時的數據傳輸速度。傳輸加速功能詳情請參見傳輸加速。
復制加密數據
支持復制未加密的Object和使用SSE-KMS、SSE-OSS方式進行服務器端加密的Object。詳情請參見跨區域復制結合服務器端加密。
配置事件通知
您可以通過在事件通知規則中,將事件類型配置為
ObjectReplication:ObjectCreated
、ObjectReplication:ObjectRemoved
以及ObjectReplication:ObjectModified
的方式,獲取數據復制過程中源Bucket以及目標Bucket內Object的新增、更新、刪除、覆蓋等變化情況。詳情請參見通過事件通知實時處理OSS文件變動。
注意事項
費用說明
進行跨區域復制時,OSS會根據復制文件產生的流量收取跨區域復制流量費用。計費方式,請參見跨區域復制流量費用。
跨賬號跨區域復制產生的跨區域復制流量費用將由源Bucket所屬賬號承擔。
每成功復制1個Object,OSS會計算請求次數并收取請求費用。計費方式,請參見請求費用。
如果開啟傳輸加速功能,會額外產生傳輸加速費用。計費方式,請參見傳輸加速費用。
如果開啟數據復制時間控制RTC,會額外產生跨區域復制RTC費用。計費方式,請參見跨區域復制RTC費用。
通過跨區域復制將源Bucket中的低頻訪問、歸檔類型Object復制到目標Bucket時,不涉及數據解凍操作,不收取數據取回容量費用。
復制時間
跨區域數據復制采用異步(近實時)機制,將數據從源Bucket傳輸到目標Bucket的過程可能需要幾分鐘到幾小時,具體時間取決于數據量的大小。如果復制過程耗時過長,建議檢查是否存在帶寬限制導致的復制任務延遲。如果確認為帶寬問題,建議通過提交工單的方式申請提升帶寬,以優化復制效率。
您可以通過OSS控制臺記錄各時段存儲空間使用帶寬。
頁簽下使用帶寬區域查看跨區域復制流入數據,該指標用于統計使用跨區域復制功能時數據流入目標Bucket所使用的帶寬。具體操作,請參見覆蓋同名Object的風險
對于處于復制狀態的兩個Bucket,由于您可以同時操作這兩個Bucket,源Bucket復制過去的Object可能存在覆蓋目標Bucket中同名Object的風險。
使用限制
地域限制
華東1(杭州)、華東2(上海)、華東5(南京-本地地域)、華東6(福州-本地地域)、華中1(武漢-本地地域)、華北1(青島)、華北2(北京)、華北 3(張家口)、華北5(呼和浩特)、華北6(烏蘭察布)、華南1(深圳)、華南2(河源)、華南3(廣州)、西南1(成都)、中國香港、美國(硅谷)、美國(弗吉尼亞)、日本(東京)、韓國(首爾)、新加坡、馬來西亞(吉隆坡)、印度尼西亞(雅加達)、菲律賓(馬尼拉)、泰國(曼谷)、德國(法蘭克福)、英國(倫敦)、阿聯酋(迪拜)地域支持設置跨區域復制。
無地域屬性Bucket僅支持與中國內地各地域的Bucket之間配置跨區域復制。
無地域屬性Bucket之間的數據復制僅支持通過跨區域復制實現。
中國內地與非中國內地各地域之間進行跨區域復制時,必須開啟傳輸加速功能。
規則數量
源Bucket中的數據可以復制到多個目標Bucket。單個Bucket關聯的復制規則數量不能超過100條。這些規則中,該Bucket既可以作為源Bucket,也可以作為目標Bucket。
如果您的業務場景涉及更大數量的復制規則,請聯系技術支持。
操作限制
源Bucket和目標Bucket的版本控制狀態必須保持一致,即同時處于未開啟狀態或開啟狀態。暫停狀態不支持配置數據復制規則。
處于復制狀態下的兩個Bucket不允許改變其版本控制狀態。
對于處于復制狀態的兩個Bucket,由于您可以同時操作這兩個Bucket,源Bucket復制過去的Object可能存在覆蓋目標Bucket中同名Object的風險。
源Bucket中的數據可以復制到多個目標Bucket。單個Bucket關聯的復制規則數量不能超過100條。這些規則中,該Bucket既可以作為源Bucket,也可以作為目標Bucket。如果您的業務場景涉及更大數量的復制規則,請聯系技術支持。
不支持將源Bucket中冷歸檔或者深度冷歸檔存儲類型Object復制到目標Bucket。
不支持將源Bucket中Appendable類型的Object復制到冷歸檔存儲類型的目標Bucket。