documents/batch - Amazon CloudSearch

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

documents/batch

Questa sezione descrive i messaggi di richiesta e risposta HTTP per la risorsa documents/batch.

Crei batch di documenti per descrivere i dati che desideri caricare su un CloudSearch dominio Amazon. Un batch di documenti è una raccolta di operazioni di aggiunta ed eliminazione che rappresentano i documenti che desideri aggiungere, aggiornare o eliminare da un tuo dominio. I batch possono essere descritti in formato JSON o XML. Un batch fornisce tutte le informazioni di cui Amazon CloudSearch ha bisogno per l'indicizzazione. Ogni articolo che desideri poter restituire come risultato di ricerca (ad esempio un prodotto) è rappresentato come un documento: un batch è semplicemente una raccolta di richieste di aggiunta ed eliminazione per singoli documenti. Ogni documento ha un ID univoco e uno o più campi che contengono i dati che si desidera ricercare e restituire all'interno dei risultati.

Per aggiornare un documento, devi specificare una richiesta di aggiunta con l'ID del documento che vuoi aggiornare. Per ulteriori informazioni, consulta Aggiunta e aggiornamento di documenti in Amazon CloudSearch. Analogamente, per eliminare un documento devi inviare una richiesta di eliminazione con l'ID del documento che vuoi eliminare. Per informazioni sull'eliminazione dei documenti, consultare Eliminazione di documenti in Amazon CloudSearch.

Per ulteriori informazioni sull'invio di dati per l'indicizzazione, consultare upload documents.

documents/batch JSON API

Richieste documents/batch JSON

Il corpo di una richiesta documents/batch utilizza i formati JSON o XML per specificare le operazioni che vuoi eseguire per i documenti. La rappresentazione JSON di un batch è una raccolta di oggetti che definiscono le singole operazioni di aggiunta ed eliminazione. La proprietà type indica se un oggetto rappresenta un'operazione di aggiunta o di eliminazione. Ad esempio, il seguente batch JSON aggiunge un documento ed elimina un documento:

[ { "type": "add", "id": "tt0484562", "fields": { "title": "The Seeker: The Dark Is Rising", "directors": ["Cunningham, David L."], "genres": ["Adventure","Drama","Fantasy","Thriller"], "actors": ["McShane, Ian","Eccleston, Christopher","Conroy, Frances", "Crewson, Wendy","Ludwig, Alexander","Cosmo, James", "Warner, Amelia","Hickey, John Benjamin","Piddock, Jim", "Lockhart, Emma"] } }, { "type": "delete", "id": "tt0484575" }]
Nota

Quando specifichi i batch di documenti nel formato JSON, il valore di un campo non può essere null.

Di seguito è riportato lo schema JSON di un batch:

{ "type": "array", "minItems": 1, "items": { "type": "object", "properties": { "type": { "type": "string", "enum": ["add", "delete"], "required": true }, "id": { "type": "string", "pattern": "[a-z0-9][a-z0-9_]{0,127}", "minLength": 1, "maxLength": 128, "required": true }, "fields": { "type": "object", "patternProperties": { "[a-zA-Z0-9][a-zA-Z0-9_]{0,63}": { "type": "string", } } } } } }

Proprietà della richiesta documents/batch (JSON)

Proprietà Descrizione Richiesto
type (tipo) Tipo di operazione: add o delete.
id Stringa alfanumerica. I caratteri consentiti sono: A-Z (maiuscole), -a-z (minuscole), 0-9, _ (carattere di sottolineatura), - (trattino), / (barra), # (cancelletto), : (due punti). La lunghezza massima è 128 caratteri.
campi Insieme di una o più proprietà field_name che definiscono i campi contenuti nel documento.

Condizione: obbligatoria per le operazioni di aggiunta. Deve contenere almeno una proprietà field_name.

Condizionale
field_name Specifica una campo nel documento in fase di aggiunta. I nomi di campo devono iniziare con una lettera e possono includere i seguenti caratteri: a-z (minuscole), 0-9 e _ (carattere di sottolineatura). I nomi di campo devono avere una lunghezza compresa tra 3 e 64 caratteri. Il nome score è riservato e non può essere utilizzato come nome di campo.

Per specificare più valori per un campo, è necessario specificare un array di valori invece di un singolo valore. Per esempio:

"genre": ["Adventure","Drama","Fantasy","Thriller"]

Condizione: deve essere specificato almeno un campo nell'oggetto campi.

Condizionale

Risposta documents/batch (JSON)

Il corpo della risposta elenca il numero di operazioni di aggiunta ed eliminazione eseguite e gli eventuali errori o avvisi generati.

Di seguito è riportata la rappresentazione dello schema JSON di una risposta dell'API del servizio documenti:

{ "type": "object", "properties": { "status": { "type": "text", "enum": ["success", "error"], "required": true }, "adds": { "type": "integer", "minimum": 0, "required": true }, "deletes": { "type": "integer", "minimum": 0, "required": true }, "errors": { "type": "array", "required": false, "items": { "type": "object", "properties": { "message": { "type": "string", "required": true } } } }, "warnings": { "type": "array", "required": false, "items": { "type": "object", "properties": { "message": { "type": "string", "required": true } } } } } }

Proprietà della risposta documents/batch (JSON)

Proprietà Descrizione
status Stato del risultato: success o error.
adds Numero di operazioni di aggiunta di documenti eseguite. Sempre zero quando lo stato è error.
deletes Numero di operazioni di eliminazione di documenti eseguite. Sempre zero quando lo stato è error. Per informazioni sull'eliminazione permanente dei documenti, consultare Eliminazione di documenti in Amazon CloudSearch.
errori Fornisce informazioni su un errore di analisi o convalida. Specificato solo se lo stato è error.
attenzione Fornisce informazioni su un avviso generato durante l'analisi o la convalida.

Codici di stato documents/batch

Una richiesta del servizio documenti può restituire tre tipi di codici di stato:

  • I codici di stato 5xx indicano che si è verificato un errore interno del server. Consigliamo di intercettare e riprovare tutti i codici di errore 5xx in quanto solitamente rappresentano condizioni di errore transitorie.

  • I codici di stato 4xx indicano che la richiesta non è stata formulata correttamente.

  • I codici di stato 2xx indicano che la richiesta è riuscita.

Errore Descrizione Codice di stato HTTP
No Content-Type L'intestazione Content-Type è assente. 400
No Content-Length L'intestazione Content-Lenght è assente. 411
Incorrect Path Il percorso URL non corrisponde a ''/YYYY-MM-DD/documents/batch''. 404
Invalid HTTP Method Il metodo HTTP non è POST. Le richieste devono essere inviate a documenti/batch. 405
Invalid Accept Type L'intestazione Accept specifica un tipo di contenuto diverso da ''application/xml'' o ''application/json''. Le risposte possono essere inviate solo come XML o JSON. 406
Request Too Large La lunghezza del corpo della richiesta è superiore al valore massimo consentito. 413
Invalid Content Type Il tipo di contenuto è diverso da "application/json" o "application/xml". 415
Invalid Character Set Il set di caratteri è diverso da "'ASCII'', ''ISO-8859-1'' o ''UTF-8''. 415

Intestazioni di richiesta comuni

Nome Descrizione Richiesto
Content-Type Tipo MIME standard che descrive il formato dei dati oggetto. Per ulteriori informazioni, consultare la sezione 14 del protocollo RFC 2616 di W3C.

Impostazione predefinita: application/json

Vincoli: solo application/json o application/xml

Richiesto
Content-Length La lunghezza in byte del corpo della richiesta.
Accettare Tipo MIME standard che descrive il formato dei dati della risposta. Per ulteriori informazioni, consultare la sezione 14 del protocollo RFC 2616 di W3C.

Impostazione predefinita: Content-Type della richiesta

Vincoli: solo application/json o application/xml

No

Intestazioni di risposta comuni

Nome Descrizione
Content-Type Tipo MIME standard che descrive il formato dei dati oggetto. Per ulteriori informazioni, consultare la sezione 14 del protocollo RFC 2616 di W3C.

Impostazione predefinita: valore dell'intestazione Accept nella richiesta oppure Content-Type della richiesta se l'intestazione Accept non è presente o non specifica application/xml o application/json.

Vincoli: solo application/xml o application/json

Content-Length La lunghezza in byte del corpo della risposta.