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.
Themen
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
-
Ö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*
odercollection/*
. -
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
-
Vergewissern Sie sich, dass Sie die unter beschriebenen erforderlichen Richtlinien erstellt habenBevor Sie beginnen.
-
Führen Sie den folgenden Befehl aus.
type
Geben Sie entwederSEARCH
oder anTIMESERIES
.aws opensearchserverless create-collection --name "
collection name
" --typecollection 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
\ --idcollection name
--index-nameindex 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" } } } } }'