Eine Sammlung erstellen (CLI) - OpenSearch Amazon-Dienst

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Eine Sammlung erstellen (CLI)

Verwenden Sie die Verfahren in diesem Abschnitt, um eine OpenSearch serverlose Sammlung mit dem AWS CLI zu erstellen.

Bevor Sie beginnen

Bevor Sie eine Sammlung mit dem erstellen AWS CLI, verwenden Sie das folgende Verfahren, um die erforderlichen Richtlinien für die Sammlung zu erstellen.

Anmerkung

Wenn Sie in jedem der folgenden Verfahren einen Namen für eine Sammlung angeben, muss der Name die folgenden Kriterien erfüllen:

  • ist einzigartig für Ihr Konto und AWS-Region

  • Enthält nur Kleinbuchstaben a–z, die Zahlen 0–9 und den Bindestrich (-)

  • Enthält zwischen 3 und 32 Zeichen

Um die erforderlichen Richtlinien für eine Sammlung zu erstellen
  1. Öffnen Sie den folgenden Befehl AWS CLI und führen Sie ihn aus, um eine Verschlüsselungsrichtlinie mit einem Ressourcenmuster zu erstellen, das dem beabsichtigten Namen der Sammlung entspricht.

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

    Wenn Sie beispielsweise Ihre Sammlungs-Protokollanwendung benennen möchten, können Sie eine Verschlüsselungsrichtlinie wie die folgende erstellen:

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

    Wenn Sie die Richtlinie für weitere Sammlungen verwenden möchten, können Sie die Regel breiter fassen, wie z. B. collection/logs* oder collection/*.

  2. Führen Sie den folgenden Befehl aus, um die Netzwerkeinstellungen für die Sammlung mithilfe einer Netzwerkrichtlinie zu konfigurieren. Sie können Netzwerkrichtlinien erstellen, nachdem Sie eine Sammlung erstellt haben. Wir empfehlen jedoch, dies vorher zu tun.

    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}]"

    Unter Verwendung des vorherigen Beispiels für die Protokollanwendung könnten Sie die folgende Netzwerkrichtlinie erstellen:

    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}]"

Erstellen einer Sammlung

Das folgende Verfahren verwendet die CreateCollectionAPI-Aktion, um eine Sammlung des Typs SEARCH oder zu erstellenTIMESERIES. Wenn Sie in der Anfrage keinen Sammlungstyp angeben, wird standardmäßig TIMESERIES verwendet. Weitere Informationen zu diesen Typen finden Sie unterAuswahl eines Sammlungstyps. Informationen zum Erstellen einer Vektorsuchsammlung finden Sie unterArbeiten mit Sammlungen mit Vektorsuche.

Wenn Ihre Sammlung mit einem AWS-eigener Schlüssel, dem kmsKeyArn ist und auto nicht mit einem ARN verschlüsselt ist.

Wichtig

Nachdem Sie eine Sammlung erstellt haben, können Sie nicht darauf zugreifen, es sei denn, sie entspricht einer Datenzugriffsrichtlinie. Weitere Informationen finden Sie unter Datenzugriffskontrolle für Amazon OpenSearch Serverless.

Um eine Sammlung zu erstellen
  1. Vergewissern Sie sich, dass Sie die unter beschriebenen erforderlichen Richtlinien erstellt habenBevor Sie beginnen.

  2. Führen Sie den folgenden Befehl aus. typeGeben Sie entweder SEARCH oder anTIMESERIES.

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

Eine Sammlung mit einem automatischen Index zur semantischen Anreicherung erstellen

Gehen Sie wie folgt vor, um eine neue OpenSearch serverlose Sammlung mit einem Index zu erstellen, der für die automatische semantische Anreicherung konfiguriert ist. Das Verfahren verwendet die OpenSearch Serverless CreateIndexAPI-Aktion.

Um eine neue Sammlung mit einem Index zu erstellen, der für die automatische semantische Anreicherung konfiguriert ist

Führen Sie den folgenden Befehl aus, um die Sammlung und einen Index zu erstellen.

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

Ein Beispiel:

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" } } } } }'