Para crear una colección (CLI) - OpenSearch Servicio Amazon

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Para crear una colección (CLI)

Utilice los procedimientos de esta sección para crear una colección OpenSearch sin servidor mediante. AWS CLI

Antes de empezar

Antes de crear una colección mediante el AWS CLI, utilice el siguiente procedimiento para crear las políticas necesarias para la colección.

nota

En cada uno de los siguientes procedimientos, al especificar un nombre para una colección, el nombre debe cumplir los siguientes criterios:

  • Es exclusivo de su cuenta y Región de AWS

  • Contener solo letras minúsculas de la a a la z, números del 0 al 9 y un guion (-)

  • Contener entre 3 y 32 caracteres

Para crear las políticas necesarias para una colección
  1. Abra AWS CLI y ejecute el siguiente comando para crear una política de cifrado con un patrón de recursos que coincida con el nombre deseado de la colección.

    aws opensearchserverless create-security-policy \ --name policy name \ --type encryption --policy "{\"Rules\":[{\"ResourceType\":\"collection\",\"Resource\":[\"collection\/collection name\"]}],\"AWSOwnedKey\":true}"

    Por ejemplo, si planea nombrar la colección como registros de la aplicación, puede crear una política de cifrado como esta:

    aws opensearchserverless create-security-policy \ --name logs-policy \ --type encryption --policy "{\"Rules\":[{\"ResourceType\":\"collection\",\"Resource\":[\"collection\/logs-application\"]}],\"AWSOwnedKey\":true}"

    Si piensa utilizar la política para colecciones adicionales, puede hacer que la regla sea más amplia, como collection/logs* o collection/*.

  2. Ejecute el siguiente comando para configurar los ajustes de red de la colección mediante una política de red. Es posible crear políticas de red después de crear una colección, pero le recomendamos que lo haga de antemano.

    aws opensearchserverless create-security-policy \ --name policy name \ --type network --policy "[{\"Description\":\"description\",\"Rules\":[{\"ResourceType\":\"dashboard\",\"Resource\":[\"collection\/collection name\"]},{\"ResourceType\":\"collection\",\"Resource\":[\"collection\/collection name\"]}],\"AllowFromPublic\":true}]"

    Para seguir con el ejemplo anterior, logs-application, puede crear la siguiente política de red:

    aws opensearchserverless create-security-policy \ --name logs-policy \ --type network --policy "[{\"Description\":\"Public access for logs collection\",\"Rules\":[{\"ResourceType\":\"dashboard\",\"Resource\":[\"collection\/logs-application\"]},{\"ResourceType\":\"collection\",\"Resource\":[\"collection\/logs-application\"]}],\"AllowFromPublic\":true}]"

Creación de una colección

En el siguiente procedimiento, se utiliza la acción de la CreateCollectionAPI para crear una colección del tipo SEARCH oTIMESERIES. Si no especifica ningún tipo de colección en la solicitud, se usa TIMESERIES de forma predeterminada. Para obtener más información sobre estos tipos, consulteElección de un tipo de colección. Para crear una colección de búsquedas vectoriales, consulte Trabajo con colecciones de búsqueda vectorial.

Si su colección está cifrada con un Clave propiedad de AWS, kmsKeyArn es auto en lugar de un ARN.

importante

Después de crear una colección, no podrá acceder a ella a menos que coincida con una política de acceso a los datos. Para obtener más información, consulte Control de acceso a datos para Amazon OpenSearch Serverless.

Creación de una colección
  1. Compruebe que ha creado las políticas necesarias que se describen enAntes de empezar.

  2. Ejecute el siguiente comando. Para type especificar SEARCH una o TIMESERIES

    aws opensearchserverless create-collection --name "collection name" --type collection type --description "description"

Crear una colección con un índice de enriquecimiento semántico automático

Utilice el siguiente procedimiento para crear una nueva colección OpenSearch sin servidor con un índice que esté configurado para el enriquecimiento semántico automático. El procedimiento utiliza la acción de la API OpenSearch sin servidor CreateIndex.

Para crear una nueva colección con un índice configurado para el enriquecimiento semántico automático

Ejecute el siguiente comando para crear la colección y un índice.

aws opensearchserverless create-index \ --region Region ID \ --id collection name --index-name index name \ --index-schema \ 'mapping in json'

A continuación se muestra un ejemplo.

aws opensearchserverless create-index \ --region us-east-1 \ --id conversation_history --index-name conversation_history_index \ --index-schema \ '{ "mappings": { "properties": { "age": { "type": "integer" }, "name": { "type": "keyword" }, "user_description": { "type": "text" }, "conversation_history": { "type": "text", "semantic_enrichment": { "status": "ENABLED", // Specifies the sparse tokenizer for processing multi-lingual text "language_option": "MULTI-LINGUAL", // If embedding_field is provided, the semantic embedding field will be set to the given name rather than original field name + "_embedding" "embedding_field": "conversation_history_user_defined" } }, "book_title": { "type": "text", "semantic_enrichment": { // No embedding_field is provided, so the semantic embedding field is set to "book_title_embedding" "status": "ENABLED", "language_option": "ENGLISH" } }, "abstract": { "type": "text", "semantic_enrichment": { // If no language_option is provided, it will be set to English. // No embedding_field is provided, so the semantic embedding field is set to "abstract_embedding" "status": "ENABLED" } } } } }'