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.

Abilita il servizio di integrazione della ricerca in StorageGRID con la richiesta di configurazione della notifica dei metadati del bucket PUT

La richiesta di configurazione della notifica dei metadati del bucket PUT ti permette di abilitare il servizio di integrazione della ricerca per i singoli bucket. Il file XML di configurazione della notifica dei metadati che fornisci nel corpo della richiesta specifica gli oggetti i cui metadati vengono inviati all'indice di ricerca di destinazione.

Devi avere l'autorizzazione s3:PutBucketMetadataNotification per un bucket, oppure essere account root, per completare questa operazione.

Richiesta

La richiesta deve includere la configurazione di notifica dei metadati nel corpo della richiesta. Ogni configurazione di notifica dei metadati include una o più regole. Ogni regola specifica gli oggetti a cui si applica e la destinazione a cui StorageGRID deve inviare i metadati degli oggetti.

Puoi filtrare gli oggetti in base al prefisso del nome dell'oggetto. Ad esempio, puoi inviare i metadati degli oggetti con il prefisso /images a una destinazione e quelli con il prefisso /videos a un'altra.

Le configurazioni con prefissi sovrapposti non sono valide e vengono rifiutate al momento dell'invio. Ad esempio, una configurazione che includa una regola per oggetti con il prefisso test e una seconda regola per oggetti con il prefisso test2 non sarebbe consentita.

Le destinazioni devono essere specificate utilizzando l'URN di un endpoint StorageGRID. L'endpoint deve esistere quando viene inviata la configurazione della notifica dei metadati, altrimenti la richiesta fallisce come un 400 Bad Request. Il messaggio di errore indica: Unable to save the metadata notification (search) policy. The specified endpoint URN does not exist: URN.

<MetadataNotificationConfiguration>
    <Rule>
        <ID>Rule-1</ID>
        <Status>rule-status</Status>
        <Prefix>key-prefix</Prefix>
        <Destination>
           <Urn>arn:aws:es:region:account-ID:domain/mydomain/myindex/mytype</Urn>
        </Destination>
    </Rule>
    <Rule>
        <ID>Rule-2</ID>
         ...
    </Rule>
     ...
</MetadataNotificationConfiguration>

La tabella descrive gli elementi nel file XML di configurazione della notifica dei metadati.

Nome Descrizione Richiesto

MetadataNotificationConfiguration

Tag contenitore per le regole utilizzate per specificare gli oggetti e la destinazione per le notifiche dei metadati.

Contiene uno o più elementi Rule.

Regola

Etichetta contenitore per una regola che identifica gli oggetti i cui metadati devono essere aggiunti a un indice specificato.

Le regole con prefissi sovrapposti vengono rifiutate.

Incluso nell'elemento MetadataNotificationConfiguration.

ID

Identificativo univoco per la regola.

Incluso nell'elemento Regola.

No

Stato

Lo stato può essere "Abilitato" o "Disabilitato". Per le regole disabilitate non viene intrapresa alcuna azione.

Incluso nell'elemento Regola.

Prefisso

Gli oggetti che corrispondono al prefisso sono interessati dalla regola e i loro metadati vengono inviati alla destinazione specificata.

Per selezionare tutti gli oggetti, specifica un prefisso vuoto.

Incluso nell'elemento Regola.

Destinazione

Etichetta contenitore per la destinazione di una regola.

Incluso nell'elemento Regola.

Urn

URN della destinazione a cui vengono inviati i metadati dell'oggetto. Deve essere l'URN di un endpoint StorageGRID con le seguenti proprietà:

  • `es`deve essere il terzo elemento.

  • L'URN deve terminare con l'indice e il tipo in cui sono memorizzati i metadati, nel formato domain-name/myindex/mytype.

Gli endpoint vengono configurati tramite Tenant Manager o Tenant Management API. Hanno la seguente forma:

  • arn:aws:es:region:account-ID:domain/mydomain/myindex/mytype

  • urn:mysite:es:::mydomain/myindex/mytype

L'endpoint deve essere configurato prima dell'invio del file XML di configurazione, altrimenti la configurazione fallirà con un errore 404.

Urn è incluso nell'elemento Destinazione.

Esempi di richieste

Questo esempio mostra come abilitare l'integrazione della ricerca per un bucket. In questo esempio, i metadati di tutti gli oggetti vengono inviati alla stessa destinazione.

PUT /test1?x-ntap-sg-metadata-notification HTTP/1.1
Date: date
Authorization: authorization string
Host: host

<MetadataNotificationConfiguration>
    <Rule>
        <ID>Rule-1</ID>
        <Status>Enabled</Status>
        <Prefix></Prefix>
        <Destination>
           <Urn>urn:sgws:es:::sgws-notifications/test1/all</Urn>
        </Destination>
    </Rule>
</MetadataNotificationConfiguration>

In questo esempio, i metadati degli oggetti che corrispondono al prefisso /images vengono inviati a una destinazione, mentre i metadati degli oggetti che corrispondono al prefisso /videos vengono inviati a una seconda destinazione.

PUT /graphics?x-ntap-sg-metadata-notification HTTP/1.1
Date: date
Authorization: authorization string
Host: host

<MetadataNotificationConfiguration>
    <Rule>
        <ID>Images-rule</ID>
        <Status>Enabled</Status>
        <Prefix>/images</Prefix>
        <Destination>
           <Urn>arn:aws:es:us-east-1:3333333:domain/es-domain/graphics/imagetype</Urn>
        </Destination>
    </Rule>
    <Rule>
        <ID>Videos-rule</ID>
        <Status>Enabled</Status>
        <Prefix>/videos</Prefix>
        <Destination>
           <Urn>arn:aws:es:us-west-1:22222222:domain/es-domain/graphics/videotype</Urn>
        </Destination>
    </Rule>
</MetadataNotificationConfiguration>

JSON generato dal servizio di integrazione della ricerca

Quando abiliti il servizio di integrazione della ricerca per un bucket, viene generato un documento JSON e inviato alla destinazione ogni volta che i metadati o i tag di un oggetto vengono aggiunti, aggiornati o eliminati.

Questo esempio mostra un esempio del JSON che potrebbe essere generato quando un oggetto con la chiave SGWS/Tagging.txt viene creato in un bucket denominato test. Il test bucket non è versionato, quindi il versionId tag è vuoto.

{
  "bucket": "test",
  "key": "SGWS/Tagging.txt",
  "versionId": "",
  "accountId": "86928401983529626822",
  "size": 38,
  "md5": "3d6c7634a85436eee06d43415012855",
  "region":"us-east-1",
  "metadata": {
    "age": "25"
  },
  "tags": {
    "color": "yellow"
  }
}

Metadati degli oggetti inclusi nelle notifiche dei metadati

La tabella elenca tutti i campi inclusi nel documento JSON che viene inviato all'endpoint di destinazione quando l'integrazione della ricerca è abilitata.

Il nome del documento include il nome del bucket, il nome dell'oggetto e l'ID della versione se presente.

Tipo Nome articolo Descrizione

Informazioni su bucket e oggetto

bucket

Nome del bucket

Informazioni su bucket e oggetto

chiave

Nome chiave oggetto

Informazioni su bucket e oggetto

ID versione

Versione dell'oggetto, per gli oggetti in bucket con versioning

Informazioni su bucket e oggetto

regione

Regione del bucket, ad esempio us-east-1

Metadati di sistema

dimensione

Dimensione dell'oggetto (in byte) come visibile a un client HTTP

Metadati di sistema

md5

Hash dell'oggetto

Metadati utente

metadati key:value

Tutti i metadati utente per l'oggetto, come coppie chiave-valore

Etichette

tag key:value

Tutti i tag oggetto definiti per l'oggetto, come coppie chiave-valore

Nota Per i tag e i metadati utente, StorageGRID trasmette date e numeri a Elasticsearch come stringhe o come notifiche di eventi S3. Per configurare Elasticsearch in modo che interpreti queste stringhe come date o numeri, segui le istruzioni di Elasticsearch per la mappatura dinamica dei campi e per la mappatura dei formati data. Devi abilitare la mappatura dinamica dei campi sull'indice prima di configurare il servizio di integrazione della ricerca. Dopo che un documento è stato indicizzato, non puoi modificare i tipi di campo del documento nell'indice.
Informazioni correlate

"Usa un tenant account"