本繁體中文版使用機器翻譯,譯文僅供參考,若與英文版本牴觸,應以英文版本為準。

Swift REST API作業StorageGRID

貢獻者

Swift REST API上新增了特定StorageGRID 於該系統的作業。

取得Container一致性要求

一致性層級可在物件的可用度與不同儲存節點和站台之間的物件一致性之間進行權衡。「Get Container一致性」要求可讓您判斷要套用至特定容器的一致性層級。

申請

要求HTTP標頭 說明

「X-AUTH-Token」

指定要用於要求的帳戶Swift驗證權杖。

《X-ntot-sg-consistency》

指定要求類型、其中「true」=取得容器一致性、「false」= Get Container。

「主機」

要求導向的主機名稱。

申請範例

GET /v1/28544923908243208806/Swift container
X-Auth-Token: SGRD_3a877009a2d24cb1801587bfa9050f29
x-ntap-sg-consistency: true
Host: test.com

回應

回應HTTP標頭 說明

'日期'

回應的日期和時間。

「連線」

是否開啟或關閉與伺服器的連線。

「X-trans-ID」

要求的唯一交易識別碼。

《內容長度》

回應本文的長度。

《X-ntot-sg-consistency》

套用至容器的一致性控制層級。支援下列值:

  • 全部:所有節點都會立即接收資料、否則要求將會失敗。

  • 強式全域:保證所有站台所有用戶端要求的寫入後讀取一致性。

  • * Strong站台*:保證站台內所有用戶端要求的寫入後讀取一致性。

  • 新寫入後讀取:提供新物件的寫入後讀取一致性、以及物件更新的最終一致性。提供高可用度與資料保護保證。

    附註:如果您的應用程式在不存在的物件上使用標頭要求、如果一個或多個儲存節點無法使用、您可能會收到大量500個內部伺服器錯誤。若要避免這些錯誤、請使用「可用」層級。

  • 可用(最終的頭端作業一致性):行為與「全新寫入後的讀取」一致性層級相同、但最終只能提供頭端作業的一致性。如果儲存節點無法使用、則頭端作業的可用度比「全新寫入後的準備」高。

回應範例

HTTP/1.1 204 No Content
Date: Sat, 29 Nov 2015 01:02:18 GMT
Connection: CLOSE
X-Trans-Id: 1936575373
Content-Length: 0
x-ntap-sg-consistency: strong-site

放置容器一致性要求

放置容器一致性要求可讓您指定要套用至容器上執行之作業的一致性層級。根據預設、新的容器是使用「全新寫入後的讀取」一致性層級來建立。

申請

要求HTTP標頭 說明

「X-AUTH-Token」

用於要求的帳戶Swift驗證權杖。

《X-ntot-sg-consistency》

套用至容器作業的一致性控制層級。支援下列值:

  • 全部:所有節點都會立即接收資料、否則要求將會失敗。

  • 強式全域:保證所有站台所有用戶端要求的寫入後讀取一致性。

  • * Strong站台*:保證站台內所有用戶端要求的寫入後讀取一致性。

  • 新寫入後讀取:提供新物件的寫入後讀取一致性、以及物件更新的最終一致性。提供高可用度與資料保護保證。

    附註:如果您的應用程式在不存在的物件上使用標頭要求、如果一個或多個儲存節點無法使用、您可能會收到大量500個內部伺服器錯誤。若要避免這些錯誤、請使用「可用」層級。

  • 可用(最終的頭端作業一致性):行為與「全新寫入後的讀取」一致性層級相同、但最終只能提供頭端作業的一致性。如果儲存節點無法使用、則頭端作業的可用度比「全新寫入後的準備」高。

「主機」

要求導向的主機名稱。

一致性控制與ILM規則如何互動、以影響資料保護

您選擇的一致性控制和ILM規則都會影響物件的保護方式。這些設定可以互動。

例如、儲存物件時所使用的一致性控制項會影響物件中繼資料的初始放置位置、而針對ILM規則所選取的擷取行為則會影響物件複本的初始放置位置。由於支援對象的中繼資料及其資料、因此需要同時存取才能滿足用戶端要求、因此針對一致性層級和擷取行為選擇相符的保護層級、可提供更好的初始資料保護、並提供更可預測的系統回應。StorageGRID

下列擷取行為適用於ILM規則:

  • 嚴格:ILM規則中指定的所有複本都必須在成功傳回用戶端之前完成。

  • 平衡:StorageGRID 在擷取時、會嘗試製作ILM規則中指定的所有複本;如果不可能、則會製作過渡複本、並將成功傳回給用戶端。ILM規則中指定的複本會盡可能製作。

  • 雙重承諾:StorageGRID 此物件立即製作過渡複本、並讓用戶端恢復成功。在ILM規則中指定的複本會盡可能製作。

附註 在選擇ILM規則的擷取行為之前、請先閱讀資訊生命週期管理物件管理說明中有關這些設定的完整說明。

一致性控制和ILM規則如何互動的範例

假設您有一個雙站台網格、其中包含下列ILM規則和下列一致性層級設定:

  • * ILM規則*:建立兩個物件複本、一個在本機站台、一個在遠端站台。選取嚴格的擷取行為。

  • 一致性層級:「'trong-globat'(物件中繼資料會立即發佈至所有站台)。

當用戶端將物件儲存到網格時、StorageGRID 在成功傳回用戶端之前、功能區會同時複製物件並將中繼資料散佈到兩個站台。

在擷取最成功的訊息時、物件會受到完整保護、不會遺失。例如、如果在擷取後不久即遺失本機站台、則物件資料和物件中繼資料的複本仍存在於遠端站台。物件可完全擷取。

如果您改用相同的ILM規則和「站台」一致性層級、則用戶端可能會在物件資料複寫到遠端站台之後、收到成功訊息、但物件中繼資料才會散佈到該站台。在此情況下、物件中繼資料的保護層級與物件資料的保護層級不符。如果在擷取後不久本機站台便會遺失、則物件中繼資料將會遺失。無法擷取物件。

一致性層級與ILM規則之間的相互關係可能相當複雜。如需協助、請聯絡NetApp。

申請範例

PUT /v1/28544923908243208806/_Swift container_
X-Auth-Token: SGRD_3a877009a2d24cb1801587bfa9050f29
x-ntap-sg-consistency: strong-site
Host: test.com

回應

回應HTTP標頭 說明

'日期'

回應的日期和時間。

「連線」

是否開啟或關閉與伺服器的連線。

「X-trans-ID」

要求的唯一交易識別碼。

《內容長度》

回應本文的長度。

回應範例

HTTP/1.1 204 No Content
Date: Sat, 29 Nov 2015 01:02:18 GMT
Connection: CLOSE
X-Trans-Id: 1936575373
Content-Length: 0