Skip to main content
È disponibile una versione più recente di questo prodotto.
La versione in lingua italiana fornita proviene da una traduzione automatica. Per eventuali incoerenze, fare riferimento alla versione in lingua inglese.

Operazioni API Swift REST di StorageGRID

Collaboratori

Sono state aggiunte operazioni all'API di Swift REST specifiche per il sistema StorageGRID.

OTTENERE una richiesta di coerenza dei container

Il livello di coerenza offre un equilibrio tra la disponibilità degli oggetti e la coerenza di tali oggetti nei diversi nodi e siti di storage. La richiesta DI coerenza GET Container consente di determinare il livello di coerenza applicato a un determinato container.

Richiesta

Richiedi intestazione HTTP Descrizione

X-Auth-Token

Specifica il token di autenticazione Swift per l'account da utilizzare per la richiesta.

x-ntap-sg-consistency

Specifica il tipo di richiesta, dove true = OTTENERE la coerenza del container, e. false = GET container (OTTIENI container).

Host

Il nome host a cui viene indirizzata la richiesta.

Esempio di richiesta

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

Risposta

Intestazione HTTP di risposta Descrizione

Date

La data e l'ora della risposta.

Connection

Se la connessione al server è aperta o chiusa.

X-Trans-Id

Identificativo univoco della transazione per la richiesta.

Content-Length

La lunghezza del corpo di risposta.

x-ntap-sg-consistency

Il livello di controllo della coerenza applicato al container. Sono supportati i seguenti valori:

  • All: Tutti i nodi ricevono i dati immediatamente o la richiesta non riesce.

  • Strong-Global: Garantisce la coerenza di lettura dopo scrittura per tutte le richieste dei client in tutti i siti.

  • Strong-Site: Garantisce la coerenza di lettura dopo scrittura per tutte le richieste dei client all'interno di un sito.

  • Read-after-new-write: Fornisce coerenza di lettura dopo scrittura per nuovi oggetti ed eventuale coerenza per gli aggiornamenti degli oggetti. Offre alta disponibilità e garanzie di protezione dei dati.

    Nota: Se l'applicazione utilizza richieste HEAD su oggetti che non esistono, potrebbe essere visualizzato un numero elevato di errori 500 interni del server se uno o più nodi di storage non sono disponibili. Per evitare questi errori, utilizzare il livello “Available”.

  • Available (eventuale coerenza per le operazioni HEAD): Si comporta come il livello di coerenza “read-after-new-write”, ma fornisce solo una coerenza finale per le operazioni HEAD. Offre una maggiore disponibilità per le operazioni HEAD rispetto a “read-after-new-write” se i nodi storage non sono disponibili.

Esempio di risposta

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
Informazioni correlate

USA account tenant

INVIO di una richiesta di coerenza del container

La richiesta DI coerenza PUT container consente di specificare il livello di coerenza da applicare alle operazioni eseguite su un container. Per impostazione predefinita, i nuovi contenitori vengono creati utilizzando il livello di coerenza “read-after-new-write”.

Richiesta

Richiedi intestazione HTTP Descrizione

X-Auth-Token

Il token di autenticazione Swift per l'account da utilizzare per la richiesta.

x-ntap-sg-consistency

Il livello di controllo della coerenza da applicare alle operazioni sul container. Sono supportati i seguenti valori:

  • All: Tutti i nodi ricevono i dati immediatamente o la richiesta non riesce.

  • Strong-Global: Garantisce la coerenza di lettura dopo scrittura per tutte le richieste dei client in tutti i siti.

  • Strong-Site: Garantisce la coerenza di lettura dopo scrittura per tutte le richieste dei client all'interno di un sito.

  • Read-after-new-write: Fornisce coerenza di lettura dopo scrittura per nuovi oggetti ed eventuale coerenza per gli aggiornamenti degli oggetti. Offre alta disponibilità e garanzie di protezione dei dati.

    Nota: Se l'applicazione utilizza richieste HEAD su oggetti che non esistono, potrebbe essere visualizzato un numero elevato di errori 500 interni del server se uno o più nodi di storage non sono disponibili. Per evitare questi errori, utilizzare il livello “Available”.

  • Available (eventuale coerenza per le operazioni HEAD): Si comporta come il livello di coerenza “read-after-new-write”, ma fornisce solo una coerenza finale per le operazioni HEAD. Offre una maggiore disponibilità per le operazioni HEAD rispetto a “read-after-new-write” se i nodi storage non sono disponibili.

Host

Il nome host a cui viene indirizzata la richiesta.

Come interagiscono i controlli di coerenza e le regole ILM per influire sulla protezione dei dati

La scelta del controllo di coerenza e la regola ILM influiscono sulla modalità di protezione degli oggetti. Queste impostazioni possono interagire.

Ad esempio, il controllo di coerenza utilizzato quando un oggetto viene memorizzato influisce sul posizionamento iniziale dei metadati dell'oggetto, mentre il comportamento di acquisizione selezionato per la regola ILM influisce sul posizionamento iniziale delle copie dell'oggetto. Poiché StorageGRID richiede l'accesso sia ai metadati di un oggetto che ai suoi dati per soddisfare le richieste dei client, la selezione dei livelli di protezione corrispondenti per il livello di coerenza e il comportamento di acquisizione può fornire una migliore protezione iniziale dei dati e risposte di sistema più prevedibili.

Per le regole ILM sono disponibili i seguenti comportamenti di acquisizione:

  • Strict: Tutte le copie specificate nella regola ILM devono essere eseguite prima che il client sia riuscito.

  • Balanced: StorageGRID tenta di eseguire tutte le copie specificate nella regola ILM al momento dell'acquisizione; se ciò non è possibile, vengono eseguite copie temporanee e viene restituito il successo al client. Le copie specificate nella regola ILM vengono eseguite quando possibile.

  • Doppio commit: StorageGRID esegue immediatamente copie temporanee dell'oggetto e restituisce il successo al client. Le copie specificate nella regola ILM vengono eseguite quando possibile.

Nota Prima di selezionare il comportamento di acquisizione per una regola ILM, leggere la descrizione completa di queste impostazioni nelle istruzioni per la gestione degli oggetti con la gestione del ciclo di vita delle informazioni.

Esempio di come il controllo della coerenza e la regola ILM possono interagire

Si supponga di disporre di una griglia a due siti con la seguente regola ILM e la seguente impostazione del livello di coerenza:

  • ILM rule: Creare due copie di oggetti, una nel sito locale e una in un sito remoto. Viene selezionato il comportamento rigoroso dell'acquisizione.

  • Livello di coerenza: “strong-Global” (i metadati degli oggetti vengono distribuiti immediatamente a tutti i siti).

Quando un client memorizza un oggetto nella griglia, StorageGRID esegue entrambe le copie degli oggetti e distribuisce i metadati a entrambi i siti prima di restituire il risultato al client.

L'oggetto è completamente protetto contro la perdita al momento dell'acquisizione del messaggio di successo. Ad esempio, se il sito locale viene perso poco dopo l'acquisizione, le copie dei dati dell'oggetto e dei metadati dell'oggetto rimangono nel sito remoto. L'oggetto è completamente recuperabile.

Se invece sono state utilizzate la stessa regola ILM e il livello di coerenza “strong-site”, il client potrebbe ricevere un messaggio di successo dopo la replica dei dati dell'oggetto nel sito remoto, ma prima della distribuzione dei metadati dell'oggetto. In questo caso, il livello di protezione dei metadati degli oggetti non corrisponde al livello di protezione dei dati degli oggetti. Se il sito locale viene perso poco dopo l'acquisizione, i metadati dell'oggetto andranno persi. Impossibile recuperare l'oggetto.

L'interconnessione tra i livelli di coerenza e le regole ILM può essere complessa. Contattare NetApp per assistenza.

Esempio di richiesta

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

Risposta

Intestazione HTTP di risposta Descrizione

Date

La data e l'ora della risposta.

Connection

Se la connessione al server è aperta o chiusa.

X-Trans-Id

Identificativo univoco della transazione per la richiesta.

Content-Length

La lunghezza del corpo di risposta.

Esempio di risposta

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

USA account tenant