Zu diesem Zeitpunkt sollte eine jaeger-operator Bereitstellung verfügbar sein. Sie können es mit folgendem Befehl anzeigen:
+
Zu diesem Zeitpunkt sollte eine jaeger-operator Bereitstellung verfügbar sein. Sie können es mit dem folgenden Befehl anzeigen:
$ kubectl get deployment jaeger-operator -n observability
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
jaeger-operator111148s
-
2. Jager bereitstellen
Der einfachste Weg, eine Jaeger-Instanz zu erstellen, ist die Erstellung einer YAML-Datei wie im folgenden Beispiel. Dadurch wird die standardmäßige AllInOne-Strategie installiert, die das All-In-One-Image (eine Kombination aus Jaeger-Agent, Jaeger-Collector, Jaeger-Query und Jaeger-UI) in einem einzigen Pod bereitstellt und standardmäßig In-Memory-Speicher verwendet.
+
2. Jaeger bereitstellen
Der einfachste Weg, eine Jaeger-Instanz zu erstellen, ist die Erstellung einer YAML-Datei wie im folgenden Beispiel. Dadurch wird die standardmäßige AllInOne-Strategie installiert, die das All-In-One-Image (eine Kombination aus Jaeger-Agent, Jaeger-Collector, Jaeger-Query und Jaeger-UI) in einem einzigen Pod bereitstellt und standardmäßig In-Memory-Speicher verwendet.
Wenn Sie Traces über einen längeren Zeitraum speichern möchten, lesen Sie bitte production-strategy.
The simplest possible way to create a Jaeger instance is by creating a YAML file like the following example. This will install the default AllInOne strategy, which deploys the all-in-one image (combining jaeger-agent, jaeger-collector, jaeger-query, and Jaeger UI) in a single pod, using in-memory storage by default.
+
2. Deploy Jaeger
The simplest possible way to create a Jaeger instance is by creating a YAML file like the following example. This will install the default AllInOne strategy, which deploys the all-in-one image (combining jaeger-agent, jaeger-collector, jaeger-query, and Jaeger UI) in a single pod, using in-memory storage by default.
If you want to store traces for a long time, please refer to production-strategy.
apiVersion: jaegertracing.io/v1
kind: Jaeger
diff --git a/localization/v2.4.x/site/es/adminGuide/config_jaeger_tracing.md b/localization/v2.4.x/site/es/adminGuide/config_jaeger_tracing.md
index a83053db4..09921628b 100644
--- a/localization/v2.4.x/site/es/adminGuide/config_jaeger_tracing.md
+++ b/localization/v2.4.x/site/es/adminGuide/config_jaeger_tracing.md
@@ -67,7 +67,7 @@ $ kubectl create -f https://github.com/jaegertracing/jaeger-operator/releases/do
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
jaeger-operator111148s
-
2. Despliegue de Jager
La forma más sencilla de crear una instancia de Jaeger es crear un archivo YAML como el siguiente ejemplo. Esto instalará la estrategia AllInOne predeterminada, que despliega la imagen todo en uno (que combina jaeger-agent, jaeger-collector, jaeger-query y Jaeger UI) en un único pod, utilizando almacenamiento en memoria de forma predeterminada.
+
2. Despliegue de Jaeger
La forma más sencilla de crear una instancia de Jaeger es crear un archivo YAML como el siguiente ejemplo. Esto instalará la estrategia AllInOne predeterminada, que despliega la imagen todo en uno (que combina jaeger-agent, jaeger-collector, jaeger-query y Jaeger UI) en un único pod, utilizando almacenamiento en memoria de forma predeterminada.
Si desea almacenar trazas durante mucho tiempo, consulte production-strategy.
apiVersion: jaegertracing.io/v1
kind: Jaeger
@@ -136,7 +136,7 @@ $ helm upgrade --install -f values.yaml my-release milvus/milvus
NAME CLASS HOSTS ADDRESS PORTS AGE
jaeger-query <none> * 192.168.122.348014m
-
Una vez que el ingress está disponible, puede acceder a la UI de Jaeger navegando a http://${ADDRESS}. Reemplace ${ADDRESS} con la dirección IP real del ingress.
+
Una vez que el ingress está disponible, puede acceder a la UI de Jaeger navegando a http://${ADDRESS}. Sustituya ${ADDRESS} por la dirección IP real de la entrada.
La siguiente captura de pantalla muestra la UI de Jaeger con las trazas de Milvus durante una operación de búsqueda y una operación de recogida de carga:
La manière la plus simple de créer une instance de Jaeger est de créer un fichier YAML comme dans l'exemple suivant. Cela installera la stratégie AllInOne par défaut, qui déploie l'image tout-en-un (combinant jaeger-agent, jaeger-collector, jaeger-query, et Jaeger UI) dans un seul pod, en utilisant le stockage en mémoire par défaut.
+
2. Déployer Jaeger
La manière la plus simple de créer une instance de Jaeger est de créer un fichier YAML comme dans l'exemple suivant. Cela installera la stratégie AllInOne par défaut, qui déploie l'image tout-en-un (combinant jaeger-agent, jaeger-collector, jaeger-query, et Jaeger UI) dans un seul pod, en utilisant le stockage en mémoire par défaut.
Si vous souhaitez stocker des traces pendant une longue période, veuillez vous référer à production-strategy.
apiVersion: jaegertracing.io/v1
kind: Jaeger
diff --git a/localization/v2.4.x/site/ko/adminGuide/config_jaeger_tracing.md b/localization/v2.4.x/site/ko/adminGuide/config_jaeger_tracing.md
index e7d4d89f0..a2bf6d061 100644
--- a/localization/v2.4.x/site/ko/adminGuide/config_jaeger_tracing.md
+++ b/localization/v2.4.x/site/ko/adminGuide/config_jaeger_tracing.md
@@ -65,7 +65,7 @@ $ kubectl create -f https://github.com/jaegertracing/jaeger-operator/releases/do
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
jaeger-operator111148s
-
2. 예거 배포
예거 인스턴스를 만드는 가장 간단한 방법은 다음 예제와 같이 YAML 파일을 만드는 것입니다. 이렇게 하면 기본적으로 인메모리 스토리지를 사용하여 단일 포드에 올인원 이미지(예거 에이전트, 예거 수집기, 예거 쿼리 및 예거 UI를 결합)를 배포하는 기본 올인원 전략이 설치됩니다.
+
2. 예거 배포
예거 인스턴스를 만드는 가장 간단한 방법은 다음 예제와 같이 YAML 파일을 만드는 것입니다. 이렇게 하면 기본적으로 인메모리 스토리지를 사용하여 단일 포드에 올인원 이미지(예거 에이전트, 예거 수집기, 예거 쿼리 및 예거 UI를 결합)를 배포하는 기본 AllInOne 전략이 설치됩니다.
apiVersion: jaegertracing.io/v1
kind: Jaeger
diff --git a/localization/v2.4.x/site/pt/adminGuide/config_jaeger_tracing.md b/localization/v2.4.x/site/pt/adminGuide/config_jaeger_tracing.md
index c13e1a5ff..75d695cda 100644
--- a/localization/v2.4.x/site/pt/adminGuide/config_jaeger_tracing.md
+++ b/localization/v2.4.x/site/pt/adminGuide/config_jaeger_tracing.md
@@ -67,7 +67,7 @@ $ kubectl create -f https://github.com/jaegertracing/jaeger-operator/releases/do
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
jaeger-operator111148s
-
2. Implantar o Jager
A maneira mais simples possível de criar uma instância do Jaeger é criando um arquivo YAML como o exemplo a seguir. Isso instalará a estratégia AllInOne padrão, que implanta a imagem all-in-one (combinando jaeger-agent, jaeger-collector, jaeger-query e Jaeger UI) em um único pod, usando o armazenamento na memória por padrão.
+
2. Implantar o Jaeger
A maneira mais simples possível de criar uma instância do Jaeger é criando um arquivo YAML como o exemplo a seguir. Isso instalará a estratégia AllInOne padrão, que implanta a imagem all-in-one (combinando jaeger-agent, jaeger-collector, jaeger-query e Jaeger UI) em um único pod, usando o armazenamento na memória por padrão.
Se você quiser armazenar traços por um longo tempo, consulte production-strategy.
apiVersion: jaegertracing.io/v1
kind: Jaeger
@@ -137,7 +137,7 @@ NAME CLASS HOSTS ADDRESS PORTS AGE
jaeger-query <none> * 192.168.122.348014m
Quando o ingresso estiver disponível, você poderá acessar a interface do usuário do Jaeger navegando até http://${ADDRESS}. Substitua ${ADDRESS} pelo endereço IP real do ingress.
-
A seguinte captura de ecrã mostra a interface do utilizador do Jaeger com os vestígios do Milvus durante uma operação de pesquisa e uma operação de recolha de carga:
+
A seguinte captura de ecrã mostra a interface do utilizador do Jaeger com os traços do Milvus durante uma operação de pesquisa e uma operação de recolha de carga:
apiVersion: jaegertracing.io/v1
kind: Jaeger
metadata:
diff --git a/localization/v2.5.x/site/de/adminGuide/config_jaeger_tracing.md b/localization/v2.5.x/site/de/adminGuide/config_jaeger_tracing.md
index aee102e2c..d00a7c55d 100644
--- a/localization/v2.5.x/site/de/adminGuide/config_jaeger_tracing.md
+++ b/localization/v2.5.x/site/de/adminGuide/config_jaeger_tracing.md
@@ -67,7 +67,7 @@ $ kubectl create -f https://github.com/jaegertracing/jaeger-operator/releases/do
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
jaeger-operator111148s
-
2. Jager bereitstellen
Der einfachste Weg, eine Jaeger-Instanz zu erstellen, ist die Erstellung einer YAML-Datei wie im folgenden Beispiel. Dadurch wird die standardmäßige AllInOne-Strategie installiert, die das All-In-One-Image (eine Kombination aus Jaeger-Agent, Jaeger-Collector, Jaeger-Query und Jaeger-UI) in einem einzigen Pod bereitstellt und standardmäßig In-Memory-Speicher verwendet.
+
2. Jaeger bereitstellen
Der einfachste Weg, eine Jaeger-Instanz zu erstellen, ist die Erstellung einer YAML-Datei wie im folgenden Beispiel. Dadurch wird die standardmäßige AllInOne-Strategie installiert, die das All-In-One-Image (eine Kombination aus Jaeger-Agent, Jaeger-Collector, Jaeger-Query und Jaeger-UI) in einem einzigen Pod bereitstellt und standardmäßig In-Memory-Speicher verwendet.
Wenn Sie Traces über einen längeren Zeitraum speichern möchten, lesen Sie bitte production-strategy.
apiVersion: jaegertracing.io/v1
kind: Jaeger
diff --git a/localization/v2.5.x/site/de/adminGuide/configure-docker.json b/localization/v2.5.x/site/de/adminGuide/configure-docker.json
index b78d7d357..76358c105 100644
--- a/localization/v2.5.x/site/de/adminGuide/configure-docker.json
+++ b/localization/v2.5.x/site/de/adminGuide/configure-docker.json
@@ -1 +1 @@
-{"codeList":["$ wget https://raw.githubusercontent.com/milvus-io/milvus/v2.5.0-beta/configs/milvus.yaml\n","# For Milvus standalone\n$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0-beta/milvus-standalone-docker-compose.yml -O docker-compose.yml\n","...\n standalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.2.13\n command: [\"milvus\", \"run\", \"standalone\"]\n environment:\n ETCD_ENDPOINTS: etcd:2379\n MINIO_ADDRESS: minio:9000\n volumes:\n - /local/path/to/your/milvus.yaml:/milvus/configs/milvus.yaml # Map the local path to the container path\n - ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/milvus:/var/lib/milvus\n ports:\n - \"19530:19530\"\n - \"9091:9091\"\n depends_on:\n - \"etcd\"\n - \"minio\"\n...\n","$ sudo docker compose up -d\n"],"headingContent":"Configure Milvus with Docker Compose","anchorList":[{"label":"Konfigurieren von Milvus mit Docker Compose","href":"Configure-Milvus-with-Docker-Compose","type":1,"isActive":false},{"label":"Herunterladen einer Konfigurationsdatei","href":"Download-a-configuration-file","type":2,"isActive":false},{"label":"Ändern Sie die Konfigurationsdatei","href":"Modify-the-configuration-file","type":2,"isActive":false},{"label":"Download einer Installationsdatei","href":"Download-an-installation-file","type":2,"isActive":false},{"label":"Ändern Sie die Installationsdatei","href":"Modify-the-installation-file","type":2,"isActive":false},{"label":"Starten Sie Milvus","href":"Start-Milvus","type":2,"isActive":false},{"label":"Wie geht es weiter?","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["$ wget https://raw.githubusercontent.com/milvus-io/milvus/v2.5.0/configs/milvus.yaml\n","# For Milvus standalone\n$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0/milvus-standalone-docker-compose.yml -O docker-compose.yml\n","...\n standalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.2.13\n command: [\"milvus\", \"run\", \"standalone\"]\n environment:\n ETCD_ENDPOINTS: etcd:2379\n MINIO_ADDRESS: minio:9000\n volumes:\n - /local/path/to/your/milvus.yaml:/milvus/configs/milvus.yaml # Map the local path to the container path\n - ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/milvus:/var/lib/milvus\n ports:\n - \"19530:19530\"\n - \"9091:9091\"\n depends_on:\n - \"etcd\"\n - \"minio\"\n...\n","$ sudo docker compose up -d\n"],"headingContent":"Configure Milvus with Docker Compose","anchorList":[{"label":"Konfigurieren von Milvus mit Docker Compose","href":"Configure-Milvus-with-Docker-Compose","type":1,"isActive":false},{"label":"Herunterladen einer Konfigurationsdatei","href":"Download-a-configuration-file","type":2,"isActive":false},{"label":"Ändern Sie die Konfigurationsdatei","href":"Modify-the-configuration-file","type":2,"isActive":false},{"label":"Download einer Installationsdatei","href":"Download-an-installation-file","type":2,"isActive":false},{"label":"Ändern Sie die Installationsdatei","href":"Modify-the-installation-file","type":2,"isActive":false},{"label":"Starten Sie Milvus","href":"Start-Milvus","type":2,"isActive":false},{"label":"Wie geht es weiter?","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/de/adminGuide/configure-docker.md b/localization/v2.5.x/site/de/adminGuide/configure-docker.md
index b5b10da83..10b0ff3ac 100644
--- a/localization/v2.5.x/site/de/adminGuide/configure-docker.md
+++ b/localization/v2.5.x/site/de/adminGuide/configure-docker.md
@@ -20,7 +20,7 @@ title: Konfigurieren von Milvus mit Docker Compose
d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"
>
-
In diesem Thema wird beschrieben, wie Sie Milvus-Komponenten und die Abhängigkeiten von Drittanbietern mit Docker Compose konfigurieren.
+
In diesem Thema wird beschrieben, wie Sie Milvus-Komponenten und deren Abhängigkeiten von Drittanbietern mit Docker Compose konfigurieren.
In der aktuellen Version werden alle Parameter erst nach einem Neustart von Milvus wirksam.
**Ressource: **Die Ressourceneinheit, auf die zugegriffen werden kann. Es gibt drei Ebenen von Ressourcen in Milvus - Instanz, Datenbank und Sammlung.
+
**Berechtigung: **Die Erlaubnis, bestimmte Operationen mit Milvus-Ressourcen durchzuführen (z. B. Sammlungen erstellen, Daten einfügen usw.).
+
**Privilegiengruppe: **Eine Gruppe mit mehreren Privilegien.
+
**Rolle: **Eine Rolle besteht aus zwei Teilen - Rechte und Ressourcen. Berechtigungen definieren die Art der Operationen, die eine Rolle ausführen kann, während Ressourcen die Zielressourcen definieren, auf denen die Operationen ausgeführt werden können. Die Rolle des Datenbankadministrators kann zum Beispiel Lese-, Schreib- und Verwaltungsvorgänge für bestimmte Datenbanken durchführen.
+
**Benutzer: **Ein Benutzer ist jemand, der Milvus benutzt. Jeder Benutzer hat eine eindeutige ID und erhält eine Rolle oder mehrere Rollen.
Um die Zugriffskontrolle über RBAC zu erreichen, müssen Sie die folgenden Schritte befolgen.
+
+
Erstellen Sie einen Benutzer: Zusätzlich zu den Standardbenutzern root in Milvus können Sie neue Benutzer erstellen und Passwörter festlegen, um die Datensicherheit zu gewährleisten.
+
Erstellen Sie eine Rolle: Sie können benutzerdefinierte Rollen erstellen, die auf Ihren Bedürfnissen basieren. Die spezifischen Fähigkeiten einer Rolle werden durch ihre Berechtigungen bestimmt.
+
Erstellen Sie eine Berechtigungsgruppe: Kombinieren Sie mehrere Berechtigungen in einer Berechtigungsgruppe, um den Prozess der Gewährung von Berechtigungen für eine Rolle zu rationalisieren.
Rollen an Benutzer vergeben: Gewähren Sie Benutzern Rollen mit bestimmten Privilegien, so dass diese über die Privilegien einer Rolle verfügen können. Eine einzelne Rolle kann mehreren Benutzern zugewiesen werden.
+
diff --git a/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_cluster-docker.json b/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_cluster-docker.json
index 31ded415c..850fd4c98 100644
--- a/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_cluster-docker.json
+++ b/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_cluster-docker.json
@@ -1 +1 @@
-{"codeList":["...\nrootcoord:\n container_name: milvus-rootcoord\n image: milvusdb/milvus:v2.5.0-beta\n...\nproxy:\n container_name: milvus-proxy\n image: milvusdb/milvus:v2.5.0-beta\n...\nquerycoord:\n container_name: milvus-querycoord\n image: milvusdb/milvus:v2.5.0-beta \n...\nquerynode:\n container_name: milvus-querynode\n image: milvusdb/milvus:v2.5.0-beta\n...\nindexcoord:\n container_name: milvus-indexcoord\n image: milvusdb/milvus:v2.5.0-beta\n...\nindexnode:\n container_name: milvus-indexnode\n image: milvusdb/milvus:v2.5.0-beta \n...\ndatacoord:\n container_name: milvus-datacoord\n image: milvusdb/milvus:v2.5.0-beta \n...\ndatanode:\n container_name: milvus-datanode\n image: milvusdb/milvus:v2.5.0-beta\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0-beta\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvus/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","Update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Cluster with Docker Compose","anchorList":[{"label":"Upgrade des Milvus-Clusters mit Docker Compose","href":"Upgrade-Milvus-Cluster-with-Docker-Compose","type":1,"isActive":false},{"label":"Upgrade von Milvus durch Ändern des Images","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrieren Sie die Metadaten","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"Wie geht es weiter?","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["...\nrootcoord:\n container_name: milvus-rootcoord\n image: milvusdb/milvus:v2.5.0\n...\nproxy:\n container_name: milvus-proxy\n image: milvusdb/milvus:v2.5.0\n...\nquerycoord:\n container_name: milvus-querycoord\n image: milvusdb/milvus:v2.5.0 \n...\nquerynode:\n container_name: milvus-querynode\n image: milvusdb/milvus:v2.5.0\n...\nindexcoord:\n container_name: milvus-indexcoord\n image: milvusdb/milvus:v2.5.0\n...\nindexnode:\n container_name: milvus-indexnode\n image: milvusdb/milvus:v2.5.0 \n...\ndatacoord:\n container_name: milvus-datacoord\n image: milvusdb/milvus:v2.5.0 \n...\ndatanode:\n container_name: milvus-datanode\n image: milvusdb/milvus:v2.5.0\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvus/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","Update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Cluster with Docker Compose","anchorList":[{"label":"Upgrade des Milvus-Clusters mit Docker Compose","href":"Upgrade-Milvus-Cluster-with-Docker-Compose","type":1,"isActive":false},{"label":"Upgrade von Milvus durch Ändern des Images","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrieren Sie die Metadaten","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"Wie geht es weiter?","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_cluster-docker.md b/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_cluster-docker.md
index 243f06cd9..1b47aa784 100644
--- a/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_cluster-docker.md
+++ b/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_cluster-docker.md
@@ -22,7 +22,7 @@ title: Upgrade des Milvus-Clusters mit Docker Compose
>
Dieses Thema beschreibt, wie Sie Ihr Milvus mit Docker Compose aktualisieren können.
Durchführen eines rollenden Upgrades
@@ -145,8 +145,8 @@ zilliztech/milvus 4.1.0 2.3.0 Milvus is an ope
o
Vorgang
update
Falsch
-
Sobald Sie sichergestellt haben, dass sich alle Einsätze in Ihrer Milvus-Instanz in ihrem normalen Status befinden, können Sie den folgenden Befehl ausführen, um die Milvus-Instanz auf 2.5.0-beta zu aktualisieren. Sie können den folgenden Befehl ausführen, um die Milvus-Instanz auf 2.5.0-beta zu aktualisieren.
Sobald Sie sichergestellt haben, dass sich alle Einsätze in Ihrer Milvus-Instanz in ihrem normalen Status befinden, können Sie den folgenden Befehl ausführen, um die Milvus-Instanz auf 2.5.0 zu aktualisieren. Sie können den folgenden Befehl ausführen, um die Milvus-Instanz auf 2.5.0 zu aktualisieren.
Um Milvus von v2.1.x auf 2.5.0 zu aktualisieren, müssen Sie die Metadaten vor dem eigentlichen Upgrade migrieren.
Durchführen eines rollenden Upgradesoperator upgrade milvus-
-
Seit Milvus 2.2.3 können Sie Milvus-Koordinatoren so konfigurieren, dass sie im Aktiv-Standby-Modus arbeiten und die Funktion des rollenden Upgrades für sie aktivieren, so dass Milvus auf eingehende Anfragen während der Koordinator-Upgrades reagieren kann. In früheren Versionen müssen die Koordinatoren während eines Upgrades entfernt und neu erstellt werden, was zu einer gewissen Ausfallzeit des Dienstes führen kann.
-
Auf der Grundlage der von Kubernetes bereitgestellten rollierenden Aktualisierungsfunktionen erzwingt der Milvus-Operator eine geordnete Aktualisierung der Bereitstellungen entsprechend ihren Abhängigkeiten. Darüber hinaus implementiert Milvus einen Mechanismus, der sicherstellt, dass seine Komponenten während des Upgrades mit den von ihnen abhängigen Komponenten kompatibel bleiben, wodurch potenzielle Ausfallzeiten des Dienstes erheblich reduziert werden.
+
Seit Milvus 2.2.3 können Sie Milvus-Koordinatoren so konfigurieren, dass sie im Aktiv-Standby-Modus arbeiten, und die Funktion "Rolling Upgrade" für sie aktivieren, so dass Milvus auf eingehende Anfragen während der Koordinator-Upgrades reagieren kann. In früheren Versionen müssen die Koordinatoren während eines Upgrades entfernt und neu erstellt werden, was zu einer gewissen Ausfallzeit des Dienstes führen kann.
+
Auf der Grundlage der von Kubernetes bereitgestellten rollierenden Aktualisierungsfunktionen erzwingt der Milvus-Operator eine geordnete Aktualisierung der Bereitstellungen entsprechend ihrer Abhängigkeiten. Darüber hinaus implementiert Milvus einen Mechanismus, der sicherstellt, dass seine Komponenten während des Upgrades mit den von ihnen abhängigen Komponenten kompatibel bleiben, wodurch potenzielle Ausfallzeiten des Dienstes erheblich reduziert werden.
Die Funktion "Rolling Upgrade" ist standardmäßig deaktiviert. Sie müssen sie explizit über eine Konfigurationsdatei aktivieren.
In der obigen Konfigurationsdatei setzen Sie spec.components.enableRollingUpdate auf true und spec.components.image auf die gewünschte Milvus-Version.
Standardmäßig führt Milvus rollende Upgrades für Koordinatoren in einer geordneten Weise durch, bei der die Pod-Images der Koordinatoren nacheinander ersetzt werden. Um die Upgrade-Zeit zu verkürzen, sollten Sie spec.components.imageUpdateMode auf all setzen, damit Milvus alle Pod-Images gleichzeitig ersetzt.
Seit Milvus 2.2.0 sind die Metadaten nicht mehr mit denen früherer Versionen kompatibel. Die folgenden Beispielschnipsel gehen von einem Upgrade von Milvus 2.1.4 auf Milvus 2.5.0-beta aus.
-
1. Erstellen Sie eine .yaml Datei für die Migration von Metadaten
Erstellen Sie eine Metadaten-Migrationsdatei. Im Folgenden finden Sie ein Beispiel. Sie müssen name, sourceVersion und targetVersion in der Konfigurationsdatei angeben. Im folgenden Beispiel wird name auf my-release-upgrade, sourceVersion auf v2.1.4 und targetVersion auf v2.5.0-beta gesetzt. Dies bedeutet, dass Ihr Milvus-Cluster von v2.1.4 auf v2.5.0-beta aktualisiert wird.
+
Seit Milvus 2.2.0 sind die Metadaten nicht mehr mit denen früherer Versionen kompatibel. Die folgenden Beispielschnipsel gehen von einem Upgrade von Milvus 2.1.4 auf Milvus 2.5.0 aus.
+
1. Erstellen Sie eine .yaml Datei für die Migration von Metadaten
Erstellen Sie eine Metadaten-Migrationsdatei. Im Folgenden finden Sie ein Beispiel. Sie müssen name, sourceVersion und targetVersion in der Konfigurationsdatei angeben. Im folgenden Beispiel wird name auf my-release-upgrade, sourceVersion auf v2.1.4 und targetVersion auf v2.5.0 gesetzt. Dies bedeutet, dass Ihr Milvus-Cluster von v2.1.4 auf v2.5.0 aktualisiert wird.
apiVersion: milvus.io/v1beta1
kind: MilvusUpgrade
metadata:
@@ -159,9 +159,9 @@ spec:
namespace: default
name: my-release
sourceVersion: "v2.1.4"
- targetVersion: "v2.5.0-beta"
+ targetVersion: "v2.5.0"# below are some omit default values:
- # targetImage: "milvusdb/milvus:v2.5.0-beta"
+ # targetImage: "milvusdb/milvus:v2.5.0"# toolImage: "milvusdb/meta-migration:v2.2.0"# operation: upgrade# rollbackIfFailed: true
diff --git a/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_standalone-docker.json b/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_standalone-docker.json
index d1625042e..50d6ac68e 100644
--- a/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_standalone-docker.json
+++ b/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_standalone-docker.json
@@ -1 +1 @@
-{"codeList":["...\nstandalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.5.0-beta\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0-beta\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvusdb/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","// Run the following only after update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Standalone with Docker Compose","anchorList":[{"label":"Upgrade von Milvus Standalone mit Docker Compose","href":"Upgrade-Milvus-Standalone-with-Docker-Compose","type":1,"isActive":false},{"label":"Upgrade von Milvus durch Ändern des Images","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrieren Sie die Metadaten","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"Wie geht es weiter?","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["...\nstandalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.5.0\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvusdb/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","// Run the following only after update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Standalone with Docker Compose","anchorList":[{"label":"Upgrade von Milvus Standalone mit Docker Compose","href":"Upgrade-Milvus-Standalone-with-Docker-Compose","type":1,"isActive":false},{"label":"Upgrade von Milvus durch Ändern des Images","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrieren Sie die Metadaten","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"Wie geht es weiter?","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_standalone-docker.md b/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_standalone-docker.md
index 9fd8db3b1..f846cdacb 100644
--- a/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_standalone-docker.md
+++ b/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_standalone-docker.md
@@ -26,7 +26,7 @@ title: Upgrade von Milvus Standalone mit Docker Compose
>
Dieses Thema beschreibt, wie Sie Milvus mit Docker Compose aktualisieren können.
Aufgrund von Sicherheitsbedenken aktualisiert Milvus seine MinIO auf RELEASE.2023-03-20T20-16-18Z mit der Veröffentlichung von v2.2.5. Vor einem Upgrade von früheren Milvus Standalone-Versionen, die mit Docker Compose installiert wurden, sollten Sie eine Single-Node Single-Drive MinIO-Bereitstellung erstellen und die vorhandenen MinIO-Einstellungen und -Inhalte in die neue Bereitstellung migrieren. Einzelheiten hierzu finden Sie in diesem Leitfaden.
@@ -51,7 +51,7 @@ title: Upgrade von Milvus Standalone mit Docker Compose
Führen Sie die folgenden Befehle aus, um das Upgrade durchzuführen.
docker compose down
@@ -85,7 +85,7 @@ cmd:
runWithBackup: true
config:
sourceVersion: 2.1.4# Specify your milvus version
- targetVersion: 2.5.0-beta
+ targetVersion: 2.5.0
backupFilePath: /tmp/migration.bak
metastore:
type: etcd
diff --git a/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_standalone-helm.json b/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_standalone-helm.json
index 66662c374..5ce1d6af9 100644
--- a/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_standalone-helm.json
+++ b/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_standalone-helm.json
@@ -1 +1 @@
-{"codeList":["$ helm repo update\n$ helm search repo zilliztech/milvus --versions\n","helm repo add zilliztech https://zilliztech.github.io/milvus-helm\nhelm repo update zilliztech\n# upgrade existing helm release\nhelm upgrade my-release zilliztech/milvus --reset-then-reuse-values\n","NAME CHART VERSION APP VERSION DESCRIPTION \nzilliztech/milvus 4.1.34 2.4.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.33 2.4.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.32 2.4.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.31 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.30 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.29 2.4.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.24 2.3.11 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.23 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.22 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.21 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.20 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.18 2.3.10 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.18 2.3.9 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.17 2.3.8 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.16 2.3.7 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.15 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.14 2.3.6 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.13 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.12 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.11 2.3.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.10 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.9 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.8 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.7 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.6 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.5 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.4 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.3 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.2 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.1 2.3.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.0 2.3.0 Milvus is an open-source vector database built ...\n","sh rollingUpdate.sh -n default -i my-release -o update -t 2.5.0-beta -w 'milvusdb/milvus:v2.5.0-beta'\n","helm repo update\nhelm upgrade my-release milvus/milvus --reset-then-reuse-values --version=4.1.24 # use the helm chart version here\n","NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION \nmy-release default 1 2022-11-21 15:41:25.51539 +0800 CST deployed milvus-3.2.18 2.1.4\n","NAME READY STATUS RESTARTS AGE\nmy-release-etcd-0 1/1 Running 0 84s\nmy-release-milvus-standalone-75c599fffc-6rwlj 1/1 Running 0 84s\nmy-release-minio-744dd9586f-qngzv 1/1 Running 0 84s\n","$ kubectl get pods my-release-milvus-proxy-6c548f787f-scspp -o=jsonpath='{$.spec.containers[0].image}'\n# milvusdb/milvus:v2.1.4\n","./migrate.sh -i my-release -s 2.1.4 -t 2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -w milvusdb/milvus:v2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -w milvusdb/milvus:v2.5.0-beta -d true\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -o rollback -w milvusdb/milvus:v2.1.1\n./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -o migrate -w milvusdb/milvus:v2.5.0-beta\n"],"headingContent":"Upgrade Milvus Standalone with Helm Chart","anchorList":[{"label":"Upgrade von Milvus Standalone mit Helm Chart","href":"Upgrade-Milvus-Standalone-with-Helm-Chart","type":1,"isActive":false},{"label":"Voraussetzungen","href":"Prerequisites","type":2,"isActive":false},{"label":"Prüfen Sie die Milvus-Version","href":"Check-the-Milvus-version","type":2,"isActive":false},{"label":"Durchführen eines rollenden Upgrades","href":"Conduct-a-rolling-upgrade","type":2,"isActive":false},{"label":"Upgrade von Milvus mit Helm","href":"Upgrade-Milvus-using-Helm","type":2,"isActive":false},{"label":"Migrieren Sie die Metadaten","href":"Migrate-the-metadata","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["$ helm repo update\n$ helm search repo zilliztech/milvus --versions\n","helm repo add zilliztech https://zilliztech.github.io/milvus-helm\nhelm repo update zilliztech\n# upgrade existing helm release\nhelm upgrade my-release zilliztech/milvus --reset-then-reuse-values\n","NAME CHART VERSION APP VERSION DESCRIPTION \nzilliztech/milvus 4.1.34 2.4.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.33 2.4.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.32 2.4.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.31 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.30 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.29 2.4.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.24 2.3.11 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.23 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.22 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.21 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.20 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.18 2.3.10 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.18 2.3.9 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.17 2.3.8 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.16 2.3.7 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.15 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.14 2.3.6 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.13 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.12 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.11 2.3.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.10 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.9 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.8 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.7 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.6 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.5 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.4 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.3 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.2 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.1 2.3.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.0 2.3.0 Milvus is an open-source vector database built ...\n","sh rollingUpdate.sh -n default -i my-release -o update -t 2.5.0 -w 'milvusdb/milvus:v2.5.0'\n","helm repo update\nhelm upgrade my-release milvus/milvus --reset-then-reuse-values --version=4.1.24 # use the helm chart version here\n","NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION \nmy-release default 1 2022-11-21 15:41:25.51539 +0800 CST deployed milvus-3.2.18 2.1.4\n","NAME READY STATUS RESTARTS AGE\nmy-release-etcd-0 1/1 Running 0 84s\nmy-release-milvus-standalone-75c599fffc-6rwlj 1/1 Running 0 84s\nmy-release-minio-744dd9586f-qngzv 1/1 Running 0 84s\n","$ kubectl get pods my-release-milvus-proxy-6c548f787f-scspp -o=jsonpath='{$.spec.containers[0].image}'\n# milvusdb/milvus:v2.1.4\n","./migrate.sh -i my-release -s 2.1.4 -t 2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -w milvusdb/milvus:v2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -w milvusdb/milvus:v2.5.0 -d true\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -o rollback -w milvusdb/milvus:v2.1.1\n./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -o migrate -w milvusdb/milvus:v2.5.0\n"],"headingContent":"Upgrade Milvus Standalone with Helm Chart","anchorList":[{"label":"Upgrade von Milvus Standalone mit Helm Chart","href":"Upgrade-Milvus-Standalone-with-Helm-Chart","type":1,"isActive":false},{"label":"Voraussetzungen","href":"Prerequisites","type":2,"isActive":false},{"label":"Prüfen Sie die Milvus-Version","href":"Check-the-Milvus-version","type":2,"isActive":false},{"label":"Durchführen eines rollenden Upgrades","href":"Conduct-a-rolling-upgrade","type":2,"isActive":false},{"label":"Upgrade von Milvus mit Helm","href":"Upgrade-Milvus-using-Helm","type":2,"isActive":false},{"label":"Migrieren Sie die Metadaten","href":"Migrate-the-metadata","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_standalone-helm.md b/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_standalone-helm.md
index bc5849dc1..c3f2933c8 100644
--- a/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_standalone-helm.md
+++ b/localization/v2.5.x/site/de/adminGuide/upgrade_milvus_standalone-helm.md
@@ -108,10 +108,10 @@ zilliztech/milvus 4.1.1 2.3.0 Milvus is an ope
zilliztech/milvus 4.1.0 2.3.0 Milvus is an open-source vector database built ...
Sie können den Upgrade-Pfad für Ihren Milvus wie folgt wählen:
-
- [Führen Sie ein rollendes Upgrade durch](#conduct-a-rolling-upgrade) von Milvus v2.2.3 und späteren Versionen auf v2.5.0-beta.
+
- [Führen Sie ein rollendes Upgrade durch](#conduct-a-rolling-upgrade) von Milvus v2.2.3 und späteren Versionen auf v2.5.0.
Durchführen eines rollenden Upgrades
@@ -145,8 +145,8 @@ zilliztech/milvus 4.1.0 2.3.0 Milvus is an ope
o
Vorgang
update
Falsch
-
Sobald Sie sichergestellt haben, dass sich alle Einsätze in Ihrer Milvus-Instanz in ihrem normalen Status befinden, können Sie den folgenden Befehl ausführen, um die Milvus-Instanz auf 2.5.0-beta zu aktualisieren. Sie können den folgenden Befehl ausführen, um die Milvus-Instanz auf 2.5.0-beta zu aktualisieren.
Sobald Sie sichergestellt haben, dass sich alle Einsätze in Ihrer Milvus-Instanz in ihrem normalen Status befinden, können Sie den folgenden Befehl ausführen, um die Milvus-Instanz auf 2.5.0 zu aktualisieren. Sie können den folgenden Befehl ausführen, um die Milvus-Instanz auf 2.5.0 zu aktualisieren.
$ kubectl get pods my-release-milvus-proxy-6c548f787f-scspp -o=jsonpath='{$.spec.containers[0].image}'# milvusdb/milvus:v2.1.4
-
4. Migrieren Sie die Metadaten
Eine wichtige Änderung in Milvus 2.2 ist die Metadatenstruktur der Segmentindizes. Daher müssen Sie Helm verwenden, um die Metadaten beim Upgrade von Milvus von v2.1.x auf v2.2.0 zu migrieren. Hier finden Sie ein Skript, mit dem Sie Ihre Metadaten sicher migrieren können.
+
4. Migrieren Sie die Metadaten
Eine wichtige Änderung in Milvus 2.2 ist die Metadatenstruktur der Segmentindizes. Daher müssen Sie Helm verwenden, um die Metadaten zu migrieren, während Sie Milvus von v2.1.x auf v2.2.0 aktualisieren. Hier finden Sie ein Skript, mit dem Sie Ihre Metadaten sicher migrieren können.
Dieses Skript gilt nur für Milvus, das auf einem K8s-Cluster installiert ist. Wenn während des Prozesses ein Fehler auftritt, sollten Sie zunächst mit der Rollback-Operation auf die vorherige Version zurückkehren.
-
In der folgenden Tabelle sind die Operationen aufgeführt, die Sie für die Metamigration durchführen können.
+
In der folgenden Tabelle sind die Operationen aufgeführt, die Sie bei der Migration von Metadaten durchführen können.
Starten Sie die Milvus-Komponenten mit einem neuen Image.
-
2. Upgrade von Milvus von v2.1.x auf 2.5.0-beta
Die folgenden Befehle gehen davon aus, dass Sie Milvus von v2.1.4 auf 2.5.0-beta aktualisieren. Ändern Sie sie auf die Versionen, die Ihren Bedürfnissen entsprechen.
+
2. Upgrade von Milvus von v2.1.x auf 2.5.0
Die folgenden Befehle gehen davon aus, dass Sie Milvus von v2.1.4 auf 2.5.0 aktualisieren. Ändern Sie sie auf die Versionen, die Ihren Anforderungen entsprechen.
Geben Sie den Namen der Milvus-Instanz, die Quell-Milvus-Version und die Ziel-Milvus-Version an.
Um Milvus von v2.1.x auf 2.5.0 zu aktualisieren, müssen Sie die Metadaten vor dem eigentlichen Upgrade migrieren.
Durchführen eines rollenden Upgradesoperator upgrade milvus-
-
Seit Milvus 2.2.3 können Sie Milvus-Koordinatoren so konfigurieren, dass sie im Aktiv-Standby-Modus arbeiten, und die Funktion des rollenden Upgrades für sie aktivieren, damit Milvus auf eingehende Anfragen während der Koordinator-Upgrades reagieren kann. In früheren Versionen müssen die Koordinatoren während eines Upgrades entfernt und neu erstellt werden, was zu einer gewissen Ausfallzeit des Dienstes führen kann.
+
Seit Milvus 2.2.3 können Sie Milvus-Koordinatoren so konfigurieren, dass sie im Aktiv-Standby-Modus arbeiten, und die Funktion "Rolling Upgrade" für sie aktivieren, so dass Milvus auf eingehende Anfragen während der Koordinator-Upgrades reagieren kann. In früheren Versionen müssen die Koordinatoren während eines Upgrades entfernt und neu erstellt werden, was zu einer gewissen Ausfallzeit des Dienstes führen kann.
Auf der Grundlage der von Kubernetes bereitgestellten rollierenden Aktualisierungsfunktionen erzwingt der Milvus-Operator eine geordnete Aktualisierung der Bereitstellungen entsprechend ihrer Abhängigkeiten. Darüber hinaus implementiert Milvus einen Mechanismus, der sicherstellt, dass seine Komponenten während des Upgrades mit den von ihnen abhängigen Komponenten kompatibel bleiben, wodurch potenzielle Ausfallzeiten des Dienstes erheblich reduziert werden.
Die Funktion "Rolling Upgrade" ist standardmäßig deaktiviert. Sie müssen sie explizit über eine Konfigurationsdatei aktivieren.
In der obigen Konfigurationsdatei setzen Sie spec.components.enableRollingUpdate auf true und spec.components.image auf die gewünschte Milvus-Version.
Standardmäßig führt Milvus ein Rolling Upgrade für Koordinatoren in geordneter Weise durch, wobei die Pod-Images der Koordinatoren nacheinander ersetzt werden. Um die Upgrade-Zeit zu verkürzen, sollten Sie spec.components.imageUpdateMode auf all setzen, damit Milvus alle Pod-Images gleichzeitig ersetzt.
Seit Milvus 2.2.0 sind die Metadaten nicht mehr mit denen früherer Versionen kompatibel. Die folgenden Beispielschnipsel gehen von einem Upgrade von Milvus 2.1.4 auf Milvus v2.5.0-beta aus.
-
1. Erstellen Sie eine .yaml Datei für die Metadaten-Migration
Erstellen Sie eine Metadaten-Migrationsdatei. Im Folgenden finden Sie ein Beispiel. Sie müssen name, sourceVersion und targetVersion in der Konfigurationsdatei angeben. Im folgenden Beispiel wird name auf my-release-upgrade, sourceVersion auf v2.1.4 und targetVersion auf v2.5.0-beta gesetzt. Dies bedeutet, dass Ihre Milvus-Instanz von v2.1.4 auf v2.5.0-beta aktualisiert wird.
+
Seit Milvus 2.2.0 sind die Metadaten nicht mehr mit denen früherer Versionen kompatibel. Die folgenden Beispielschnipsel gehen von einem Upgrade von Milvus 2.1.4 auf Milvus v2.5.0 aus.
+
1. Erstellen Sie eine .yaml Datei für die Migration von Metadaten
Erstellen Sie eine Metadaten-Migrationsdatei. Im Folgenden finden Sie ein Beispiel. Sie müssen name, sourceVersion und targetVersion in der Konfigurationsdatei angeben. Im folgenden Beispiel wird name auf my-release-upgrade, sourceVersion auf v2.1.4 und targetVersion auf v2.5.0 gesetzt. Dies bedeutet, dass Ihre Milvus-Instanz von v2.1.4 auf v2.5.0 aktualisiert wird.
apiVersion: milvus.io/v1beta1
kind: MilvusUpgrade
metadata:
@@ -163,9 +163,9 @@ spec:
namespace: default
name: my-release
sourceVersion: "v2.1.4"
- targetVersion: "v2.5.0-beta"
+ targetVersion: "v2.5.0"# below are some omit default values:
- # targetImage: "milvusdb/milvus:v2.5.0-beta"
+ # targetImage: "milvusdb/milvus:v2.5.0"# toolImage: "milvusdb/meta-migration:v2.2.0"# operation: upgrade# rollbackIfFailed: true
diff --git a/localization/v2.5.x/site/de/adminGuide/users_and_roles.json b/localization/v2.5.x/site/de/adminGuide/users_and_roles.json
new file mode 100644
index 000000000..a4c6e13f7
--- /dev/null
+++ b/localization/v2.5.x/site/de/adminGuide/users_and_roles.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.create_user(user_name=\"user_1\", password=\"P@ssw0rd\")\n\n","import io.milvus.v2.client.ConnectConfig;\nimport io.milvus.v2.client.MilvusClientV2;\nimport io.milvus.v2.service.rbac.request.CreateUserReq;\n\nConnectConfig connectConfig = ConnectConfig.builder()\n .uri(\"http://localhost:19530\")\n .token(\"root:Milvus\")\n .build();\n \nMilvusClientV2 client = new MilvusClientV2(connectConfig);\n\nCreateUserReq createUserReq = CreateUserReq.builder()\n .userName(\"user_1\")\n .password(\"P@ssw0rd\")\n .build();\n \nclient.createUser(createUserReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nconst address = \"http://localhost:19530\";\nconst token = \"root:Milvus\";\nconst client = new MilvusClient({address, token});\n\nawait milvusClient.createUser({\n username: 'user_1',\n password: 'P@ssw0rd',\n });\n\n","export CLUSTER_ENDPOINT=\"http://localhost:19530\"\nexport TOKEN=\"root:Milvus\"\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/create\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"userName\": \"user_1\",\n \"password\": \"P@ssw0rd\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.update_password(\n user_name=\"user_1\",\n old_password=\"P@ssw0rd\",\n new_password=\"NewP@ssw0rd\"\n)\n\n","import io.milvus.v2.service.rbac.request.UpdatePasswordReq;\n\nUpdatePasswordReq updatePasswordReq = UpdatePasswordReq.builder()\n .userName(\"user_1\")\n .password(\"P@ssw0rd\")\n .newPassword(\"NewP@ssw0rd\")\n .build();\nclient.updatePassword(updatePasswordReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.updateUser({\n username: 'user_1',\n newPassword: 'P@ssw0rd',\n oldPassword: 'NewP@ssw0rd',\n});\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/update_password\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"newPassword\": \"P@ssw0rd!\",\n \"userName\": \"user_1\",\n \"password\": \"P@ssw0rd\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.list_users()\n\n","List resp = client.listUsers();\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.listUsers();\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","['root', 'user_1']\n\n","from pymilvus import MilvusClient\n\nclient.create_role(role_name=\"role_a\")\nimport io.milvus.v2.service.rbac.request.CreateRoleReq;\n\n","CreateRoleReq createRoleReq = CreateRoleReq.builder()\n .roleName(\"role_a\")\n .build();\n \n\n","client.createRole(createRoleReq);\nconst { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.createRole({\n roleName: 'role_a',\n});\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/create\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.list_roles()\n\n","List roles = client.listRoles();\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.listRoles(\n includeUserInfo: True\n);\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","['admin', 'role_a']\n\n"],"headingContent":"Create Users & Roles","anchorList":[{"label":"Benutzer und Rollen erstellen","href":"Create-Users--Roles","type":1,"isActive":false},{"label":"Benutzer","href":"User","type":2,"isActive":false},{"label":"Rolle","href":"Role","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/de/adminGuide/users_and_roles.md b/localization/v2.5.x/site/de/adminGuide/users_and_roles.md
new file mode 100644
index 000000000..eebbcc161
--- /dev/null
+++ b/localization/v2.5.x/site/de/adminGuide/users_and_roles.md
@@ -0,0 +1,261 @@
+---
+id: users_and_roles.md
+related_key: 'users, roles'
+summary: >-
+ Milvus erreicht eine feinkörnige Zugriffskontrolle durch RBAC. Sie können mit
+ der Erstellung von Benutzern und Rollen beginnen, dann den Rollen Privilegien
+ oder Privilegiengruppen zuweisen und schließlich die Zugriffskontrolle durch
+ die Zuweisung von Rollen an Benutzer verwalten. Diese Methode gewährleistet
+ die Effizienz und Sicherheit der Zugriffsverwaltung. Auf dieser Seite erfahren
+ Sie, wie Sie Benutzer und Rollen in Milvus erstellen können.
+title: Benutzer und Rollen erstellen
+---
+
Benutzer und Rollen erstellen
+
+
+
+
Milvus erreicht eine feinkörnige Zugriffskontrolle durch RBAC. Sie können mit der Erstellung von Benutzern und Rollen beginnen, dann den Rollen Privilegien oder Privilegiengruppen zuweisen und schließlich die Zugriffskontrolle durch die Zuweisung von Rollen an Benutzer verwalten. Diese Methode gewährleistet die Effizienz und Sicherheit der Zugriffsverwaltung. Auf dieser Seite wird beschrieben, wie man Benutzer und Rollen in Milvus erstellt.
+
Benutzer
+
+
+
+
Nach der Initialisierung einer Milvus-Instanz wird automatisch ein Root-Benutzer für die Authentifizierung bei der ersten Verbindung mit Milvus erstellt. Der Benutzername des Root-Benutzers ist root und das Passwort lautet Milvus. Die Standardrolle des Root-Benutzers ist admin, der Zugriff auf alle Ressourcen hat. Um die Datensicherheit zu gewährleisten, bewahren Sie bitte die Anmeldedaten des Root-Benutzers sicher auf, um unbefugten Zugriff zu verhindern.
+
Für den täglichen Betrieb empfiehlt es sich, Benutzer anzulegen, anstatt den Root-Benutzer zu verwenden.
+
Anlegen eines Benutzers
Das folgende Beispiel zeigt, wie Sie einen Benutzer mit dem Benutzernamen user_1 und dem Passwort P@ssw0rd anlegen. Der Benutzername und das Passwort für den Benutzer müssen diese Regeln befolgen.
+
+
Benutzername: Muss mit einem Buchstaben beginnen und darf nur Groß- und Kleinbuchstaben, Zahlen und Unterstriche enthalten.
+
Passwort: Muss 8-64 Zeichen lang sein und drei der folgenden Zeichen enthalten: Großbuchstaben, Kleinbuchstaben, Zahlen und Sonderzeichen.
Unten sehen Sie eine Beispielausgabe. root ist der Standardbenutzer, der automatisch in Milvus erstellt wird. user_1 ist der neue Benutzer, der gerade erstellt wurde.
+
['root', 'user_1']
+
+
+
Rolle
+
+
+
+
Milvus bietet eine eingebaute Rolle namens admin, die eine Administratorrolle ist, die auf Ressourcen unter allen Instanzen zugreifen kann und Privilegien für alle Operationen hat. Für eine feiner abgestufte Zugriffsverwaltung und verbesserte Datensicherheit wird empfohlen, dass Sie benutzerdefinierte Rollen auf der Grundlage Ihrer Bedürfnisse erstellen.
+
Eine Rolle erstellen
Das folgende Beispiel zeigt, wie Sie eine Rolle namens role_a erstellen.
+
Der Rollenname muss die folgende Regel erfüllen.
+
+
Er muss mit einem Buchstaben beginnen und darf nur Groß- oder Kleinbuchstaben, Zahlen und Unterstriche enthalten."
Unten sehen Sie eine Beispielausgabe. admin ist die Standardrolle in Milvus. role_a ist die neue Rolle, die gerade erstellt wurde.
+
['admin', 'role_a']
+
+
diff --git a/localization/v2.5.x/site/de/getstarted/run-milvus-docker/install_standalone-docker-compose.json b/localization/v2.5.x/site/de/getstarted/run-milvus-docker/install_standalone-docker-compose.json
index 1a459f20d..2858e8a3d 100644
--- a/localization/v2.5.x/site/de/getstarted/run-milvus-docker/install_standalone-docker-compose.json
+++ b/localization/v2.5.x/site/de/getstarted/run-milvus-docker/install_standalone-docker-compose.json
@@ -1 +1 @@
-{"codeList":["# Download the configuration file\n$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0-beta/milvus-standalone-docker-compose.yml -O docker-compose.yml\n\n# Start Milvus\n$ sudo docker compose up -d\n\nCreating milvus-etcd ... done\nCreating milvus-minio ... done\nCreating milvus-standalone ... done\n","$ sudo docker-compose ps\n\n Name Command State Ports\n--------------------------------------------------------------------------------------------------------------------\nmilvus-etcd etcd -advertise-client-url ... Up 2379/tcp, 2380/tcp\nmilvus-minio /usr/bin/docker-entrypoint ... Up (healthy) 9000/tcp\nmilvus-standalone /tini -- milvus run standalone Up 0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp\n","# Stop Milvus\n$ sudo docker compose down\n\n# Delete service data\n$ sudo rm -rf volumes\n"],"headingContent":"Run Milvus with Docker Compose (Linux)","anchorList":[{"label":"Milvus mit Docker Compose ausführen (Linux)","href":"Run-Milvus-with-Docker-Compose-Linux","type":1,"isActive":false},{"label":"Voraussetzungen","href":"Prerequisites","type":2,"isActive":false},{"label":"Installieren Sie Milvus","href":"Install-Milvus","type":2,"isActive":false},{"label":"Wie geht es weiter?","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["# Download the configuration file\n$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0/milvus-standalone-docker-compose.yml -O docker-compose.yml\n\n# Start Milvus\n$ sudo docker compose up -d\n\nCreating milvus-etcd ... done\nCreating milvus-minio ... done\nCreating milvus-standalone ... done\n","$ sudo docker-compose ps\n\n Name Command State Ports\n--------------------------------------------------------------------------------------------------------------------\nmilvus-etcd etcd -advertise-client-url ... Up 2379/tcp, 2380/tcp\nmilvus-minio /usr/bin/docker-entrypoint ... Up (healthy) 9000/tcp\nmilvus-standalone /tini -- milvus run standalone Up 0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp\n","# Stop Milvus\n$ sudo docker compose down\n\n# Delete service data\n$ sudo rm -rf volumes\n"],"headingContent":"Run Milvus with Docker Compose (Linux)","anchorList":[{"label":"Milvus mit Docker Compose ausführen (Linux)","href":"Run-Milvus-with-Docker-Compose-Linux","type":1,"isActive":false},{"label":"Voraussetzungen","href":"Prerequisites","type":2,"isActive":false},{"label":"Installieren Sie Milvus","href":"Install-Milvus","type":2,"isActive":false},{"label":"Wie geht es weiter?","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/de/getstarted/run-milvus-docker/install_standalone-docker-compose.md b/localization/v2.5.x/site/de/getstarted/run-milvus-docker/install_standalone-docker-compose.md
index 35e1ff45a..17917df54 100644
--- a/localization/v2.5.x/site/de/getstarted/run-milvus-docker/install_standalone-docker-compose.md
+++ b/localization/v2.5.x/site/de/getstarted/run-milvus-docker/install_standalone-docker-compose.md
@@ -57,7 +57,7 @@ title: Milvus mit Docker Compose ausführen (Linux)
Milvus bietet eine Docker Compose-Konfigurationsdatei im Milvus-Repository. Um Milvus mit Docker Compose zu installieren, führen Sie einfach folgenden Befehl aus
# Download the configuration file
-$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0-beta/milvus-standalone-docker-compose.yml -O docker-compose.yml
+$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0/milvus-standalone-docker-compose.yml -O docker-compose.yml
# Start Milvus
$ sudo docker compose up -d
diff --git a/localization/v2.5.x/site/de/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.json b/localization/v2.5.x/site/de/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.json
index 0cdb22888..b4a8915f7 100644
--- a/localization/v2.5.x/site/de/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.json
+++ b/localization/v2.5.x/site/de/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.json
@@ -1 +1 @@
-{"codeList":["$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0-beta/milvus-standalone-docker-compose-gpu.yml -O docker-compose.yml\n","...\nstandalone:\n ...\n deploy:\n resources:\n reservations:\n devices:\n - driver: nvidia\n capabilities: [\"gpu\"]\n device_ids: [\"0\"]\n...\n","...\nstandalone:\n ...\n deploy:\n resources:\n reservations:\n devices:\n - driver: nvidia\n capabilities: [\"gpu\"]\n device_ids: ['0', '1']\n...\n","$ sudo docker compose up -d\n\nCreating milvus-etcd ... done\nCreating milvus-minio ... done\nCreating milvus-standalone ... done\n","$ sudo docker compose ps\n\n Name Command State Ports\n--------------------------------------------------------------------------------------------------------------------\nmilvus-etcd etcd -advertise-client-url ... Up 2379/tcp, 2380/tcp\nmilvus-minio /usr/bin/docker-entrypoint ... Up (healthy) 9000/tcp\nmilvus-standalone /tini -- milvus run standalone Up 0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp\n","$ CUDA_VISIBLE_DEVICES=0 ./milvus run standalone\n","$ CUDA_VISIBLE_DEVICES=0,1 ./milvus run standalone\n","# Stop Milvus\n$ sudo docker compose down\n\n# Delete service data\n$ sudo rm -rf volumes\n","docker cp :/milvus/configs/milvus.yaml milvus.yaml\n","vim milvus.yaml\n","...\ngpu:\n initMemSize: 0\n maxMemSize: 0\n...\n","docker cp milvus.yaml :/milvus/configs/milvus.yaml\n","docker stop \ndocker start \n"],"headingContent":"Run Milvus with GPU Support Using Docker Compose","anchorList":[{"label":"Milvus mit GPU-Unterstützung mit Docker Compose starten","href":"Run-Milvus-with-GPU-Support-Using-Docker-Compose","type":1,"isActive":false},{"label":"Voraussetzungen","href":"Prerequisites","type":2,"isActive":false},{"label":"Milvus installieren","href":"Install-Milvus","type":2,"isActive":false},{"label":"Speicherpool konfigurieren","href":"Configure-memory-pool","type":2,"isActive":false},{"label":"Wie geht es weiter?","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0/milvus-standalone-docker-compose-gpu.yml -O docker-compose.yml\n","...\nstandalone:\n ...\n deploy:\n resources:\n reservations:\n devices:\n - driver: nvidia\n capabilities: [\"gpu\"]\n device_ids: [\"0\"]\n...\n","...\nstandalone:\n ...\n deploy:\n resources:\n reservations:\n devices:\n - driver: nvidia\n capabilities: [\"gpu\"]\n device_ids: ['0', '1']\n...\n","$ sudo docker compose up -d\n\nCreating milvus-etcd ... done\nCreating milvus-minio ... done\nCreating milvus-standalone ... done\n","$ sudo docker compose ps\n\n Name Command State Ports\n--------------------------------------------------------------------------------------------------------------------\nmilvus-etcd etcd -advertise-client-url ... Up 2379/tcp, 2380/tcp\nmilvus-minio /usr/bin/docker-entrypoint ... Up (healthy) 9000/tcp\nmilvus-standalone /tini -- milvus run standalone Up 0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp\n","$ CUDA_VISIBLE_DEVICES=0 ./milvus run standalone\n","$ CUDA_VISIBLE_DEVICES=0,1 ./milvus run standalone\n","# Stop Milvus\n$ sudo docker compose down\n\n# Delete service data\n$ sudo rm -rf volumes\n","docker cp :/milvus/configs/milvus.yaml milvus.yaml\n","vim milvus.yaml\n","...\ngpu:\n initMemSize: 0\n maxMemSize: 0\n...\n","docker cp milvus.yaml :/milvus/configs/milvus.yaml\n","docker stop \ndocker start \n"],"headingContent":"Run Milvus with GPU Support Using Docker Compose","anchorList":[{"label":"Milvus mit GPU-Unterstützung mit Docker Compose starten","href":"Run-Milvus-with-GPU-Support-Using-Docker-Compose","type":1,"isActive":false},{"label":"Voraussetzungen","href":"Prerequisites","type":2,"isActive":false},{"label":"Milvus installieren","href":"Install-Milvus","type":2,"isActive":false},{"label":"Speicherpool konfigurieren","href":"Configure-memory-pool","type":2,"isActive":false},{"label":"Wie geht es weiter?","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/de/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.md b/localization/v2.5.x/site/de/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.md
index befad2619..5ee35258b 100644
--- a/localization/v2.5.x/site/de/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.md
+++ b/localization/v2.5.x/site/de/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.md
@@ -58,9 +58,9 @@ title: Milvus mit GPU-Unterstützung mit Docker Compose starten
d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"
>
-
Um Milvus mit GPU-Unterstützung mit Docker Compose zu installieren, führen Sie folgende Schritte aus.
Der milvus-standalone-Container bedient lokal die Ports 19530 mit den Standardeinstellungen und ordnet seine Daten den Volumes/milvus im aktuellen Ordner zu.
-
Mit folgendem Befehl können Sie überprüfen, ob die Container aktiv sind:
+
Mit dem folgenden Befehl können Sie überprüfen, ob die Container aktiv sind:
Finden Sie heraus, was es Neues in Milvus gibt! Auf dieser Seite werden neue Funktionen, Verbesserungen, bekannte Probleme und Fehlerbehebungen in jeder Version zusammengefasst. In diesem Abschnitt finden Sie die Versionshinweise für jede veröffentlichte Version nach v2.5.0. Wir empfehlen Ihnen, diese Seite regelmäßig zu besuchen, um sich über Updates zu informieren.
-
v2.5.0-beta
+
Finden Sie heraus, was es Neues in Milvus gibt! Auf dieser Seite werden neue Funktionen, Verbesserungen, bekannte Probleme und Fehlerbehebungen in jeder Version zusammengefasst. Sie können die Versionshinweise für jede Version nach v2.5.0 in diesem Abschnitt finden. Wir empfehlen Ihnen, diese Seite regelmäßig zu besuchen, um sich über Updates zu informieren.
+
v2.5.0
-
Veröffentlichungsdatum: November 26, 2024
+
Veröffentlichungsdatum: Dezember 23, 2024
Milvus-Version
Python SDK-Version
Node.js SDK-Version
Java SDK-Version
-
2.5.0-beta
2.5.0
2.5.0
2.5.0
+
2.5.0
2.5.1
2.5.2
2.5.2
-
Milvus 2.5.0-beta bringt bedeutende Fortschritte zur Verbesserung der Benutzerfreundlichkeit, Skalierbarkeit und Leistung für Benutzer, die mit Vektorsuche und umfangreicher Datenverwaltung zu tun haben. Mit dieser Version integriert Milvus leistungsstarke neue Funktionen wie die begriffsbasierte Suche, Clustering-Kompaktierung für optimierte Abfragen und vielseitige Unterstützung für spärliche und dichte Vektorsuchmethoden. Verbesserungen in den Bereichen Cluster-Management, Indizierung und Datenhandhabung bieten ein neues Maß an Flexibilität und Benutzerfreundlichkeit und machen Milvus zu einer noch robusteren und benutzerfreundlicheren Vektordatenbank.
+
Milvus 2.5.0 bringt bedeutende Fortschritte zur Verbesserung der Benutzerfreundlichkeit, Skalierbarkeit und Leistung für Benutzer, die mit Vektorsuche und umfangreicher Datenverwaltung zu tun haben. Mit dieser Version integriert Milvus leistungsstarke neue Funktionen wie die begriffsbasierte Suche, Clustering-Kompaktierung für optimierte Abfragen und vielseitige Unterstützung für spärliche und dichte Vektorsuchmethoden. Verbesserungen in den Bereichen Cluster-Management, Indizierung und Datenhandling sorgen für ein neues Maß an Flexibilität und Benutzerfreundlichkeit und machen Milvus zu einer noch robusteren und benutzerfreundlicheren Vektordatenbank.
Wesentliche Merkmale
Volltextsuche
Milvus 2.5 unterstützt die mit Sparse-BM25 implementierte Volltextsuche! Diese Funktion ist eine wichtige Ergänzung zu den starken semantischen Suchfähigkeiten von Milvus, insbesondere in Szenarien, die seltene Wörter oder technische Begriffe beinhalten. In früheren Versionen unterstützte Milvus Sparse-Vektoren, um bei der Stichwortsuche zu helfen. Diese spärlichen Vektoren wurden außerhalb von Milvus durch neuronale Modelle wie SPLADEv2/BGE-M3 oder statistische Modelle wie den BM25-Algorithmus erzeugt.
-
Milvus 2.5 basiert auf Tantivy und verfügt über eingebaute Analysatoren und Sparse-Vektor-Extraktion, wodurch die API nicht mehr nur Vektoren als Eingabe erhält, sondern auch direkt Text akzeptiert. Die statistischen BM25-Informationen werden in Echtzeit aktualisiert, wenn Daten eingefügt werden, was die Benutzerfreundlichkeit und Genauigkeit erhöht. Darüber hinaus bieten spärliche Vektoren auf der Grundlage von ANN-Algorithmen (Approximate Nearest Neighbour) eine bessere Leistung als Standard-Schlüsselwortsuchsysteme.
+
Milvus 2.5 basiert auf Tantivy und verfügt über eingebaute Analysatoren und Sparse-Vektor-Extraktion, wodurch die API nicht mehr nur Vektoren als Eingabe erhält, sondern auch direkt Text akzeptiert. Die statistischen BM25-Informationen werden in Echtzeit aktualisiert, wenn Daten eingefügt werden, was die Benutzerfreundlichkeit und Genauigkeit erhöht. Darüber hinaus bieten spärliche Vektoren, die auf ANN-Algorithmen (Approximate Nearest Neighbour) basieren, eine bessere Leistung als Standard-Schlüsselwortsuchsysteme.
Um massive Daten und umfangreiche Funktionen besser zu unterstützen, umfasst das ausgeklügelte Design von Milvus verschiedene Abhängigkeiten, zahlreiche Knotenrollen, komplexe Datenstrukturen und mehr. Diese Aspekte können eine Herausforderung für die Nutzung und Wartung darstellen.
Milvus 2.5 führt eine integrierte Cluster Management WebUI ein, die die Schwierigkeiten bei der Systemwartung reduziert, indem sie die komplexen Informationen der Milvus-Laufzeitumgebung visualisiert. Dazu gehören Details zu Datenbanken und Sammlungen, Segmenten, Kanälen, Abhängigkeiten, Knotenstatus, Aufgabeninformationen, langsame Abfragen und vieles mehr.
-
Textabgleich
Milvus 2.5 nutzt die Analyse- und Indizierungsfunktionen von Tantivy für die Textvorverarbeitung und den Aufbau von Indizes und unterstützt den präzisen Abgleich von Textdaten in natürlicher Sprache auf der Grundlage bestimmter Begriffe. Diese Funktion wird in erster Linie für die gefilterte Suche nach bestimmten Bedingungen verwendet und kann skalare Filter zur Verfeinerung von Abfrageergebnissen einbeziehen, so dass Ähnlichkeitssuchen innerhalb von Vektoren, die skalare Kriterien erfüllen, möglich sind.
+
Textabgleich
Milvus 2.5 nutzt die Analyse- und Indizierungsfunktionen von Tantivy für die Textvorverarbeitung und den Aufbau von Indizes und unterstützt den präzisen Abgleich von Textdaten in natürlicher Sprache auf der Grundlage bestimmter Begriffe. Diese Funktion wird in erster Linie für die gefilterte Suche nach bestimmten Bedingungen verwendet und kann skalare Filterung zur Verfeinerung von Abfrageergebnissen einbeziehen, was eine Ähnlichkeitssuche innerhalb von Vektoren ermöglicht, die skalare Kriterien erfüllen.
Ein neuer skalarer Datenindex wurde der Milvus-Familie hinzugefügt. Der BitMap-Index verwendet ein Array von Bits, dessen Länge der Anzahl der Zeilen entspricht, um die Existenz von Werten darzustellen und die Suche zu beschleunigen.
-
Bitmap-Indizes haben sich traditionell für Felder mit niedriger Kardinalität bewährt, die nur eine geringe Anzahl unterschiedlicher Werte aufweisen, z. B. eine Spalte mit Geschlechtsinformationen, die nur zwei mögliche Werte enthält: männlich und weiblich.
+
Bitmap-Indizes haben sich traditionell bei Feldern mit niedriger Kardinalität bewährt, die nur eine geringe Anzahl unterschiedlicher Werte haben, z. B. eine Spalte mit Geschlechtsinformationen, die nur zwei mögliche Werte enthält: männlich und weiblich.
Weitere Informationen finden Sie unter Bitmap-Index.
-
Nullbar & Standardwert
Milvus unterstützt jetzt das Festlegen von löschbaren Eigenschaften und Standardwerten für skalare Felder mit Ausnahme des Primärschlüsselfeldes. Bei skalaren Feldern, die als nullable=True gekennzeichnet sind, können Benutzer das Feld beim Einfügen von Daten auslassen; das System behandelt es als Nullwert oder Standardwert (falls gesetzt), ohne einen Fehler zu verursachen.
+
Nullbar & Standardwert
Milvus unterstützt jetzt das Festlegen von löschbaren Eigenschaften und Standardwerten für skalare Felder mit Ausnahme des Primärschlüsselfeldes. Bei skalaren Feldern, die als nullable=True markiert sind, können Benutzer das Feld beim Einfügen von Daten auslassen; das System behandelt es als Nullwert oder Standardwert (falls gesetzt), ohne einen Fehler zu verursachen.
Standardwerte und löschbare Eigenschaften bieten Milvus mehr Flexibilität. Benutzer können diese Funktion für Felder mit unsicheren Werten bei der Erstellung von Sammlungen nutzen. Es vereinfacht auch die Datenmigration von anderen Datenbanksystemen zu Milvus, indem es die Handhabung von Datensätzen mit Nullwerten unter Beibehaltung der ursprünglichen Standardwerteinstellungen ermöglicht.
Durch die enge Zusammenarbeit mit der Faiss-Gemeinschaft konnte der HNSW-Algorithmus in Faiss sowohl in Bezug auf die Funktionalität als auch auf die Leistung erheblich verbessert werden. Aus Gründen der Stabilität und Wartungsfreundlichkeit hat Milvus 2.5 seine Unterstützung für HNSW offiziell von hnswlib nach Faiss verlagert.
-
Basierend auf Faiss unterstützt Milvus 2.5 mehrere Quantisierungsmethoden für HNSW, um den Anforderungen verschiedener Szenarien gerecht zu werden: SQ (Scalar Quantizer), PQ (Product Quantizer) und PRQ (Product Residual Quantizer). SQ und PQ sind häufiger anzutreffen; SQ bietet eine gute Abfrageleistung und Aufbaugeschwindigkeit, während PQ bei gleichem Komprimierungsverhältnis eine bessere Wiedererkennung bietet. Viele Vektordatenbanken verwenden in der Regel eine binäre Quantisierung, die eine einfache Form der SQ-Quantisierung darstellt.
+
Basierend auf Faiss unterstützt Milvus 2.5 mehrere Quantisierungsmethoden für HNSW, um den Anforderungen verschiedener Szenarien gerecht zu werden: SQ (Scalar Quantizer), PQ (Product Quantizer) und PRQ (Product Residual Quantizer). SQ und PQ sind häufiger anzutreffen; SQ bietet eine gute Abfrageleistung und Erstellungsgeschwindigkeit, während PQ bei gleichem Komprimierungsverhältnis eine bessere Wiedererkennung bietet. Viele Vektordatenbanken verwenden in der Regel eine binäre Quantisierung, die eine einfache Form der SQ-Quantisierung darstellt.
PRQ ist eine Verschmelzung von PQ und AQ (Additive Quantizer). Im Vergleich zu PQ sind längere Erstellungszeiten erforderlich, um einen besseren Recall zu erzielen, insbesondere bei hohen Komprimierungsraten, wie bei der binären Komprimierung.
-
Clustering-Verdichtung (Beta)
Milvus 2.5 führt die Clustering Compaction ein, um die Suche zu beschleunigen und die Kosten in großen Sammlungen zu reduzieren. Durch die Angabe eines skalaren Feldes als Clustering-Schlüssel werden die Daten nach Bereichen umverteilt, um die Speicherung und den Abruf zu optimieren. Diese Funktion funktioniert wie ein globaler Index und ermöglicht Milvus, Daten bei Abfragen auf der Grundlage von Clustering-Metadaten effizient zu beschneiden und die Suchleistung zu verbessern, wenn skalare Filter angewendet werden.
+
Clustering-Verdichtung (Beta)
Milvus 2.5 führt die Clustering Compaction ein, um die Suche zu beschleunigen und die Kosten in großen Sammlungen zu reduzieren. Durch die Angabe eines skalaren Feldes als Clustering-Schlüssel werden die Daten nach Bereichen umverteilt, um die Speicherung und den Abruf zu optimieren. Diese Funktion funktioniert wie ein globaler Index und ermöglicht es Milvus, Daten bei Abfragen auf der Grundlage von Clustering-Metadaten effizient zu beschneiden und die Suchleistung zu verbessern, wenn skalare Filter angewendet werden.
Mit Milvus 2.5 wird eine neue Komponente namens Streaming Node eingeführt, die WAL-Dienste (Write-Ahead Logging) bereitstellt. Dadurch ist Milvus in der Lage, vor und nach dem Lesen und Schreiben von Kanälen einen Konsens zu erzielen, wodurch neue Merkmale, Funktionalitäten und Optimierungen möglich werden. Diese Funktion ist in Milvus 2.5 standardmäßig deaktiviert und wird in Version 3.0 offiziell verfügbar sein.
+
Andere Funktionen
Streaming-Knoten (Beta)
Mit Milvus 2.5 wird eine neue Komponente namens Streaming Node eingeführt, die WAL-Dienste (Write-Ahead Logging) bereitstellt. Dadurch ist Milvus in der Lage, vor und nach dem Lesen und Schreiben von Kanälen einen Konsens zu erzielen, wodurch neue Merkmale, Funktionen und Optimierungen freigeschaltet werden. Diese Funktion ist in Milvus 2.5 standardmäßig deaktiviert und wird in Version 3.0 offiziell verfügbar sein.
IPv6-Unterstützung
Milvus unterstützt jetzt IPv6, was eine erweiterte Netzwerkkonnektivität und Kompatibilität ermöglicht.
CSV-Bulk-Import
Zusätzlich zu den JSON- und Parquet-Formaten unterstützt Milvus jetzt auch den direkten Massenimport von Daten im CSV-Format.
Expression Templates zur Abfrage-Beschleunigung
Milvus unterstützt jetzt Ausdrucksvorlagen und verbessert damit die Effizienz der Ausdrucksanalyse, insbesondere in Szenarien mit komplexen Ausdrücken.
@@ -74,10 +74,13 @@ title: Hinweise zur Veröffentlichung
MVCC-Unterstützung: Dank der Multi-Version Concurrency Control (MVCC) können Benutzer jetzt Iteratoren verwenden, ohne von nachfolgenden Datenänderungen wie Einfügungen und Löschungen betroffen zu sein.
Persistenter Cursor: Milvus unterstützt jetzt einen persistenten Cursor für QueryIterator, so dass Benutzer die Iteration nach einem Neustart von Milvus an der letzten Position wieder aufnehmen können, ohne den gesamten Iterationsprozess neu starten zu müssen.
-
Verbesserungen
Optimierung des Löschens
Verbesserte Geschwindigkeit und verringerter Speicherverbrauch bei umfangreichen Löschungen durch Optimierung der Sperrenverwendung und der Speicherverwaltung.
+
Verbesserungen
Optimierung des Löschens
Verbesserte Geschwindigkeit und verringerter Speicherverbrauch bei umfangreichen Löschvorgängen durch Optimierung der Sperrenverwendung und der Speicherverwaltung.
Upgrade der Abhängigkeiten
Upgrade auf ETCD 3.5.16 und Pulsar 3.0.7 LTS, wobei bestehende CVEs behoben und die Sicherheit verbessert wurde. Hinweis: Das Upgrade auf Pulsar 3.x ist nicht mit früheren 2.x-Versionen kompatibel.
Benutzer, die bereits eine funktionierende Milvus-Installation haben, müssen die ETCD- und Pulsar-Komponenten aktualisieren, bevor sie die neuen Features und Funktionen nutzen können. Einzelheiten finden Sie unter Upgrade von Pulsar von 2.x auf 3.x
Lokale Speicherung V2
In Milvus 2.5 wurde ein neues lokales Dateiformat eingeführt, das die Lade- und Abfrageeffizienz für skalare Daten verbessert, den Speicher-Overhead reduziert und die Grundlage für künftige Optimierungen schafft.
Optimierung des Ausdrucks-Parsing
Verbessertes Parsen von Ausdrücken durch Implementierung von Caching für wiederholte Ausdrücke, Aktualisierung von ANTLR und Optimierung der Leistung von NOT IN Klauseln.
Verbesserte DDL-Gleichzeitigkeitsleistung
Die Gleichzeitigkeitsleistung von Data Definition Language (DDL)-Operationen wurde optimiert.
Angleichung der RESTful-API-Funktionen
Angleichung der Funktionen der RESTful-API an andere SDKs zur Gewährleistung der Konsistenz.
+
Aktualisierungen für Sicherheit und Konfiguration
Unterstützung von TLS zur Sicherung der Kommunikation zwischen Knoten in komplexeren oder Unternehmensumgebungen. Details finden Sie unter Sicherheitskonfiguration.
+
Leistungsverbesserungen bei der Komprimierung
Die maximale Segmentbegrenzung bei der gemischten Komprimierung wurde aufgehoben und kleinere Segmente werden nun zuerst priorisiert, wodurch die Effizienz verbessert und Abfragen bei großen oder fragmentierten Datensätzen beschleunigt werden.
+
Score-basierter Channel-Ausgleich
Es wurde eine Richtlinie eingeführt, die die Lasten dynamisch über die Kanäle hinweg ausgleicht und so die Ressourcennutzung und die Gesamtstabilität in groß angelegten Implementierungen verbessert.
Wenn eine Sammlung für einen bestimmten Zeitraum gelöscht werden soll, sollten Sie ihre Time-To-Live (TTL) in Sekunden festlegen. Sobald die TTL abgelaufen ist, löscht Milvus die Entitäten in der Sammlung und lässt die Sammlung fallen. Die Löschung erfolgt asynchron, was bedeutet, dass Suchen und Abfragen noch möglich sind, bevor die Löschung abgeschlossen ist.
+
Wenn eine Sammlung für einen bestimmten Zeitraum gelöscht werden soll, sollten Sie ihre Time-To-Live (TTL) in Sekunden festlegen. Sobald die TTL abläuft, löscht Milvus die Entitäten in der Sammlung. Die Löschung erfolgt asynchron, was bedeutet, dass Suchen und Abfragen noch möglich sind, bevor die Löschung abgeschlossen ist.
Der folgende Codeschnipsel demonstriert, wie die TTL einer Sammlung geändert werden kann.
import io.milvus.v2.service.collection.request.AlterCollectionReq;
import java.util.HashMap;
diff --git a/localization/v2.5.x/site/de/userGuide/schema/string.md b/localization/v2.5.x/site/de/userGuide/schema/string.md
index 90390a394..ee1e6d217 100644
--- a/localization/v2.5.x/site/de/userGuide/schema/string.md
+++ b/localization/v2.5.x/site/de/userGuide/schema/string.md
@@ -2,10 +2,10 @@
id: string.md
title: String-Feld
summary: >-
- In Milvus ist VARCHAR der Datentyp, der für die Speicherung von stringartigen
- Daten verwendet wird und für die Speicherung von Strings mit variabler Länge
+ In Milvus ist VARCHAR der Datentyp, der für die Speicherung von Daten vom Typ
+ String verwendet wird und für die Speicherung von Strings mit variabler Länge
geeignet ist. Er kann Zeichenketten mit Einzel- und Multi-Byte-Zeichen
- speichern, mit einer maximalen Länge von bis zu 60.535 Zeichen. Wenn Sie ein
+ speichern, mit einer maximalen Länge von bis zu 65.535 Zeichen. Wenn Sie ein
VARCHAR-Feld definieren, müssen Sie auch den Parameter max_length für die
maximale Länge angeben. Der Zeichenkettentyp VARCHAR bietet eine effiziente
und flexible Möglichkeit zum Speichern und Verwalten von Textdaten und ist
@@ -27,7 +27,7 @@ summary: >-
d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"
>
-
In Milvus ist VARCHAR der Datentyp, der für die Speicherung von stringartigen Daten verwendet wird und für die Speicherung von Strings mit variabler Länge geeignet ist. Er kann Zeichenketten mit Einzel- und Multi-Byte-Zeichen speichern, mit einer maximalen Länge von bis zu 60.535 Zeichen. Wenn Sie ein Feld VARCHAR definieren, müssen Sie auch den Parameter für die maximale Länge max_length angeben. Der Stringtyp VARCHAR bietet eine effiziente und flexible Möglichkeit zum Speichern und Verwalten von Textdaten und ist daher ideal für Anwendungen, die Strings unterschiedlicher Länge verarbeiten.
+
In Milvus ist VARCHAR der Datentyp, der für die Speicherung von stringartigen Daten verwendet wird und für die Speicherung von Strings mit variabler Länge geeignet ist. Er kann Zeichenketten mit Einzel- und Multi-Byte-Zeichen speichern, mit einer maximalen Länge von bis zu 65.535 Zeichen. Wenn Sie ein Feld VARCHAR definieren, müssen Sie auch den Parameter für die maximale Länge max_length angeben. Der Stringtyp VARCHAR bietet eine effiziente und flexible Möglichkeit zum Speichern und Verwalten von Textdaten und ist daher ideal für Anwendungen, die Strings unterschiedlicher Länge verarbeiten.
VARCHAR-Feld hinzufügen-
+ Milvus bietet leistungsstarke Operatoren zur Abfrage von Array-Feldern, die es
+ Ihnen ermöglichen, Entitäten auf der Grundlage des Inhalts von Arrays zu
+ filtern und abzurufen.
+title: Array-Operatoren
+---
+
ARRAY-Operatoren
+
+
+
+
Milvus bietet leistungsstarke Operatoren zur Abfrage von Array-Feldern, die es Ihnen ermöglichen, Entitäten auf der Grundlage des Inhalts von Arrays zu filtern und abzurufen.
+
+
Alle Elemente innerhalb eines Arrays müssen vom gleichen Typ sein, und verschachtelte Strukturen innerhalb von Arrays werden wie einfache Zeichenketten behandelt. Daher ist es ratsam, bei der Arbeit mit ARRAY-Feldern übermäßig tiefe Verschachtelungen zu vermeiden und sicherzustellen, dass Ihre Datenstrukturen für eine optimale Leistung so flach wie möglich sind.
+
+
Verfügbare ARRAY-Operatoren
+
+
+
+
Die ARRAY-Operatoren ermöglichen eine feinkörnige Abfrage von Array-Feldern in Milvus. Diese Operatoren sind.
ARRAY_LENGTH(identifier, expr)ARRAY_CONTAINS: Erlaubt das Filtern von Entitäten basierend auf der Anzahl der Elemente in einem Array-Feld.
+
+
ARRAY_CONTAINS
+
+
+
+
Der ARRAY_CONTAINS Operator prüft, ob ein bestimmtes Element in einem Array-Feld vorhanden ist. Er ist nützlich, wenn Sie Entitäten finden wollen, bei denen ein bestimmtes Element in dem Array vorhanden ist.
+
Beispiel
+
Angenommen, Sie haben ein Array-Feld history_temperatures, das die aufgezeichneten niedrigsten Temperaturen für verschiedene Jahre enthält. Um alle Entitäten zu finden, in denen das Array den Wert 23 enthält, können Sie den folgenden Filterausdruck verwenden.
Dieser gibt alle Entitäten zurück, bei denen das Array history_temperatures den Wert 23 enthält.
+
ARRAY_CONTAINS_ALL
+
+
+
+
Der ARRAY_CONTAINS_ALL Operator stellt sicher, dass alle Elemente der angegebenen Liste im Array-Feld vorhanden sind. Dieser Operator ist nützlich, wenn Sie Entitäten abgleichen möchten, die mehrere Werte im Array enthalten.
+
Beispiel
+
Wenn Sie alle Entitäten finden möchten, bei denen das Array history_temperatures sowohl 23 als auch 24 enthält, können Sie verwenden.
Dies gibt alle Entitäten zurück, bei denen das Array history_temperatures beide der angegebenen Werte enthält.
+
ARRAY_CONTAINS_ANY
+
+
+
+
Der ARRAY_CONTAINS_ANY Operator prüft, ob eines der Elemente aus der angegebenen Liste im Array-Feld vorhanden ist. Dies ist nützlich, wenn Sie Entitäten abgleichen möchten, die mindestens einen der angegebenen Werte im Array enthalten.
+
Beispiel
+
Um alle Entitäten zu finden, bei denen das Array history_temperatures entweder 23 oder 24 enthält, können Sie verwenden.
Dies wird alle Entitäten zurückgeben, bei denen das Array history_temperatures mindestens einen der Werte 23 oder 24 enthält.
+
ARRAY_LENGTH
+
+
+
+
Der ARRAY_LENGTH Operator ermöglicht es Ihnen, Entitäten auf der Grundlage der Anzahl der Elemente in einem Array-Feld zu filtern. Dies ist nützlich, wenn Sie Entitäten mit Arrays einer bestimmten Länge finden müssen.
+
Beispiel
+
Wenn Sie alle Entitäten finden wollen, bei denen das Array history_temperatures weniger als 10 Elemente hat, können Sie verwenden.
Dies wird alle Entitäten zurückgeben, bei denen das Array history_temperatures weniger als 10 Elemente hat.
diff --git a/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/basic-operators.json b/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/basic-operators.json
new file mode 100644
index 000000000..05b7063e8
--- /dev/null
+++ b/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/basic-operators.json
@@ -0,0 +1 @@
+{"codeList":["filter = 'status == \"active\"'\n\n","filter = 'status != \"inactive\"'\n\n","filter = 'age > 30'\n\n","filter = 'price < 100'\n\n","filter = 'rating >= 4'\n\n","filter = 'discount <= 10'\n\n","filter = 'color in [\"red\", \"green\", \"blue\"]'\n\n","filter = 'name LIKE \"Prod%\"'\n\n","filter = 'name LIKE \"%XYZ\"'\n\n","filter = 'name LIKE \"%Pro%\"'\n\n","filter = 'total == base_price + tax'\n\n","filter = 'quantity - quantity_sold > 50'\n\n","filter = 'price * quantity > 1000'\n\n","filter = 'total_price / quantity < 50'\n\n","filter = 'id % 2 == 0'\n\n","filter = 'price ** 2 > 1000'\n\n","filter = 'price > 100 AND stock > 50'\n\n","filter = 'color == \"red\" OR color == \"blue\"'\n\n","filter = 'NOT color == \"green\"'\n\n","filter = 'product[\"price\"] > 1000'\n\n","filter = 'history_temperatures[0] > 30'\n\n"],"headingContent":"Basic Operators","anchorList":[{"label":"Grundlegende Operatoren","href":"Basic-Operators","type":1,"isActive":false},{"label":"Vergleichsoperatoren","href":"Comparison-operators","type":2,"isActive":false},{"label":"Bereichsoperatoren","href":"Range-operators","type":2,"isActive":false},{"label":"Arithmetische Operatoren","href":"Arithmetic-Operators","type":2,"isActive":false},{"label":"Logische Operatoren","href":"Logical-Operators","type":2,"isActive":false},{"label":"Tipps zur Verwendung grundlegender Operatoren mit JSON- und ARRAY-Feldern","href":"Tips-on-Using-Basic-Operators-with-JSON-and-ARRAY-Fields","type":2,"isActive":false},{"label":"Schlussfolgerung","href":"Conclusion","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/basic-operators.md b/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/basic-operators.md
new file mode 100644
index 000000000..5dc9a86c5
--- /dev/null
+++ b/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/basic-operators.md
@@ -0,0 +1,237 @@
+---
+id: basic-operators.md
+summary: >-
+ Milvus bietet eine Vielzahl von grundlegenden Operatoren, mit denen Sie Daten
+ effizient filtern und abfragen können. Mit diesen Operatoren können Sie Ihre
+ Suchbedingungen auf der Grundlage von skalaren Feldern, numerischen
+ Berechnungen, logischen Bedingungen und mehr verfeinern. Die Kenntnis der
+ Verwendung dieser Operatoren ist entscheidend für die Erstellung präziser
+ Abfragen und die Maximierung der Effizienz Ihrer Suchvorgänge.
+title: Grundlegende Operatoren
+---
+
Grundlegende Operatoren
+
+
+
+
Milvus bietet einen umfangreichen Satz von Basisoperatoren, die Ihnen helfen, Daten effizient zu filtern und abzufragen. Mit diesen Operatoren können Sie Ihre Suchbedingungen auf der Grundlage von skalaren Feldern, numerischen Berechnungen, logischen Bedingungen und mehr verfeinern. Das Verständnis für die Verwendung dieser Operatoren ist entscheidend für die Erstellung präziser Abfragen und die Maximierung der Effizienz Ihrer Suchen.
+
Vergleichsoperatoren
+
+
+
+
Vergleichsoperatoren werden verwendet, um Daten auf der Grundlage von Gleichheit, Ungleichheit oder Größe zu filtern. Sie sind auf numerische, Text- und Datumsfelder anwendbar.
+
Unterstützte Vergleichsoperatoren.
+
== (Gleich)
+
!= (Nicht gleich)
+
> (Größer als)
+
< (Kleiner als)
+
>= (Größer als oder gleich)
+
<= (Kleiner als oder gleich)
+
+
Beispiel 1: Filtern mit Gleich bis (==)
Angenommen, Sie haben ein Feld namens status und möchten alle Entitäten finden, bei denen status "aktiv" ist. Sie können den Gleichheitsoperator == verwenden.
+
filter = 'status == "active"'
+
+
+
Beispiel 2: Filtern mit Not Equal To (!=)
Um Entitäten zu finden, bei denen status nicht "inaktiv" ist.
+
filter = 'status != "inactive"'
+
+
+
Beispiel 3: Filtern mit Größer als (>)
Wenn Sie alle Entitäten finden wollen, deren age größer als 30 ist.
+
filter = 'age > 30'
+
+
+
Beispiel 4: Filtern mit "kleiner als" (<)
Um Entitäten zu finden, bei denen price kleiner als 100 ist.
+
filter = 'price < 100'
+
+
+
Beispiel 5: Filtern mit Größer als oder gleich (>=)
Wenn Sie alle Entitäten finden wollen, bei denen rating größer oder gleich 4 ist.
+
filter = 'rating >= 4'
+
+
+
Beispiel 6: Filtern mit Kleiner als oder gleich (<=)
Um Entitäten zu finden, deren discount kleiner oder gleich 10% ist.
+
filter = 'discount <= 10'
+
+
+
Bereichsoperatoren
+
+
+
+
Bereichsoperatoren helfen bei der Filterung von Daten auf der Grundlage bestimmter Gruppen oder Bereiche von Werten.
+
Unterstützte Bereichsoperatoren.
+
IN: Wird verwendet, um Werte innerhalb eines bestimmten Satzes oder Bereichs zu finden.
+
LIKE: Wird verwendet, um ein Muster abzugleichen (meist für Textfelder).
+
+
Beispiel 1: Verwendung von IN für die Suche nach mehreren Werten
Wenn Sie alle Entitäten finden möchten, bei denen color entweder "rot", "grün" oder "blau" ist.
+
filter = 'color in ["red", "green", "blue"]'
+
+
+
Dies ist nützlich, wenn Sie die Zugehörigkeit zu einer Liste von Werten prüfen wollen.
+
Beispiel 2: Verwendung von LIKE für Mustervergleiche
Der Operator LIKE wird für den Mustervergleich in Zeichenkettenfeldern verwendet. Er kann Teilzeichenfolgen an verschiedenen Positionen im Text entsprechen: als Präfix, Infix oder Suffix. Der Operator LIKE verwendet das Symbol % als Platzhalter, der mit einer beliebigen Anzahl von Zeichen (einschließlich Null) übereinstimmen kann.
+
Präfix-Übereinstimmung (Beginnt mit)
Um eine Präfix-Übereinstimmung durchzuführen, bei der die Zeichenfolge mit einem bestimmten Muster beginnt, können Sie das Muster an den Anfang stellen und % verwenden, um alle darauf folgenden Zeichen abzugleichen. Beispiel: Sie möchten alle Produkte finden, deren name mit "Prod" beginnt.
+
filter = 'name LIKE "Prod%"'
+
+
+
Dies entspricht allen Produkten, deren Name mit "Prod" beginnt, z. B. "Produkt A", "Produkt B" usw.
+
Suffix-Übereinstimmung (Endet mit)
Für eine Suffix-Übereinstimmung, bei der die Zeichenfolge mit einem bestimmten Muster endet, setzen Sie das Symbol % an den Anfang des Musters. Beispiel: Sie möchten alle Produkte finden, deren name mit "XYZ" endet.
+
filter = 'name LIKE "%XYZ"'
+
+
+
Damit werden alle Produkte gefunden, deren Name auf "XYZ" endet, z. B. "ProduktXYZ", "MusterXYZ" usw.
+
Infix-Abgleich (Enthält)
Um eine Infix-Übereinstimmung durchzuführen, bei der das Muster an beliebiger Stelle in der Zeichenfolge erscheinen kann, können Sie das Symbol % sowohl am Anfang als auch am Ende des Musters platzieren. Beispiel: Sie möchten alle Produkte finden, deren name das Wort "Pro" enthält.
+
filter = 'name LIKE "%Pro%"'
+
+
+
Dies entspricht allen Produkten, deren Name die Teilzeichenkette "Pro" enthält, wie z. B. "Product", "ProLine" oder "SuperPro".
+
Arithmetische Operatoren
+
+
+
+
Mit arithmetischen Operatoren können Sie Bedingungen erstellen, die auf Berechnungen mit numerischen Feldern basieren.
+
Unterstützte arithmetische Operatoren.
+
+ (Addition)
+
- (Subtraktion)
+
* (Multiplikation)
+
/ (Division)
+
% (Modulus)
+
** (Potenzierung)
+
+
Beispiel 1: Verwendung der Addition (+)
Suche nach Entitäten, bei denen der Preis total die Summe von base_price und tax ist.
+
filter = 'total == base_price + tax'
+
+
+
Beispiel 2: Verwendung der Subtraktion (-)
Um Entitäten zu finden, bei denen quantity größer als 50 und quantity_sold kleiner als 30 ist.
+
filter = 'quantity - quantity_sold > 50'
+
+
+
Beispiel 3: Verwendung der Multiplikation (*)
Suche nach Entitäten, bei denen price größer als 100 und quantity größer als 10 ist, multipliziert.
+
filter = 'price * quantity > 1000'
+
+
+
Beispiel 4: Verwendung der Division (/)
Um Produkte zu finden, bei denen total_price geteilt durch quantity kleiner als 50 ist.
+
filter = 'total_price / quantity < 50'
+
+
+
Beispiel 5: Verwendung von Modulus (%)
Um Einheiten zu finden, bei denen id eine gerade Zahl ist (d.h. durch 2 teilbar).
+
filter = 'id % 2 == 0'
+
+
+
Beispiel 6: Verwendung der Potenzierung (**)
Um Entitäten zu finden, bei denen price hoch 2 größer als 1000 ist.
+
filter = 'price ** 2 > 1000'
+
+
+
Logische Operatoren
+
+
+
+
Logische Operatoren werden verwendet, um mehrere Bedingungen in einem komplexeren Filterausdruck zu kombinieren. Dazu gehören AND, OR und NOT.
+
Unterstützte logische Operatoren.
+
AND: Kombiniert mehrere Bedingungen, die alle wahr sein müssen.
+
OR: Kombiniert Bedingungen, von denen mindestens eine wahr sein muss.
+
NOT: Negiert eine Bedingung.
+
+
Beispiel 1: AND zum Kombinieren von Bedingungen verwenden
Alle Produkte finden, bei denen price größer als 100 und stock größer als 50 ist.
+
filter = 'price > 100 AND stock > 50'
+
+
+
Beispiel 2: OR zum Kombinieren von Bedingungen verwenden
Um alle Produkte zu finden, bei denen color entweder "rot" oder "blau" ist.
+
filter = 'color == "red" OR color == "blue"'
+
+
+
Beispiel 3: Verwendung von NOT zum Ausschließen einer Bedingung
Um alle Produkte zu finden, bei denen color nicht "grün" ist.
+
filter = 'NOT color == "green"'
+
+
+
Tipps zur Verwendung grundlegender Operatoren mit JSON- und ARRAY-Feldern
+
+
+
+
Die Basisoperatoren in Milvus sind zwar vielseitig und können auf skalare Felder angewendet werden, aber sie können auch effektiv mit den Schlüsseln und Indizes in JSON- und ARRAY-Feldern verwendet werden.
+
Wenn Sie zum Beispiel ein Feld product haben, das mehrere Schlüssel wie price, model und tags enthält, verweisen Sie immer direkt auf den Schlüssel.
+
filter = 'product["price"] > 1000'
+
+
+
Um Datensätze zu finden, bei denen die erste Temperatur in einem Array von aufgezeichneten Temperaturen einen bestimmten Wert überschreitet, verwenden Sie.
+
filter = 'history_temperatures[0] > 30'
+
+
+
Schlussfolgerung
+
+
+
+
Milvus bietet eine Reihe von grundlegenden Operatoren, die Ihnen Flexibilität beim Filtern und Abfragen Ihrer Daten bieten. Durch die Kombination von Vergleichs-, Bereichs-, arithmetischen und logischen Operatoren können Sie leistungsstarke Filterausdrücke erstellen, um Ihre Suchergebnisse einzugrenzen und die benötigten Daten effizient abzurufen.
diff --git a/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/boolean.json b/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/boolean.json
new file mode 100644
index 000000000..e136c6559
--- /dev/null
+++ b/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/boolean.json
@@ -0,0 +1 @@
+{"codeList":["filter='color in [\"red\", \"green\", \"blue\"]'\n\n","filter='product[\"model\"] == \"JSN-087\" AND product[\"price\"] < 1850'\n\n","filter='history_temperatures[10] > 23'\n\n","filter = \"age > 25 AND city IN ['北京', '上海']\"\n\n","filter = \"age > {age} AND city in {city}\",\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter='json_contains(tags, \"sale\")'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\", \"discount\"]}\nfilter='json_contains_all(tags, [\"electronics\", \"sale\", \"new\"])'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter='json_contains_any(tags, [\"electronics\", \"new\", \"clearance\"])'\n\n","filter=\"ARRAY_CONTAINS(history_temperatures, 23)\"\n\n","filter=\"ARRAY_CONTAINS_ALL(history_temperatures, [23, 24])\"\n\n","filter=\"ARRAY_CONTAINS_ANY(history_temperatures, [23, 24])\"\n\n","filter=\"ARRAY_LENGTH(history_temperatures) < 10\"\n\n"],"headingContent":"Filtering Explained","anchorList":[{"label":"Filterung erklärt","href":"Filtering-Explained","type":1,"isActive":false},{"label":"Grundlegende Operatoren","href":"Basic-operators","type":2,"isActive":false},{"label":"Vorlagen für Filterausdrücke","href":"Filter-expression-templates","type":2,"isActive":false},{"label":"Datentypspezifische Operatoren","href":"Data-type-specific-operators","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/boolean.md b/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/boolean.md
new file mode 100644
index 000000000..7896b8f65
--- /dev/null
+++ b/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/boolean.md
@@ -0,0 +1,147 @@
+---
+id: boolean.md
+summary: >-
+ Milvus bietet leistungsstarke Filtermöglichkeiten, die eine präzise Abfrage
+ Ihrer Daten ermöglichen. Mit Filterausdrücken können Sie bestimmte skalare
+ Felder anvisieren und Suchergebnisse mit verschiedenen Bedingungen verfeinern.
+ In diesem Handbuch wird die Verwendung von Filterausdrücken in Milvus anhand
+ von Beispielen erläutert, die sich auf Abfrageoperationen konzentrieren. Sie
+ können diese Filter auch in Such- und Löschanfragen anwenden.
+title: Filterung erklärt
+---
+
Filterung erklärt
+
+
+
+
Milvus bietet leistungsstarke Filtermöglichkeiten, die eine präzise Abfrage Ihrer Daten ermöglichen. Mit Filterausdrücken können Sie bestimmte skalare Felder anvisieren und die Suchergebnisse mit verschiedenen Bedingungen verfeinern. In diesem Handbuch wird die Verwendung von Filterausdrücken in Milvus anhand von Beispielen erläutert, die sich auf Abfrageoperationen konzentrieren. Sie können diese Filter auch in Such- und Löschanfragen anwenden.
+
Grundlegende Operatoren
+
+
+
+
Milvus unterstützt mehrere grundlegende Operatoren zum Filtern von Daten.
+
+
Vergleichsoperatoren: ==, !=, >, <, >= und <= ermöglichen die Filterung auf der Grundlage von numerischen, Text- oder Datumsfeldern.
+
Bereichsfilter: IN und LIKE helfen bei der Suche nach bestimmten Wertebereichen oder -mengen.
+
Arithmetische Operatoren: +- , *, /, %, und ** werden für Berechnungen mit numerischen Feldern verwendet.
+
Logische Operatoren: AND, OR, und NOT kombinieren mehrere Bedingungen zu komplexen Ausdrücken.
+
+
Beispiel: Filtern nach Farbe
Um Entitäten mit Primärfarben (rot, grün oder blau) in einem skalaren Feld color zu finden, verwenden Sie den folgenden Filterausdruck.
+
filter='color in ["red", "green", "blue"]'
+
+
+
Beispiel: Filtern von JSON-Feldern
Milvus erlaubt es, Schlüssel in JSON-Feldern zu referenzieren. Wenn Sie zum Beispiel ein JSON-Feld product mit den Schlüsseln price und model haben und Produkte mit einem bestimmten Modell und einem Preis unter 1.850 finden möchten, verwenden Sie diesen Filterausdruck.
+
filter='product["model"] == "JSN-087" AND product["price"] < 1850'
+
+
+
Beispiel: Filtern von Array-Feldern
Wenn Sie ein Array-Feld history_temperatures mit Temperaturdatensätzen haben und Observatorien finden möchten, bei denen die 10. aufgezeichnete Temperatur 23°C überschreitet, verwenden Sie diesen Ausdruck.
+
filter='history_temperatures[10] > 23'
+
+
+
Weitere Informationen zu diesen grundlegenden Operatoren finden Sie unter Grundlegende Operatoren.
+
Vorlagen für Filterausdrücke
+
+
+
+
Wenn Sie mit CJK-Zeichen filtern, kann die Verarbeitung aufgrund der größeren Zeichensätze und Kodierungsunterschiede komplexer sein. Dies kann zu einer langsameren Leistung führen, insbesondere mit dem IN Operator.
+
Milvus führt Filterausdruck-Vorlagen ein, um die Leistung bei der Arbeit mit CJK-Zeichen zu optimieren. Durch die Trennung der dynamischen Werte vom Filterausdruck kann die Abfragemaschine das Einfügen von Parametern effizienter handhaben.
+
Beispiel
Um Personen über 25 Jahre zu finden, die entweder in "北京" (Peking) oder "上海" (Shanghai) leben, verwenden Sie den folgenden Vorlagenausdruck.
+
filter = "age > 25 AND city IN ['北京', '上海']"
+
+
+
Um die Leistung zu verbessern, verwenden Sie diese Variante mit Parametern.
+
filter = "age > {age} AND city in {city}",
+filter_params = {"age": 25, "city": ["北京", "上海"]}
+
+
+
Dieser Ansatz reduziert den Parsing-Overhead und verbessert die Abfragegeschwindigkeit. Weitere Informationen finden Sie unter Filtervorlagen.
+
Datentypspezifische Operatoren
+
+
+
+
Milvus bietet erweiterte Filteroperatoren für bestimmte Datentypen, wie JSON-, ARRAY- und VARCHAR-Felder.
+
JSON-Feld-spezifische Operatoren
Milvus bietet erweiterte Operatoren für die Abfrage von JSON-Feldern, die eine präzise Filterung innerhalb komplexer JSON-Strukturen ermöglichen.
+
**JSON_CONTAINS(identifier, jsonExpr)**: Prüft, ob ein JSON-Ausdruck im Feld existiert.
Weitere Einzelheiten zu JSON-Operatoren finden Sie unter JSON-Operatoren.
+
Feldspezifische ARRAY-Operatoren
Milvus bietet erweiterte Filteroperatoren für Array-Felder, wie ARRAY_CONTAINS, ARRAY_CONTAINS_ALL, ARRAY_CONTAINS_ANY und ARRAY_LENGTH, die eine feinkörnige Kontrolle über Array-Daten ermöglichen.
+
**ARRAY_CONTAINS**: Filtert Entitäten, die ein bestimmtes Element enthalten.
Weitere Einzelheiten zu Array-Operatoren finden Sie unter ARRAY-Operatoren.
+
VARCHAR feldspezifische Operatoren
Der Operator **Text_Match** ermöglicht die präzise Suche nach Dokumenten auf der Grundlage bestimmter Suchbegriffe. Er ist besonders nützlich für gefilterte Suchen, die skalare Filter mit vektoriellen Ähnlichkeitssuchen kombinieren. Im Gegensatz zur semantischen Suche konzentriert sich Text Match auf das genaue Vorkommen von Begriffen.
+
Milvus verwendet Tantivy zur Unterstützung der invertierten Indizierung und der begriffsbasierten Textsuche. Der Prozess umfasst.
+
+
Analyzer: Tokenisiert und verarbeitet den Eingabetext.
+
Indizierung: Erzeugt einen invertierten Index, der eindeutige Token auf Dokumente abbildet.
+
+
Weitere Einzelheiten finden Sie unter Textabgleich.
diff --git a/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/filtering-templating.json b/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/filtering-templating.json
new file mode 100644
index 000000000..fb0684104
--- /dev/null
+++ b/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/filtering-templating.json
@@ -0,0 +1 @@
+{"codeList":["filter = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\n\n","expr = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\nres = client.search(\n \"hello_milvus\",\n vectors[:nq],\n filter=expr,\n limit=10,\n output_fields=[\"age\", \"city\"],\n search_params={\"metric_type\": \"COSINE\", \"params\": {\"search_list\": 100}},\n filter_params=filter_params,\n)\n\n","expr = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\nres = client.query(\n \"hello_milvus\",\n filter=expr,\n output_fields=[\"age\", \"city\"],\n filter_params=filter_params\n)\n\n","expr = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\nres = client.delete(\n \"hello_milvus\",\n filter=expr,\n filter_params=filter_params\n)\n\n"],"headingContent":"Filter Templating","anchorList":[{"label":"Filter-Vorlagen","href":"Filter-Templating","type":1,"isActive":false},{"label":"Überblick","href":"Overview","type":2,"isActive":false},{"label":"Suchoperationen","href":"Search-Operations","type":2,"isActive":false},{"label":"Abfrageoperationen","href":"Query-Operations","type":2,"isActive":false},{"label":"Löschoperationen","href":"Delete-Operations","type":2,"isActive":false},{"label":"Schlussfolgerung","href":"Conclusion","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/filtering-templating.md b/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/filtering-templating.md
new file mode 100644
index 000000000..2e4855e98
--- /dev/null
+++ b/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/filtering-templating.md
@@ -0,0 +1,155 @@
+---
+id: filtering-templating.md
+summary: >-
+ In Milvus können komplexe Filterausdrücke mit zahlreichen Elementen,
+ insbesondere solche, die Nicht-ASCII-Zeichen wie CJK-Zeichen enthalten, die
+ Abfrageleistung erheblich beeinträchtigen. Um dies zu beheben, führt Milvus
+ einen Mechanismus zur Schablonierung von Filterausdrücken ein, der die
+ Effizienz verbessern soll, indem er die Zeit für das Parsen komplexer
+ Ausdrücke reduziert. Auf dieser Seite wird die Verwendung von
+ Filterausdrucksvorlagen bei Such-, Abfrage- und Löschvorgängen erläutert.
+title: Filterung Schablonierung
+---
+
Filter-Vorlagen
+
+
+
+
In Milvus können komplexe Filterausdrücke mit zahlreichen Elementen, insbesondere solche, die Nicht-ASCII-Zeichen wie CJK-Zeichen enthalten, die Abfrageleistung erheblich beeinträchtigen. Um dies zu beheben, führt Milvus einen Mechanismus zur Schablonierung von Filterausdrücken ein, der die Effizienz verbessern soll, indem er die Zeit für das Parsen komplexer Ausdrücke reduziert. Auf dieser Seite wird die Verwendung der Filterausdruckschablone bei Such-, Abfrage- und Löschvorgängen erläutert.
+
Überblick
+
+
+
+
Filterausdruckschablonen ermöglichen es Ihnen, Filterausdrücke mit Platzhaltern zu erstellen, die während der Abfrageausführung dynamisch durch Werte ersetzt werden können. Durch die Verwendung von Schablonen vermeiden Sie die Einbettung großer Arrays oder komplexer Ausdrücke direkt in den Filter, was die Parsing-Zeit reduziert und die Abfrageleistung verbessert.
+
Nehmen wir an, Sie haben einen Filterausdruck mit zwei Feldern, age und city, und Sie möchten alle Personen finden, deren Alter größer als 25 ist und die entweder in "北京" (Peking) oder "上海" (Shanghai) leben. Anstatt die Werte direkt in den Filterausdruck einzubetten, können Sie eine Vorlage verwenden.
+
filter = "age > {age} AND city IN {city}"
+filter_params = {"age": 25, "city": ["北京", "上海"]}
+
+
+
Hier sind {age} und {city} Platzhalter, die bei der Ausführung der Abfrage durch die tatsächlichen Werte in filter_params ersetzt werden.
+
Die Verwendung von Filterausdruck-Vorlagen in Milvus hat mehrere entscheidende Vorteile.
+
+
Geringere Parsing-Zeit: Durch das Ersetzen großer oder komplexer Filterausdrücke durch Platzhalter verbringt das System weniger Zeit mit dem Parsing und der Verarbeitung des Filters.
+
Verbesserte Abfrageleistung: Durch den reduzierten Parsing-Overhead verbessert sich die Abfrageleistung, was zu höheren QPS und schnelleren Antwortzeiten führt.
+
Skalierbarkeit: Wenn Ihre Datensätze wachsen und die Filterausdrücke komplexer werden, sorgt das Templating dafür, dass die Leistung effizient und skalierbar bleibt.
+
+
Suchoperationen
+
+
+
+
Für Suchoperationen in Milvus wird der Ausdruck filter verwendet, um die Filterbedingung zu definieren, und der Parameter filter_params wird verwendet, um die Werte für die Platzhalter anzugeben. Das filter_params Wörterbuch enthält die dynamischen Werte, die Milvus verwendet, um den Filterausdruck zu ersetzen.
In diesem Beispiel wird Milvus bei der Ausführung der Suche {age} dynamisch durch 25 und {city} durch ["北京", "上海"] ersetzen.
+
Abfrageoperationen
+
+
+
+
Der gleiche Schablonenmechanismus kann auf Abfrageoperationen in Milvus angewendet werden. In der Funktion query definieren Sie den Filterausdruck und verwenden filter_params, um die zu ersetzenden Werte anzugeben.
Durch die Verwendung von filter_params kann Milvus das dynamische Einfügen von Werten effizient handhaben und die Geschwindigkeit der Abfrageausführung verbessern.
+
Löschoperationen
+
+
+
+
Sie können Filterausdrücke auch in Löschvorgängen verwenden. Ähnlich wie bei der Suche und Abfrage definiert der Ausdruck filter die Bedingungen, und filter_params liefert die dynamischen Werte für die Platzhalter.
+
expr = "age > {age} AND city IN {city}"
+filter_params = {"age": 25, "city": ["北京", "上海"]}
+res = client.delete(
+ "hello_milvus",
+ filter=expr,
+ filter_params=filter_params
+)
+
+
+
Dieser Ansatz verbessert die Leistung von Löschvorgängen, vor allem wenn es um komplexe Filterbedingungen geht.
+
Schlussfolgerung
+
+
+
+
Das Templating von Filterausdrücken ist ein wichtiges Werkzeug zur Optimierung der Abfrageleistung in Milvus. Durch die Verwendung von Platzhaltern und des filter_params Wörterbuchs können Sie die Zeit, die für das Parsen komplexer Filterausdrücke aufgewendet wird, erheblich reduzieren. Dies führt zu einer schnelleren Abfrageausführung und einer besseren Gesamtleistung.
diff --git a/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/json-operators.json b/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/json-operators.json
new file mode 100644
index 000000000..baca76cc4
--- /dev/null
+++ b/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/json-operators.json
@@ -0,0 +1 @@
+{"codeList":["# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter = 'json_contains(tags, \"sale\")'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\", \"discount\"]}\nfilter = 'json_contains_all(tags, [\"electronics\", \"sale\", \"new\"])'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter = 'json_contains_any(tags, [\"electronics\", \"new\", \"clearance\"])'\n\n"],"headingContent":"JSON Operators","anchorList":[{"label":"JSON-Operatoren","href":"JSON-Operators","type":1,"isActive":false},{"label":"Verfügbare JSON-Operatoren","href":"Available-JSON-Operators","type":2,"isActive":false},{"label":"JSON_CONTAINS","href":"JSONCONTAINS","type":2,"isActive":false},{"label":"JSON_CONTAINS_ALL","href":"JSONCONTAINSALL","type":2,"isActive":false},{"label":"JSON_COTAINS_ANY","href":"JSONCOTAINSANY","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/json-operators.md b/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/json-operators.md
new file mode 100644
index 000000000..9a8c6d37d
--- /dev/null
+++ b/localization/v2.5.x/site/de/userGuide/search-query-get/boolean/json-operators.md
@@ -0,0 +1,123 @@
+---
+id: json-operators.md
+summary: >-
+ Milvus unterstützt fortschrittliche Operatoren für die Abfrage und Filterung
+ von JSON-Feldern und eignet sich damit perfekt für die Verwaltung komplexer,
+ strukturierter Daten. Diese Operatoren ermöglichen eine hocheffektive Abfrage
+ von JSON-Dokumenten, so dass Sie Entitäten auf der Grundlage bestimmter
+ Elemente, Werte oder Bedingungen innerhalb der JSON-Felder abrufen können.
+ Dieser Abschnitt führt Sie durch die Verwendung von JSON-spezifischen
+ Operatoren in Milvus und bietet praktische Beispiele zur Veranschaulichung
+ ihrer Funktionalität.
+title: JSON-Operatoren
+---
+
JSON-Operatoren
+
+
+
+
Milvus unterstützt fortschrittliche Operatoren für die Abfrage und Filterung von JSON-Feldern und eignet sich damit perfekt für die Verwaltung komplexer, strukturierter Daten. Diese Operatoren ermöglichen eine hocheffektive Abfrage von JSON-Dokumenten und erlauben es Ihnen, Entitäten auf der Grundlage bestimmter Elemente, Werte oder Bedingungen innerhalb der JSON-Felder abzurufen. Dieser Abschnitt führt Sie durch die Verwendung von JSON-spezifischen Operatoren in Milvus und bietet praktische Beispiele zur Veranschaulichung ihrer Funktionalität.
+
+
JSON-Felder können nicht mit komplexen, verschachtelten Strukturen umgehen und behandeln alle verschachtelten Strukturen als einfache Zeichenketten. Daher ist es bei der Arbeit mit JSON-Feldern ratsam, übermäßig tiefe Verschachtelungen zu vermeiden und sicherzustellen, dass Ihre Datenstrukturen für eine optimale Leistung so flach wie möglich sind.
+
+
Verfügbare JSON-Operatoren
+
+
+
+
Milvus bietet mehrere leistungsstarke JSON-Operatoren, die beim Filtern und Abfragen von JSON-Daten helfen, und diese Operatoren sind
+
+
JSON_CONTAINS(identifier, expr): Filtert Entitäten, bei denen der angegebene JSON-Ausdruck innerhalb des Feldes gefunden wird.
JSON_CONTAINS_ANY(identifier, expr): Filtert Entitäten, bei denen mindestens ein Element des JSON-Ausdrucks innerhalb des Feldes vorhanden ist.
+
+
Wir wollen diese Operatoren anhand von Beispielen untersuchen, um zu sehen, wie sie in realen Szenarien angewendet werden können.
+
JSON_CONTAINS
+
+
+
+
Der Operator json_contains prüft, ob ein bestimmtes Element oder Subarray in einem JSON-Feld vorhanden ist. Er ist nützlich, wenn Sie sicherstellen wollen, dass ein JSON-Array oder -Objekt einen bestimmten Wert enthält.
+
Beispiel
+
Stellen Sie sich vor, Sie haben eine Sammlung von Produkten, jedes mit einem tags Feld, das ein JSON Array von Strings enthält, wie z.B. ["electronics", "sale", "new"]. Sie möchten Produkte filtern, die das Tag "sale" haben.
In diesem Beispiel gibt Milvus alle Produkte zurück, bei denen das Feld tags das Element "sale" enthält.
+
JSON_CONTAINS_ALL
+
+
+
+
Der Operator json_contains_all stellt sicher, dass alle Elemente eines angegebenen JSON-Ausdrucks im Zielfeld vorhanden sind. Er ist besonders nützlich, wenn Sie mehrere Werte innerhalb eines JSON-Arrays abgleichen müssen.
+
Beispiel
+
Wenn Sie alle Produkte finden möchten, die die Tags "electronics", "sale" und "new" haben, können Sie den Operator json_contains_all verwenden.
Diese Abfrage gibt alle Produkte zurück, bei denen das Array tags alle drei angegebenen Elemente enthält: "electronics", "sale", und "new".
+
JSON_COTAINS_ANY
+
+
+
+
Der json_contains_any Operator filtert Entitäten, bei denen mindestens ein Element des JSON-Ausdrucks innerhalb des Feldes existiert. Dies ist nützlich, wenn Sie Entitäten auf der Grundlage eines beliebigen von mehreren möglichen Werten abgleichen möchten.
+
Beispiel
+
Angenommen, Sie möchten Produkte filtern, die mindestens eines der Tags "electronics", "sale" oder "new" enthalten. Um dies zu erreichen, können Sie den Operator json_contains_any verwenden.
In diesem Fall gibt Milvus alle Produkte zurück, die mindestens eines der Tags in der Liste ["electronics", "new", "clearance"] haben. Auch wenn ein Produkt nur eines dieser Tags hat, wird es in das Ergebnis aufgenommen.
diff --git a/localization/v2.5.x/site/de/userGuide/tools/milvus-webui.json b/localization/v2.5.x/site/de/userGuide/tools/milvus-webui.json
new file mode 100644
index 000000000..44ed9d761
--- /dev/null
+++ b/localization/v2.5.x/site/de/userGuide/tools/milvus-webui.json
@@ -0,0 +1 @@
+{"codeList":[],"headingContent":"Milvus WebUI","anchorList":[{"label":"Milvus WebUI","href":"Milvus-WebUI","type":1,"isActive":false},{"label":"Übersicht","href":"Overview","type":2,"isActive":false},{"label":"Startseite","href":"Home","type":2,"isActive":false},{"label":"Sammlungen","href":"Collections","type":2,"isActive":false},{"label":"Abfrage","href":"Query","type":2,"isActive":false},{"label":"Daten","href":"Data","type":2,"isActive":false},{"label":"Aufgaben","href":"Tasks","type":2,"isActive":false},{"label":"Langsame Anfragen","href":"Slow-requests","type":2,"isActive":false},{"label":"Konfigurationen","href":"Configurations","type":2,"isActive":false},{"label":"Werkzeuge","href":"Tools","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/de/userGuide/tools/milvus-webui.md b/localization/v2.5.x/site/de/userGuide/tools/milvus-webui.md
new file mode 100644
index 000000000..d5bf57b1e
--- /dev/null
+++ b/localization/v2.5.x/site/de/userGuide/tools/milvus-webui.md
@@ -0,0 +1,280 @@
+---
+id: milvus-webui.md
+summary: >-
+ Milvus Web UI ist ein grafisches Verwaltungstool für Milvus. Es verbessert die
+ Beobachtbarkeit des Systems durch eine einfache und intuitive Schnittstelle.
+ Sie können
+title: Milvus WebUI
+---
+
Milvus WebUI
+
+
+
+
Milvus Web UI ist ein grafisches Verwaltungswerkzeug für Milvus. Es verbessert die Beobachtbarkeit des Systems mit einer einfachen und intuitiven Schnittstelle. Sie können Milvus Web UI verwenden, um die Statistiken und Metriken der Komponenten und Abhängigkeiten von Milvus zu beobachten, Datenbank- und Sammlungsdetails zu überprüfen und detaillierte Milvus-Konfigurationen aufzulisten.
+
Übersicht
+
+
+
+
Milvus Web UI unterscheidet sich von Birdwatcher und Attu dadurch, dass es ein integriertes Tool ist, das eine allgemeine Systembeobachtung mit einer einfachen und intuitiven Oberfläche ermöglicht.
+
Die folgende Tabelle vergleicht die Funktionen von Milvus Web UI und Birdwatcher/Attu:
+
+
+
Funktion
Milvus Web UI
Birdwatcher
Attu
+
+
+
Bedienbare Form
GUI
CLI
GUI
+
Ziel-Benutzer
Maintainer, Entwickler
Maintainer
Entwickler
+
Installation
Eingebaut
Eigenständiges Werkzeug
Eigenständiges Werkzeug
+
Abhängigkeiten
Milvus
Milvus / etcd
Milvus
+
Primäre Funktionalitäten
Laufzeitumgebung, Datenbank-/Sammlungsdetails, Segmente, Kanäle, Aufgaben und langsame Abfragen
Überprüfung von Metadaten und Ausführung der Milvus-API
Sie können die gesammelten Statistiken der Abfrageknoten und Abfragekoordinatoren in Bezug auf Segmente, Kanäle, Replikate und Ressourcengruppen einsehen.
Sie können die Liste der in Milvus laufenden Tasks anzeigen, einschließlich Querycoord-Scheduler-Tasks, Verdichtungs-Tasks, Indexerstellungs-Tasks, Import-Tasks und Datensynchronisierungs-Tasks.
Sie können von der Web-UI aus auf die beiden eingebauten Tools, pprof und Milvus-Datenvisualisierung, zugreifen.
+
+
Startseite
+
+
+
+
Auf der Home-Seite finden Sie die folgenden Informationen:
+
+
+
+ Milvus Web UI Startseite
+
+
System-Informationen: Zeigen Sie Systeminformationen an, einschließlich Informationen über den Bereitstellungsmodus, das bei der Bereitstellung verwendete Image und zugehörige Informationen.
+
Komponenten-Informationen: Zeigen Sie den Status und die Metriken der Komponenten in Milvus an, einschließlich des Status und der Metriken der Abfrageknoten, Datenknoten, Indexknoten, Koordinatoren und Proxys.
+
Verbundene Clients: Zeigen Sie die verbundenen Clients und ihre Informationen an, einschließlich SDK-Typ und -Version, Benutzername und Zugriffshistorie.
+
System-Abhängigkeiten: Zeigen Sie den Status und die Metriken der Abhängigkeiten von Milvus an, einschließlich des Status und der Metriken des Metaspeichers, der Nachrichtenwarteschlange und des Objektspeichers.
+
+
Sammlungen
+
+
+
+
Auf der Seite Sammlungen können Sie die Liste der Datenbanken und Sammlungen, die sich derzeit in Milvus befinden, einsehen und deren Details überprüfen.
+
+
+
+ Milvus Web UI Sammlungen
+
+
Datenbank: Zeigen Sie die Liste der derzeit in Milvus vorhandenen Datenbanken und deren Details an.
+
Sammlungen: Zeigen Sie die Liste der Sammlungen in jeder Datenbank und deren Details an.
+
+
Abfrage
+
+
+
+
+
+
+ Milvus Web UI Abfrage Seite
+
+
Segmente: Zeigen Sie die Liste der Segmente und deren Details an, einschließlich der Segment-ID, der entsprechenden Sammlung, des Status, der Größe usw.
+
In der Spalte Von können Sie die Quelle des Segments finden. Mögliche Quellenindikatoren sind wie folgt
+
+
QN: Abfrageknoten
+
CT: Aktuelles Ziel in QueryCoord
+
NT: Nächstes Ziel in QueryCoord
+
DIST: Verteilung in QueryCoord
+
+
Kanäle: Zeigen Sie die Liste der Kanäle und ihre Details an, einschließlich des Kanalnamens, der entsprechenden Sammlungen usw.
+
In der Spalte Von können Sie die Quelle des Segments finden. Mögliche Quellenindikatoren sind wie folgt
+
+
QN: Abfrageknoten
+
CT: Aktuelles Ziel in QueryCoord
+
NT: Nächstes Ziel in QueryCoord
+
DIST: Verteilung in QueryCoord
+
+
Replikate: Anzeigen der Liste der Replikate und ihrer Details, einschließlich der Replikat-ID, der entsprechenden Sammlung usw.
+
Ressourcengruppen: Zeigen Sie die Liste der Ressourcengruppen und ihre Details an, einschließlich des Namens der Ressourcengruppe, der Anzahl der Abfrageknoten in der Gruppe und ihrer Konfigurationen, usw.
+
+
Daten
+
+
+
+
+
+
+ Milvus Web UI Daten Seite
+
+
Segmente: Zeigen Sie die Liste der Segmente aus den Datenknoten/Koordinatoren und deren Details an, einschließlich der Segment-ID, der entsprechenden Sammlung, des Status, der Größe usw.
+
Kanäle: Zeigen Sie die Liste der Kanäle aus den Datenknoten/Koordinatoren und deren Details an, einschließlich des Kanalnamens, der entsprechenden Sammlungen usw.
+
+
Aufgaben
+
+
+
+
+
+
+ Milvus Web UI Aufgaben Seite
+
+
Aufgaben: Zeigen Sie die Liste der in Milvus laufenden Aufgaben an, einschließlich des Aufgabentyps, des Status und der Aktionen.
+
+
QueryCoord-Aufgaben: Anzeige aller QueryCoord Scheduler-Tasks, einschließlich Balancer, Index/Segment/Channel/Leader Checker der letzten 15 Minuten.
+
Verdichtungs-Aufgaben: Anzeige aller Verdichtungsaufgaben der Datenkoordinatoren in den letzten 15 Minuten.
+
Indexerstellungs-Aufgaben: Zeigt alle Indexerstellungsaufgaben der Datenkoordinatoren der letzten 30 Minuten an.
+
Import-Aufgaben: Zeigt alle Importaufgaben der Datenkoordinatoren der letzten 30 Minuten an.
+
Daten-Synchronisations-Aufgaben: Zeigen Sie alle Datensynchronisierungsaufgaben der Datenknoten in den letzten 15 Minuten an.
+
+
+
Langsame Anfragen
+
+
+
+
+
+
+ Milvus Web UI Seite Langsame Anfragen
+
+
Langsame Anfragen: Eine langsame Anfrage ist eine Suche oder eine Abfrage, deren Latenzzeit länger ist als der in der Konfiguration angegebene Wert von proxy.slowQuerySpanInSeconds. Die Liste der langsamen Anfragen zeigt alle langsamen Anfragen der letzten 15 Minuten an.
+
+
Konfigurationen
+
+
+
+
+
+
+ Milvus Web UI Konfigurationen Seite
+
+
Konfigurationen: Zeigt die Liste der Milvus-Laufzeitkonfigurationen und deren Werte an.
+
+
Werkzeuge
+
+
+
+
+
pprof: Zugriff auf das pprof-Tool zur Profilerstellung und Fehlersuche in Milvus.
+
Milvus-Datenvisualisierungstool: Zugriff auf das Milvus-Datenvisualisierungstool zur Visualisierung der Daten in Milvus.
+
diff --git a/localization/v2.5.x/site/en/adminGuide/config_jaeger_tracing.md b/localization/v2.5.x/site/en/adminGuide/config_jaeger_tracing.md
index d3444d98f..f41834861 100644
--- a/localization/v2.5.x/site/en/adminGuide/config_jaeger_tracing.md
+++ b/localization/v2.5.x/site/en/adminGuide/config_jaeger_tracing.md
@@ -67,7 +67,7 @@ $ kubectl create -f https://github.com/jaegertracing/jaeger-operator/releases/do
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
jaeger-operator111148s
-
2. Deploy Jager
The simplest possible way to create a Jaeger instance is by creating a YAML file like the following example. This will install the default AllInOne strategy, which deploys the all-in-one image (combining jaeger-agent, jaeger-collector, jaeger-query, and Jaeger UI) in a single pod, using in-memory storage by default.
+
2. Deploy Jaeger
The simplest possible way to create a Jaeger instance is by creating a YAML file like the following example. This will install the default AllInOne strategy, which deploys the all-in-one image (combining jaeger-agent, jaeger-collector, jaeger-query, and Jaeger UI) in a single pod, using in-memory storage by default.
If you want to store traces for a long time, please refer to production-strategy.
apiVersion: jaegertracing.io/v1
kind: Jaeger
diff --git a/localization/v2.5.x/site/en/adminGuide/configure-docker.json b/localization/v2.5.x/site/en/adminGuide/configure-docker.json
index 292f8078e..039633349 100644
--- a/localization/v2.5.x/site/en/adminGuide/configure-docker.json
+++ b/localization/v2.5.x/site/en/adminGuide/configure-docker.json
@@ -1 +1 @@
-{"codeList":["$ wget https://raw.githubusercontent.com/milvus-io/milvus/v2.5.0-beta/configs/milvus.yaml\n","# For Milvus standalone\n$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0-beta/milvus-standalone-docker-compose.yml -O docker-compose.yml\n","...\n standalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.2.13\n command: [\"milvus\", \"run\", \"standalone\"]\n environment:\n ETCD_ENDPOINTS: etcd:2379\n MINIO_ADDRESS: minio:9000\n volumes:\n - /local/path/to/your/milvus.yaml:/milvus/configs/milvus.yaml # Map the local path to the container path\n - ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/milvus:/var/lib/milvus\n ports:\n - \"19530:19530\"\n - \"9091:9091\"\n depends_on:\n - \"etcd\"\n - \"minio\"\n...\n","$ sudo docker compose up -d\n"],"headingContent":"Configure Milvus with Docker Compose","anchorList":[{"label":"Configure Milvus with Docker Compose","href":"Configure-Milvus-with-Docker-Compose","type":1,"isActive":false},{"label":"Download a configuration file","href":"Download-a-configuration-file","type":2,"isActive":false},{"label":"Modify the configuration file","href":"Modify-the-configuration-file","type":2,"isActive":false},{"label":"Download an installation file","href":"Download-an-installation-file","type":2,"isActive":false},{"label":"Modify the installation file","href":"Modify-the-installation-file","type":2,"isActive":false},{"label":"Start Milvus","href":"Start-Milvus","type":2,"isActive":false},{"label":"What's next","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["$ wget https://raw.githubusercontent.com/milvus-io/milvus/v2.5.0/configs/milvus.yaml\n","# For Milvus standalone\n$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0/milvus-standalone-docker-compose.yml -O docker-compose.yml\n","...\n standalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.2.13\n command: [\"milvus\", \"run\", \"standalone\"]\n environment:\n ETCD_ENDPOINTS: etcd:2379\n MINIO_ADDRESS: minio:9000\n volumes:\n - /local/path/to/your/milvus.yaml:/milvus/configs/milvus.yaml # Map the local path to the container path\n - ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/milvus:/var/lib/milvus\n ports:\n - \"19530:19530\"\n - \"9091:9091\"\n depends_on:\n - \"etcd\"\n - \"minio\"\n...\n","$ sudo docker compose up -d\n"],"headingContent":"Configure Milvus with Docker Compose","anchorList":[{"label":"Configure Milvus with Docker Compose","href":"Configure-Milvus-with-Docker-Compose","type":1,"isActive":false},{"label":"Download a configuration file","href":"Download-a-configuration-file","type":2,"isActive":false},{"label":"Modify the configuration file","href":"Modify-the-configuration-file","type":2,"isActive":false},{"label":"Download an installation file","href":"Download-an-installation-file","type":2,"isActive":false},{"label":"Modify the installation file","href":"Modify-the-installation-file","type":2,"isActive":false},{"label":"Start Milvus","href":"Start-Milvus","type":2,"isActive":false},{"label":"What's next","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/en/adminGuide/configure-docker.md b/localization/v2.5.x/site/en/adminGuide/configure-docker.md
index 8e2e6c383..356a362a8 100644
--- a/localization/v2.5.x/site/en/adminGuide/configure-docker.md
+++ b/localization/v2.5.x/site/en/adminGuide/configure-docker.md
@@ -39,8 +39,8 @@ In current release, all parameters take effect only after Milvus restarts.
d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"
>
-
Downloadmilvus.yaml directly or with the following command.
Below is an example output. There is no role_a in the list. The drop operation is successful.
+
['admin']
+
+
diff --git a/localization/v2.5.x/site/en/adminGuide/grant_privileges.json b/localization/v2.5.x/site/en/adminGuide/grant_privileges.json
new file mode 100644
index 000000000..c90e0096e
--- /dev/null
+++ b/localization/v2.5.x/site/en/adminGuide/grant_privileges.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.grant_privilege_v2(\n role_name=\"role_a\",\n privilege=\"Search\"\n collection_name='collection_01'\n db_name='default',\n)\n \nclient.grant_privilege_v2(\n role_name=\"role_a\",\n privilege=\"privilege_group_1\"\n collection_name='collection_01'\n db_name='default',\n)\n\nclient.grant_privilege_v2(\n role_name=\"role_a\",\n privilege=\"ClusterReadOnly\"\n collection_name='*'\n db_name='*',\n)\n","import io.milvus.v2.service.rbac.request.GrantPrivilegeReqV2\n\nclient.grantPrivilegeV2(GrantPrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"Search\")\n .collectionName(\"collection_01\")\n .dbName(\"default\")\n .build());\n\nclient.grantPrivilegeV2(GrantPrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"privilege_group_1\")\n .collectionName(\"collection_01\")\n .dbName(\"default\")\n .build());\n\nclient.grantPrivilegeV2(GrantPrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"ClusterReadOnly\")\n .collectionName(\"*\")\n .dbName(\"*\")\n .build());\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.GrantV2(context.Background(), \"role_a\", \"collection_01\", \"Search\", entity.WithOperatePrivilegeDatabase(\"default\"))\n\nclient.GrantV2(context.Background(), \"role_a\", \"collection_01\", \"privilege_group_1\", entity.WithOperatePrivilegeDatabase(\"default\"))\n\nclient.GrantV2(context.Background(), \"role_a\", \"*\", \"ClusterReadOnly\", entity.WithOperatePrivilegeDatabase(\"*\"))\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nconst address = \"http://localhost:19530\";\nconst token = \"root:Milvus\";\nconst client = new MilvusClient({address, token});\n\nawait milvusClient.grantPrivilege({\n roleName: 'role_a',\n object: 'Collection', \n objectName: 'collection_01',\n privilegeName: 'Search'\n });\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/grant_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"Search\",\n \"collectionName\": \"collection_01\",\n \"dbName\":\"default\"\n}'\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/grant_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"privilege_group_1\",\n \"collectionName\": \"collection_01\",\n \"dbName\":\"default\"\n}'\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/grant_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"ClusterReadOnly\",\n \"collectionName\": \"*\",\n \"dbName\":\"*\"\n}'\n","from pymilvus import MilvusClient\n\nclient.describe_role(role_name=\"role_a\")\n","import io.milvus.v2.service.rbac.response.DescribeRoleResp;\nimport io.milvus.v2.service.rbac.request.DescribeRoleReq\n\nDescribeRoleReq describeRoleReq = DescribeRoleReq.builder()\n .roleName(\"role_a\")\n .build();\nDescribeRoleResp resp = client.describeRole(describeRoleReq);\nList infos = resp.getGrantInfos();\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.ListRoles(context.Background())\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.describeRole({roleName: 'role_a'});\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/describe\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\"\n}'\n","{\n \"role\": \"role_a\",\n \"privileges\": [\n {\n \"collection_name\": \"collection_01\",\n \"db_name\": \"default\",\n \"role_name\": \"role_a\",\n \"privilege\": \"Search\",\n \"grantor_name\": \"root\"\n },\n \"privilege_group_1\"\n ]\n}\n","from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.revoke_privilege_v2(\n role_name=\"role_a\",\n privilege=\"Search\"\n collection_name='collection_01'\n db_name='default',\n)\n \nclient.revoke_privilege_v2(\n role_name=\"role_a\",\n privilege=\"privilege_group_1\"\n collection_name='collection_01'\n db_name='default',\n)\n\nclient.revoke_privilege_v2(\n role_name=\"role_a\",\n privilege=\"ClusterReadOnly\"\n collection_name='*'\n db_name='*',\n)\n","import io.milvus.v2.service.rbac.request.RevokePrivilegeReqV2\n\nclient.revokePrivilegeV2(RevokePrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"Search\")\n .collectionName(\"collection_01\")\n .dbName(\"default\")\n .build());\n\nclient.revokePrivilegeV2(RevokePrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"privilege_group_1\")\n .collectionName(\"collection_01\")\n .dbName(\"default\")\n .build());\n\nclient.revokePrivilegeV2(RevokePrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"ClusterReadOnly\")\n .collectionName(\"*\")\n .dbName(\"*\")\n .build());\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.RevokeV2(context.Background(), \"role_a\", \"collection_01\", \"Search\", entity.WithOperatePrivilegeDatabase(\"default\"))\n\nclient.RevokeV2(context.Background(), \"role_a\", \"collection_01\", \"privielge_group_1\", entity.WithOperatePrivilegeDatabase(\"default\"))\n\nclient.RevokeV2(context.Background(), \"role_a\", \"*\", \"ClusterReadOnly\", entity.WithOperatePrivilegeDatabase(\"*\"))\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/revoke_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"Search\",\n \"collectionName\": \"collection_01\",\n \"dbName\":\"default\"\n}'\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/revoke_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"Search\",\n \"collectionName\": \"collection_01\",\n \"dbName\":\"default\"\n}'\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/revoke_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"ClusterReadOnly\",\n \"collectionName\": \"*\",\n \"dbName\":\"*\"\n}'\n"],"headingContent":"Grant Privilege or Privilege Group to Roles","anchorList":[{"label":"Grant Privilege or Privilege Group to Roles","href":"Grant-Privilege-or-Privilege-Group-to-Roles","type":1,"isActive":false},{"label":"Grant a privilege or a privilege group to a role","href":"Grant-a-privilege-or-a-privilege-group-to-a-role","type":2,"isActive":false},{"label":"Describe a role","href":"Describe-a-role","type":2,"isActive":false},{"label":"Revoke a privilege or a privilege group from a role","href":"Revoke-a-privilege-or-a-privilege-group-from-a-role","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/en/adminGuide/grant_privileges.md b/localization/v2.5.x/site/en/adminGuide/grant_privileges.md
new file mode 100644
index 000000000..8bf915c78
--- /dev/null
+++ b/localization/v2.5.x/site/en/adminGuide/grant_privileges.md
@@ -0,0 +1,556 @@
+---
+id: grant_privileges.md
+related_key: enable RBAC
+summary: >-
+ Once a role is created, you can grant privileges to the role. This guide
+ introduces how to grant privileges or privilege groups to a role.
+title: Grant Privilege or Privilege Group to Roles
+---
+
Grant Privilege or Privilege Group to Roles
+
+
+
+
Once a role is created, you can grant privileges to the role. This guide introduces how to grant privileges or privilege groups to a role.
+
Grant a privilege or a privilege group to a role
+
+
+
+
Milvus 2.5 introduces a new version of API which streamlines the grant operation. You no longer need to look up the object type when granting a privilege to a role. The following are the parameters and corresponding explanations.
+
+
role_name: The name of the target role to which privilege(s) or privilege group(s) need to be granted.
+
Resource: The target resource of a privilege, which can be a specific instance, database or collection. The following table explains how to specify the resource in the client.grantV2() method.
Input `*` as the database name and `*` as the collection name.
+
+
+
Privilege: The specific privilege or privilege group that you need to grant to a role. Currently, Milvus provides 56 types of privileges that you can grant. The table below lists the privileges in Milvus.
+
+
The type column in the table below are user to facilitate your quick lookup for privileges and is used for classification purposes only. When granting privileges, you do not need to understand the types. You just need to input the corresponding privileges.
The following example demonstrates how to grant the privilege PrivilegeSearch on collection_01 under the default database as well as a privilege group named privilege_group_1 to the role role_a.
Revoke a privilege or a privilege group from a role
+
+
+
+
The following example demonstrates how to revoke the privilege PrivilegeSearch on collection_01 under the default database as well as the privilege group privilege_group_1 that have been granted to the role role_a.
diff --git a/localization/v2.5.x/site/en/adminGuide/grant_roles.json b/localization/v2.5.x/site/en/adminGuide/grant_roles.json
new file mode 100644
index 000000000..12651d853
--- /dev/null
+++ b/localization/v2.5.x/site/en/adminGuide/grant_roles.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.grant_role(user_name=\"user_1\", role_name=\"role_a\")\n\n","import io.milvus.v2.client.ConnectConfig;\nimport io.milvus.v2.client.MilvusClientV2;\nimport io.milvus.v2.service.rbac.request.GrantRoleReq;\n\nString CLUSTER_ENDPOINT = \"http://localhost:19530\";\nString TOKEN = \"root:Milvus\";\n\n\nConnectConfig connectConfig = ConnectConfig.builder()\n .uri(CLUSTER_ENDPOINT)\n .token(TOKEN)\n .build();\n \nMilvusClientV2 client = new MilvusClientV2(connectConfig);\n\nGrantRoleReq grantRoleReq = GrantRoleReq.builder()\n .roleName(\"role_a\")\n .userName(\"user_1\")\n .build();\nclient.grantRole(grantRoleReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nconst address = \"http://localhost:19530\";\nconst token = \"root:Milvus\";\nconst client = new MilvusClient({address, token});\n\nmilvusClient.grantRole({\n username: 'user_1',\n roleName: 'role_a'\n })\n\n","export CLUSTER_ENDPOINT=\"http://localhost:19530\"\nexport TOKEN=\"root:Milvus\"\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/grant_role\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"userName\": \"user_1\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.describe_user(user_name=\"user_1\")\n\n","import io.milvus.v2.service.rbac.request.DescribeUserReq;\nimport io.milvus.v2.service.rbac.response.DescribeUserResp;\n\nDescribeUserReq describeUserReq = DescribeUserReq.builder()\n .userName(\"user_1\")\n .build();\nDescribeUserResp describeUserResp = client.describeUser(describeUserReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nmilvusClient.describeUser({username: 'user_1'})\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/describe\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"userName\": \"user_1\"\n}'\n\n","{'user_name': 'user_1', 'roles': 'role_a'}\n\n","from pymilvus import MilvusClient\n\nclient.revoke_role(\n user_name='user_1',\n role_name='role_a'\n)\n\n","import io.milvus.v2.service.rbac.request.RevokeRoleReq;\n\nclient.revokeRole(RevokeRoleReq.builder()\n .userName(\"user_1\")\n .roleName(\"role_a\")\n .build());\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\n\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/revoke_role\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"userName\": \"user_1\",\n \"roleName\": \"role_a\"\n}'\n\n"],"headingContent":"Grant Roles to Users","anchorList":[{"label":"Grant Roles to Users","href":"Grant-Roles-to-Users","type":1,"isActive":false},{"label":"Grant a role to a user","href":"Grant-a-role-to-a-user","type":2,"isActive":false},{"label":"Describe user","href":"Describe-user","type":2,"isActive":false},{"label":"Revoke a role","href":"Revoke-a-role","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/en/adminGuide/grant_roles.md b/localization/v2.5.x/site/en/adminGuide/grant_roles.md
new file mode 100644
index 000000000..ee0814d60
--- /dev/null
+++ b/localization/v2.5.x/site/en/adminGuide/grant_roles.md
@@ -0,0 +1,215 @@
+---
+id: grant_roles.md
+related_key: enable RBAC
+summary: >-
+ After creating a role and granting privileges to the role, you can grant the
+ role to users so that the users can access resources and perform actions that
+ are defined by the role. You can grant multiple roles to a user or grant a
+ role to multiple users. This guide introduces how to grant roles to users.
+title: Grant Roles to Users
+---
+
Grant Roles to Users
+
+
+
+
After creating a role and granting privileges to the role, you can grant the role to users so that the users can access resources and perform actions that are defined by the role. You can grant multiple roles to a user or grant a role to multiple users. This guide introduces how to grant roles to users.
+
The built-in user root in Milvus has already been granted the admin role, which has all privileges. You do not need to assign any other roles to it.
+
Grant a role to a user
+
+
+
+
The following example demonstrates how to grant the role role_a to the user user_1.
diff --git a/localization/v2.5.x/site/en/adminGuide/privilege_group.json b/localization/v2.5.x/site/en/adminGuide/privilege_group.json
new file mode 100644
index 000000000..e04d73e8b
--- /dev/null
+++ b/localization/v2.5.x/site/en/adminGuide/privilege_group.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\nclient.create_privileg_group(group_name='privilege_group_1')\n\n","import io.milvus.v2.service.rbac.request.CreatePrivilegeGroupReq;\n\nclient.createPrivilegeGroup(CreatePrivilegeGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.CreatePrivilegeGroup(context.Background(), \"privilege_group_1\")\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/create\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\"\n}'\n\n","from pymilvus import MilvusClient\nclient.add_privileges_to_group(group_name='privilege_group_1', privileges=['Query', 'Search'])\n\n","import io.milvus.v2.service.rbac.request.AddPrivilegesToGroupReq;\n\nclient.addPrivilegesToGroup(AddPrivilegesToGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .privileges(Arrays.asList(\"Query\", \"Search\"))\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.AddPrivilegesToGroup(context.Background(), \"privilege_group_1\", []string{\"Query\", \"Search\"})\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/add_privileges_to_group\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\",\n \"privileges\":[\"Query\", \"Search\"]\n}'\n\n","from pymilvus import MilvusClient\nclient.remove_privileges_from_group(group_name='privilege_group_1', privileges='Search')\n\n","import io.milvus.v2.service.rbac.request.RemovePrivilegesFromGroupReq;\n\nclient.removePrivilegesFromGroup(RemovePrivilegesFromGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .privileges(Collections.singletonList(\"Search\"))\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.RemovePrivilegesFromGroup(context.Background(), \"privilege_group_1\", []string{\"Search\"})\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/remove_privileges_from_group\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\",\n \"privileges\":[\"Search\"]\n}'\n\n","from pymilvus import MilvusClient\nclient.list_privilege_groups()\n\n","import io.milvus.v2.service.rbac.PrivilegeGroup;\nimport io.milvus.v2.service.rbac.request.ListPrivilegeGroupsReq;\nimport io.milvus.v2.service.rbac.response.ListPrivilegeGroupsResp;\n\nListPrivilegeGroupsResp resp = client.listPrivilegeGroups(ListPrivilegeGroupsReq.builder()\n .build());\nList groups = resp.getPrivilegeGroups();\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.ListPrivilegeGroups(context.Background())\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","PrivilegeGroupItem: , \n\n","from pymilvus import MilvusClient\nclient.drop_privilege_group(group_name='privilege_group_1')\n\n","import io.milvus.v2.service.rbac.request.DropPrivilegeGroupReq;\n\nclient.dropPrivilegeGroup(DropPrivilegeGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.DropPrivilegeGroup(context.Background(), \"privilege_group_1\")\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/drop\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\"\n}'\n\n"],"headingContent":"Create Privilege Group","anchorList":[{"label":"Create Privilege Group","href":"Create-Privilege-Group","type":1,"isActive":false},{"label":"Privilege group vs. privileges","href":"Privilege-group-vs-privileges","type":2,"isActive":false},{"label":"Built-in privilege groups","href":"Built-in-privilege-groups","type":2,"isActive":false},{"label":"Procedures","href":"Procedures","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/en/adminGuide/privilege_group.md b/localization/v2.5.x/site/en/adminGuide/privilege_group.md
new file mode 100644
index 000000000..d3b2be93d
--- /dev/null
+++ b/localization/v2.5.x/site/en/adminGuide/privilege_group.md
@@ -0,0 +1,513 @@
+---
+id: privilege_group.md
+related_key: enable RBAC
+summary: >-
+ To streamline the process of granting privileges, it is recommended that you
+ combine multiple privileges into a privilege group.
+title: Create Privilege Group
+---
+
Create Privilege Group
+
+
+
+
To streamline the process of granting privileges, it is recommended that you combine multiple privileges into a privilege group.
+
Privilege group vs. privileges
+
+
+
+
A privilege group consists of multiple privileges.
+
+
+
+ Privilege group illustrated
+
+
+
As shown in the figure above, suppose you need to grant three different privileges to a role.
+
+
If you do not use a privilege group, you need to grant the privileges three times.
+
If you use a privilege group, you only need to create a privilege group and add the three privileges to this privilege group and grant the privilege group to Role A.
+
+
By using a privilege group, you can grant multiple privileges in bulk to a role.
+
Built-in privilege groups
+
+
+
+
For ease-of-use, Milvus provides a total of 9 built-in privileges on the collection, database, and instance level: COLL_RO, COLL_RW, COLL_ADMIN, DB_RO, DB_RW, DB_Admin, Cluster_RO, Cluster_RW and Cluster_Admin.
+
+
The three levels of built-in privilege groups do not have a cascading relationship. Setting a privilege group at the instance level does not automatically set permissions for all databases and collections under that instance. Privileges at the database and collection levels need to be set manually.
+
+
The following tables explains the privileges includes in each of the built-in privilege group.
+
Collection level
+
COLL_RO: includes privileges to read collection data
+
COLL_RW: includes privileges to read and write collection data
+
COLL_ADMIN: includes privileges to read and write collection data and manage collections.
+
+
The table below lists the specific privileges included in the three built-in privilege groups at the collection level:
+
**Privilege**
+
**CollectionReadOnly**
+
**CollectionReadWrite**
+
**CollectionAdmin**
+
Query
+
✔️
+
✔️
+
✔️
+
Search
+
✔️
+
✔️
+
✔️
+
IndexDetail
+
✔️
+
✔️
+
✔️
+
GetFlushState
+
✔️
+
✔️
+
✔️
+
GetLoadState
+
✔️
+
✔️
+
✔️
+
GetLoadingProgress
+
✔️
+
✔️
+
✔️
+
HasPartition
+
✔️
+
✔️
+
✔️
+
ShowPartitions
+
✔️
+
✔️
+
✔️
+
ListAliases
+
✔️
+
✔️
+
✔️
+
DescribeCollection
+
✔️
+
✔️
+
✔️
+
DescribeAlias
+
✔️
+
✔️
+
✔️
+
GetStatistics
+
✔️
+
✔️
+
✔️
+
CreateIndex
+
❌
+
✔️
+
✔️
+
DropIndex
+
❌
+
✔️
+
✔️
+
CreatePartition
+
❌
+
✔️
+
✔️
+
DropPartition
+
❌
+
✔️
+
✔️
+
Load
+
❌
+
✔️
+
✔️
+
Release
+
❌
+
✔️
+
✔️
+
Insert
+
❌
+
✔️
+
✔️
+
Delete
+
❌
+
✔️
+
✔️
+
Upsert
+
❌
+
✔️
+
✔️
+
Import
+
❌
+
✔️
+
✔️
+
Flush
+
❌
+
✔️
+
✔️
+
Compaction
+
❌
+
✔️
+
✔️
+
LoadBalance
+
❌
+
✔️
+
✔️
+
CreateAlias
+
❌
+
❌
+
✔️
+
DropAlias
+
❌
+
❌
+
✔️
+
+
Database level
+
DB_RO: includes privileges to read database data
+
DB_RW: includes privileges to read and write database data
+
DB_Admin: includes privileges to read and write database data and manage databases.
+
+
The table below lists the specific privileges included in the three built-in privilege groups at the database level:
+
**Privilege**
+
**DatabaseReadOnly**
+
**DatabaseReadWrite**
+
**DatabaseAdmin**
+
ShowCollections
+
✔️
+
✔️
+
✔️
+
DescribeDatabase
+
✔️
+
✔️
+
✔️
+
CreateCollection
+
❌
+
❌
+
✔️
+
DropCollection
+
❌
+
❌
+
✔️
+
AlterDatabase
+
❌
+
✔️
+
✔️
+
+
Cluster level
+
Cluster_RO: includes privileges to read instnace data
+
Cluster_RW: includes privileges to read and write instance data
+
Cluster_Admin: includes privileges to read and write instance data and manage instances.
+
+
The table below lists the specific privileges included in the three built-in privilege groups at the instance level:
+
**Privilege**
+
**ClusterReadOnly**
+
**ClusterReadWrite**
+
**ClusterAdmin**
+
ListDatabases
+
✔️
+
✔️
+
✔️
+
RenameCollection
+
❌
+
❌
+
✔️
+
CreateOwnership
+
❌
+
❌
+
✔️
+
UpdateUser
+
❌
+
❌
+
✔️
+
DropOwnership
+
❌
+
❌
+
✔️
+
SelectOwnership
+
✔️
+
✔️
+
✔️
+
ManageOwnership
+
❌
+
❌
+
✔️
+
SelectUser
+
✔️
+
✔️
+
✔️
+
BackupRBAC
+
❌
+
❌
+
✔️
+
RestoreRBAC
+
❌
+
❌
+
✔️
+
CreateResourceGroup
+
❌
+
❌
+
✔️
+
DropResourceGroup
+
❌
+
❌
+
✔️
+
UpdateResourceGroups
+
❌
+
✔️
+
✔️
+
DescribeResourceGroup
+
✔️
+
✔️
+
✔️
+
ListResourceGroups
+
✔️
+
✔️
+
✔️
+
TransferNode
+
❌
+
✔️
+
✔️
+
TransferReplica
+
❌
+
✔️
+
✔️
+
CreateDatabase
+
❌
+
❌
+
✔️
+
DropDatabase
+
❌
+
❌
+
✔️
+
FlushAll
+
❌
+
✔️
+
✔️
+
CreatePrivilegeGroup
+
❌
+
❌
+
✔️
+
DropPrivilegeGroup
+
❌
+
❌
+
✔️
+
ListPrivilegeGroups
+
❌
+
❌
+
✔️
+
OperatePrivilegeGroup
+
❌
+
❌
+
✔️
+
+
Procedures
+
+
+
+
You can create a privilege group and then add privileges to the privilege group.
+
Create a privilege group
The following example demonstrates how to create a privilege group named privilege_group_1.
The following example demonstrates how to add privileges PrivilegeBackupRBAC and PrivilegeRestoreRBAC to the privilege group privilege_group_1 that is just created.
diff --git a/localization/v2.5.x/site/en/adminGuide/rbac.json b/localization/v2.5.x/site/en/adminGuide/rbac.json
index efe195a22..99d6f82d7 100644
--- a/localization/v2.5.x/site/en/adminGuide/rbac.json
+++ b/localization/v2.5.x/site/en/adminGuide/rbac.json
@@ -1 +1 @@
-{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri='http://localhost:19530', # replace with your own Milvus server address\n token='root:Milvus' # replace with your own Milvus server token\n)\n","client.create_user(\n user_name='user_1',\n password='P@ssw0rd'\n)\n","client.update_password(\n user_name='user_1',\n old_password='P@ssw0rd',\n new_password='P@ssw0rd123'\n)\n","client.list_users()\n\n# output:\n# ['root', 'user_1']\n","client.describe_user(user_name='user_1')\n\n# output:\n# {'user_name': 'user_1', 'roles': ()}\n","client.create_role(\n role_name=\"roleA\",\n)\n","client.list_roles()\n\n# output:\n# ['admin', 'public', 'roleA']\n","# grant privilege to a role\n\nclient.grant_privilege(\n role_name='roleA',\n object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName\n object_name='user_1', # value here can be * or a specific user name if object type is 'User'\n privilege='SelectUser'\n)\n","client.describe_role(\n role_name='roleA'\n)\n\n# output:\n# {'role': 'roleA',\n# 'privileges': [{'object_type': 'User',\n# 'object_name': 'user_1',\n# 'db_name': 'default',\n# 'role_name': 'roleA',\n# 'privilege': 'SelectUser',\n# 'grantor_name': 'root'}]}\n","# grant a role to a user\n\nclient.grant_role(\n user_name='user_1',\n role_name='roleA'\n)\n","client.describe_user(\n user_name='user_1'\n)\n\n# output:\n# {'user_name': 'user_1', 'roles': ('roleA')}\n","client.revoke_privilege(\n role_name='roleA',\n object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName\n object_name='user_1', # value here can be * or a specific user name if object type is 'User'\n privilege='SelectUser'\n)\n","client.revoke_role(\n user_name='user_1',\n role_name='roleA'\n)\n","client.drop_role(role_name='roleA')\n","client.drop_user(user_name='user_1')\n"],"headingContent":"Enable RBAC","anchorList":[{"label":"Enable RBAC","href":"Enable-RBAC","type":1,"isActive":false},{"label":"1. Initiate a Milvus client to establish a connection","href":"1-Initiate-a-Milvus-client-to-establish-a-connection","type":2,"isActive":false},{"label":"2. Create a user","href":"2-Create-a-user","type":2,"isActive":false},{"label":"3. Create a role","href":"3-Create-a-role","type":2,"isActive":false},{"label":"4. Grant a privilege to a role","href":"4-Grant-a-privilege-to-a-role","type":2,"isActive":false},{"label":"5. Grant a role to a user","href":"5-Grant-a-role-to-a-user","type":2,"isActive":false},{"label":"6. Revoke privileges","href":"6-Revoke-privileges","type":2,"isActive":false},{"label":"What's next","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":[],"headingContent":"RBAC Explained","anchorList":[{"label":"RBAC Explained","href":"RBAC-Explained","type":1,"isActive":false},{"label":"RBAC key concepts","href":"RBAC-key-concepts","type":2,"isActive":false},{"label":"Procedures","href":"Procedures","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/en/adminGuide/rbac.md b/localization/v2.5.x/site/en/adminGuide/rbac.md
index 9b48f6788..772e5dd1f 100644
--- a/localization/v2.5.x/site/en/adminGuide/rbac.md
+++ b/localization/v2.5.x/site/en/adminGuide/rbac.md
@@ -1,10 +1,13 @@
---
id: rbac.md
related_key: enable RBAC
-summary: 'Learn how to manage users, roles, and privileges.'
-title: Enable RBAC
+summary: >-
+ RBAC (Role-Based Access Control) is an access control method based on roles.
+ With RBAC, you can finely control the operations users can perform at the
+ collection, database, and instance levels, enhancing data security.
+title: RBAC Explained
---
-
Enable RBAC
+
RBAC Explained
-
By enabling RBAC, you can control access to specific Milvus resources (Eg. a collection or a partition) or permissions based on user role and privileges. Currently, this feature is only available in Python and Java.
-
This topic describes how to enable RBAC and manage users and roles.
-
-
The code snippets on this page use new MilvusClient (Python) to interact with Milvus. New MilvusClient SDKs for other languages will be released in future updates.
-
-
1. Initiate a Milvus client to establish a connection
+
RBAC (Role-Based Access Control) is an access control method based on roles. With RBAC, you can finely control the operations users can perform at the collection, database, and instance levels, enhancing data security.
+
Unlike traditional user access control models, RBAC introduces the concept of roles. In the RBAC model, you grant privileges to roles and then grant those roles to users. Then users can obtain privileges.
+
The RBAC model can improve the efficiency of access control management. For example, if multiple users require the same set of privileges, you do not need to manually set the privileges for each user. Instead, you can create a role and assign the role to users. If you want to adjust the privileges of these users, you can just adjust the role privileges and the modification will be applied to all users with this role.
+
RBAC key concepts
-
After you enable user authentication, connect to your Milvus instance using token that consists of a username and a password. By default, Milvus uses the root user with the password Milvus.
-
from pymilvus import MilvusClient
-
-client = MilvusClient(
- uri='http://localhost:19530', # replace with your own Milvus server address
- token='root:Milvus'# replace with your own Milvus server token
-)
-
-
2. Create a user
-
-
-
-
Create a user named user_1 with the password P@ssw0rd:
There are four major components in the RBAC model.
-
List all roles.
+
**Resource: **The resource entity that can be accessed. There are three levels of resources in Milvus - instance, database, and collection.
+
**Privilege: **The permission to perform certain operations on Milvus resources (eg. create collections, insert data, etc).
+
**Privilege group: **A group of multiple privileges.
+
**Role: **A role consists of two parts-privileges and resources. Privileges define the type of operations that a role can perform while resources define the target resources that the operations can be performed on. For example, the database administrator role can perform read, write, and manage operations on certain databases.
+
**User: **A user is someone who uses Milvus. Each user has a unique ID and is granted a role or multiple roles.
The following example demonstrates how to grant the permission of searching all collections to the role named roleA.
-
The object_type specifies the object type, which can also be understood as the resource type. Currently, valid values include Collection/User/Global, etc., where Global means that there is no specific resource type. The object_name is the resource name. If objecttype is Collection, then object name can be referred to a specific collection name, or you can use * to specify all collections. If objecttype is Global, then the object name can be only specified as *. See Users and Roles for other types of privileges you can grant.
-
Before managing role privileges, make sure you have enabled user authentication. Otherwise, an error may occur. For information on how to enable user authentication, refer to Authenticate User Access.
-
# grant privilege to a role
-
-client.grant_privilege(
- role_name='roleA',
- object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName
- object_name='user_1', # value here can be * or a specific user name if object type is 'User'
- privilege='SelectUser'
-)
-
Exercise caution when performing the following operations because these operations are irreversible.
-
-
-
Remove a privilege from a role. If you revoke a privilege that has not been granted to the role, an error will occur.
-
-
client.revoke_privilege(
- role_name='roleA',
- object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName
- object_name='user_1', # value here can be * or a specific user name if object type is 'User'
- privilege='SelectUser'
-)
-
-
-
Remove a user from a role. If you revoke a role that has not been granted to the user, an error will occur.
Grant roles to users: Grant roles with certain privileges to users so that users can have the privileges of a role. A single role can be granted to multiple users.
+
diff --git a/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_cluster-docker.json b/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_cluster-docker.json
index 246b31c90..cbe0a7b2b 100644
--- a/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_cluster-docker.json
+++ b/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_cluster-docker.json
@@ -1 +1 @@
-{"codeList":["...\nrootcoord:\n container_name: milvus-rootcoord\n image: milvusdb/milvus:v2.5.0-beta\n...\nproxy:\n container_name: milvus-proxy\n image: milvusdb/milvus:v2.5.0-beta\n...\nquerycoord:\n container_name: milvus-querycoord\n image: milvusdb/milvus:v2.5.0-beta \n...\nquerynode:\n container_name: milvus-querynode\n image: milvusdb/milvus:v2.5.0-beta\n...\nindexcoord:\n container_name: milvus-indexcoord\n image: milvusdb/milvus:v2.5.0-beta\n...\nindexnode:\n container_name: milvus-indexnode\n image: milvusdb/milvus:v2.5.0-beta \n...\ndatacoord:\n container_name: milvus-datacoord\n image: milvusdb/milvus:v2.5.0-beta \n...\ndatanode:\n container_name: milvus-datanode\n image: milvusdb/milvus:v2.5.0-beta\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0-beta\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvus/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","Update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Cluster with Docker Compose","anchorList":[{"label":"Upgrade Milvus Cluster with Docker Compose","href":"Upgrade-Milvus-Cluster-with-Docker-Compose","type":1,"isActive":false},{"label":"Upgrade Milvus by changing its image","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrate the metadata","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"What's next","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["...\nrootcoord:\n container_name: milvus-rootcoord\n image: milvusdb/milvus:v2.5.0\n...\nproxy:\n container_name: milvus-proxy\n image: milvusdb/milvus:v2.5.0\n...\nquerycoord:\n container_name: milvus-querycoord\n image: milvusdb/milvus:v2.5.0 \n...\nquerynode:\n container_name: milvus-querynode\n image: milvusdb/milvus:v2.5.0\n...\nindexcoord:\n container_name: milvus-indexcoord\n image: milvusdb/milvus:v2.5.0\n...\nindexnode:\n container_name: milvus-indexnode\n image: milvusdb/milvus:v2.5.0 \n...\ndatacoord:\n container_name: milvus-datacoord\n image: milvusdb/milvus:v2.5.0 \n...\ndatanode:\n container_name: milvus-datanode\n image: milvusdb/milvus:v2.5.0\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvus/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","Update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Cluster with Docker Compose","anchorList":[{"label":"Upgrade Milvus Cluster with Docker Compose","href":"Upgrade-Milvus-Cluster-with-Docker-Compose","type":1,"isActive":false},{"label":"Upgrade Milvus by changing its image","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrate the metadata","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"What's next","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_cluster-docker.md b/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_cluster-docker.md
index 0e6b43c87..ae37961f5 100644
--- a/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_cluster-docker.md
+++ b/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_cluster-docker.md
@@ -20,7 +20,7 @@ title: Upgrade Milvus Cluster with Docker Compose
>
This topic describes how to upgrade your Milvus using Docker Compose.
Conduct a rolling upgrade
@@ -145,8 +145,8 @@ zilliztech/milvus 4.1.0 2.3.0 Milvus is an ope
o
Operation
update
False
-
Once you have ensured that all deployments in your Milvus instance are in their normal status. You can run the following command to upgrade the Milvus instance to 2.5.0-beta.
Once you have ensured that all deployments in your Milvus instance are in their normal status. You can run the following command to upgrade the Milvus instance to 2.5.0.
To upgrade Milvus from v2.1.x to 2.5.0, you need to migrate the metadata before the actual upgrade.
Conduct a rolling upgradetrue
imageUpdateMode: rollingUpgrade # Default value, can be omitted
- image: milvusdb/milvus:v2.5.0-beta
+ image: milvusdb/milvus:v2.5.0
In this above configuration file, set spec.components.enableRollingUpdate to true and set spec.components.image to the desired Milvus version.
By default, Milvus performs rolling upgrade for coordinators in an ordered way, in which it replaces the coordinator pod images one after another. To reduce the upgrade time, consider setting spec.components.imageUpdateMode to all so that Milvus replaces all pod images at the same time.
Since Milvus 2.2.0, the metadata is incompatible with that in previous releases. The following example snippets assume an upgrade from Milvus 2.1.4 to Milvus 2.5.0-beta.
-
1. Create a .yaml file for metadata migration
Create a metadata migration file. The following is an example. You need to specify the name, sourceVersion, and targetVersion in the configuration file. The following example sets the name to my-release-upgrade, sourceVersion to v2.1.4, and targetVersion to v2.5.0-beta. This means that your Milvus cluster will be upgraded from v2.1.4 to v2.5.0-beta.
+
Since Milvus 2.2.0, the metadata is incompatible with that in previous releases. The following example snippets assume an upgrade from Milvus 2.1.4 to Milvus 2.5.0.
+
1. Create a .yaml file for metadata migration
Create a metadata migration file. The following is an example. You need to specify the name, sourceVersion, and targetVersion in the configuration file. The following example sets the name to my-release-upgrade, sourceVersion to v2.1.4, and targetVersion to v2.5.0. This means that your Milvus cluster will be upgraded from v2.1.4 to v2.5.0.
apiVersion: milvus.io/v1beta1
kind: MilvusUpgrade
metadata:
@@ -159,9 +159,9 @@ spec:
namespace: default
name: my-release
sourceVersion: "v2.1.4"
- targetVersion: "v2.5.0-beta"
+ targetVersion: "v2.5.0"# below are some omit default values:
- # targetImage: "milvusdb/milvus:v2.5.0-beta"
+ # targetImage: "milvusdb/milvus:v2.5.0"# toolImage: "milvusdb/meta-migration:v2.2.0"# operation: upgrade# rollbackIfFailed: true
diff --git a/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_standalone-docker.json b/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_standalone-docker.json
index 283394329..371cf9799 100644
--- a/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_standalone-docker.json
+++ b/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_standalone-docker.json
@@ -1 +1 @@
-{"codeList":["...\nstandalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.5.0-beta\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0-beta\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvusdb/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","// Run the following only after update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Standalone with Docker Compose","anchorList":[{"label":"Upgrade Milvus Standalone with Docker Compose","href":"Upgrade-Milvus-Standalone-with-Docker-Compose","type":1,"isActive":false},{"label":"Upgrade Milvus by changing its image","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrate the metadata","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"What's next","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["...\nstandalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.5.0\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvusdb/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","// Run the following only after update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Standalone with Docker Compose","anchorList":[{"label":"Upgrade Milvus Standalone with Docker Compose","href":"Upgrade-Milvus-Standalone-with-Docker-Compose","type":1,"isActive":false},{"label":"Upgrade Milvus by changing its image","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrate the metadata","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"What's next","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_standalone-docker.md b/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_standalone-docker.md
index c73fe928f..3ca158cea 100644
--- a/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_standalone-docker.md
+++ b/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_standalone-docker.md
@@ -24,7 +24,7 @@ title: Upgrade Milvus Standalone with Docker Compose
>
This topic describes how to upgrade your Milvus using Docker Compose.
Due to security concerns, Milvus upgrades its MinIO to RELEASE.2023-03-20T20-16-18Z with the release of v2.2.5. Before any upgrades from previous Milvus Standalone releases installed using Docker Compose, you should create a Single-Node Single-Drive MinIO deployment and migrate existing MinIO settings and content to the new deployment. For details, refer to this guide.
Run the following commands to perform the upgrade.
docker compose down
@@ -83,7 +83,7 @@ cmd:
runWithBackup: true
config:
sourceVersion: 2.1.4# Specify your milvus version
- targetVersion: 2.5.0-beta
+ targetVersion: 2.5.0
backupFilePath: /tmp/migration.bak
metastore:
type: etcd
diff --git a/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_standalone-helm.json b/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_standalone-helm.json
index f647228d3..599a57393 100644
--- a/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_standalone-helm.json
+++ b/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_standalone-helm.json
@@ -1 +1 @@
-{"codeList":["$ helm repo update\n$ helm search repo zilliztech/milvus --versions\n","helm repo add zilliztech https://zilliztech.github.io/milvus-helm\nhelm repo update zilliztech\n# upgrade existing helm release\nhelm upgrade my-release zilliztech/milvus --reset-then-reuse-values\n","NAME CHART VERSION APP VERSION DESCRIPTION \nzilliztech/milvus 4.1.34 2.4.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.33 2.4.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.32 2.4.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.31 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.30 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.29 2.4.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.24 2.3.11 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.23 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.22 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.21 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.20 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.18 2.3.10 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.18 2.3.9 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.17 2.3.8 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.16 2.3.7 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.15 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.14 2.3.6 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.13 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.12 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.11 2.3.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.10 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.9 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.8 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.7 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.6 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.5 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.4 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.3 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.2 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.1 2.3.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.0 2.3.0 Milvus is an open-source vector database built ...\n","sh rollingUpdate.sh -n default -i my-release -o update -t 2.5.0-beta -w 'milvusdb/milvus:v2.5.0-beta'\n","helm repo update\nhelm upgrade my-release milvus/milvus --reset-then-reuse-values --version=4.1.24 # use the helm chart version here\n","NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION \nmy-release default 1 2022-11-21 15:41:25.51539 +0800 CST deployed milvus-3.2.18 2.1.4\n","NAME READY STATUS RESTARTS AGE\nmy-release-etcd-0 1/1 Running 0 84s\nmy-release-milvus-standalone-75c599fffc-6rwlj 1/1 Running 0 84s\nmy-release-minio-744dd9586f-qngzv 1/1 Running 0 84s\n","$ kubectl get pods my-release-milvus-proxy-6c548f787f-scspp -o=jsonpath='{$.spec.containers[0].image}'\n# milvusdb/milvus:v2.1.4\n","./migrate.sh -i my-release -s 2.1.4 -t 2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -w milvusdb/milvus:v2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -w milvusdb/milvus:v2.5.0-beta -d true\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -o rollback -w milvusdb/milvus:v2.1.1\n./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -o migrate -w milvusdb/milvus:v2.5.0-beta\n"],"headingContent":"Upgrade Milvus Standalone with Helm Chart","anchorList":[{"label":"Upgrade Milvus Standalone with Helm Chart","href":"Upgrade-Milvus-Standalone-with-Helm-Chart","type":1,"isActive":false},{"label":"Prerequisites","href":"Prerequisites","type":2,"isActive":false},{"label":"Check the Milvus version","href":"Check-the-Milvus-version","type":2,"isActive":false},{"label":"Conduct a rolling upgrade","href":"Conduct-a-rolling-upgrade","type":2,"isActive":false},{"label":"Upgrade Milvus using Helm","href":"Upgrade-Milvus-using-Helm","type":2,"isActive":false},{"label":"Migrate the metadata","href":"Migrate-the-metadata","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["$ helm repo update\n$ helm search repo zilliztech/milvus --versions\n","helm repo add zilliztech https://zilliztech.github.io/milvus-helm\nhelm repo update zilliztech\n# upgrade existing helm release\nhelm upgrade my-release zilliztech/milvus --reset-then-reuse-values\n","NAME CHART VERSION APP VERSION DESCRIPTION \nzilliztech/milvus 4.1.34 2.4.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.33 2.4.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.32 2.4.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.31 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.30 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.29 2.4.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.24 2.3.11 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.23 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.22 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.21 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.20 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.18 2.3.10 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.18 2.3.9 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.17 2.3.8 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.16 2.3.7 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.15 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.14 2.3.6 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.13 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.12 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.11 2.3.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.10 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.9 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.8 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.7 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.6 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.5 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.4 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.3 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.2 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.1 2.3.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.0 2.3.0 Milvus is an open-source vector database built ...\n","sh rollingUpdate.sh -n default -i my-release -o update -t 2.5.0 -w 'milvusdb/milvus:v2.5.0'\n","helm repo update\nhelm upgrade my-release milvus/milvus --reset-then-reuse-values --version=4.1.24 # use the helm chart version here\n","NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION \nmy-release default 1 2022-11-21 15:41:25.51539 +0800 CST deployed milvus-3.2.18 2.1.4\n","NAME READY STATUS RESTARTS AGE\nmy-release-etcd-0 1/1 Running 0 84s\nmy-release-milvus-standalone-75c599fffc-6rwlj 1/1 Running 0 84s\nmy-release-minio-744dd9586f-qngzv 1/1 Running 0 84s\n","$ kubectl get pods my-release-milvus-proxy-6c548f787f-scspp -o=jsonpath='{$.spec.containers[0].image}'\n# milvusdb/milvus:v2.1.4\n","./migrate.sh -i my-release -s 2.1.4 -t 2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -w milvusdb/milvus:v2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -w milvusdb/milvus:v2.5.0 -d true\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -o rollback -w milvusdb/milvus:v2.1.1\n./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -o migrate -w milvusdb/milvus:v2.5.0\n"],"headingContent":"Upgrade Milvus Standalone with Helm Chart","anchorList":[{"label":"Upgrade Milvus Standalone with Helm Chart","href":"Upgrade-Milvus-Standalone-with-Helm-Chart","type":1,"isActive":false},{"label":"Prerequisites","href":"Prerequisites","type":2,"isActive":false},{"label":"Check the Milvus version","href":"Check-the-Milvus-version","type":2,"isActive":false},{"label":"Conduct a rolling upgrade","href":"Conduct-a-rolling-upgrade","type":2,"isActive":false},{"label":"Upgrade Milvus using Helm","href":"Upgrade-Milvus-using-Helm","type":2,"isActive":false},{"label":"Migrate the metadata","href":"Migrate-the-metadata","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_standalone-helm.md b/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_standalone-helm.md
index cc4c68243..086bb3e7f 100644
--- a/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_standalone-helm.md
+++ b/localization/v2.5.x/site/en/adminGuide/upgrade_milvus_standalone-helm.md
@@ -108,10 +108,10 @@ zilliztech/milvus 4.1.1 2.3.0 Milvus is an ope
zilliztech/milvus 4.1.0 2.3.0 Milvus is an open-source vector database built ...
You can choose the upgrade path for your Milvus as follows:
-
- [Conduct a rolling upgrade](#conduct-a-rolling-upgrade) from Milvus v2.2.3 and later releases to v2.5.0-beta.
+
- [Conduct a rolling upgrade](#conduct-a-rolling-upgrade) from Milvus v2.2.3 and later releases to v2.5.0.
Conduct a rolling upgrade
@@ -145,8 +145,8 @@ zilliztech/milvus 4.1.0 2.3.0 Milvus is an ope
o
Operation
update
False
-
Once you have ensured that all deployments in your Milvus instance are in their normal status. You can run the following command to upgrade the Milvus instance to 2.5.0-beta.
Once you have ensured that all deployments in your Milvus instance are in their normal status. You can run the following command to upgrade the Milvus instance to 2.5.0.
To upgrade Milvus from v2.1.x to 2.5.0, you need to migrate the metadata before the actual upgrade.
Conduct a rolling upgradetrue
imageUpdateMode: rollingUpgrade # Default value, can be omitted
- image: milvusdb/milvus:v2.5.0-beta
+ image: milvusdb/milvus:v2.5.0
In this above configuration file, set spec.components.enableRollingUpdate to true and set spec.components.image to the desired Milvus version.
By default, Milvus performs a rolling upgrade for coordinators in an ordered way, in which it replaces the coordinator pod images one after another. To reduce the upgrade time, consider setting spec.components.imageUpdateMode to all so that Milvus replaces all pod images at the same time.
Since Milvus 2.2.0, the metadata is incompatible with that in previous releases. The following example snippets assume an upgrade from Milvus 2.1.4 to Milvus v2.5.0-beta.
-
1. Create a .yaml file for metadata migration
Create a metadata migration file. The following is an example. You need to specify the name, sourceVersion, and targetVersion in the configuration file. The following example sets the name to my-release-upgrade, sourceVersion to v2.1.4, and targetVersion to v2.5.0-beta. This means that your Milvus instance will be upgraded from v2.1.4 to v2.5.0-beta.
+
Since Milvus 2.2.0, the metadata is incompatible with that in previous releases. The following example snippets assume an upgrade from Milvus 2.1.4 to Milvus v2.5.0.
+
1. Create a .yaml file for metadata migration
Create a metadata migration file. The following is an example. You need to specify the name, sourceVersion, and targetVersion in the configuration file. The following example sets the name to my-release-upgrade, sourceVersion to v2.1.4, and targetVersion to v2.5.0. This means that your Milvus instance will be upgraded from v2.1.4 to v2.5.0.
apiVersion: milvus.io/v1beta1
kind: MilvusUpgrade
metadata:
@@ -161,9 +161,9 @@ spec:
namespace: default
name: my-release
sourceVersion: "v2.1.4"
- targetVersion: "v2.5.0-beta"
+ targetVersion: "v2.5.0"# below are some omit default values:
- # targetImage: "milvusdb/milvus:v2.5.0-beta"
+ # targetImage: "milvusdb/milvus:v2.5.0"# toolImage: "milvusdb/meta-migration:v2.2.0"# operation: upgrade# rollbackIfFailed: true
diff --git a/localization/v2.5.x/site/en/adminGuide/users_and_roles.json b/localization/v2.5.x/site/en/adminGuide/users_and_roles.json
new file mode 100644
index 000000000..3a93858f3
--- /dev/null
+++ b/localization/v2.5.x/site/en/adminGuide/users_and_roles.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.create_user(user_name=\"user_1\", password=\"P@ssw0rd\")\n\n","import io.milvus.v2.client.ConnectConfig;\nimport io.milvus.v2.client.MilvusClientV2;\nimport io.milvus.v2.service.rbac.request.CreateUserReq;\n\nConnectConfig connectConfig = ConnectConfig.builder()\n .uri(\"http://localhost:19530\")\n .token(\"root:Milvus\")\n .build();\n \nMilvusClientV2 client = new MilvusClientV2(connectConfig);\n\nCreateUserReq createUserReq = CreateUserReq.builder()\n .userName(\"user_1\")\n .password(\"P@ssw0rd\")\n .build();\n \nclient.createUser(createUserReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nconst address = \"http://localhost:19530\";\nconst token = \"root:Milvus\";\nconst client = new MilvusClient({address, token});\n\nawait milvusClient.createUser({\n username: 'user_1',\n password: 'P@ssw0rd',\n });\n\n","export CLUSTER_ENDPOINT=\"http://localhost:19530\"\nexport TOKEN=\"root:Milvus\"\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/create\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"userName\": \"user_1\",\n \"password\": \"P@ssw0rd\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.update_password(\n user_name=\"user_1\",\n old_password=\"P@ssw0rd\",\n new_password=\"NewP@ssw0rd\"\n)\n\n","import io.milvus.v2.service.rbac.request.UpdatePasswordReq;\n\nUpdatePasswordReq updatePasswordReq = UpdatePasswordReq.builder()\n .userName(\"user_1\")\n .password(\"P@ssw0rd\")\n .newPassword(\"NewP@ssw0rd\")\n .build();\nclient.updatePassword(updatePasswordReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.updateUser({\n username: 'user_1',\n newPassword: 'P@ssw0rd',\n oldPassword: 'NewP@ssw0rd',\n});\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/update_password\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"newPassword\": \"P@ssw0rd!\",\n \"userName\": \"user_1\",\n \"password\": \"P@ssw0rd\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.list_users()\n\n","List resp = client.listUsers();\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.listUsers();\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","['root', 'user_1']\n\n","from pymilvus import MilvusClient\n\nclient.create_role(role_name=\"role_a\")\nimport io.milvus.v2.service.rbac.request.CreateRoleReq;\n\n","CreateRoleReq createRoleReq = CreateRoleReq.builder()\n .roleName(\"role_a\")\n .build();\n \n\n","client.createRole(createRoleReq);\nconst { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.createRole({\n roleName: 'role_a',\n});\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/create\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.list_roles()\n\n","List roles = client.listRoles();\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.listRoles(\n includeUserInfo: True\n);\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","['admin', 'role_a']\n\n"],"headingContent":"Create Users & Roles","anchorList":[{"label":"Create Users & Roles","href":"Create-Users--Roles","type":1,"isActive":false},{"label":"User","href":"User","type":2,"isActive":false},{"label":"Role","href":"Role","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/en/adminGuide/users_and_roles.md b/localization/v2.5.x/site/en/adminGuide/users_and_roles.md
new file mode 100644
index 000000000..8d30fcb98
--- /dev/null
+++ b/localization/v2.5.x/site/en/adminGuide/users_and_roles.md
@@ -0,0 +1,280 @@
+---
+id: users_and_roles.md
+related_key: 'users, roles'
+summary: >-
+ Milvus achieves fine-grained access control through RBAC. You can start by
+ creating users and roles, then assign privileges or privilege groups to roles,
+ and finally manage access control by granting roles to users. This method
+ ensures the efficiency and security of access management. This page introduces
+ how to create users and roles in Milvus.
+title: Create Users & Roles
+---
+
Create Users & Roles
+
+
+
+
Milvus achieves fine-grained access control through RBAC. You can start by creating users and roles, then assign privileges or privilege groups to roles, and finally manage access control by granting roles to users. This method ensures the efficiency and security of access management. This page introduces how to create users and roles in Milvus.
+
User
+
+
+
+
After initializing a Milvus instance, a root user is automatically generated for authentication when connecting to Milvus for the first time. The username of the root user is root and the password is Milvus. The default role of the root user is admin, which has access to all resources. To ensure data security, please keep your root user’s credentials safe to prevent unauthorized access.
+
For daily operations, we recommend creating users instead of using the root user.
+
Create a user
The following example shows how to create a user with the username user_1 and the password P@ssw0rd. The username and password for the user must follow these rules:
+
+
Username: Must start with a letter and can only include uppercase or lowercase letters, numbers, and underscores.
+
Password: Must be 8-64 characters long and must include three of the following: uppercase letters, lowercase letters, numbers, and special characters.
Below is an example output. root is the default user automatically generated in Milvus. user_1 is the new user that is just created.
+
['root', 'user_1']
+
+
+
Role
+
+
+
+
Milvus provides a built-in role called admin, which is an administrator role that can access resources under all instances and has privileges for all operations. For more fine-grained access management and enhanced data security, it is recommended that you create custom roles based on your needs.
+
Create a role
The following example demonstrates how to create a role named role_a.
+
The role name must follow the following rule:
+
+
Must start with a letter and can only include uppercase or lowercase letters, numbers, and underscores."
Find out what’s new in Milvus! This page summarizes new features, improvements, known issues, and bug fixes in each release. You can find the release notes for each released version after v2.5.0 in this section. We suggest that you regularly visit this page to learn about updates.
-
v2.5.0-beta
+
v2.5.0
-
Release date: November 26, 2024
+
Release date: December 23, 2024
Milvus version
Python SDK version
Node.js SDK version
Java SDK version
-
2.5.0-beta
2.5.0
2.5.0
2.5.0
+
2.5.0
2.5.1
2.5.2
2.5.2
-
Milvus 2.5.0-beta brings significant advancements to enhance usability, scalability, and performance for users dealing with vector search and large-scale data management. With this release, Milvus integrates powerful new features like term-based search, clustering compaction for optimized queries, and versatile support for sparse and dense vector search methods. Enhancements in cluster management, indexing, and data handling introduce new levels of flexibility and ease of use, making Milvus an even more robust and user-friendly vector database.
+
Milvus 2.5.0 brings significant advancements to enhance usability, scalability, and performance for users dealing with vector search and large-scale data management. With this release, Milvus integrates powerful new features like term-based search, clustering compaction for optimized queries, and versatile support for sparse and dense vector search methods. Enhancements in cluster management, indexing, and data handling introduce new levels of flexibility and ease of use, making Milvus an even more robust and user-friendly vector database.
Key Features
Full Text Search
Milvus 2.5 supports full text search implemented with Sparse-BM25! This feature is an important complement to Milvus’s strong semantic search capabilities, especially in scenarios involving rare words or technical terms. In previous versions, Milvus supported sparse vectors to assist with keyword search scenarios. These sparse vectors were generated outside of Milvus by neural models like SPLADEv2/BGE-M3 or statistical models such as the BM25 algorithm.
Powered by Tantivy, Milvus 2.5 has built-in analyzers and sparse vector extraction, extending the API from only receiving vectors as input to directly accepting text. BM25 statistical information is updated in real time as data is inserted, enhancing usability and accuracy. Additionally, sparse vectors based on approximate nearest neighbor (ANN) algorithms offer more powerful performance than standard keyword search systems.
Improved expression parsing by implementing caching for repeated expressions, upgrading ANTLR, and optimizing the performance of NOT IN clauses.
Improved DDL Concurrency Performance
Optimized the concurrency performance of Data Definition Language (DDL) operations.
RESTful API Feature Alignment
Aligned the functionalities of the RESTful API with other SDKs for consistency.
+
Security & Configuration Updates
Supported TLS to secure inter-node communication in more complex or enterprise environments. For details, refer to Security Configuration.
+
Compaction Performance Enhancements
Removed maximum segment limitations in mixed compaction and now prioritizes smaller segments first, improving efficiency and speeding up queries on large or fragmented datasets.
+
Score-Based Channel Balancing
Introduced a policy that dynamically balances loads across channels, enhancing resource utilization and overall stability in large-scale deployments.
diff --git a/localization/v2.5.x/site/en/userGuide/schema/string.md b/localization/v2.5.x/site/en/userGuide/schema/string.md
index 1e81e2311..94049a3f1 100644
--- a/localization/v2.5.x/site/en/userGuide/schema/string.md
+++ b/localization/v2.5.x/site/en/userGuide/schema/string.md
@@ -4,7 +4,7 @@ title: String Field
summary: >-
In Milvus, VARCHAR is the data type used for storing string-type data,
suitable for storing variable-length strings. It can store strings with both
- single- and multi-byte characters, with a maximum length of up to 60,535
+ single- and multi-byte characters, with a maximum length of up to 65,535
characters. When defining a VARCHAR field, you must also specify the maximum
length parameter max_length. The VARCHAR string type offers an efficient and
flexible way to store and manage text data, making it ideal for applications
@@ -25,7 +25,7 @@ summary: >-
d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"
>
-
In Milvus, VARCHAR is the data type used for storing string-type data, suitable for storing variable-length strings. It can store strings with both single- and multi-byte characters, with a maximum length of up to 60,535 characters. When defining a VARCHAR field, you must also specify the maximum length parameter max_length. The VARCHAR string type offers an efficient and flexible way to store and manage text data, making it ideal for applications that handle strings of varying lengths.
+
In Milvus, VARCHAR is the data type used for storing string-type data, suitable for storing variable-length strings. It can store strings with both single- and multi-byte characters, with a maximum length of up to 65,535 characters. When defining a VARCHAR field, you must also specify the maximum length parameter max_length. The VARCHAR string type offers an efficient and flexible way to store and manage text data, making it ideal for applications that handle strings of varying lengths.
Add VARCHAR field-
+ Milvus provides powerful operators to query array fields, allowing you to
+ filter and retrieve entities based on the contents of arrays.
+title: Array Operators
+---
+
ARRAY Operators
+
+
+
+
Milvus provides powerful operators to query array fields, allowing you to filter and retrieve entities based on the contents of arrays.
+
+
All elements within an array must be the same type, and nested structures within arrays are treated as plain strings. Therefore, when working with ARRAY fields, it is advisable to avoid excessively deep nesting and ensure that your data structures are as flat as possible for optimal performance.
+
+
Available ARRAY Operators
+
+
+
+
The ARRAY operators allow for fine-grained querying of array fields in Milvus. These operators are:
The ARRAY_CONTAINS operator checks if a specific element exists in an array field. It’s useful when you want to find entities where a given element is present in the array.
+
Example
+
Suppose you have an array field history_temperatures, which contains the recorded lowest temperatures for different years. To find all entities where the array contains the value 23, you can use the following filter expression:
This will return all entities where the history_temperatures array contains the value 23.
+
ARRAY_CONTAINS_ALL
+
+
+
+
The ARRAY_CONTAINS_ALL operator ensures that all elements of the specified list are present in the array field. This operator is useful when you want to match entities that contain multiple values in the array.
+
Example
+
If you want to find all entities where the history_temperatures array contains both 23 and 24, you can use:
This will return all entities where the history_temperatures array contains both of the specified values.
+
ARRAY_CONTAINS_ANY
+
+
+
+
The ARRAY_CONTAINS_ANY operator checks if any of the elements from the specified list are present in the array field. This is useful when you want to match entities that contain at least one of the specified values in the array.
+
Example
+
To find all entities where the history_temperatures array contains either 23 or 24, you can use:
This will return all entities where the history_temperatures array contains at least one of the values 23 or 24.
+
ARRAY_LENGTH
+
+
+
+
The ARRAY_LENGTH operator allows you to filter entities based on the number of elements in an array field. This is useful when you need to find entities with arrays of a certain length.
+
Example
+
If you want to find all entities where the history_temperatures array has fewer than 10 elements, you can use:
This will return all entities where the history_temperatures array has fewer than 10 elements.
diff --git a/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/basic-operators.json b/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/basic-operators.json
new file mode 100644
index 000000000..578f596fc
--- /dev/null
+++ b/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/basic-operators.json
@@ -0,0 +1 @@
+{"codeList":["filter = 'status == \"active\"'\n\n","filter = 'status != \"inactive\"'\n\n","filter = 'age > 30'\n\n","filter = 'price < 100'\n\n","filter = 'rating >= 4'\n\n","filter = 'discount <= 10'\n\n","filter = 'color in [\"red\", \"green\", \"blue\"]'\n\n","filter = 'name LIKE \"Prod%\"'\n\n","filter = 'name LIKE \"%XYZ\"'\n\n","filter = 'name LIKE \"%Pro%\"'\n\n","filter = 'total == base_price + tax'\n\n","filter = 'quantity - quantity_sold > 50'\n\n","filter = 'price * quantity > 1000'\n\n","filter = 'total_price / quantity < 50'\n\n","filter = 'id % 2 == 0'\n\n","filter = 'price ** 2 > 1000'\n\n","filter = 'price > 100 AND stock > 50'\n\n","filter = 'color == \"red\" OR color == \"blue\"'\n\n","filter = 'NOT color == \"green\"'\n\n","filter = 'product[\"price\"] > 1000'\n\n","filter = 'history_temperatures[0] > 30'\n\n"],"headingContent":"Basic Operators","anchorList":[{"label":"Basic Operators","href":"Basic-Operators","type":1,"isActive":false},{"label":"Comparison operators","href":"Comparison-operators","type":2,"isActive":false},{"label":"Range operators","href":"Range-operators","type":2,"isActive":false},{"label":"Arithmetic Operators","href":"Arithmetic-Operators","type":2,"isActive":false},{"label":"Logical Operators","href":"Logical-Operators","type":2,"isActive":false},{"label":"Tips on Using Basic Operators with JSON and ARRAY Fields","href":"Tips-on-Using-Basic-Operators-with-JSON-and-ARRAY-Fields","type":2,"isActive":false},{"label":"Conclusion","href":"Conclusion","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/basic-operators.md b/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/basic-operators.md
new file mode 100644
index 000000000..9d1cf639e
--- /dev/null
+++ b/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/basic-operators.md
@@ -0,0 +1,236 @@
+---
+id: basic-operators.md
+summary: >-
+ Milvus provides a rich set of basic operators to help you filter and query
+ data efficiently. These operators allow you to refine your search conditions
+ based on scalar fields, numeric calculations, logical conditions, and more.
+ Understanding how to use these operators is crucial for building precise
+ queries and maximizing the efficiency of your searches.
+title: Basic Operators
+---
+
Basic Operators
+
+
+
+
Milvus provides a rich set of basic operators to help you filter and query data efficiently. These operators allow you to refine your search conditions based on scalar fields, numeric calculations, logical conditions, and more. Understanding how to use these operators is crucial for building precise queries and maximizing the efficiency of your searches.
+
Comparison operators
+
+
+
+
Comparison operators are used to filter data based on equality, inequality, or size. They are applicable to numeric, text, and date fields.
+
Supported Comparison Operators:
+
== (Equal to)
+
!= (Not equal to)
+
> (Greater than)
+
< (Less than)
+
>= (Greater than or equal to)
+
<= (Less than or equal to)
+
+
Example 1: Filtering with Equal To (==)
Assume you have a field named status and you want to find all entities where status is "active". You can use the equality operator ==:
+
filter = 'status == "active"'
+
+
+
Example 2: Filtering with Not Equal To (!=)
To find entities where status is not "inactive":
+
filter = 'status != "inactive"'
+
+
+
Example 3: Filtering with Greater Than (>)
If you want to find all entities with an age greater than 30:
+
filter = 'age > 30'
+
+
+
Example 4: Filtering with Less Than (<)
To find entities where price is less than 100:
+
filter = 'price < 100'
+
+
+
Example 5: Filtering with Greater Than or Equal To (>=)
If you want to find all entities with rating greater than or equal to 4:
+
filter = 'rating >= 4'
+
+
+
Example 6: Filtering with Less Than or Equal To (<=)
To find entities with discount less than or equal to 10%:
+
filter = 'discount <= 10'
+
+
+
Range operators
+
+
+
+
Range operators help filter data based on specific sets or ranges of values.
+
Supported Range Operators:
+
IN: Used to match values within a specific set or range.
+
LIKE: Used to match a pattern (mostly for text fields).
+
+
Example 1: Using IN to Match Multiple Values
If you want to find all entities where the color is either "red", "green", or "blue":
+
filter = 'color in ["red", "green", "blue"]'
+
+
+
This is useful when you want to check for membership in a list of values.
+
Example 2: Using LIKE for Pattern Matching
The LIKE operator is used for pattern matching in string fields. It can match substrings in different positions within the text: as a prefix, infix, or suffix. The LIKE operator uses the % symbol as a wildcard, which can match any number of characters (including zero).
+
Prefix Match (Starts With)
To perform a prefix match, where the string starts with a given pattern, you can place the pattern at the beginning and use % to match any characters following it. For example, to find all products whose name starts with "Prod":
+
filter = 'name LIKE "Prod%"'
+
+
+
This will match any product whose name starts with "Prod", such as "Product A", "Product B", etc.
+
Suffix Match (Ends With)
For a suffix match, where the string ends with a given pattern, place the % symbol at the beginning of the pattern. For example, to find all products whose name ends with "XYZ":
+
filter = 'name LIKE "%XYZ"'
+
+
+
This will match any product whose name ends with "XYZ", such as "ProductXYZ", "SampleXYZ", etc.
+
Infix Match (Contains)
To perform an infix match, where the pattern can appear anywhere in the string, you can place the % symbol at both the beginning and the end of the pattern. For example, to find all products whose name contains the word "Pro":
+
filter = 'name LIKE "%Pro%"'
+
+
+
This will match any product whose name contains the substring "Pro", such as "Product", "ProLine", or "SuperPro".
+
Arithmetic Operators
+
+
+
+
Arithmetic operators allow you to create conditions based on calculations involving numeric fields.
+
Supported Arithmetic Operators:
+
+ (Addition)
+
- (Subtraction)
+
* (Multiplication)
+
/ (Division)
+
% (Modulus)
+
** (Exponentiation)
+
+
Example 1: Using Addition (+)
To find entities where the total price is the sum of base_price and tax:
+
filter = 'total == base_price + tax'
+
+
+
Example 2: Using Subtraction (-)
To find entities where quantity is greater than 50 and quantity_sold is less than 30:
+
filter = 'quantity - quantity_sold > 50'
+
+
+
Example 3: Using Multiplication (*)
To find entities where price is greater than 100 and quantity is greater than 10, multiplied:
+
filter = 'price * quantity > 1000'
+
+
+
Example 4: Using Division (/)
To find products where total_price divided by quantity is less than 50:
+
filter = 'total_price / quantity < 50'
+
+
+
Example 5: Using Modulus (%)
To find entities where the id is an even number (i.e., divisible by 2):
+
filter = 'id % 2 == 0'
+
+
+
Example 6: Using Exponentiation (**)
To find entities where price raised to the power of 2 is greater than 1000:
+
filter = 'price ** 2 > 1000'
+
+
+
Logical Operators
+
+
+
+
Logical operators are used to combine multiple conditions into a more complex filter expression. These include AND, OR, and NOT.
+
Supported Logical Operators:
+
AND: Combines multiple conditions that must all be true.
+
OR: Combines conditions where at least one must be true.
+
NOT: Negates a condition.
+
+
Example 1: Using AND to Combine Conditions
To find all products where price is greater than 100 and stock is greater than 50:
+
filter = 'price > 100 AND stock > 50'
+
+
+
Example 2: Using OR to Combine Conditions
To find all products where color is either “red” or "blue":
+
filter = 'color == "red" OR color == "blue"'
+
+
+
Example 3: Using NOT to Exclude a Condition
To find all products where color is not "green":
+
filter = 'NOT color == "green"'
+
+
+
Tips on Using Basic Operators with JSON and ARRAY Fields
+
+
+
+
While the basic operators in Milvus are versatile and can be applied to scalar fields, they can also be effectively used with the keys and indexes in the JSON and ARRAY fields.
+
For example, if you have a product field that contains multiple keys like price, model, and tags, always reference the key directly:
+
filter = 'product["price"] > 1000'
+
+
+
To find records where the first temperature in an array of recorded temperatures exceeds a certain value, use:
+
filter = 'history_temperatures[0] > 30'
+
+
+
Conclusion
+
+
+
+
Milvus offers a range of basic operators that give you flexibility in filtering and querying your data. By combining comparison, range, arithmetic, and logical operators, you can create powerful filter expressions to narrow down your search results and retrieve the data you need efficiently.
diff --git a/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/boolean.json b/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/boolean.json
new file mode 100644
index 000000000..bb64bd955
--- /dev/null
+++ b/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/boolean.json
@@ -0,0 +1 @@
+{"codeList":["filter='color in [\"red\", \"green\", \"blue\"]'\n\n","filter='product[\"model\"] == \"JSN-087\" AND product[\"price\"] < 1850'\n\n","filter='history_temperatures[10] > 23'\n\n","filter = \"age > 25 AND city IN ['北京', '上海']\"\n\n","filter = \"age > {age} AND city in {city}\",\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter='json_contains(tags, \"sale\")'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\", \"discount\"]}\nfilter='json_contains_all(tags, [\"electronics\", \"sale\", \"new\"])'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter='json_contains_any(tags, [\"electronics\", \"new\", \"clearance\"])'\n\n","filter=\"ARRAY_CONTAINS(history_temperatures, 23)\"\n\n","filter=\"ARRAY_CONTAINS_ALL(history_temperatures, [23, 24])\"\n\n","filter=\"ARRAY_CONTAINS_ANY(history_temperatures, [23, 24])\"\n\n","filter=\"ARRAY_LENGTH(history_temperatures) < 10\"\n\n"],"headingContent":"Filtering Explained","anchorList":[{"label":"Filtering Explained","href":"Filtering-Explained","type":1,"isActive":false},{"label":"Basic operators","href":"Basic-operators","type":2,"isActive":false},{"label":"Filter expression templates","href":"Filter-expression-templates","type":2,"isActive":false},{"label":"Data type-specific operators","href":"Data-type-specific-operators","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/boolean.md b/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/boolean.md
new file mode 100644
index 000000000..c71a8e81a
--- /dev/null
+++ b/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/boolean.md
@@ -0,0 +1,146 @@
+---
+id: boolean.md
+summary: >-
+ Milvus provides powerful filtering capabilities that enable precise querying
+ of your data. Filter expressions allow you to target specific scalar fields
+ and refine search results with different conditions. This guide explains how
+ to use filter expressions in Milvus, with examples focused on query
+ operations. You can also apply these filters in search and delete requests.
+title: Filtering Explained
+---
+
Filtering Explained
+
+
+
+
Milvus provides powerful filtering capabilities that enable precise querying of your data. Filter expressions allow you to target specific scalar fields and refine search results with different conditions. This guide explains how to use filter expressions in Milvus, with examples focused on query operations. You can also apply these filters in search and delete requests.
+
Basic operators
+
+
+
+
Milvus supports several basic operators for filtering data:
+
+
Comparison Operators: ==, !=, >, <, >=, and <= allow filtering based on numeric, text, or date fields.
+
Range Filters: IN and LIKE help match specific value ranges or sets.
+
Arithmetic Operators: +, -, *, /, %, and ** are used for calculations involving numeric fields.
+
Logical Operators: AND, OR, and NOT combine multiple conditions into complex expressions.
+
+
Example: Filtering by Color
To find entities with primary colors (red, green, or blue) in a scalar field color, use the following filter expression:
+
filter='color in ["red", "green", "blue"]'
+
+
+
Example: Filtering JSON Fields
Milvus allows referencing keys in JSON fields. For instance, if you have a JSON field product with keys price and model, and want to find products with a specific model and price lower than 1,850, use this filter expression:
+
filter='product["model"] == "JSN-087" AND product["price"] < 1850'
+
+
+
Example: Filtering Array Fields
If you have an array field history_temperatures containing temperature records, and want to find observatories where the 10th recorded temperature exceeds 23°C, use this expression:
+
filter='history_temperatures[10] > 23'
+
+
+
For more information on these basic operators, refer to Basic Operators.
+
Filter expression templates
+
+
+
+
When filtering using CJK characters, processing can be more complex due to their larger character sets and encoding differences. This can result in slower performance, especially with the IN operator.
+
Milvus introduces filter expression templating to optimize performance when working with CJK characters. By separating dynamic values from the filter expression, the query engine handles parameter insertion more efficiently.
+
Example
To find individuals over the age of 25 living in either “北京” (Beijing) or “上海” (Shanghai), use the following template expression:
+
filter = "age > 25 AND city IN ['北京', '上海']"
+
+
+
To improve performance, use this variation with parameters:
+
filter = "age > {age} AND city in {city}",
+filter_params = {"age": 25, "city": ["北京", "上海"]}
+
+
+
This approach reduces parsing overhead and improves query speed. For more information, see Filter Templating.
+
Data type-specific operators
+
+
+
+
Milvus provides advanced filtering operators for specific data types, such as JSON, ARRAY, and VARCHAR fields.
+
JSON field-specific operators
Milvus offers advanced operators for querying JSON fields, enabling precise filtering within complex JSON structures:
+
**JSON_CONTAINS(identifier, jsonExpr)**: Checks if a JSON expression exists in the field.
For more details on JSON operators, refer to JSON Operators.
+
ARRAY field-specific operators
Milvus provides advanced filtering operators for array fields, such as ARRAY_CONTAINS, ARRAY_CONTAINS_ALL, ARRAY_CONTAINS_ANY, and ARRAY_LENGTH, which allow fine-grained control over array data:
+
**ARRAY_CONTAINS**: Filters entities containing a specific element.
The **Text_Match** operator allows precise document retrieval based on specific query terms. It is particularly useful for filtered searches that combine scalar filters with vector similarity searches. Unlike semantic searches, Text Match focuses on exact term occurrences.
+
Milvus uses Tantivy to support inverted indexing and term-based text search. The process involves:
+
+
Analyzer: Tokenizes and processes input text.
+
Indexing: Creates an inverted index mapping unique tokens to documents.
diff --git a/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/filtering-templating.json b/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/filtering-templating.json
new file mode 100644
index 000000000..9e74e4c1a
--- /dev/null
+++ b/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/filtering-templating.json
@@ -0,0 +1 @@
+{"codeList":["filter = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\n\n","expr = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\nres = client.search(\n \"hello_milvus\",\n vectors[:nq],\n filter=expr,\n limit=10,\n output_fields=[\"age\", \"city\"],\n search_params={\"metric_type\": \"COSINE\", \"params\": {\"search_list\": 100}},\n filter_params=filter_params,\n)\n\n","expr = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\nres = client.query(\n \"hello_milvus\",\n filter=expr,\n output_fields=[\"age\", \"city\"],\n filter_params=filter_params\n)\n\n","expr = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\nres = client.delete(\n \"hello_milvus\",\n filter=expr,\n filter_params=filter_params\n)\n\n"],"headingContent":"Filter Templating","anchorList":[{"label":"Filter Templating","href":"Filter-Templating","type":1,"isActive":false},{"label":"Overview","href":"Overview","type":2,"isActive":false},{"label":"Search Operations","href":"Search-Operations","type":2,"isActive":false},{"label":"Query Operations","href":"Query-Operations","type":2,"isActive":false},{"label":"Delete Operations","href":"Delete-Operations","type":2,"isActive":false},{"label":"Conclusion","href":"Conclusion","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/filtering-templating.md b/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/filtering-templating.md
new file mode 100644
index 000000000..f92cc3f1a
--- /dev/null
+++ b/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/filtering-templating.md
@@ -0,0 +1,154 @@
+---
+id: filtering-templating.md
+summary: >-
+ In Milvus, complex filter expressions with numerous elements, especially those
+ involving non-ASCII characters like CJK characters, can significantly affect
+ query performance. To address this, Milvus introduces a filter expression
+ templating mechanism designed to improve efficiency by reducing the time spent
+ parsing complex expressions. This page explains using filter expression
+ templating in search, query, and delete operations.
+title: Filtering Templating
+---
+
Filter Templating
+
+
+
+
In Milvus, complex filter expressions with numerous elements, especially those involving non-ASCII characters like CJK characters, can significantly affect query performance. To address this, Milvus introduces a filter expression templating mechanism designed to improve efficiency by reducing the time spent parsing complex expressions. This page explains using filter expression templating in search, query, and delete operations.
+
Overview
+
+
+
+
Filter expression templating allows you to create filter expressions with placeholders, which can be dynamically substituted with values during query execution. Using templating, you avoid embedding large arrays or complex expressions directly into the filter, reducing parsing time and improving query performance.
+
Let’s say you have a filter expression involving two fields, age and city, and you want to find all people whose age is greater than 25 and who live in either “北京” (Beijing) or “上海” (Shanghai). Instead of directly embedding the values in the filter expression, you can use a template:
+
filter = "age > {age} AND city IN {city}"
+filter_params = {"age": 25, "city": ["北京", "上海"]}
+
+
+
Here, {age} and {city} are placeholders that will be replaced with the actual values in filter_params when the query is executed.
+
Using filter expression templating in Milvus has several key advantages:
+
+
Reduced Parsing Time: By replacing large or complex filter expressions with placeholders, the system spends less time parsing and processing the filter.
+
Improved Query Performance: With reduced parsing overhead, query performance improves, leading to higher QPS and faster response times.
+
Scalability: As your datasets grow and filter expressions become more complex, templating ensures that performance remains efficient and scalable.
+
+
Search Operations
+
+
+
+
For search operations in Milvus, the filter expression is used to define the filtering condition, and the filter_params parameter is used to specify the values for the placeholders. The filter_params dictionary contains the dynamic values that Milvus will use to substitute into the filter expression.
In this example, Milvus will dynamically replace {age} with 25 and {city} with ["北京", "上海"] when executing the search.
+
Query Operations
+
+
+
+
The same templating mechanism can be applied to query operations in Milvus. In the query function, you define the filter expression and use the filter_params to specify the values to substitute.
By using filter_params, Milvus efficiently handles the dynamic insertion of values, improving the speed of query execution.
+
Delete Operations
+
+
+
+
You can also use filter expression templating in delete operations. Similar to search and query, the filter expression defines the conditions, and the filter_params provides the dynamic values for the placeholders.
+
expr = "age > {age} AND city IN {city}"
+filter_params = {"age": 25, "city": ["北京", "上海"]}
+res = client.delete(
+ "hello_milvus",
+ filter=expr,
+ filter_params=filter_params
+)
+
+
+
This approach improves the performance of delete operations, especially when dealing with complex filter conditions.
+
Conclusion
+
+
+
+
Filter expression templating is an essential tool for optimizing query performance in Milvus. By using placeholders and the filter_params dictionary, you can significantly reduce the time spent parsing complex filter expressions. This leads to faster query execution and better overall performance.
diff --git a/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/json-operators.json b/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/json-operators.json
new file mode 100644
index 000000000..9b5375e85
--- /dev/null
+++ b/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/json-operators.json
@@ -0,0 +1 @@
+{"codeList":["# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter = 'json_contains(tags, \"sale\")'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\", \"discount\"]}\nfilter = 'json_contains_all(tags, [\"electronics\", \"sale\", \"new\"])'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter = 'json_contains_any(tags, [\"electronics\", \"new\", \"clearance\"])'\n\n"],"headingContent":"JSON Operators","anchorList":[{"label":"JSON Operators","href":"JSON-Operators","type":1,"isActive":false},{"label":"Available JSON Operators","href":"Available-JSON-Operators","type":2,"isActive":false},{"label":"JSON_CONTAINS","href":"JSONCONTAINS","type":2,"isActive":false},{"label":"JSON_CONTAINS_ALL","href":"JSONCONTAINSALL","type":2,"isActive":false},{"label":"JSON_COTAINS_ANY","href":"JSONCOTAINSANY","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/json-operators.md b/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/json-operators.md
new file mode 100644
index 000000000..210172f5b
--- /dev/null
+++ b/localization/v2.5.x/site/en/userGuide/search-query-get/boolean/json-operators.md
@@ -0,0 +1,121 @@
+---
+id: json-operators.md
+summary: >-
+ Milvus supports advanced operators for querying and filtering JSON fields,
+ making them perfect for managing complex, structured data. These operators
+ enable highly effective querying of JSON documents, allowing you to retrieve
+ entities based on specific elements, values, or conditions within the JSON
+ fields. This section will guide you through using JSON-specific operators in
+ Milvus, providing practical examples to illustrate their functionality.
+title: JSON Operators
+---
+
JSON Operators
+
+
+
+
Milvus supports advanced operators for querying and filtering JSON fields, making them perfect for managing complex, structured data. These operators enable highly effective querying of JSON documents, allowing you to retrieve entities based on specific elements, values, or conditions within the JSON fields. This section will guide you through using JSON-specific operators in Milvus, providing practical examples to illustrate their functionality.
+
+
JSON fields cannot deal with complex, nested structures and treats all nested structures as plain strings. Therefore, when working with JSON fields, it is advisable to avoid excessively deep nesting and ensure that your data structures are as flat as possible for optimal performance.
+
+
Available JSON Operators
+
+
+
+
Milvus provides several powerful JSON operators that help filter and query JSON data, and these operators are:
Let’s explore these operators with examples to see how they can be applied in real-world scenarios.
+
JSON_CONTAINS
+
+
+
+
The json_contains operator checks if a specific element or subarray exists within a JSON field. It’s useful when you want to ensure that a JSON array or object contains a particular value.
+
Example
+
Imagine you have a collection of products, each with a tags field that contains a JSON array of strings, such as ["electronics", "sale", "new"]. You want to filter products that have the tag "sale".
In this example, Milvus will return all products where the tags field contains the element "sale".
+
JSON_CONTAINS_ALL
+
+
+
+
The json_contains_all operator ensures that all elements of a specified JSON expression are present in the target field. It is particularly useful when you need to match multiple values within a JSON array.
+
Example
+
Continuing with the product tags scenario, if you want to find all products that have the tags "electronics", "sale", and "new", you can use the json_contains_all operator.
This query will return all products where the tags array contains all three specified elements: "electronics", "sale", and "new".
+
JSON_COTAINS_ANY
+
+
+
+
The json_contains_any operator filters entities where at least one member of the JSON expression exists within the field. This is useful when you want to match entities based on any one of several possible values.
+
Example
+
Let’s say you want to filter products that have at least one of the tags "electronics", "sale", or "new". You can use the json_contains_any operator to achieve this.
In this case, Milvus will return all products that have at least one of the tags in the list ["electronics", "new", "clearance"]. Even if a product only has one of these tags, it will be included in the result.
diff --git a/localization/v2.5.x/site/en/userGuide/tools/milvus-webui.json b/localization/v2.5.x/site/en/userGuide/tools/milvus-webui.json
new file mode 100644
index 000000000..0c86013f2
--- /dev/null
+++ b/localization/v2.5.x/site/en/userGuide/tools/milvus-webui.json
@@ -0,0 +1 @@
+{"codeList":[],"headingContent":"Milvus WebUI","anchorList":[{"label":"Milvus WebUI","href":"Milvus-WebUI","type":1,"isActive":false},{"label":"Overview","href":"Overview","type":2,"isActive":false},{"label":"Home","href":"Home","type":2,"isActive":false},{"label":"Collections","href":"Collections","type":2,"isActive":false},{"label":"Query","href":"Query","type":2,"isActive":false},{"label":"Data","href":"Data","type":2,"isActive":false},{"label":"Tasks","href":"Tasks","type":2,"isActive":false},{"label":"Slow requests","href":"Slow-requests","type":2,"isActive":false},{"label":"Configurations","href":"Configurations","type":2,"isActive":false},{"label":"Tools","href":"Tools","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/en/userGuide/tools/milvus-webui.md b/localization/v2.5.x/site/en/userGuide/tools/milvus-webui.md
new file mode 100644
index 000000000..9c19dab6b
--- /dev/null
+++ b/localization/v2.5.x/site/en/userGuide/tools/milvus-webui.md
@@ -0,0 +1,295 @@
+---
+id: milvus-webui.md
+summary: >-
+ Milvus Web UI is a graphical management tool for Milvus. It enhances system
+ observability with a simple and intuitive interface. You can
+title: Milvus WebUI
+---
+
Milvus WebUI
+
+
+
+
Milvus Web UI is a graphical management tool for Milvus. It enhances system observability with a simple and intuitive interface. You can use Milvus Web UI to observe the statistics and metrics of the components and dependencies of Milvus, check database and collection details, and list detailed Milvus configurations.
+
Overview
+
+
+
+
Milvus Web UI differs from Birdwatcher and Attu in that it is a built-in tool to provide overall system observability with a simple and intuitive interface.
+
The following table compares the features of Milvus Web UI and Birdwatcher/Attu:
You can view the list of tasks running in Milvus, including Querycoord scheduler tasks, compaction tasks, index-building tasks, import tasks, and data synchronization tasks.
You can access the two built-in tools, pprof and Milvus data visualzation tool, from the Web UI.
+
+
Home
+
+
+
+
On the Home page, you can find the following information:
+
+
+
+ Milvus Web UI Home
+
+
+
+
System information: View system information, including information about the deployment mode, image used in the deployment, and related information.
+
Component Information: View the status and metrics of the components in Milvus, including the status and metrics of the query nodes, data nodes, index nodes, coordinators, and proxies.
+
Connected clients: View the connected clients and their information, including the SDK type and version, user name, and their access history.
+
System dependencies: View the status and metrics of the dependencies of Milvus, including the status and metrics of the meta store, message queue, and object storage.
+
+
Collections
+
+
+
+
On the Collections page, you can view the list of databases and collections currently in Milvus and check their details.
+
+
+
+ Milvus Web UI Collections
+
+
+
+
Database: View the list of databases currently in Milvus and their details.
+
Collection: View the list of collections in each database and their details.
+
+
Query
+
+
+
+
+
+
+ Milvus Web UI Query Page
+
+
+
+
Segments: View the list of segments and their details, including the segment ID, corresponding collection, state, size, etc.
+
In the From column, you can find the source of the segment. Possible sources indicators are as follows:
+
+
QN: Query node
+
CT: Current target in QueryCoord
+
NT: Next target in QueryCoord
+
DIST: Distribution in QueryCoord
+
+
Channels: View the list of channels and their details, including the channel name, corresponding collections, etc.
+
In the From column, you can find the source of the segment. Possible sources indicators are as follows:
+
+
QN: Query node
+
CT: Current target in QueryCoord
+
NT: Next target in QueryCoord
+
DIST: Distribution in QueryCoord
+
+
Replicas: View the list of replicas and their details, including the replica ID, corresponding collection, etc.
+
Resource groups: View the list of resource groups and their details, including the resource group name, number of query nodes in the group, and its configurations, etc.
+
+
Data
+
+
+
+
+
+
+ Milvus Web UI Data Page
+
+
+
+
Segments: View the list of segments from the data nodes/coordinators and their details, including the segment ID, corresponding collection, state, size, etc.
+
Channels: View the list of channels from the data nodes/coordinators and their details, including the channel name, corresponding collections, etc.
+
+
Tasks
+
+
+
+
+
+
+ Milvus Web UI Tasks Page
+
+
+
+
Tasks: View the list of tasks running in Milvus, including the task type, state, and actions.
+
+
QueryCoord Tasks: View all QueryCoord scheduler tasks, including balancer, index/segment/channel/leader checkers in the last 15 minutes.
+
Compaction Tasks: View all compaction tasks from the data coordinators in the last 15 minutes.
+
Index-Building Tasks: View all index-building tasks from the data coordinators in the last 30 minutes.
+
Import Tasks: View all import tasks from the data coordinators in the last 30 minutes.
+
Data Synchronization Tasks: View all data synchronization tasks from the data nodes in the last 15 minutes.
+
+
+
Slow requests
+
+
+
+
+
+
+ Milvus Web UI Slow Requests Page
+
+
+
+
Slow requests: A slow request is a search or a query that has a latency longer than the value of proxy.slowQuerySpanInSeconds specified in the configuration. The list of slow requests displays all slow requests in the last 15 minutes.
+
+
Configurations
+
+
+
+
+
+
+ Milvus Web UI Configurations Page
+
+
+
+
Configurations: View the list of Milvus runtime configurations and their values.
+
+
Tools
+
+
+
+
+
pprof: Access the pprof tool for profiling and debugging Milvus.
+
Milvus data visualization tool: Access the Milvus data visualization tool for visualizing the data in Milvus.
+
diff --git a/localization/v2.5.x/site/es/adminGuide/config_jaeger_tracing.md b/localization/v2.5.x/site/es/adminGuide/config_jaeger_tracing.md
index 65d78e4ec..7991d9e13 100644
--- a/localization/v2.5.x/site/es/adminGuide/config_jaeger_tracing.md
+++ b/localization/v2.5.x/site/es/adminGuide/config_jaeger_tracing.md
@@ -67,7 +67,7 @@ $ kubectl create -f https://github.com/jaegertracing/jaeger-operator/releases/do
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
jaeger-operator111148s
-
2. Despliegue de Jager
La forma más sencilla de crear una instancia de Jaeger es crear un archivo YAML como el siguiente ejemplo. Esto instalará la estrategia AllInOne predeterminada, que despliega la imagen todo en uno (que combina jaeger-agent, jaeger-collector, jaeger-query y Jaeger UI) en un único pod, utilizando almacenamiento en memoria de forma predeterminada.
+
2. Despliegue de Jaeger
La forma más sencilla de crear una instancia de Jaeger es crear un archivo YAML como el siguiente ejemplo. Esto instalará la estrategia AllInOne predeterminada, que despliega la imagen todo en uno (que combina jaeger-agent, jaeger-collector, jaeger-query y Jaeger UI) en un único pod, utilizando almacenamiento en memoria de forma predeterminada.
Si desea almacenar trazas durante mucho tiempo, consulte production-strategy.
apiVersion: jaegertracing.io/v1
kind: Jaeger
@@ -136,7 +136,7 @@ $ helm upgrade --install -f values.yaml my-release milvus/milvus
NAME CLASS HOSTS ADDRESS PORTS AGE
jaeger-query <none> * 192.168.122.348014m
-
Una vez que la entrada está disponible, puede acceder a la interfaz de usuario de Jaeger navegando a http://${ADDRESS}. Reemplace ${ADDRESS} con la dirección IP real del ingress.
+
Una vez que el ingress está disponible, puede acceder a la UI de Jaeger navegando a http://${ADDRESS}. Reemplace ${ADDRESS} con la dirección IP real del ingress.
La siguiente captura de pantalla muestra la UI de Jaeger con las trazas de Milvus durante una operación de búsqueda y una operación de recogida de carga:
diff --git a/localization/v2.5.x/site/es/adminGuide/configure-docker.json b/localization/v2.5.x/site/es/adminGuide/configure-docker.json
index 250d55d90..a4ea04828 100644
--- a/localization/v2.5.x/site/es/adminGuide/configure-docker.json
+++ b/localization/v2.5.x/site/es/adminGuide/configure-docker.json
@@ -1 +1 @@
-{"codeList":["$ wget https://raw.githubusercontent.com/milvus-io/milvus/v2.5.0-beta/configs/milvus.yaml\n","# For Milvus standalone\n$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0-beta/milvus-standalone-docker-compose.yml -O docker-compose.yml\n","...\n standalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.2.13\n command: [\"milvus\", \"run\", \"standalone\"]\n environment:\n ETCD_ENDPOINTS: etcd:2379\n MINIO_ADDRESS: minio:9000\n volumes:\n - /local/path/to/your/milvus.yaml:/milvus/configs/milvus.yaml # Map the local path to the container path\n - ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/milvus:/var/lib/milvus\n ports:\n - \"19530:19530\"\n - \"9091:9091\"\n depends_on:\n - \"etcd\"\n - \"minio\"\n...\n","$ sudo docker compose up -d\n"],"headingContent":"Configure Milvus with Docker Compose","anchorList":[{"label":"Configurar Milvus con Docker Compose","href":"Configure-Milvus-with-Docker-Compose","type":1,"isActive":false},{"label":"Descargar un archivo de configuración","href":"Download-a-configuration-file","type":2,"isActive":false},{"label":"Modifique el archivo de configuración","href":"Modify-the-configuration-file","type":2,"isActive":false},{"label":"Descargar un archivo de instalación","href":"Download-an-installation-file","type":2,"isActive":false},{"label":"Modifique el archivo de instalación","href":"Modify-the-installation-file","type":2,"isActive":false},{"label":"Iniciar Milvus","href":"Start-Milvus","type":2,"isActive":false},{"label":"A continuación","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["$ wget https://raw.githubusercontent.com/milvus-io/milvus/v2.5.0/configs/milvus.yaml\n","# For Milvus standalone\n$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0/milvus-standalone-docker-compose.yml -O docker-compose.yml\n","...\n standalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.2.13\n command: [\"milvus\", \"run\", \"standalone\"]\n environment:\n ETCD_ENDPOINTS: etcd:2379\n MINIO_ADDRESS: minio:9000\n volumes:\n - /local/path/to/your/milvus.yaml:/milvus/configs/milvus.yaml # Map the local path to the container path\n - ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/milvus:/var/lib/milvus\n ports:\n - \"19530:19530\"\n - \"9091:9091\"\n depends_on:\n - \"etcd\"\n - \"minio\"\n...\n","$ sudo docker compose up -d\n"],"headingContent":"Configure Milvus with Docker Compose","anchorList":[{"label":"Configurar Milvus con Docker Compose","href":"Configure-Milvus-with-Docker-Compose","type":1,"isActive":false},{"label":"Descargar un archivo de configuración","href":"Download-a-configuration-file","type":2,"isActive":false},{"label":"Modifique el archivo de configuración","href":"Modify-the-configuration-file","type":2,"isActive":false},{"label":"Descargar un archivo de instalación","href":"Download-an-installation-file","type":2,"isActive":false},{"label":"Modifique el archivo de instalación","href":"Modify-the-installation-file","type":2,"isActive":false},{"label":"Iniciar Milvus","href":"Start-Milvus","type":2,"isActive":false},{"label":"A continuación","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/es/adminGuide/configure-docker.md b/localization/v2.5.x/site/es/adminGuide/configure-docker.md
index a339e6d60..8079822fa 100644
--- a/localization/v2.5.x/site/es/adminGuide/configure-docker.md
+++ b/localization/v2.5.x/site/es/adminGuide/configure-docker.md
@@ -38,8 +38,8 @@ En la versión actual, todos los parámetros tienen efecto sólo después de rei
d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"
>
-
Descarguemilvus.yaml directamente o con el siguiente comando.
Modifique el archivo de instalación resp = client.listUsers();\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nmilvusClient.listUsers()\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","['root']\n\n","from pymilvus import MilvusClient\n\nclient.drop_role(role_name=\"role_a\")\n\n","import io.milvus.v2.service.rbac.request.DropRoleReq\n\nDropRoleReq dropRoleReq = DropRoleReq.builder()\n .roleName(\"role_a\")\n .build();\nclient.dropRole(dropRoleReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nmilvusClient.dropRole({\n roleName: 'role_a',\n })\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/drop\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.list_roles()\n\n","List resp = client.listRoles();\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nmilvusClient.listRoles(\n includeUserInfo: True\n)\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","['admin']\n\n"],"headingContent":"Drop Users & Roles","anchorList":[{"label":"Eliminar usuarios y funciones","href":"Drop-Users--Roles","type":1,"isActive":false},{"label":"Eliminar un usuario","href":"Drop-a-user","type":2,"isActive":false},{"label":"Eliminar un rol","href":"Drop-a-role","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/es/adminGuide/drop_users_roles.md b/localization/v2.5.x/site/es/adminGuide/drop_users_roles.md
new file mode 100644
index 000000000..980862474
--- /dev/null
+++ b/localization/v2.5.x/site/es/adminGuide/drop_users_roles.md
@@ -0,0 +1,205 @@
+---
+id: drop_users_roles.md
+related_key: enable RBAC
+summary: >-
+ Para garantizar la seguridad de los datos, se recomienda dar de baja a los
+ usuarios y funciones que ya no se utilicen. En esta guía se explica cómo
+ eliminar usuarios y funciones.
+title: Eliminar usuarios y funciones
+---
+
Eliminar usuarios y funciones
+
+
+
+
Para garantizar la seguridad de los datos, se recomienda dar de baja a los usuarios y funciones que ya no se utilicen. En esta guía se explica cómo eliminar usuarios y funciones.
+
Eliminar un usuario
+
+
+
+
El siguiente ejemplo muestra cómo eliminar el usuario user_1.
A continuación se muestra un ejemplo. No hay ningún role_a en la lista. La operación de eliminación se ha realizado correctamente.
+
['admin']
+
+
diff --git a/localization/v2.5.x/site/es/adminGuide/grant_privileges.json b/localization/v2.5.x/site/es/adminGuide/grant_privileges.json
new file mode 100644
index 000000000..24dc69aaf
--- /dev/null
+++ b/localization/v2.5.x/site/es/adminGuide/grant_privileges.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.grant_privilege_v2(\n role_name=\"role_a\",\n privilege=\"Search\"\n collection_name='collection_01'\n db_name='default',\n)\n \nclient.grant_privilege_v2(\n role_name=\"role_a\",\n privilege=\"privilege_group_1\"\n collection_name='collection_01'\n db_name='default',\n)\n\nclient.grant_privilege_v2(\n role_name=\"role_a\",\n privilege=\"ClusterReadOnly\"\n collection_name='*'\n db_name='*',\n)\n","import io.milvus.v2.service.rbac.request.GrantPrivilegeReqV2\n\nclient.grantPrivilegeV2(GrantPrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"Search\")\n .collectionName(\"collection_01\")\n .dbName(\"default\")\n .build());\n\nclient.grantPrivilegeV2(GrantPrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"privilege_group_1\")\n .collectionName(\"collection_01\")\n .dbName(\"default\")\n .build());\n\nclient.grantPrivilegeV2(GrantPrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"ClusterReadOnly\")\n .collectionName(\"*\")\n .dbName(\"*\")\n .build());\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.GrantV2(context.Background(), \"role_a\", \"collection_01\", \"Search\", entity.WithOperatePrivilegeDatabase(\"default\"))\n\nclient.GrantV2(context.Background(), \"role_a\", \"collection_01\", \"privilege_group_1\", entity.WithOperatePrivilegeDatabase(\"default\"))\n\nclient.GrantV2(context.Background(), \"role_a\", \"*\", \"ClusterReadOnly\", entity.WithOperatePrivilegeDatabase(\"*\"))\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nconst address = \"http://localhost:19530\";\nconst token = \"root:Milvus\";\nconst client = new MilvusClient({address, token});\n\nawait milvusClient.grantPrivilege({\n roleName: 'role_a',\n object: 'Collection', \n objectName: 'collection_01',\n privilegeName: 'Search'\n });\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/grant_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"Search\",\n \"collectionName\": \"collection_01\",\n \"dbName\":\"default\"\n}'\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/grant_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"privilege_group_1\",\n \"collectionName\": \"collection_01\",\n \"dbName\":\"default\"\n}'\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/grant_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"ClusterReadOnly\",\n \"collectionName\": \"*\",\n \"dbName\":\"*\"\n}'\n","from pymilvus import MilvusClient\n\nclient.describe_role(role_name=\"role_a\")\n","import io.milvus.v2.service.rbac.response.DescribeRoleResp;\nimport io.milvus.v2.service.rbac.request.DescribeRoleReq\n\nDescribeRoleReq describeRoleReq = DescribeRoleReq.builder()\n .roleName(\"role_a\")\n .build();\nDescribeRoleResp resp = client.describeRole(describeRoleReq);\nList infos = resp.getGrantInfos();\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.ListRoles(context.Background())\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.describeRole({roleName: 'role_a'});\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/describe\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\"\n}'\n","{\n \"role\": \"role_a\",\n \"privileges\": [\n {\n \"collection_name\": \"collection_01\",\n \"db_name\": \"default\",\n \"role_name\": \"role_a\",\n \"privilege\": \"Search\",\n \"grantor_name\": \"root\"\n },\n \"privilege_group_1\"\n ]\n}\n","from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.revoke_privilege_v2(\n role_name=\"role_a\",\n privilege=\"Search\"\n collection_name='collection_01'\n db_name='default',\n)\n \nclient.revoke_privilege_v2(\n role_name=\"role_a\",\n privilege=\"privilege_group_1\"\n collection_name='collection_01'\n db_name='default',\n)\n\nclient.revoke_privilege_v2(\n role_name=\"role_a\",\n privilege=\"ClusterReadOnly\"\n collection_name='*'\n db_name='*',\n)\n","import io.milvus.v2.service.rbac.request.RevokePrivilegeReqV2\n\nclient.revokePrivilegeV2(RevokePrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"Search\")\n .collectionName(\"collection_01\")\n .dbName(\"default\")\n .build());\n\nclient.revokePrivilegeV2(RevokePrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"privilege_group_1\")\n .collectionName(\"collection_01\")\n .dbName(\"default\")\n .build());\n\nclient.revokePrivilegeV2(RevokePrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"ClusterReadOnly\")\n .collectionName(\"*\")\n .dbName(\"*\")\n .build());\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.RevokeV2(context.Background(), \"role_a\", \"collection_01\", \"Search\", entity.WithOperatePrivilegeDatabase(\"default\"))\n\nclient.RevokeV2(context.Background(), \"role_a\", \"collection_01\", \"privielge_group_1\", entity.WithOperatePrivilegeDatabase(\"default\"))\n\nclient.RevokeV2(context.Background(), \"role_a\", \"*\", \"ClusterReadOnly\", entity.WithOperatePrivilegeDatabase(\"*\"))\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/revoke_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"Search\",\n \"collectionName\": \"collection_01\",\n \"dbName\":\"default\"\n}'\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/revoke_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"Search\",\n \"collectionName\": \"collection_01\",\n \"dbName\":\"default\"\n}'\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/revoke_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"ClusterReadOnly\",\n \"collectionName\": \"*\",\n \"dbName\":\"*\"\n}'\n"],"headingContent":"Grant Privilege or Privilege Group to Roles","anchorList":[{"label":"Conceder privilegios o grupos de privilegios a roles","href":"Grant-Privilege-or-Privilege-Group-to-Roles","type":1,"isActive":false},{"label":"Conceder un privilegio o un grupo de privilegios a un rol","href":"Grant-a-privilege-or-a-privilege-group-to-a-role","type":2,"isActive":false},{"label":"Describir un rol","href":"Describe-a-role","type":2,"isActive":false},{"label":"Revocar un privilegio o un grupo de privilegios de un rol","href":"Revoke-a-privilege-or-a-privilege-group-from-a-role","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/es/adminGuide/grant_privileges.md b/localization/v2.5.x/site/es/adminGuide/grant_privileges.md
new file mode 100644
index 000000000..9009a13de
--- /dev/null
+++ b/localization/v2.5.x/site/es/adminGuide/grant_privileges.md
@@ -0,0 +1,542 @@
+---
+id: grant_privileges.md
+related_key: enable RBAC
+summary: >-
+ Una vez creado un rol, puede concederle privilegios. En esta guía se explica
+ cómo conceder privilegios o grupos de privilegios a un rol.
+title: Conceder privilegios o grupos de privilegios a roles
+---
+
Conceder privilegios o grupos de privilegios a roles
+
+
+
+
Una vez creado un rol, puede concederle privilegios. Esta guía explica cómo conceder privilegios o grupos de privilegios a un rol.
+
Conceder un privilegio o un grupo de privilegios a un rol
+
+
+
+
Milvus 2.5 introduce una nueva versión de la API que agiliza la operación de concesión. Ya no es necesario buscar el tipo de objeto cuando se concede un privilegio a un rol. A continuación se indican los parámetros y las explicaciones correspondientes.
+
+
role_name: El nombre del rol de destino al que deben concederse privilegios o grupos de privilegios.
+
Recurso: El recurso de destino de un privilegio, que puede ser una instancia, base de datos o colección específica. La siguiente tabla explica cómo especificar el recurso en el método client.grantV2().
Introduzca `*` como nombre de la base de datos y `*` como nombre de la colección.
+
+
+
Privilegio: El privilegio específico o grupo de privilegios que necesita otorgar a un rol. Actualmente, Milvus proporciona 56 tipos de privilegios que puede conceder. La siguiente tabla enumera los privilegios en Milvus.
+
+
La columna de tipo en la tabla de abajo es de usuario para facilitar su búsqueda rápida de privilegios y se utiliza sólo con fines de clasificación. Cuando conceda privilegios, no necesita entender los tipos. Sólo tiene que introducir los privilegios correspondientes.
+
+
+
**Tipo
+
**Privilegio
+
**Descripción
+
**Descripción de la API correspondiente en el lado del cliente.
+
Privilegios de base de datos
+
ListDatabases
+
Ver todas las bases de datos de la instancia actual
Persiste todas las entidades de una colección en un segmento sellado. Cualquier entidad insertada después de la operación de vaciado se almacenará en un nuevo segmento.
El siguiente ejemplo demuestra cómo conceder el privilegio PrivilegeSearch en collection_01 bajo la base de datos por defecto, así como un grupo de privilegios llamado privilege_group_1 al rol role_a.
Revocar un privilegio o un grupo de privilegios de un rol
+
+
+
+
El siguiente ejemplo demuestra cómo revocar el privilegio PrivilegeSearch en collection_01 bajo la base de datos por defecto así como el grupo de privilegios privilege_group_1 que han sido concedidos al rol role_a.
diff --git a/localization/v2.5.x/site/es/adminGuide/grant_roles.json b/localization/v2.5.x/site/es/adminGuide/grant_roles.json
new file mode 100644
index 000000000..9e15550d7
--- /dev/null
+++ b/localization/v2.5.x/site/es/adminGuide/grant_roles.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.grant_role(user_name=\"user_1\", role_name=\"role_a\")\n\n","import io.milvus.v2.client.ConnectConfig;\nimport io.milvus.v2.client.MilvusClientV2;\nimport io.milvus.v2.service.rbac.request.GrantRoleReq;\n\nString CLUSTER_ENDPOINT = \"http://localhost:19530\";\nString TOKEN = \"root:Milvus\";\n\n\nConnectConfig connectConfig = ConnectConfig.builder()\n .uri(CLUSTER_ENDPOINT)\n .token(TOKEN)\n .build();\n \nMilvusClientV2 client = new MilvusClientV2(connectConfig);\n\nGrantRoleReq grantRoleReq = GrantRoleReq.builder()\n .roleName(\"role_a\")\n .userName(\"user_1\")\n .build();\nclient.grantRole(grantRoleReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nconst address = \"http://localhost:19530\";\nconst token = \"root:Milvus\";\nconst client = new MilvusClient({address, token});\n\nmilvusClient.grantRole({\n username: 'user_1',\n roleName: 'role_a'\n })\n\n","export CLUSTER_ENDPOINT=\"http://localhost:19530\"\nexport TOKEN=\"root:Milvus\"\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/grant_role\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"userName\": \"user_1\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.describe_user(user_name=\"user_1\")\n\n","import io.milvus.v2.service.rbac.request.DescribeUserReq;\nimport io.milvus.v2.service.rbac.response.DescribeUserResp;\n\nDescribeUserReq describeUserReq = DescribeUserReq.builder()\n .userName(\"user_1\")\n .build();\nDescribeUserResp describeUserResp = client.describeUser(describeUserReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nmilvusClient.describeUser({username: 'user_1'})\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/describe\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"userName\": \"user_1\"\n}'\n\n","{'user_name': 'user_1', 'roles': 'role_a'}\n\n","from pymilvus import MilvusClient\n\nclient.revoke_role(\n user_name='user_1',\n role_name='role_a'\n)\n\n","import io.milvus.v2.service.rbac.request.RevokeRoleReq;\n\nclient.revokeRole(RevokeRoleReq.builder()\n .userName(\"user_1\")\n .roleName(\"role_a\")\n .build());\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\n\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/revoke_role\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"userName\": \"user_1\",\n \"roleName\": \"role_a\"\n}'\n\n"],"headingContent":"Grant Roles to Users","anchorList":[{"label":"Conceder funciones a los usuarios","href":"Grant-Roles-to-Users","type":1,"isActive":false},{"label":"Conceder un rol a un usuario","href":"Grant-a-role-to-a-user","type":2,"isActive":false},{"label":"Describir usuario","href":"Describe-user","type":2,"isActive":false},{"label":"Revocar un rol","href":"Revoke-a-role","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/es/adminGuide/grant_roles.md b/localization/v2.5.x/site/es/adminGuide/grant_roles.md
new file mode 100644
index 000000000..16f556bed
--- /dev/null
+++ b/localization/v2.5.x/site/es/adminGuide/grant_roles.md
@@ -0,0 +1,204 @@
+---
+id: grant_roles.md
+related_key: enable RBAC
+summary: >-
+ Después de crear un rol y conceder privilegios al rol, puede conceder el rol a
+ los usuarios para que éstos puedan acceder a los recursos y realizar las
+ acciones definidas por el rol. Se pueden asignar varios roles a un usuario o
+ asignar un rol a varios usuarios. En esta guía se explica cómo asignar
+ funciones a los usuarios.
+title: Conceder funciones a los usuarios
+---
+
Conceder funciones a los usuarios
+
+
+
+
Después de crear una función y conceder privilegios a la función, puede conceder la función a los usuarios para que éstos puedan acceder a los recursos y realizar las acciones definidas por la función. Se pueden asignar varios roles a un usuario o asignar un rol a varios usuarios. Esta guía presenta cómo otorgar roles a los usuarios.
+
Al usuario incorporado root en Milvus ya se le ha otorgado el rol admin, que tiene todos los privilegios. No necesita asignarle ningún otro rol.
+
Conceder un rol a un usuario
+
+
+
+
El siguiente ejemplo muestra cómo asignar el rol role_a al usuario user_1.
Una vez que hayas otorgado un rol a un usuario, puedes comprobar si la operación de otorgamiento se ha realizado correctamente a través del método describe_user().
+
El siguiente ejemplo muestra cómo comprobar los roles del usuario user_1.
diff --git a/localization/v2.5.x/site/es/adminGuide/privilege_group.json b/localization/v2.5.x/site/es/adminGuide/privilege_group.json
new file mode 100644
index 000000000..a90b29c70
--- /dev/null
+++ b/localization/v2.5.x/site/es/adminGuide/privilege_group.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\nclient.create_privileg_group(group_name='privilege_group_1')\n\n","import io.milvus.v2.service.rbac.request.CreatePrivilegeGroupReq;\n\nclient.createPrivilegeGroup(CreatePrivilegeGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.CreatePrivilegeGroup(context.Background(), \"privilege_group_1\")\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/create\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\"\n}'\n\n","from pymilvus import MilvusClient\nclient.add_privileges_to_group(group_name='privilege_group_1', privileges=['Query', 'Search'])\n\n","import io.milvus.v2.service.rbac.request.AddPrivilegesToGroupReq;\n\nclient.addPrivilegesToGroup(AddPrivilegesToGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .privileges(Arrays.asList(\"Query\", \"Search\"))\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.AddPrivilegesToGroup(context.Background(), \"privilege_group_1\", []string{\"Query\", \"Search\"})\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/add_privileges_to_group\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\",\n \"privileges\":[\"Query\", \"Search\"]\n}'\n\n","from pymilvus import MilvusClient\nclient.remove_privileges_from_group(group_name='privilege_group_1', privileges='Search')\n\n","import io.milvus.v2.service.rbac.request.RemovePrivilegesFromGroupReq;\n\nclient.removePrivilegesFromGroup(RemovePrivilegesFromGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .privileges(Collections.singletonList(\"Search\"))\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.RemovePrivilegesFromGroup(context.Background(), \"privilege_group_1\", []string{\"Search\"})\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/remove_privileges_from_group\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\",\n \"privileges\":[\"Search\"]\n}'\n\n","from pymilvus import MilvusClient\nclient.list_privilege_groups()\n\n","import io.milvus.v2.service.rbac.PrivilegeGroup;\nimport io.milvus.v2.service.rbac.request.ListPrivilegeGroupsReq;\nimport io.milvus.v2.service.rbac.response.ListPrivilegeGroupsResp;\n\nListPrivilegeGroupsResp resp = client.listPrivilegeGroups(ListPrivilegeGroupsReq.builder()\n .build());\nList groups = resp.getPrivilegeGroups();\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.ListPrivilegeGroups(context.Background())\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","PrivilegeGroupItem: , \n\n","from pymilvus import MilvusClient\nclient.drop_privilege_group(group_name='privilege_group_1')\n\n","import io.milvus.v2.service.rbac.request.DropPrivilegeGroupReq;\n\nclient.dropPrivilegeGroup(DropPrivilegeGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.DropPrivilegeGroup(context.Background(), \"privilege_group_1\")\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/drop\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\"\n}'\n\n"],"headingContent":"Create Privilege Group","anchorList":[{"label":"Crear grupo de privilegios","href":"Create-Privilege-Group","type":1,"isActive":false},{"label":"Grupo de privilegios frente a privilegios","href":"Privilege-group-vs-privileges","type":2,"isActive":false},{"label":"Grupos de privilegios incorporados","href":"Built-in-privilege-groups","type":2,"isActive":false},{"label":"Procedimientos","href":"Procedures","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/es/adminGuide/privilege_group.md b/localization/v2.5.x/site/es/adminGuide/privilege_group.md
new file mode 100644
index 000000000..724289d1e
--- /dev/null
+++ b/localization/v2.5.x/site/es/adminGuide/privilege_group.md
@@ -0,0 +1,491 @@
+---
+id: privilege_group.md
+related_key: enable RBAC
+summary: >-
+ Para agilizar el proceso de concesión de privilegios, se recomienda combinar
+ varios privilegios en un grupo de privilegios.
+title: Crear grupo de privilegios
+---
+
Crear grupo de privilegios
+
+
+
+
Para agilizar el proceso de concesión de privilegios, se recomienda combinar varios privilegios en un grupo de privilegios.
+
Grupo de privilegios frente a privilegios
+
+
+
+
Un grupo de privilegios está formado por varios privilegios.
+
+
+
+ Ilustración de un grupo de privilegios
+
Como se muestra en la figura anterior, supongamos que necesita conceder tres privilegios diferentes a un rol.
+
+
Si no utiliza un grupo de privilegios, tendrá que conceder los privilegios tres veces.
+
Si utiliza un grupo de privilegios, sólo tiene que crear un grupo de privilegios y añadir los tres privilegios a este grupo de privilegios y conceder el grupo de privilegios al rol A.
+
+
Al utilizar un grupo de privilegios, puede conceder varios privilegios en bloque a un rol.
+
Grupos de privilegios incorporados
+
+
+
+
Para facilitar su uso, Milvus proporciona un total de 9 privilegios incorporados a nivel de colección, base de datos e instancia: COLL_RO, COLL_RW, COLL_ADMIN, DB_RO, DB_RW, DB_Admin, Cluster_RO, Cluster_RW y Cluster_Admin.
+
+
Los tres niveles de grupos de privilegios incorporados no tienen una relación en cascada. Establecer un grupo de privilegios a nivel de instancia no establece automáticamente permisos para todas las bases de datos y colecciones bajo esa instancia. Los privilegios en los niveles de base de datos y colección deben establecerse manualmente.
+
+
En las tablas siguientes se explican los privilegios incluidos en cada uno de los grupos de privilegios incorporados.
+
Nivel de colección
+
COLL_RO: incluye privilegios para leer datos de recopilación
+
COLL_RW: incluye privilegios para leer y escribir datos de recopilación
+
COLL_ADMIN: incluye privilegios para leer y escribir datos de colecciones y gestionar colecciones.
+
+
La siguiente tabla enumera los privilegios específicos incluidos en los tres grupos de privilegios incorporados en el nivel de recopilación.
+
**Privilegio**
+
**ColecciónSóloLectura
+
**ColecciónLecturaEscritura
+
**Administrador de colecciones
+
Consulta
+
✔️
+
✔️
+
✔️
+
Búsqueda
+
✔️
+
✔️
+
✔️
+
ÍndiceDetalle
+
✔️
+
✔️
+
✔️
+
GetFlushState
+
✔️
+
✔️
+
✔️
+
GetLoadState
+
✔️
+
✔️
+
✔️
+
GetLoadingProgress
+
✔️
+
✔️
+
✔️
+
HasPartition
+
✔️
+
✔️
+
✔️
+
MostrarParticiones
+
✔️
+
✔️
+
✔️
+
ListAliases
+
✔️
+
✔️
+
✔️
+
DescribirColección
+
✔️
+
✔️
+
✔️
+
DescribeAlias
+
✔️
+
✔️
+
✔️
+
ObtenerEstadísticas
+
✔️
+
✔️
+
✔️
+
Crearíndice
+
❌
+
✔️
+
✔️
+
DropIndex
+
❌
+
✔️
+
✔️
+
CrearPartición
+
❌
+
✔️
+
✔️
+
DropPartition
+
❌
+
✔️
+
✔️
+
Cargar
+
❌
+
✔️
+
✔️
+
Liberar
+
❌
+
✔️
+
✔️
+
Insertar
+
❌
+
✔️
+
✔️
+
Borrar
+
❌
+
✔️
+
✔️
+
Subir
+
❌
+
✔️
+
✔️
+
Importar
+
❌
+
✔️
+
✔️
+
Descarga
+
❌
+
✔️
+
✔️
+
Compactación
+
❌
+
✔️
+
✔️
+
Balance de carga
+
❌
+
✔️
+
✔️
+
CrearAlias
+
❌
+
❌
+
✔️
+
DropAlias
+
❌
+
❌
+
✔️
+
+
Nivel de base de datos
+
DB_RO: incluye privilegios para leer datos de la base de datos
+
DB_RW: incluye privilegios para leer y escribir datos de bases de datos
+
DB_Admin: incluye privilegios para leer y escribir datos de bases de datos y gestionar bases de datos.
+
+
La siguiente tabla enumera los privilegios específicos incluidos en los tres grupos de privilegios incorporados a nivel de base de datos.
+
**Privilegio**
+
**Sólo lectura de basede datos
+
**Base de datosLecturaEscritura
+
**Administrador de base de datos
+
MostrarColecciones
+
✔️
+
✔️
+
✔️
+
DescribirBaseDeDatos
+
✔️
+
✔️
+
✔️
+
CrearColección
+
❌
+
❌
+
✔️
+
SoltarColección
+
❌
+
❌
+
✔️
+
AlterDatabase
+
❌
+
✔️
+
✔️
+
+
Nivel de cluster
+
Cluster_RO: incluye privilegios para leer datos de instancias
+
Cluster_RW: incluye privilegios para leer y escribir datos de instancia
+
Cluster_Admin: incluye privilegios para leer y escribir datos de instancia y gestionar instancias.
+
+
La siguiente tabla enumera los privilegios específicos incluidos en los tres grupos de privilegios incorporados a nivel de instancia.
+
**Privilegio**
+
**Sólo lectura de clúster
+
**ClusterReadWrite
+
**Administrador de clústeres
+
ListDatabases
+
✔️
+
✔️
+
✔️
+
RenombrarColección
+
❌
+
❌
+
✔️
+
CrearPropiedad
+
❌
+
❌
+
✔️
+
ActualizarUsuario
+
❌
+
❌
+
✔️
+
DropOwnership
+
❌
+
❌
+
✔️
+
SeleccionarPropiedad
+
✔️
+
✔️
+
✔️
+
GestionarPropiedad
+
❌
+
❌
+
✔️
+
SeleccionarUsuario
+
✔️
+
✔️
+
✔️
+
BackupRBAC
+
❌
+
❌
+
✔️
+
RestaurarRBAC
+
❌
+
❌
+
✔️
+
CrearResourceGroup
+
❌
+
❌
+
✔️
+
DropResourceGroup
+
❌
+
❌
+
✔️
+
ActualizarResourceGroups
+
❌
+
✔️
+
✔️
+
DescribeResourceGroup
+
✔️
+
✔️
+
✔️
+
ListResourceGroups
+
✔️
+
✔️
+
✔️
+
TransferNode
+
❌
+
✔️
+
✔️
+
TransferReplica
+
❌
+
✔️
+
✔️
+
CrearBaseDeDatos
+
❌
+
❌
+
✔️
+
DropDatabase
+
❌
+
❌
+
✔️
+
FlushAll
+
❌
+
✔️
+
✔️
+
CrearGrupoDePrivilegios
+
❌
+
❌
+
✔️
+
DropPrivilegeGroup
+
❌
+
❌
+
✔️
+
ListPrivilegeGroups
+
❌
+
❌
+
✔️
+
OperatePrivilegeGroup
+
❌
+
❌
+
✔️
+
+
Procedimientos
+
+
+
+
Puede crear un grupo de privilegios y, a continuación, añadir privilegios al grupo de privilegios.
+
Creación de un grupo de privilegios
El siguiente ejemplo muestra cómo crear un grupo de privilegios denominado privilege_group_1.
El siguiente ejemplo muestra cómo añadir los privilegios PrivilegeBackupRBAC y PrivilegeRestoreRBAC al grupo de privilegios privilege_group_1 que se acaba de crear.
diff --git a/localization/v2.5.x/site/es/adminGuide/rbac.json b/localization/v2.5.x/site/es/adminGuide/rbac.json
index 470c69eb9..a79b41643 100644
--- a/localization/v2.5.x/site/es/adminGuide/rbac.json
+++ b/localization/v2.5.x/site/es/adminGuide/rbac.json
@@ -1 +1 @@
-{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri='http://localhost:19530', # replace with your own Milvus server address\n token='root:Milvus' # replace with your own Milvus server token\n)\n","client.create_user(\n user_name='user_1',\n password='P@ssw0rd'\n)\n","client.update_password(\n user_name='user_1',\n old_password='P@ssw0rd',\n new_password='P@ssw0rd123'\n)\n","client.list_users()\n\n# output:\n# ['root', 'user_1']\n","client.describe_user(user_name='user_1')\n\n# output:\n# {'user_name': 'user_1', 'roles': ()}\n","client.create_role(\n role_name=\"roleA\",\n)\n","client.list_roles()\n\n# output:\n# ['admin', 'public', 'roleA']\n","# grant privilege to a role\n\nclient.grant_privilege(\n role_name='roleA',\n object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName\n object_name='user_1', # value here can be * or a specific user name if object type is 'User'\n privilege='SelectUser'\n)\n","client.describe_role(\n role_name='roleA'\n)\n\n# output:\n# {'role': 'roleA',\n# 'privileges': [{'object_type': 'User',\n# 'object_name': 'user_1',\n# 'db_name': 'default',\n# 'role_name': 'roleA',\n# 'privilege': 'SelectUser',\n# 'grantor_name': 'root'}]}\n","# grant a role to a user\n\nclient.grant_role(\n user_name='user_1',\n role_name='roleA'\n)\n","client.describe_user(\n user_name='user_1'\n)\n\n# output:\n# {'user_name': 'user_1', 'roles': ('roleA')}\n","client.revoke_privilege(\n role_name='roleA',\n object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName\n object_name='user_1', # value here can be * or a specific user name if object type is 'User'\n privilege='SelectUser'\n)\n","client.revoke_role(\n user_name='user_1',\n role_name='roleA'\n)\n","client.drop_role(role_name='roleA')\n","client.drop_user(user_name='user_1')\n"],"headingContent":"Enable RBAC","anchorList":[{"label":"Habilitar RBAC","href":"Enable-RBAC","type":1,"isActive":false},{"label":"1. Inicie un cliente Milvus para establecer una conexión","href":"1-Initiate-a-Milvus-client-to-establish-a-connection","type":2,"isActive":false},{"label":"2. Cree un usuario","href":"2-Create-a-user","type":2,"isActive":false},{"label":"3. Crear un rol","href":"3-Create-a-role","type":2,"isActive":false},{"label":"4. 4. Conceder un privilegio a un rol","href":"4-Grant-a-privilege-to-a-role","type":2,"isActive":false},{"label":"5. Conceder un rol a un usuario","href":"5-Grant-a-role-to-a-user","type":2,"isActive":false},{"label":"6. Revocar privilegios","href":"6-Revoke-privileges","type":2,"isActive":false},{"label":"A continuación","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":[],"headingContent":"RBAC Explained","anchorList":[{"label":"Explicación de RBAC","href":"RBAC-Explained","type":1,"isActive":false},{"label":"Conceptos clave de RBAC","href":"RBAC-key-concepts","type":2,"isActive":false},{"label":"Procedimientos","href":"Procedures","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/es/adminGuide/rbac.md b/localization/v2.5.x/site/es/adminGuide/rbac.md
index 0f50a32bc..4d6d297d8 100644
--- a/localization/v2.5.x/site/es/adminGuide/rbac.md
+++ b/localization/v2.5.x/site/es/adminGuide/rbac.md
@@ -1,10 +1,14 @@
---
id: rbac.md
related_key: enable RBAC
-summary: 'Aprenda a gestionar usuarios, funciones y privilegios.'
-title: Habilitar RBAC
+summary: >-
+ RBAC (Role-Based Access Control) es un método de control de acceso basado en
+ roles. Con RBAC, puedes controlar con precisión las operaciones que los
+ usuarios pueden realizar a nivel de colección, base de datos e instancia, lo
+ que mejora la seguridad de los datos.
+title: Explicación de RBAC
---
-
Habilitar RBAC
+
Explicación de RBAC
-
Habilitando RBAC, puede controlar el acceso a recursos específicos de Milvus (Ej. una colección o una partición) o permisos basados en el rol y privilegios del usuario. Actualmente, esta característica sólo está disponible en Python y Java.
-
Este tema describe cómo habilitar RBAC y gestionar usuarios y roles.
-
-
Los fragmentos de código de esta página utilizan el nuevo MilvusClient (Python) para interactuar con Milvus. En futuras actualizaciones se publicarán nuevos SDK de MilvusClient para otros lenguajes.
-
-
1. Inicie un cliente Milvus para establecer una conexión
+
RBAC (Role-Based Access Control) es un método de control de acceso basado en roles. Con RBAC, puede controlar con precisión las operaciones que los usuarios pueden realizar a nivel de colección, base de datos e instancia, mejorando la seguridad de los datos.
+
A diferencia de los modelos tradicionales de control de acceso de usuarios, RBAC introduce el concepto de roles. En el modelo RBAC, se conceden privilegios a los roles y luego se otorgan esos roles a los usuarios. A continuación, los usuarios pueden obtener privilegios.
+
El modelo RBAC puede mejorar la eficacia de la gestión del control de acceso. Por ejemplo, si varios usuarios necesitan el mismo conjunto de privilegios, no es necesario establecer manualmente los privilegios para cada usuario. En su lugar, puede crear un rol y asignar el rol a los usuarios. Si desea ajustar los privilegios de estos usuarios, sólo tiene que ajustar los privilegios del rol y la modificación se aplicará a todos los usuarios con este rol.
+
Conceptos clave de RBAC
-
Después de habilitar la autenticación de usuario, conéctese a su instancia Milvus utilizando token que consiste en un nombre de usuario y una contraseña. Por defecto, Milvus utiliza el usuario root con la contraseña Milvus.
-
from pymilvus import MilvusClient
-
-client = MilvusClient(
- uri='http://localhost:19530', # replace with your own Milvus server address
- token='root:Milvus'# replace with your own Milvus server token
-)
-
-
2. Cree un usuario
-
-
-
-
Cree un usuario llamado user_1 con la contraseña P@ssw0rd:
Hay cuatro componentes principales en el modelo RBAC.
-
Listar todos los roles.
+
**Recurso: **La entidad de recursos a la que se puede acceder. Hay tres niveles de recursos en Milvus - instancia, base de datos y colección.
+
**Privilegio: **El permiso para realizar ciertas operaciones en los recursos de Milvus (por ejemplo, crear colecciones, insertar datos, etc.).
+
**Grupo de privilegios: **Un grupo de múltiples privilegios.
+
**Rol: **Un rol consta de dos partes: privilegios y recursos. Los privilegios definen el tipo de operaciones que un rol puede realizar, mientras que los recursos definen los recursos de destino en los que se pueden realizar las operaciones. Por ejemplo, el rol de administrador de base de datos puede realizar operaciones de lectura, escritura y gestión en determinadas bases de datos.
+
**Usuario: Un usuario es alguien que utiliza Milvus. Cada usuario tiene un ID único y se le otorga un rol o múltiples roles.
El siguiente ejemplo muestra cómo conceder el permiso de búsqueda en todas las colecciones al rol denominado roleA.
-
En object_type se especifica el tipo de objeto, que también puede entenderse como el tipo de recurso. Actualmente, los valores válidos incluyen Colección/Usuario/Global, etc., donde Global significa que no hay un tipo de recurso específico. object_name es el nombre del recurso. Si objecttypees Collection, entonces el nombre del objeto puede referirse a un nombre de colección específico, o puede utilizar * para especificar todas las colecciones. Si objecttypees Global, entonces el nombre del objeto sólo puede especificarse como *. Consulte Usuarios y roles para conocer otros tipos de privilegios que puede conceder.
-
Antes de gestionar privilegios de rol, asegúrese de que ha activado la autenticación de usuario. De lo contrario, puede producirse un error. Para obtener información sobre cómo activar la autenticación de usuarios, consulte Autenticar el acceso de usuarios.
-
# grant privilege to a role
-
-client.grant_privilege(
- role_name='roleA',
- object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName
- object_name='user_1', # value here can be * or a specific user name if object type is 'User'
- privilege='SelectUser'
-)
-
-
Después de conceder un privilegio a un rol, puede:
Tenga cuidado al realizar las siguientes operaciones, ya que son irreversibles.
-
-
-
Eliminar un privilegio de un rol. Si revoca un privilegio que no se ha concedido al rol, se producirá un error.
-
-
client.revoke_privilege(
- role_name='roleA',
- object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName
- object_name='user_1', # value here can be * or a specific user name if object type is 'User'
- privilege='SelectUser'
-)
-
-
-
Eliminar un usuario de un rol. Si revoca un rol que no ha sido concedido al usuario, se producirá un error.
Para lograr el control de acceso a través de RBAC, es necesario seguir los siguientes pasos.
+
+
Cree un usuario: Además del usuario predeterminado root en Milvus, puede crear nuevos usuarios y establecer contraseñas para proteger la seguridad de los datos.
+
Cree un rol: Puede crear roles personalizados en función de sus necesidades. Las capacidades específicas de un rol están determinadas por sus privilegios.
+
Crear un grupo de privilegios: Combine varios privilegios en un grupo de privilegios para agilizar el proceso de concesión de privilegios a un rol.
Conceder roles a usuarios: Conceda roles con ciertos privilegios a los usuarios para que los usuarios puedan tener los privilegios de un rol. Un mismo rol puede ser otorgado a múltiples usuarios.
+
diff --git a/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_cluster-docker.json b/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_cluster-docker.json
index d0d526c49..8f1b254d6 100644
--- a/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_cluster-docker.json
+++ b/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_cluster-docker.json
@@ -1 +1 @@
-{"codeList":["...\nrootcoord:\n container_name: milvus-rootcoord\n image: milvusdb/milvus:v2.5.0-beta\n...\nproxy:\n container_name: milvus-proxy\n image: milvusdb/milvus:v2.5.0-beta\n...\nquerycoord:\n container_name: milvus-querycoord\n image: milvusdb/milvus:v2.5.0-beta \n...\nquerynode:\n container_name: milvus-querynode\n image: milvusdb/milvus:v2.5.0-beta\n...\nindexcoord:\n container_name: milvus-indexcoord\n image: milvusdb/milvus:v2.5.0-beta\n...\nindexnode:\n container_name: milvus-indexnode\n image: milvusdb/milvus:v2.5.0-beta \n...\ndatacoord:\n container_name: milvus-datacoord\n image: milvusdb/milvus:v2.5.0-beta \n...\ndatanode:\n container_name: milvus-datanode\n image: milvusdb/milvus:v2.5.0-beta\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0-beta\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvus/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","Update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Cluster with Docker Compose","anchorList":[{"label":"Actualizar Milvus Cluster con Docker Compose","href":"Upgrade-Milvus-Cluster-with-Docker-Compose","type":1,"isActive":false},{"label":"Actualizar Milvus cambiando su imagen","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrar los metadatos","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"Lo que sigue","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["...\nrootcoord:\n container_name: milvus-rootcoord\n image: milvusdb/milvus:v2.5.0\n...\nproxy:\n container_name: milvus-proxy\n image: milvusdb/milvus:v2.5.0\n...\nquerycoord:\n container_name: milvus-querycoord\n image: milvusdb/milvus:v2.5.0 \n...\nquerynode:\n container_name: milvus-querynode\n image: milvusdb/milvus:v2.5.0\n...\nindexcoord:\n container_name: milvus-indexcoord\n image: milvusdb/milvus:v2.5.0\n...\nindexnode:\n container_name: milvus-indexnode\n image: milvusdb/milvus:v2.5.0 \n...\ndatacoord:\n container_name: milvus-datacoord\n image: milvusdb/milvus:v2.5.0 \n...\ndatanode:\n container_name: milvus-datanode\n image: milvusdb/milvus:v2.5.0\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvus/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","Update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Cluster with Docker Compose","anchorList":[{"label":"Actualizar Milvus Cluster con Docker Compose","href":"Upgrade-Milvus-Cluster-with-Docker-Compose","type":1,"isActive":false},{"label":"Actualizar Milvus cambiando su imagen","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrar los metadatos","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"Lo que sigue","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_cluster-docker.md b/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_cluster-docker.md
index 3d1a16ec7..60b26a9b8 100644
--- a/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_cluster-docker.md
+++ b/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_cluster-docker.md
@@ -20,7 +20,7 @@ title: Actualizar Milvus Cluster con Docker Compose
>
Este tema describe cómo actualizar su Milvus utilizando Docker Compose.
Desde Milvus 2.2.3, puede configurar los coordinadores de Milvus para que funcionen en modo activo-espera y habilitar la función de actualización continua para ellos, de forma que Milvus pueda responder a las solicitudes entrantes durante las actualizaciones de los coordinadores. En versiones anteriores, los coordinadores debían eliminarse y luego crearse durante una actualización, lo que podía introducir cierto tiempo de inactividad del servicio.
+
Desde Milvus 2.2.3, puede configurar los coordinadores de Milvus para que funcionen en modo activo-espera y habilitar la función de actualización continua para ellos, de modo que Milvus pueda responder a las solicitudes entrantes durante las actualizaciones de los coordinadores. En versiones anteriores, los coordinadores debían eliminarse y luego crearse durante una actualización, lo que podía introducir cierto tiempo de inactividad del servicio.
Las actualizaciones continuas requieren que los coordinadores trabajen en modo activo-espera. Puede utilizar el script que le proporcionamos para configurar los coordinadores para que trabajen en modo de espera activo e iniciar la actualización continua.
Basándose en las capacidades de actualización continua proporcionadas por Kubernetes, el script anterior impone una actualización ordenada de los despliegues según sus dependencias. Además, Milvus implementa un mecanismo para garantizar que sus componentes sigan siendo compatibles con aquellos que dependen de ellos durante la actualización, lo que reduce significativamente el posible tiempo de inactividad del servicio.
El script sólo se aplica a la actualización de Milvus instalado con Helm. La siguiente tabla enumera los indicadores de comando disponibles en los scripts.
@@ -145,13 +145,13 @@ zilliztech/milvus 4.1.0 2.3.0 Milvus is an ope
o
Operación
update
Falso
-
Una vez que se haya asegurado de que todos los despliegues en su instancia de Milvus están en su estado normal. Puede ejecutar el siguiente comando para actualizar la instancia de Milvus a 2.5.0-beta.
Una vez que se haya asegurado de que todos los despliegues de su instancia de Milvus están en su estado normal. Puede ejecutar el siguiente comando para actualizar la instancia de Milvus a 2.5.0.
El script codifica el orden de actualización de los despliegues y no puede cambiarse.
-
El script utiliza kubectl patch para actualizar los despliegues y kubectl rollout status para ver su estado.
+
El script utiliza kubectl patch para actualizar los despliegues y kubectl rollout status para observar su estado.
El script utiliza kubectl patch para actualizar la etiqueta app.kubernetes.io/version de los despliegues a la especificada después de la bandera -t en el comando.
@@ -234,7 +234,7 @@ my-release-pulsar-zookeeper-2
La siguiente tabla enumera las operaciones que puede realizar para la migración de metadatos.
Para actualizar Milvus de v2.1.x a 2.5.0, debe migrar los metadatos antes de la actualización.
Realizar una actualización continuaoperator
upgrade milvus-
-
Desde Milvus 2.2.3, puede configurar los coordinadores de Milvus para que funcionen en modo activo-espera y habilitar la función de actualización continua para ellos, de forma que Milvus pueda responder a las solicitudes entrantes durante las actualizaciones de los coordinadores. En versiones anteriores, los coordinadores debían eliminarse y luego crearse durante una actualización, lo que podía introducir cierto tiempo de inactividad del servicio.
+
Desde Milvus 2.2.3, puede configurar los coordinadores de Milvus para que funcionen en modo activo-espera y habilitar la función de actualización continua para ellos, de modo que Milvus pueda responder a las solicitudes entrantes durante las actualizaciones de los coordinadores. En versiones anteriores, los coordinadores debían eliminarse y luego crearse durante una actualización, lo que podía introducir cierto tiempo de inactividad del servicio.
Basándose en las capacidades de actualización continua proporcionadas por Kubernetes, el operador Milvus aplica una actualización ordenada de los despliegues según sus dependencias. Además, Milvus implementa un mecanismo para garantizar que sus componentes sigan siendo compatibles con aquellos que dependen de ellos durante la actualización, lo que reduce significativamente el posible tiempo de inactividad del servicio.
La función de actualización continua está desactivada por defecto. Es necesario habilitarla explícitamente a través de un archivo de configuración.
En el archivo de configuración anterior, establezca spec.components.enableRollingUpdate en true y spec.components.image en la versión de Milvus deseada.
Por defecto, Milvus realiza la actualización continua para los coordinadores de forma ordenada, en la que sustituye las imágenes del pod de coordinador una tras otra. Para reducir el tiempo de actualización, considere configurar spec.components.imageUpdateMode a all para que Milvus reemplace todas las imágenes de pod al mismo tiempo.
Puede configurar spec.components.imageUpdateMode a rollingDowngrade para que Milvus reemplace las imágenes de pod coordinador con una versión inferior.
Desde Milvus 2.2.0, los metadatos son incompatibles con los de versiones anteriores. Los siguientes ejemplos suponen una actualización de Milvus 2.1.4 a Milvus 2.5.0-beta.
-
1. Crear un archivo .yaml para la migración de metadatos
Cree un archivo de migración de metadatos. El siguiente es un ejemplo. Debe especificar name, sourceVersion y targetVersion en el archivo de configuración. El siguiente ejemplo establece name en my-release-upgrade, sourceVersion en v2.1.4 y targetVersion en v2.5.0-beta. Esto significa que su clúster Milvus se actualizará de v2.1.4 a v2.5.0-beta.
+
Desde Milvus 2.2.0, los metadatos son incompatibles con los de versiones anteriores. Los siguientes ejemplos suponen una actualización de Milvus 2.1.4 a Milvus 2.5.0.
+
1. Crear un archivo .yaml para la migración de metadatos
Cree un archivo de migración de metadatos. El siguiente es un ejemplo. Debe especificar name, sourceVersion y targetVersion en el archivo de configuración. El siguiente ejemplo establece name en my-release-upgrade, sourceVersion en v2.1.4 y targetVersion en v2.5.0. Esto significa que su clúster Milvus se actualizará de v2.1.4 a v2.5.0.
apiVersion: milvus.io/v1beta1
kind: MilvusUpgrade
metadata:
@@ -159,9 +159,9 @@ spec:
namespace: default
name: my-release
sourceVersion: "v2.1.4"
- targetVersion: "v2.5.0-beta"
+ targetVersion: "v2.5.0"# below are some omit default values:
- # targetImage: "milvusdb/milvus:v2.5.0-beta"
+ # targetImage: "milvusdb/milvus:v2.5.0"# toolImage: "milvusdb/meta-migration:v2.2.0"# operation: upgrade# rollbackIfFailed: true
diff --git a/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_standalone-docker.json b/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_standalone-docker.json
index 87383fa69..c45f480a8 100644
--- a/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_standalone-docker.json
+++ b/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_standalone-docker.json
@@ -1 +1 @@
-{"codeList":["...\nstandalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.5.0-beta\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0-beta\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvusdb/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","// Run the following only after update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Standalone with Docker Compose","anchorList":[{"label":"Actualizar Milvus Standalone con Docker Compose","href":"Upgrade-Milvus-Standalone-with-Docker-Compose","type":1,"isActive":false},{"label":"Actualizar Milvus cambiando su imagen","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrar los metadatos","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"Lo que sigue","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["...\nstandalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.5.0\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvusdb/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","// Run the following only after update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Standalone with Docker Compose","anchorList":[{"label":"Actualizar Milvus Standalone con Docker Compose","href":"Upgrade-Milvus-Standalone-with-Docker-Compose","type":1,"isActive":false},{"label":"Actualizar Milvus cambiando su imagen","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrar los metadatos","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"Lo que sigue","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_standalone-docker.md b/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_standalone-docker.md
index 8417fb359..2b529a759 100644
--- a/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_standalone-docker.md
+++ b/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_standalone-docker.md
@@ -24,9 +24,9 @@ title: Actualizar Milvus Standalone con Docker Compose
>
Este tema describe cómo actualizar su Milvus utilizando Docker Compose.
Debido a problemas de seguridad, Milvus actualiza su MinIO a RELEASE.2023-03-20T20-16-18Z con el lanzamiento de v2.2.5. Antes de realizar cualquier actualización desde versiones anteriores de Milvus Standalone instaladas mediante Docker Compose, debe crear un despliegue de MinIO Single-Node Single-Drive y migrar la configuración y el contenido existentes de MinIO al nuevo despliegue. Para más detalles, consulte esta guía.
+
Por motivos de seguridad, Milvus actualiza su MinIO a RELEASE.2023-03-20T20-16-18Z con la versión v2.2.5. Antes de realizar cualquier actualización desde versiones anteriores de Milvus Standalone instaladas mediante Docker Compose, debe crear un despliegue de MinIO Single-Node Single-Drive y migrar la configuración y el contenido existentes de MinIO al nuevo despliegue. Para más detalles, consulte esta guía.
Ejecute los siguientes comandos para realizar la actualización.
docker compose down
@@ -83,7 +83,7 @@ cmd:
runWithBackup: true
config:
sourceVersion: 2.1.4# Specify your milvus version
- targetVersion: 2.5.0-beta
+ targetVersion: 2.5.0
backupFilePath: /tmp/migration.bak
metastore:
type: etcd
diff --git a/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_standalone-helm.json b/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_standalone-helm.json
index c1b8a3d2a..fb5d8e9fc 100644
--- a/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_standalone-helm.json
+++ b/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_standalone-helm.json
@@ -1 +1 @@
-{"codeList":["$ helm repo update\n$ helm search repo zilliztech/milvus --versions\n","helm repo add zilliztech https://zilliztech.github.io/milvus-helm\nhelm repo update zilliztech\n# upgrade existing helm release\nhelm upgrade my-release zilliztech/milvus --reset-then-reuse-values\n","NAME CHART VERSION APP VERSION DESCRIPTION \nzilliztech/milvus 4.1.34 2.4.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.33 2.4.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.32 2.4.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.31 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.30 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.29 2.4.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.24 2.3.11 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.23 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.22 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.21 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.20 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.18 2.3.10 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.18 2.3.9 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.17 2.3.8 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.16 2.3.7 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.15 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.14 2.3.6 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.13 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.12 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.11 2.3.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.10 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.9 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.8 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.7 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.6 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.5 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.4 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.3 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.2 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.1 2.3.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.0 2.3.0 Milvus is an open-source vector database built ...\n","sh rollingUpdate.sh -n default -i my-release -o update -t 2.5.0-beta -w 'milvusdb/milvus:v2.5.0-beta'\n","helm repo update\nhelm upgrade my-release milvus/milvus --reset-then-reuse-values --version=4.1.24 # use the helm chart version here\n","NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION \nmy-release default 1 2022-11-21 15:41:25.51539 +0800 CST deployed milvus-3.2.18 2.1.4\n","NAME READY STATUS RESTARTS AGE\nmy-release-etcd-0 1/1 Running 0 84s\nmy-release-milvus-standalone-75c599fffc-6rwlj 1/1 Running 0 84s\nmy-release-minio-744dd9586f-qngzv 1/1 Running 0 84s\n","$ kubectl get pods my-release-milvus-proxy-6c548f787f-scspp -o=jsonpath='{$.spec.containers[0].image}'\n# milvusdb/milvus:v2.1.4\n","./migrate.sh -i my-release -s 2.1.4 -t 2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -w milvusdb/milvus:v2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -w milvusdb/milvus:v2.5.0-beta -d true\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -o rollback -w milvusdb/milvus:v2.1.1\n./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -o migrate -w milvusdb/milvus:v2.5.0-beta\n"],"headingContent":"Upgrade Milvus Standalone with Helm Chart","anchorList":[{"label":"Actualizar Milvus Standalone con cartas Helm","href":"Upgrade-Milvus-Standalone-with-Helm-Chart","type":1,"isActive":false},{"label":"Requisitos previos","href":"Prerequisites","type":2,"isActive":false},{"label":"Comprobar la versión de Milvus","href":"Check-the-Milvus-version","type":2,"isActive":false},{"label":"Realizar una actualización continua","href":"Conduct-a-rolling-upgrade","type":2,"isActive":false},{"label":"Actualizar Milvus usando Helm","href":"Upgrade-Milvus-using-Helm","type":2,"isActive":false},{"label":"Migrar los metadatos","href":"Migrate-the-metadata","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["$ helm repo update\n$ helm search repo zilliztech/milvus --versions\n","helm repo add zilliztech https://zilliztech.github.io/milvus-helm\nhelm repo update zilliztech\n# upgrade existing helm release\nhelm upgrade my-release zilliztech/milvus --reset-then-reuse-values\n","NAME CHART VERSION APP VERSION DESCRIPTION \nzilliztech/milvus 4.1.34 2.4.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.33 2.4.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.32 2.4.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.31 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.30 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.29 2.4.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.24 2.3.11 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.23 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.22 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.21 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.20 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.18 2.3.10 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.18 2.3.9 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.17 2.3.8 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.16 2.3.7 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.15 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.14 2.3.6 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.13 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.12 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.11 2.3.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.10 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.9 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.8 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.7 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.6 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.5 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.4 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.3 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.2 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.1 2.3.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.0 2.3.0 Milvus is an open-source vector database built ...\n","sh rollingUpdate.sh -n default -i my-release -o update -t 2.5.0 -w 'milvusdb/milvus:v2.5.0'\n","helm repo update\nhelm upgrade my-release milvus/milvus --reset-then-reuse-values --version=4.1.24 # use the helm chart version here\n","NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION \nmy-release default 1 2022-11-21 15:41:25.51539 +0800 CST deployed milvus-3.2.18 2.1.4\n","NAME READY STATUS RESTARTS AGE\nmy-release-etcd-0 1/1 Running 0 84s\nmy-release-milvus-standalone-75c599fffc-6rwlj 1/1 Running 0 84s\nmy-release-minio-744dd9586f-qngzv 1/1 Running 0 84s\n","$ kubectl get pods my-release-milvus-proxy-6c548f787f-scspp -o=jsonpath='{$.spec.containers[0].image}'\n# milvusdb/milvus:v2.1.4\n","./migrate.sh -i my-release -s 2.1.4 -t 2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -w milvusdb/milvus:v2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -w milvusdb/milvus:v2.5.0 -d true\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -o rollback -w milvusdb/milvus:v2.1.1\n./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -o migrate -w milvusdb/milvus:v2.5.0\n"],"headingContent":"Upgrade Milvus Standalone with Helm Chart","anchorList":[{"label":"Actualizar Milvus Standalone con cartas Helm","href":"Upgrade-Milvus-Standalone-with-Helm-Chart","type":1,"isActive":false},{"label":"Requisitos previos","href":"Prerequisites","type":2,"isActive":false},{"label":"Comprobar la versión de Milvus","href":"Check-the-Milvus-version","type":2,"isActive":false},{"label":"Realizar una actualización continua","href":"Conduct-a-rolling-upgrade","type":2,"isActive":false},{"label":"Actualizar Milvus usando Helm","href":"Upgrade-Milvus-using-Helm","type":2,"isActive":false},{"label":"Migrar los metadatos","href":"Migrate-the-metadata","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_standalone-helm.md b/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_standalone-helm.md
index b392fde2c..190b6386d 100644
--- a/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_standalone-helm.md
+++ b/localization/v2.5.x/site/es/adminGuide/upgrade_milvus_standalone-helm.md
@@ -108,10 +108,10 @@ zilliztech/milvus 4.1.1 2.3.0 Milvus is an ope
zilliztech/milvus 4.1.0 2.3.0 Milvus is an open-source vector database built ...
Puede elegir la ruta de actualización para su Milvus de la siguiente manera:
-
- Realice una actualización continua](#conduct-a-rolling-upgrade) de Milvus v2.2.3 y versiones posteriores a v2.5.0-beta.
+
- Realice una actualización continua](#conduct-a-rolling-upgrade) de Milvus v2.2.3 y versiones posteriores a v2.5.0.
Desde Milvus 2.2.3, puede configurar los coordinadores de Milvus para que funcionen en modo activo-espera y habilitar la función de actualización continua para ellos, de forma que Milvus pueda responder a las solicitudes entrantes durante las actualizaciones de los coordinadores. En versiones anteriores, los coordinadores debían eliminarse y luego crearse durante una actualización, lo que podía introducir cierto tiempo de inactividad del servicio.
+
Desde Milvus 2.2.3, puede configurar los coordinadores de Milvus para que funcionen en modo activo-espera y habilitar la función de actualización continua para ellos, de modo que Milvus pueda responder a las solicitudes entrantes durante las actualizaciones de los coordinadores. En versiones anteriores, los coordinadores debían eliminarse y luego crearse durante una actualización, lo que podía introducir cierto tiempo de inactividad del servicio.
Las actualizaciones continuas requieren que los coordinadores trabajen en modo activo-espera. Puede utilizar el script que le proporcionamos para configurar los coordinadores para que trabajen en modo de espera activo e iniciar la actualización continua.
Basándose en las capacidades de actualización continua proporcionadas por Kubernetes, el script anterior impone una actualización ordenada de los despliegues según sus dependencias. Además, Milvus implementa un mecanismo para garantizar que sus componentes sigan siendo compatibles con aquellos que dependen de ellos durante la actualización, lo que reduce significativamente el posible tiempo de inactividad del servicio.
El script sólo se aplica a la actualización de Milvus instalado con Helm. La siguiente tabla enumera los indicadores de comando disponibles en los scripts.
@@ -145,8 +145,8 @@ zilliztech/milvus 4.1.0 2.3.0 Milvus is an ope
o
Operación
update
Falso
-
Una vez que se haya asegurado de que todos los despliegues en su instancia de Milvus están en su estado normal. Puede ejecutar el siguiente comando para actualizar la instancia de Milvus a 2.5.0-beta.
Una vez que se haya asegurado de que todos los despliegues de su instancia de Milvus están en su estado normal. Puede ejecutar el siguiente comando para actualizar la instancia de Milvus a 2.5.0.
Para actualizar Milvus de v2.1.x a 2.5.0, debe migrar los metadatos antes de la actualización.
Realizar una actualización continuaoperator
upgrade milvus-
-
Desde Milvus 2.2.3, puede configurar los coordinadores de Milvus para que funcionen en modo activo-espera y habilitar la función de actualización continua para ellos, de forma que Milvus pueda responder a las solicitudes entrantes durante las actualizaciones de los coordinadores. En versiones anteriores, los coordinadores debían eliminarse y luego crearse durante una actualización, lo que podía introducir cierto tiempo de inactividad del servicio.
+
Desde Milvus 2.2.3, puede configurar los coordinadores de Milvus para que funcionen en modo activo-espera y activar la función de actualización continua para ellos, de modo que Milvus pueda responder a las solicitudes entrantes durante las actualizaciones de los coordinadores. En versiones anteriores, los coordinadores debían eliminarse y luego crearse durante una actualización, lo que podía introducir cierto tiempo de inactividad del servicio.
Basándose en las capacidades de actualización continua proporcionadas por Kubernetes, el operador Milvus aplica una actualización ordenada de los despliegues según sus dependencias. Además, Milvus implementa un mecanismo para garantizar que sus componentes sigan siendo compatibles con aquellos que dependen de ellos durante la actualización, lo que reduce significativamente el posible tiempo de inactividad del servicio.
La función de actualización continua está desactivada por defecto. Es necesario habilitarla explícitamente a través de un archivo de configuración.
En el archivo de configuración anterior, establezca spec.components.enableRollingUpdate en true y spec.components.image en la versión de Milvus deseada.
Por defecto, Milvus realiza una actualización continua para los coordinadores de forma ordenada, en la que sustituye las imágenes del pod de coordinador una tras otra. Para reducir el tiempo de actualización, considere configurar spec.components.imageUpdateMode a all para que Milvus reemplace todas las imágenes de pod al mismo tiempo.
Puede configurar spec.components.imageUpdateMode a rollingDowngrade para que Milvus reemplace las imágenes de pod coordinador con una versión inferior.
Desde Milvus 2.2.0, los metadatos son incompatibles con los de versiones anteriores. Los siguientes ejemplos suponen una actualización de Milvus 2.1.4 a Milvus v2.5.0-beta.
-
1. Crear un archivo .yaml para la migración de metadatos
Cree un archivo de migración de metadatos. El siguiente es un ejemplo. Debe especificar name, sourceVersion y targetVersion en el archivo de configuración. El siguiente ejemplo establece name en my-release-upgrade, sourceVersion en v2.1.4 y targetVersion en v2.5.0-beta. Esto significa que su instancia de Milvus se actualizará de v2.1.4 a v2.5.0-beta.
+
Desde Milvus 2.2.0, los metadatos son incompatibles con los de versiones anteriores. Los siguientes ejemplos suponen una actualización de Milvus 2.1.4 a Milvus v2.5.0.
+
1. Crear un archivo .yaml para la migración de metadatos
Cree un archivo de migración de metadatos. El siguiente es un ejemplo. Debe especificar name, sourceVersion y targetVersion en el archivo de configuración. El siguiente ejemplo establece name en my-release-upgrade, sourceVersion en v2.1.4 y targetVersion en v2.5.0. Esto significa que su instancia de Milvus se actualizará de v2.1.4 a v2.5.0.
3. 3. Compruebe el estado de la migración de metadatos
Ejecute el siguiente comando para comprobar el estado de la migración de metadatos.
+
3. Compruebe el estado de la migración de metadatos
Ejecute el siguiente comando para comprobar el estado de la migración de metadatos.
kubectl describe milvus release-name
El estado de ready en la salida significa que la migración de metadatos se ha realizado correctamente.
diff --git a/localization/v2.5.x/site/es/adminGuide/users_and_roles.json b/localization/v2.5.x/site/es/adminGuide/users_and_roles.json
new file mode 100644
index 000000000..161460d61
--- /dev/null
+++ b/localization/v2.5.x/site/es/adminGuide/users_and_roles.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.create_user(user_name=\"user_1\", password=\"P@ssw0rd\")\n\n","import io.milvus.v2.client.ConnectConfig;\nimport io.milvus.v2.client.MilvusClientV2;\nimport io.milvus.v2.service.rbac.request.CreateUserReq;\n\nConnectConfig connectConfig = ConnectConfig.builder()\n .uri(\"http://localhost:19530\")\n .token(\"root:Milvus\")\n .build();\n \nMilvusClientV2 client = new MilvusClientV2(connectConfig);\n\nCreateUserReq createUserReq = CreateUserReq.builder()\n .userName(\"user_1\")\n .password(\"P@ssw0rd\")\n .build();\n \nclient.createUser(createUserReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nconst address = \"http://localhost:19530\";\nconst token = \"root:Milvus\";\nconst client = new MilvusClient({address, token});\n\nawait milvusClient.createUser({\n username: 'user_1',\n password: 'P@ssw0rd',\n });\n\n","export CLUSTER_ENDPOINT=\"http://localhost:19530\"\nexport TOKEN=\"root:Milvus\"\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/create\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"userName\": \"user_1\",\n \"password\": \"P@ssw0rd\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.update_password(\n user_name=\"user_1\",\n old_password=\"P@ssw0rd\",\n new_password=\"NewP@ssw0rd\"\n)\n\n","import io.milvus.v2.service.rbac.request.UpdatePasswordReq;\n\nUpdatePasswordReq updatePasswordReq = UpdatePasswordReq.builder()\n .userName(\"user_1\")\n .password(\"P@ssw0rd\")\n .newPassword(\"NewP@ssw0rd\")\n .build();\nclient.updatePassword(updatePasswordReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.updateUser({\n username: 'user_1',\n newPassword: 'P@ssw0rd',\n oldPassword: 'NewP@ssw0rd',\n});\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/update_password\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"newPassword\": \"P@ssw0rd!\",\n \"userName\": \"user_1\",\n \"password\": \"P@ssw0rd\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.list_users()\n\n","List resp = client.listUsers();\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.listUsers();\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","['root', 'user_1']\n\n","from pymilvus import MilvusClient\n\nclient.create_role(role_name=\"role_a\")\nimport io.milvus.v2.service.rbac.request.CreateRoleReq;\n\n","CreateRoleReq createRoleReq = CreateRoleReq.builder()\n .roleName(\"role_a\")\n .build();\n \n\n","client.createRole(createRoleReq);\nconst { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.createRole({\n roleName: 'role_a',\n});\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/create\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.list_roles()\n\n","List roles = client.listRoles();\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.listRoles(\n includeUserInfo: True\n);\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","['admin', 'role_a']\n\n"],"headingContent":"Create Users & Roles","anchorList":[{"label":"Crear usuarios y roles","href":"Create-Users--Roles","type":1,"isActive":false},{"label":"Usuario","href":"User","type":2,"isActive":false},{"label":"Rol","href":"Role","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/es/adminGuide/users_and_roles.md b/localization/v2.5.x/site/es/adminGuide/users_and_roles.md
new file mode 100644
index 000000000..415041d15
--- /dev/null
+++ b/localization/v2.5.x/site/es/adminGuide/users_and_roles.md
@@ -0,0 +1,261 @@
+---
+id: users_and_roles.md
+related_key: 'users, roles'
+summary: >-
+ Milvus logra un control de acceso de grano fino a través de RBAC. Puede
+ empezar creando usuarios y roles, luego asignar privilegios o grupos de
+ privilegios a los roles y, por último, gestionar el control de acceso
+ concediendo roles a los usuarios. Este método garantiza la eficacia y la
+ seguridad de la gestión de accesos. Esta página presenta cómo crear usuarios y
+ roles en Milvus.
+title: Crear usuarios y roles
+---
+
Crear usuarios y roles
+
+
+
+
Milvus logra un control de acceso de grano fino a través de RBAC. Puede empezar creando usuarios y roles, luego asignar privilegios o grupos de privilegios a los roles, y finalmente gestionar el control de acceso concediendo roles a los usuarios. Este método garantiza la eficacia y la seguridad de la gestión de accesos. Esta página presenta cómo crear usuarios y roles en Milvus.
+
Usuario
+
+
+
+
Después de inicializar una instancia de Milvus, se genera automáticamente un usuario raíz para la autenticación cuando se conecta a Milvus por primera vez. El nombre de usuario del usuario raíz es root y la contraseña es Milvus. El rol por defecto del usuario raíz es admin, que tiene acceso a todos los recursos. Para garantizar la seguridad de los datos, mantenga a salvo las credenciales del usuario raíz para evitar accesos no autorizados.
+
Para las operaciones diarias, recomendamos crear usuarios en lugar de utilizar el usuario root.
+
Crear un usuario
El siguiente ejemplo muestra cómo crear un usuario con el nombre de usuario user_1 y la contraseña P@ssw0rd. El nombre de usuario y la contraseña del usuario deben seguir las siguientes reglas.
+
+
Nombre de usuario: debe empezar por una letra y sólo puede incluir letras mayúsculas o minúsculas, números y guiones bajos.
+
Contraseña: Debe tener entre 8 y 64 caracteres y debe incluir tres de los siguientes: letras mayúsculas, letras minúsculas, números y caracteres especiales.
A continuación se muestra un ejemplo de salida. root es el usuario por defecto generado automáticamente en Milvus. user_1 es el nuevo usuario que se acaba de crear.
+
['root', 'user_1']
+
+
+
Rol
+
+
+
+
Milvus proporciona un rol incorporado llamado admin, que es un rol de administrador que puede acceder a recursos bajo todas las instancias y tiene privilegios para todas las operaciones. Para una gestión de acceso más detallada y una mayor seguridad de los datos, se recomienda crear roles personalizados en función de sus necesidades.
+
Creación de un rol
El siguiente ejemplo muestra cómo crear un rol denominado role_a.
+
El nombre del rol debe seguir la siguiente regla
+
+
Debe empezar por una letra y sólo puede incluir letras mayúsculas o minúsculas, números y guiones bajos."
A continuación se muestra un ejemplo de salida. admin es el rol por defecto en Milvus. role_a es el nuevo rol que se acaba de crear.
+
['admin', 'role_a']
+
+
diff --git a/localization/v2.5.x/site/es/getstarted/run-milvus-docker/install_standalone-docker-compose.json b/localization/v2.5.x/site/es/getstarted/run-milvus-docker/install_standalone-docker-compose.json
index e67cb191d..79b4809f2 100644
--- a/localization/v2.5.x/site/es/getstarted/run-milvus-docker/install_standalone-docker-compose.json
+++ b/localization/v2.5.x/site/es/getstarted/run-milvus-docker/install_standalone-docker-compose.json
@@ -1 +1 @@
-{"codeList":["# Download the configuration file\n$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0-beta/milvus-standalone-docker-compose.yml -O docker-compose.yml\n\n# Start Milvus\n$ sudo docker compose up -d\n\nCreating milvus-etcd ... done\nCreating milvus-minio ... done\nCreating milvus-standalone ... done\n","$ sudo docker-compose ps\n\n Name Command State Ports\n--------------------------------------------------------------------------------------------------------------------\nmilvus-etcd etcd -advertise-client-url ... Up 2379/tcp, 2380/tcp\nmilvus-minio /usr/bin/docker-entrypoint ... Up (healthy) 9000/tcp\nmilvus-standalone /tini -- milvus run standalone Up 0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp\n","# Stop Milvus\n$ sudo docker compose down\n\n# Delete service data\n$ sudo rm -rf volumes\n"],"headingContent":"Run Milvus with Docker Compose (Linux)","anchorList":[{"label":"Ejecutar Milvus con Docker Compose (Linux)","href":"Run-Milvus-with-Docker-Compose-Linux","type":1,"isActive":false},{"label":"Requisitos previos","href":"Prerequisites","type":2,"isActive":false},{"label":"Instale Milvus","href":"Install-Milvus","type":2,"isActive":false},{"label":"Lo que sigue","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["# Download the configuration file\n$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0/milvus-standalone-docker-compose.yml -O docker-compose.yml\n\n# Start Milvus\n$ sudo docker compose up -d\n\nCreating milvus-etcd ... done\nCreating milvus-minio ... done\nCreating milvus-standalone ... done\n","$ sudo docker-compose ps\n\n Name Command State Ports\n--------------------------------------------------------------------------------------------------------------------\nmilvus-etcd etcd -advertise-client-url ... Up 2379/tcp, 2380/tcp\nmilvus-minio /usr/bin/docker-entrypoint ... Up (healthy) 9000/tcp\nmilvus-standalone /tini -- milvus run standalone Up 0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp\n","# Stop Milvus\n$ sudo docker compose down\n\n# Delete service data\n$ sudo rm -rf volumes\n"],"headingContent":"Run Milvus with Docker Compose (Linux)","anchorList":[{"label":"Ejecutar Milvus con Docker Compose (Linux)","href":"Run-Milvus-with-Docker-Compose-Linux","type":1,"isActive":false},{"label":"Requisitos previos","href":"Prerequisites","type":2,"isActive":false},{"label":"Instale Milvus","href":"Install-Milvus","type":2,"isActive":false},{"label":"Lo que sigue","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/es/getstarted/run-milvus-docker/install_standalone-docker-compose.md b/localization/v2.5.x/site/es/getstarted/run-milvus-docker/install_standalone-docker-compose.md
index d2a92fc9e..9328ed393 100644
--- a/localization/v2.5.x/site/es/getstarted/run-milvus-docker/install_standalone-docker-compose.md
+++ b/localization/v2.5.x/site/es/getstarted/run-milvus-docker/install_standalone-docker-compose.md
@@ -57,7 +57,7 @@ title: Ejecutar Milvus con Docker Compose (Linux)
Milvus proporciona un archivo de configuración Docker Compose en el repositorio Milvus. Para instalar Milvus utilizando Docker Compose, simplemente ejecute
# Download the configuration file
-$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0-beta/milvus-standalone-docker-compose.yml -O docker-compose.yml
+$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0/milvus-standalone-docker-compose.yml -O docker-compose.yml
# Start Milvus
$ sudo docker compose up -d
diff --git a/localization/v2.5.x/site/es/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.json b/localization/v2.5.x/site/es/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.json
index 1fbc21168..96ecd5c50 100644
--- a/localization/v2.5.x/site/es/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.json
+++ b/localization/v2.5.x/site/es/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.json
@@ -1 +1 @@
-{"codeList":["$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0-beta/milvus-standalone-docker-compose-gpu.yml -O docker-compose.yml\n","...\nstandalone:\n ...\n deploy:\n resources:\n reservations:\n devices:\n - driver: nvidia\n capabilities: [\"gpu\"]\n device_ids: [\"0\"]\n...\n","...\nstandalone:\n ...\n deploy:\n resources:\n reservations:\n devices:\n - driver: nvidia\n capabilities: [\"gpu\"]\n device_ids: ['0', '1']\n...\n","$ sudo docker compose up -d\n\nCreating milvus-etcd ... done\nCreating milvus-minio ... done\nCreating milvus-standalone ... done\n","$ sudo docker compose ps\n\n Name Command State Ports\n--------------------------------------------------------------------------------------------------------------------\nmilvus-etcd etcd -advertise-client-url ... Up 2379/tcp, 2380/tcp\nmilvus-minio /usr/bin/docker-entrypoint ... Up (healthy) 9000/tcp\nmilvus-standalone /tini -- milvus run standalone Up 0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp\n","$ CUDA_VISIBLE_DEVICES=0 ./milvus run standalone\n","$ CUDA_VISIBLE_DEVICES=0,1 ./milvus run standalone\n","# Stop Milvus\n$ sudo docker compose down\n\n# Delete service data\n$ sudo rm -rf volumes\n","docker cp :/milvus/configs/milvus.yaml milvus.yaml\n","vim milvus.yaml\n","...\ngpu:\n initMemSize: 0\n maxMemSize: 0\n...\n","docker cp milvus.yaml :/milvus/configs/milvus.yaml\n","docker stop \ndocker start \n"],"headingContent":"Run Milvus with GPU Support Using Docker Compose","anchorList":[{"label":"Ejecutar Milvus con soporte GPU usando Docker Compose","href":"Run-Milvus-with-GPU-Support-Using-Docker-Compose","type":1,"isActive":false},{"label":"Requisitos previos","href":"Prerequisites","type":2,"isActive":false},{"label":"Instalar Milvus","href":"Install-Milvus","type":2,"isActive":false},{"label":"Configurar el pool de memoria","href":"Configure-memory-pool","type":2,"isActive":false},{"label":"Lo que sigue","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0/milvus-standalone-docker-compose-gpu.yml -O docker-compose.yml\n","...\nstandalone:\n ...\n deploy:\n resources:\n reservations:\n devices:\n - driver: nvidia\n capabilities: [\"gpu\"]\n device_ids: [\"0\"]\n...\n","...\nstandalone:\n ...\n deploy:\n resources:\n reservations:\n devices:\n - driver: nvidia\n capabilities: [\"gpu\"]\n device_ids: ['0', '1']\n...\n","$ sudo docker compose up -d\n\nCreating milvus-etcd ... done\nCreating milvus-minio ... done\nCreating milvus-standalone ... done\n","$ sudo docker compose ps\n\n Name Command State Ports\n--------------------------------------------------------------------------------------------------------------------\nmilvus-etcd etcd -advertise-client-url ... Up 2379/tcp, 2380/tcp\nmilvus-minio /usr/bin/docker-entrypoint ... Up (healthy) 9000/tcp\nmilvus-standalone /tini -- milvus run standalone Up 0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp\n","$ CUDA_VISIBLE_DEVICES=0 ./milvus run standalone\n","$ CUDA_VISIBLE_DEVICES=0,1 ./milvus run standalone\n","# Stop Milvus\n$ sudo docker compose down\n\n# Delete service data\n$ sudo rm -rf volumes\n","docker cp :/milvus/configs/milvus.yaml milvus.yaml\n","vim milvus.yaml\n","...\ngpu:\n initMemSize: 0\n maxMemSize: 0\n...\n","docker cp milvus.yaml :/milvus/configs/milvus.yaml\n","docker stop \ndocker start \n"],"headingContent":"Run Milvus with GPU Support Using Docker Compose","anchorList":[{"label":"Ejecutar Milvus con soporte GPU usando Docker Compose","href":"Run-Milvus-with-GPU-Support-Using-Docker-Compose","type":1,"isActive":false},{"label":"Requisitos previos","href":"Prerequisites","type":2,"isActive":false},{"label":"Instalar Milvus","href":"Install-Milvus","type":2,"isActive":false},{"label":"Configurar el pool de memoria","href":"Configure-memory-pool","type":2,"isActive":false},{"label":"Lo que sigue","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/es/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.md b/localization/v2.5.x/site/es/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.md
index 5c7f36f0f..b220c74ac 100644
--- a/localization/v2.5.x/site/es/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.md
+++ b/localization/v2.5.x/site/es/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.md
@@ -41,7 +41,7 @@ title: Ejecutar Milvus con soporte GPU usando Docker Compose
Si encuentra algún problema al arrancar la imagen, póngase en contacto con nosotros en community@zilliz.com con detalles sobre el problema, y le proporcionaremos el soporte necesario.
+
Si encuentra algún problema al arrancar la imagen, contacte con nosotros en community@zilliz.com con detalles sobre el problema, y le proporcionaremos el soporte necesario.
Instalar Milvus
Para instalar Milvus con soporte GPU utilizando Docker Compose, siga estos pasos.
Descubra las novedades de Milvus. Esta página resume las nuevas características, mejoras, problemas conocidos y correcciones de errores de cada versión. Puede encontrar las notas de la versión para cada versión publicada después de la v2.5.0 en esta sección. Le sugerimos que visite regularmente esta página para conocer las actualizaciones.
-
v2.5.0-beta
+
v2.5.0
-
Fecha de lanzamiento: 26 de noviembre de 2024
+
Fecha de lanzamiento: 23 de diciembre de 2024
Versión de Milvus
Versión del SDK de Python
Versión del SDK de Node.js
Versión del SDK de Java
-
2.5.0-beta
2.5.0
2.5.0
2.5.0
+
2.5.0
2.5.1
2.5.2
2.5.2
-
Milvus 2.5.0-beta aporta avances significativos para mejorar la facilidad de uso, la escalabilidad y el rendimiento para los usuarios que se ocupan de la búsqueda vectorial y la gestión de datos a gran escala. Con esta versión, Milvus integra nuevas y potentes funciones como la búsqueda basada en términos, la compactación de clústeres para optimizar las consultas y la compatibilidad versátil con métodos de búsqueda vectorial dispersa y densa. Las mejoras en la gestión de clusters, indexación y manejo de datos introducen nuevos niveles de flexibilidad y facilidad de uso, haciendo de Milvus una base de datos vectorial aún más robusta y fácil de usar.
+
Milvus 2.5.0 aporta avances significativos para mejorar la facilidad de uso, la escalabilidad y el rendimiento para los usuarios que se ocupan de la búsqueda vectorial y la gestión de datos a gran escala. Con esta versión, Milvus integra nuevas y potentes funciones como la búsqueda basada en términos, la compactación de clústeres para optimizar las consultas y la compatibilidad versátil con métodos de búsqueda vectorial dispersa y densa. Las mejoras en la gestión de clusters, indexación y manejo de datos introducen nuevos niveles de flexibilidad y facilidad de uso, haciendo de Milvus una base de datos vectorial aún más robusta y fácil de usar.
Características principales
Búsqueda de texto completo
Milvus 2.5 es compatible con la búsqueda de texto completo implementada con Sparse-BM25. Esta función es un complemento importante de las potentes capacidades de búsqueda semántica de Milvus, especialmente en situaciones en las que intervienen palabras raras o términos técnicos. En versiones anteriores, Milvus soportaba vectores dispersos para ayudar en escenarios de búsqueda de palabras clave. Estos vectores dispersos se generaban fuera de Milvus mediante modelos neuronales como SPLADEv2/BGE-M3 o modelos estadísticos como el algoritmo BM25.
Desarrollado por Tantivy, Milvus 2.5 incorpora analizadores y extracción de vectores dispersos, ampliando la API de sólo recibir vectores como entrada a aceptar directamente texto. La información estadística de BM25 se actualiza en tiempo real a medida que se introducen los datos, lo que mejora la facilidad de uso y la precisión. Además, los vectores dispersos basados en algoritmos de aproximación al vecino más cercano (RNA) ofrecen un rendimiento más potente que los sistemas estándar de búsqueda por palabras clave.
Introdujo un nuevo formato de archivo local en Milvus 2.5, mejorando la eficiencia de carga y consulta para datos escalares, reduciendo la sobrecarga de memoria y sentando las bases para futuras optimizaciones.
Optimización del análisis sintáctico de expresiones
Se ha mejorado el análisis sintáctico de expresiones implementando el almacenamiento en caché para expresiones repetidas, actualizando ANTLR y optimizando el rendimiento de las cláusulas NOT IN.
Mejora del rendimiento de la concurrencia de DDL
Se ha optimizado el rendimiento de la concurrencia de las operaciones del lenguaje de definición de datos (DDL).
-
Alineación de las funciones de la API RESTful
Alineación de las funcionalidades de la API RESTful con otros SDK en aras de la coherencia.
+
Alineación de las funciones de la API RESTful
Alineación de las funcionalidades de la API RESTful con otros SDK para mayor coherencia.
+
Actualizaciones de seguridad y configuración
Soporte de TLS para asegurar la comunicación entre nodos en entornos más complejos o empresariales. Para obtener más información, consulte Configuración de seguridad.
+
Mejoras en el rendimiento de la compactación
Se han eliminado las limitaciones de segmentos máximos en la compactación mixta y ahora se da prioridad a los segmentos más pequeños, lo que mejora la eficacia y acelera las consultas en conjuntos de datos grandes o fragmentados.
+
Equilibrio de canales basado en la puntuación
Se ha introducido una política que equilibra dinámicamente las cargas entre canales, lo que mejora la utilización de los recursos y la estabilidad general en las implantaciones a gran escala.
diff --git a/localization/v2.5.x/site/es/userGuide/collections/modify-collection.json b/localization/v2.5.x/site/es/userGuide/collections/modify-collection.json
index eb65d5bc6..15c1f3172 100644
--- a/localization/v2.5.x/site/es/userGuide/collections/modify-collection.json
+++ b/localization/v2.5.x/site/es/userGuide/collections/modify-collection.json
@@ -1 +1 @@
-{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.rename_collection(\n old_name=\"my_collection\",\n new_name=\"my_new_collection\"\n)\n\n","import io.milvus.v2.service.collection.request.RenameCollectionReq;\nimport io.milvus.v2.client.ConnectConfig;\nimport io.milvus.v2.client.MilvusClientV2;\n\nString CLUSTER_ENDPOINT = \"http://localhost:19530\";\nString TOKEN = \"root:Milvus\";\n\n// 1. Connect to Milvus server\nConnectConfig connectConfig = ConnectConfig.builder()\n .uri(CLUSTER_ENDPOINT)\n .token(TOKEN)\n .build();\n \nMilvusClientV2 client = new MilvusClientV2(connectConfig);\n\nRenameCollectionReq renameCollectionReq = RenameCollectionReq.builder()\n .collectionName(\"my_collection\")\n .newCollectionName(\"my_new_collection\")\n .build();\n\nclient.renameCollection(renameCollectionReq);\n\n","import { MilvusClient, DataType } from \"@zilliz/milvus2-sdk-node\";\n\nconst address = \"http://localhost:19530\";\nconst token = \"root:Milvus\";\nconst client = new MilvusClient({address, token});\n\nconst res = await client.renameCollection({\n oldName: \"my_collection\",\n newName: \"my_new_collection\"\n});\n\n","import (\n \"context\"\n \"fmt\"\n \"log\"\n\n \"github.com/milvus-io/milvus/client/v2\"\n)\n\nctx, cancel := context.WithCancel(context.Background())\ndefer cancel()\n\nmilvusAddr := \"127.0.0.1:19530\"\ntoken := \"root:Milvus\"\n\ncli, err := client.New(ctx, &client.ClientConfig{\n Address: milvusAddr,\n APIKey: token,\n})\nif err != nil {\n log.Fatal(\"failed to connect to milvus server: \", err.Error())\n}\n\ndefer cli.Close(ctx)\n\nerr = cli.RenameCollection(ctx, client.NewRenameCollectionOption(\"my_collection\", \"my_new_collection\"))\nif err != nil {\n // handle error\n}\n\n","export CLUSTER_ENDPOINT=\"http://localhost:19530\"\nexport TOKEN=\"root:Milvus\"\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/collections/rename\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"collectionName\": \"my_collection\",\n \"newCollectionName\": \"my_new_collection\"\n}'\n\n","# Currently not available for Python\n\n","import io.milvus.v2.service.collection.request.AlterCollectionReq;\nimport java.util.HashMap;\nimport java.util.Map;\n\nMap properties = new HashMap<>();\nproperties.put(\"collection.ttl.seconds\", \"60\");\n\nAlterCollectionReq alterCollectionReq = AlterCollectionReq.builder()\n .collectionName(\"my_collection\")\n .properties(properties)\n .build();\n\nclient.alterCollection(alterCollectionReq);\n\n","res = await client.alterCollection({\n collection_name: \"my_collection\",\n properties: {\n \"collection.ttl.seconds\": 60\n }\n})\n\n","import (\n \"context\"\n \"fmt\"\n \"log\"\n\n \"github.com/milvus-io/milvus/client/v2\"\n \"github.com/milvus-io/milvus/pkg/common\"\n)\n\n\nctx, cancel := context.WithCancel(context.Background())\ndefer cancel()\n\nmilvusAddr := \"127.0.0.1:19530\"\ntoken := \"root:Milvus\"\n\ncli, err := client.New(ctx, &client.ClientConfig{\n Address: milvusAddr,\n APIKey: token,\n})\nif err != nil {\n log.Fatal(\"failed to connect to milvus server: \", err.Error())\n}\n\ndefer cli.Close(ctx)\n\nerr = cli.AlterCollection(ctx, client.NewAlterCollectionOption(\"my_collection\").WithProperty(common.CollectionTTLConfigKey, 60))\nif err != nil {\n // handle error\n}\n\n","# Currently not available for REST\n\n"],"headingContent":"Modify Collection","anchorList":[{"label":"Modificar colección","href":"Modify-Collection","type":1,"isActive":false},{"label":"Cambiar el nombre de una colección","href":"Rename-Collection","type":2,"isActive":false},{"label":"Establecer TTL de colección","href":"Set-Collection-TTL","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.rename_collection(\n old_name=\"my_collection\",\n new_name=\"my_new_collection\"\n)\n\n","import io.milvus.v2.service.collection.request.RenameCollectionReq;\nimport io.milvus.v2.client.ConnectConfig;\nimport io.milvus.v2.client.MilvusClientV2;\n\nString CLUSTER_ENDPOINT = \"http://localhost:19530\";\nString TOKEN = \"root:Milvus\";\n\n// 1. Connect to Milvus server\nConnectConfig connectConfig = ConnectConfig.builder()\n .uri(CLUSTER_ENDPOINT)\n .token(TOKEN)\n .build();\n \nMilvusClientV2 client = new MilvusClientV2(connectConfig);\n\nRenameCollectionReq renameCollectionReq = RenameCollectionReq.builder()\n .collectionName(\"my_collection\")\n .newCollectionName(\"my_new_collection\")\n .build();\n\nclient.renameCollection(renameCollectionReq);\n\n","import { MilvusClient, DataType } from \"@zilliz/milvus2-sdk-node\";\n\nconst address = \"http://localhost:19530\";\nconst token = \"root:Milvus\";\nconst client = new MilvusClient({address, token});\n\nconst res = await client.renameCollection({\n oldName: \"my_collection\",\n newName: \"my_new_collection\"\n});\n\n","import (\n \"context\"\n \"fmt\"\n \"log\"\n\n \"github.com/milvus-io/milvus/client/v2\"\n)\n\nctx, cancel := context.WithCancel(context.Background())\ndefer cancel()\n\nmilvusAddr := \"127.0.0.1:19530\"\ntoken := \"root:Milvus\"\n\ncli, err := client.New(ctx, &client.ClientConfig{\n Address: milvusAddr,\n APIKey: token,\n})\nif err != nil {\n log.Fatal(\"failed to connect to milvus server: \", err.Error())\n}\n\ndefer cli.Close(ctx)\n\nerr = cli.RenameCollection(ctx, client.NewRenameCollectionOption(\"my_collection\", \"my_new_collection\"))\nif err != nil {\n // handle error\n}\n\n","export CLUSTER_ENDPOINT=\"http://localhost:19530\"\nexport TOKEN=\"root:Milvus\"\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/collections/rename\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"collectionName\": \"my_collection\",\n \"newCollectionName\": \"my_new_collection\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.alter_collection_properties(\n collection_name=\"collection_name\",\n properties = {\"collection.ttl.seconds\": 500}\n)\n","import io.milvus.v2.service.collection.request.AlterCollectionReq;\nimport java.util.HashMap;\nimport java.util.Map;\n\nMap properties = new HashMap<>();\nproperties.put(\"collection.ttl.seconds\", \"60\");\n\nAlterCollectionReq alterCollectionReq = AlterCollectionReq.builder()\n .collectionName(\"my_collection\")\n .properties(properties)\n .build();\n\nclient.alterCollection(alterCollectionReq);\n\n","res = await client.alterCollection({\n collection_name: \"my_collection\",\n properties: {\n \"collection.ttl.seconds\": 60\n }\n})\n\n","import (\n \"context\"\n \"fmt\"\n \"log\"\n\n \"github.com/milvus-io/milvus/client/v2\"\n \"github.com/milvus-io/milvus/pkg/common\"\n)\n\n\nctx, cancel := context.WithCancel(context.Background())\ndefer cancel()\n\nmilvusAddr := \"127.0.0.1:19530\"\ntoken := \"root:Milvus\"\n\ncli, err := client.New(ctx, &client.ClientConfig{\n Address: milvusAddr,\n APIKey: token,\n})\nif err != nil {\n log.Fatal(\"failed to connect to milvus server: \", err.Error())\n}\n\ndefer cli.Close(ctx)\n\nerr = cli.AlterCollection(ctx, client.NewAlterCollectionOption(\"my_collection\").WithProperty(common.CollectionTTLConfigKey, 60))\nif err != nil {\n // handle error\n}\n\n","# Currently not available for REST\n\n"],"headingContent":"Modify Collection","anchorList":[{"label":"Modificar colección","href":"Modify-Collection","type":1,"isActive":false},{"label":"Cambiar el nombre de una colección","href":"Rename-Collection","type":2,"isActive":false},{"label":"Establecer TTL de colección","href":"Set-Collection-TTL","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/es/userGuide/collections/modify-collection.md b/localization/v2.5.x/site/es/userGuide/collections/modify-collection.md
index 69099fbc7..f61d4d4fc 100644
--- a/localization/v2.5.x/site/es/userGuide/collections/modify-collection.md
+++ b/localization/v2.5.x/site/es/userGuide/collections/modify-collection.md
@@ -142,12 +142,16 @@ curl --request POST \
d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"
>
-
Si una colección necesita ser eliminada durante un periodo específico, considere establecer su tiempo de vida (TTL) en segundos. Una vez que el TTL se agota, Milvus elimina las entidades de la colección y elimina la colección. El borrado es asíncrono, lo que indica que las búsquedas y consultas siguen siendo posibles antes de que se complete el borrado.
+
Si una colección necesita ser eliminada durante un periodo específico, considere establecer su tiempo de vida (TTL) en segundos. Una vez que el TTL se agota, Milvus elimina las entidades de la colección. El borrado es asíncrono, lo que indica que las búsquedas y consultas siguen siendo posibles antes de que se complete el borrado.
El siguiente fragmento de código muestra cómo cambiar el TTL de una colección.
import io.milvus.v2.service.collection.request.AlterCollectionReq;
import java.util.HashMap;
diff --git a/localization/v2.5.x/site/es/userGuide/schema/string.md b/localization/v2.5.x/site/es/userGuide/schema/string.md
index 97b08d105..889655796 100644
--- a/localization/v2.5.x/site/es/userGuide/schema/string.md
+++ b/localization/v2.5.x/site/es/userGuide/schema/string.md
@@ -5,7 +5,7 @@ summary: >-
En Milvus, VARCHAR es el tipo de datos utilizado para almacenar datos de tipo
cadena, adecuado para almacenar cadenas de longitud variable. Puede almacenar
cadenas con caracteres de uno o varios bytes, con una longitud máxima de hasta
- 60.535 caracteres. Al definir un campo VARCHAR, debe especificar también el
+ 65.535 caracteres. Al definir un campo VARCHAR, debe especificar también el
parámetro de longitud máxima max_length. El tipo de cadena VARCHAR ofrece una
forma eficaz y flexible de almacenar y gestionar datos de texto, por lo que es
ideal para aplicaciones que manejan cadenas de longitudes variables.
@@ -25,7 +25,7 @@ summary: >-
d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"
>
-
En Milvus, VARCHAR es el tipo de datos utilizado para almacenar datos de tipo cadena, adecuado para almacenar cadenas de longitud variable. Puede almacenar cadenas con caracteres de uno o varios bytes, con una longitud máxima de hasta 60.535 caracteres. Al definir un campo VARCHAR, también debe especificar el parámetro de longitud máxima max_length. El tipo de cadena VARCHAR ofrece una forma eficaz y flexible de almacenar y gestionar datos de texto, por lo que es ideal para aplicaciones que manejan cadenas de longitudes variables.
+
En Milvus, VARCHAR es el tipo de datos utilizado para almacenar datos de tipo cadena, adecuado para almacenar cadenas de longitud variable. Puede almacenar cadenas con caracteres de uno o varios bytes, con una longitud máxima de hasta 65.535 caracteres. Al definir un campo VARCHAR, también debe especificar el parámetro de longitud máxima max_length. El tipo de cadena VARCHAR ofrece una forma eficaz y flexible de almacenar y gestionar datos de texto, por lo que es ideal para aplicaciones que manejan cadenas de longitudes variables.
Añadir campo VARCHAR-
+ Milvus proporciona potentes operadores para consultar campos de matrices,
+ permitiéndole filtrar y recuperar entidades basándose en el contenido de las
+ matrices.
+title: Operadores de matrices
+---
+
Operadores ARRAY
+
+
+
+
Milvus proporciona potentes operadores para consultar campos de matrices, permitiéndole filtrar y recuperar entidades basándose en el contenido de las matrices.
+
+
Todos los elementos de una matriz deben ser del mismo tipo, y las estructuras anidadas dentro de las matrices se tratan como cadenas simples. Por lo tanto, cuando se trabaja con campos ARRAY, es aconsejable evitar el anidamiento excesivamente profundo y asegurarse de que sus estructuras de datos son tan planas como sea posible para un rendimiento óptimo.
+
+
Operadores ARRAY disponibles
+
+
+
+
Los operadores ARRAY permiten una consulta detallada de los campos array en Milvus. Estos operadores son.
El operador ARRAY_CONTAINS comprueba si existe un elemento específico en un campo de matriz. Resulta útil cuando se desea encontrar entidades en las que un elemento determinado está presente en la matriz.
+
Ejemplo
+
Suponga que tiene un campo de matriz history_temperatures, que contiene las temperaturas mínimas registradas en diferentes años. Para encontrar todas las entidades en las que la matriz contiene el valor 23, puede utilizar la siguiente expresión de filtro.
Esto devolverá todas las entidades en las que la matriz history_temperatures contenga el valor 23.
+
MATRIZ_CONTIENE_TODOS
+
+
+
+
El operador ARRAY_CONTAINS_ALL garantiza que todos los elementos de la lista especificada están presentes en el campo de la matriz. Este operador resulta útil cuando se desea buscar entidades que contienen varios valores en la matriz.
+
Ejemplo
+
Si desea encontrar todas las entidades en las que la matriz history_temperatures contiene tanto 23 como 24, puede utilizar.
Esto devolverá todas las entidades en las que la matriz history_temperatures contenga los dos valores especificados.
+
MATRIZ_CONTIENE_CUALQUIERA
+
+
+
+
El operador ARRAY_CONTAINS_ANY comprueba si alguno de los elementos de la lista especificada está presente en el campo de la matriz. Resulta útil cuando se desea buscar entidades que contengan al menos uno de los valores especificados en la matriz.
+
Ejemplo
+
Para encontrar todas las entidades en las que la matriz history_temperatures contiene 23 o 24, puede utilizar.
Esto devolverá todas las entidades en las que la matriz history_temperatures contenga al menos uno de los valores 23 o 24.
+
ARRAY_LENGTH
+
+
+
+
El operador ARRAY_LENGTH permite filtrar entidades en función del número de elementos de un campo de matriz. Esto resulta útil cuando se necesita encontrar entidades con matrices de una longitud determinada.
+
Ejemplo
+
Si desea encontrar todas las entidades en las que la matriz history_temperatures tiene menos de 10 elementos, puede utilizar.
Esto devolverá todas las entidades en las que la matriz history_temperatures tenga menos de 10 elementos.
diff --git a/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/basic-operators.json b/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/basic-operators.json
new file mode 100644
index 000000000..cb638bb20
--- /dev/null
+++ b/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/basic-operators.json
@@ -0,0 +1 @@
+{"codeList":["filter = 'status == \"active\"'\n\n","filter = 'status != \"inactive\"'\n\n","filter = 'age > 30'\n\n","filter = 'price < 100'\n\n","filter = 'rating >= 4'\n\n","filter = 'discount <= 10'\n\n","filter = 'color in [\"red\", \"green\", \"blue\"]'\n\n","filter = 'name LIKE \"Prod%\"'\n\n","filter = 'name LIKE \"%XYZ\"'\n\n","filter = 'name LIKE \"%Pro%\"'\n\n","filter = 'total == base_price + tax'\n\n","filter = 'quantity - quantity_sold > 50'\n\n","filter = 'price * quantity > 1000'\n\n","filter = 'total_price / quantity < 50'\n\n","filter = 'id % 2 == 0'\n\n","filter = 'price ** 2 > 1000'\n\n","filter = 'price > 100 AND stock > 50'\n\n","filter = 'color == \"red\" OR color == \"blue\"'\n\n","filter = 'NOT color == \"green\"'\n\n","filter = 'product[\"price\"] > 1000'\n\n","filter = 'history_temperatures[0] > 30'\n\n"],"headingContent":"Basic Operators","anchorList":[{"label":"Operadores básicos","href":"Basic-Operators","type":1,"isActive":false},{"label":"Operadores de comparación","href":"Comparison-operators","type":2,"isActive":false},{"label":"Operadores de rango","href":"Range-operators","type":2,"isActive":false},{"label":"Operadores aritméticos","href":"Arithmetic-Operators","type":2,"isActive":false},{"label":"Operadores lógicos","href":"Logical-Operators","type":2,"isActive":false},{"label":"Consejos sobre el uso de operadores básicos con campos JSON y ARRAY","href":"Tips-on-Using-Basic-Operators-with-JSON-and-ARRAY-Fields","type":2,"isActive":false},{"label":"Conclusión","href":"Conclusion","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/basic-operators.md b/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/basic-operators.md
new file mode 100644
index 000000000..682b0e338
--- /dev/null
+++ b/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/basic-operators.md
@@ -0,0 +1,237 @@
+---
+id: basic-operators.md
+summary: >-
+ Milvus proporciona un rico conjunto de operadores básicos para ayudarle a
+ filtrar y consultar datos de forma eficiente. Estos operadores le permiten
+ refinar sus condiciones de búsqueda basándose en campos escalares, cálculos
+ numéricos, condiciones lógicas y mucho más. Entender cómo utilizar estos
+ operadores es crucial para construir consultas precisas y maximizar la
+ eficiencia de sus búsquedas.
+title: Operadores básicos
+---
+
Operadores básicos
+
+
+
+
Milvus proporciona un amplio conjunto de operadores básicos para ayudarle a filtrar y consultar datos de forma eficiente. Estos operadores le permiten refinar sus condiciones de búsqueda basándose en campos escalares, cálculos numéricos, condiciones lógicas y mucho más. Entender cómo utilizar estos operadores es crucial para construir consultas precisas y maximizar la eficiencia de sus búsquedas.
+
Operadores de comparación
+
+
+
+
Los operadores de comparación se utilizan para filtrar datos en función de la igualdad, la desigualdad o el tamaño. Son aplicables a campos numéricos, de texto y de fecha.
+
Operadores de comparación admitidos.
+
== (Igual a)
+
!= (No igual a)
+
> (Mayor que)
+
< (Menor que)
+
>= (Mayor o igual que)
+
<= (Menor o igual que)
+
+
Ejemplo 1: Filtrado con Igual a (==)
Suponga que tiene un campo llamado status y quiere encontrar todas las entidades en las que status es "activo". Puede utilizar el operador de igualdad ==.
+
filter = 'status == "active"'
+
+
+
Ejemplo 2: Filtrado con no igual a (!=)
Para encontrar entidades donde status no sea "inactivo".
+
filter = 'status != "inactive"'
+
+
+
Ejemplo 3: Filtrado con Mayor que (>)
Si desea encontrar todas las entidades con un age mayor que 30.
+
filter = 'age > 30'
+
+
+
Ejemplo 4: Filtrado con menor que (<)
Para encontrar las entidades en las que price es inferior a 100.
+
filter = 'price < 100'
+
+
+
Ejemplo 5: Filtrado con mayor o igual que (>=)
Si desea encontrar todas las entidades con rating mayor o igual a 4.
+
filter = 'rating >= 4'
+
+
+
Ejemplo 6: Filtrado con menor o igual que (<=)
Para encontrar entidades con discount menor o igual que 10%.
+
filter = 'discount <= 10'
+
+
+
Operadores de rango
+
+
+
+
Los operadores de rango ayudan a filtrar datos basándose en conjuntos o rangos de valores específicos.
+
Operadores de rango admitidos.
+
IN: Se utilizan para buscar valores dentro de un conjunto o rango específico.
+
LIKE: Se utiliza para coincidir con un patrón (principalmente para campos de texto).
+
+
Ejemplo 1: Uso de IN para buscar varios valores
Si desea encontrar todas las entidades en las que color sea "rojo", "verde" o "azul".
+
filter = 'color in ["red", "green", "blue"]'
+
+
+
Esto es útil cuando se quiere comprobar la pertenencia a una lista de valores.
+
Ejemplo 2: Utilización de LIKE para la búsqueda de patrones
El operador LIKE se utiliza para la comparación de patrones en campos de cadena. Puede coincidir con subcadenas en distintas posiciones dentro del texto: como prefijo, infijo o sufijo. El operador LIKE utiliza el símbolo % como comodín, que puede coincidir con cualquier número de caracteres (incluido el cero).
+
Coincidencia de prefijo (empieza por)
Para realizar una coincidencia de prefijo, en la que la cadena comienza con un patrón determinado, puede colocar el patrón al principio y utilizar % para que coincida con los caracteres que le siguen. Por ejemplo, para buscar todos los productos cuyo name empiece por "Prod".
+
filter = 'name LIKE "Prod%"'
+
+
+
Esto coincidirá con cualquier producto cuyo nombre empiece por "Prod", como "Producto A", "Producto B", etc.
+
Coincidencia de sufijo (termina con)
Para una coincidencia de sufijo, en la que la cadena termina con un patrón dado, coloque el símbolo % al principio del patrón. Por ejemplo, para buscar todos los productos cuyo name termine en "XYZ".
+
filter = 'name LIKE "%XYZ"'
+
+
+
Esto coincidirá con cualquier producto cuyo nombre termine en "XYZ", como "ProductXYZ", "SampleXYZ", etc.
+
Coincidencia infija (contiene)
Para realizar una coincidencia infija, en la que el patrón puede aparecer en cualquier lugar de la cadena, puede colocar el símbolo % tanto al principio como al final del patrón. Por ejemplo, para buscar todos los productos cuyo name contenga la palabra "Pro".
+
filter = 'name LIKE "%Pro%"'
+
+
+
Esto coincidirá con cualquier producto cuyo nombre contenga la subcadena "Pro", como "Product", "ProLine" o "SuperPro".
+
Operadores aritméticos
+
+
+
+
Los operadores aritméticos le permiten crear condiciones basadas en cálculos que implican campos numéricos.
+
Operadores aritméticos admitidos.
+
+ (Suma)
+
- (Resta)
+
* (Multiplicación)
+
/ (División)
+
% (Módulo)
+
** (Exponenciación)
+
+
Ejemplo 1: Utilización de la suma (+)
Para encontrar entidades en las que el precio total es la suma de base_price y tax.
+
filter = 'total == base_price + tax'
+
+
+
Ejemplo 2: Sustracción (-)
Para encontrar entidades donde quantity es mayor que 50 y quantity_sold es menor que 30.
+
filter = 'quantity - quantity_sold > 50'
+
+
+
Ejemplo 3: Multiplicación (*)
Para encontrar entidades donde price es mayor que 100 y quantity es mayor que 10, multiplicado.
+
filter = 'price * quantity > 1000'
+
+
+
Ejemplo 4: Uso de la división (/)
Para encontrar productos donde total_price dividido por quantity es menor que 50.
+
filter = 'total_price / quantity < 50'
+
+
+
Ejemplo 5: Uso del módulo (%)
Para encontrar entidades donde id es un número par (es decir, divisible por 2).
+
filter = 'id % 2 == 0'
+
+
+
Ejemplo 6: Uso de la exponenciación (**)
Para encontrar entidades donde price elevado a la potencia de 2 es mayor que 1000.
+
filter = 'price ** 2 > 1000'
+
+
+
Operadores lógicos
+
+
+
+
Los operadores lógicos se utilizan para combinar varias condiciones en una expresión de filtro más compleja. Entre ellos se incluyen AND, OR y NOT.
+
Operadores lógicos admitidos.
+
AND: Combina varias condiciones que deben ser todas verdaderas.
+
OR: Combina condiciones donde al menos una debe ser verdadera.
+
NOT: Niega una condición.
+
+
Ejemplo 1: Uso de AND para combinar condiciones
Para encontrar todos los productos donde price es mayor que 100 y stock es mayor que 50.
+
filter = 'price > 100 AND stock > 50'
+
+
+
Ejemplo 2: Uso de OR para combinar condiciones
Para encontrar todos los productos donde color es "rojo" o "azul".
+
filter = 'color == "red" OR color == "blue"'
+
+
+
Ejemplo 3: Uso de NOT para excluir una condición
Para encontrar todos los productos donde color no es "verde".
+
filter = 'NOT color == "green"'
+
+
+
Consejos sobre el uso de operadores básicos con campos JSON y ARRAY
+
+
+
+
Aunque los operadores básicos de Milvus son versátiles y pueden aplicarse a campos escalares, también pueden utilizarse eficazmente con las claves y los índices de los campos JSON y ARRAY.
+
Por ejemplo, si tiene un campo product que contiene múltiples claves como price, model, y tags, siempre haga referencia a la clave directamente.
+
filter = 'product["price"] > 1000'
+
+
+
Para buscar registros en los que la primera temperatura de una matriz de temperaturas registradas supere un valor determinado, utilice.
+
filter = 'history_temperatures[0] > 30'
+
+
+
Conclusión
+
+
+
+
Milvus ofrece una serie de operadores básicos que le proporcionan flexibilidad a la hora de filtrar y consultar sus datos. Combinando operadores de comparación, de rango, aritméticos y lógicos, puede crear potentes expresiones de filtrado para acotar los resultados de búsqueda y recuperar los datos que necesita de forma eficaz.
diff --git a/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/boolean.json b/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/boolean.json
new file mode 100644
index 000000000..fc2b98865
--- /dev/null
+++ b/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/boolean.json
@@ -0,0 +1 @@
+{"codeList":["filter='color in [\"red\", \"green\", \"blue\"]'\n\n","filter='product[\"model\"] == \"JSN-087\" AND product[\"price\"] < 1850'\n\n","filter='history_temperatures[10] > 23'\n\n","filter = \"age > 25 AND city IN ['北京', '上海']\"\n\n","filter = \"age > {age} AND city in {city}\",\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter='json_contains(tags, \"sale\")'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\", \"discount\"]}\nfilter='json_contains_all(tags, [\"electronics\", \"sale\", \"new\"])'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter='json_contains_any(tags, [\"electronics\", \"new\", \"clearance\"])'\n\n","filter=\"ARRAY_CONTAINS(history_temperatures, 23)\"\n\n","filter=\"ARRAY_CONTAINS_ALL(history_temperatures, [23, 24])\"\n\n","filter=\"ARRAY_CONTAINS_ANY(history_temperatures, [23, 24])\"\n\n","filter=\"ARRAY_LENGTH(history_temperatures) < 10\"\n\n"],"headingContent":"Filtering Explained","anchorList":[{"label":"Explicación del filtrado","href":"Filtering-Explained","type":1,"isActive":false},{"label":"Operadores básicos","href":"Basic-operators","type":2,"isActive":false},{"label":"Plantillas de expresiones de filtrado","href":"Filter-expression-templates","type":2,"isActive":false},{"label":"Operadores específicos de tipos de datos","href":"Data-type-specific-operators","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/boolean.md b/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/boolean.md
new file mode 100644
index 000000000..fa5092f0a
--- /dev/null
+++ b/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/boolean.md
@@ -0,0 +1,147 @@
+---
+id: boolean.md
+summary: >-
+ Milvus proporciona potentes funciones de filtrado que permiten una consulta
+ precisa de sus datos. Las expresiones de filtrado le permiten dirigirse a
+ campos escalares específicos y refinar los resultados de la búsqueda con
+ diferentes condiciones. Esta guía explica cómo utilizar las expresiones de
+ filtrado en Milvus, con ejemplos centrados en las operaciones de consulta.
+ También puede aplicar estos filtros en solicitudes de búsqueda y eliminación.
+title: Explicación del filtrado
+---
+
Explicación del filtrado
+
+
+
+
Milvus proporciona potentes capacidades de filtrado que permiten una consulta precisa de sus datos. Las expresiones de filtrado le permiten dirigirse a campos escalares específicos y refinar los resultados de la búsqueda con diferentes condiciones. Esta guía explica cómo utilizar las expresiones de filtrado en Milvus, con ejemplos centrados en las operaciones de consulta. También puede aplicar estos filtros en solicitudes de búsqueda y eliminación.
+
Operadores básicos
+
+
+
+
Milvus admite varios operadores básicos para filtrar datos.
+
+
Operadores de comparación: ==, !=, >, <, >=, y <= permiten filtrar basándose en campos numéricos, de texto o de fecha.
+
Filtros de rango: IN y LIKE ayudan a coincidir con rangos o conjuntos de valores específicos.
+
Operadores aritméticos: +, -, *, /, %, y ** se utilizan para cálculos que implican campos numéricos.
+
Operadores lógicos: AND, OR, y NOT combinan múltiples condiciones en expresiones complejas.
+
+
Ejemplo: Filtrar por color
Para encontrar entidades con colores primarios (rojo, verde o azul) en un campo escalar color, utilice la siguiente expresión de filtro.
+
filter='color in ["red", "green", "blue"]'
+
+
+
Ejemplo: Filtrado de campos JSON
Milvus permite referenciar claves en campos JSON. Por ejemplo, si tiene un campo JSON product con las claves price y model, y desea encontrar productos con un modelo específico y un precio inferior a 1.850, utilice esta expresión de filtro.
+
filter='product["model"] == "JSN-087" AND product["price"] < 1850'
+
+
+
Ejemplo: Filtrado de campos de matriz
Si tiene un campo de matriz history_temperatures que contiene registros de temperatura y desea encontrar observatorios en los que la décima temperatura registrada supere los 23°C, utilice esta expresión.
+
filter='history_temperatures[10] > 23'
+
+
+
Para obtener más información sobre estos operadores básicos, consulte Operadores básicos.
+
Plantillas de expresiones de filtrado
+
+
+
+
Al filtrar utilizando caracteres CJK, el procesamiento puede ser más complejo debido a sus mayores conjuntos de caracteres y diferencias de codificación. Esto puede dar lugar a un rendimiento más lento, especialmente con el operador IN.
+
Milvus introduce plantillas de expresiones de filtrado para optimizar el rendimiento cuando se trabaja con caracteres CJK. Al separar los valores dinámicos de la expresión de filtro, el motor de consulta gestiona la inserción de parámetros de forma más eficiente.
+
Ejemplo
Para buscar personas mayores de 25 años que vivan en "北京" (Pekín) o "上海" (Shanghai), utilice la siguiente expresión de plantilla.
+
filter = "age > 25 AND city IN ['北京', '上海']"
+
+
+
Para mejorar el rendimiento, utilice esta variación con parámetros.
+
filter = "age > {age} AND city in {city}",
+filter_params = {"age": 25, "city": ["北京", "上海"]}
+
+
+
Este enfoque reduce la sobrecarga de análisis sintáctico y mejora la velocidad de consulta. Para obtener más información, consulte Plantillas de filtros.
+
Operadores específicos de tipos de datos
+
+
+
+
Milvus proporciona operadores de filtrado avanzados para tipos de datos específicos, como los campos JSON, ARRAY y VARCHAR.
+
Operadores específicos de campo JSON
Milvus ofrece operadores avanzados para consultar campos JSON, permitiendo un filtrado preciso dentro de estructuras JSON complejas.
+
**JSON_CONTAINS(identifier, jsonExpr)**: Comprueba si existe una expresión JSON en el campo.
Para obtener más información sobre los operadores JSON, consulte Operadores JSON.
+
Operadores específicos de campo ARRAY
Milvus proporciona operadores de filtrado avanzados para campos de array, como ARRAY_CONTAINS, ARRAY_CONTAINS_ALL, ARRAY_CONTAINS_ANY, y ARRAY_LENGTH, que permiten un control detallado de los datos de array.
+
**ARRAY_CONTAINS**: Filtra entidades que contienen un elemento específico.
Para obtener más información sobre los operadores de matrices, consulte Operadores ARRAY.
+
Operadores específicos de campo VARCHAR
El operador **Text_Match** permite recuperar documentos con precisión basándose en términos de consulta específicos. Es especialmente útil para búsquedas filtradas que combinan filtros escalares con búsquedas de similitud vectorial. A diferencia de las búsquedas semánticas, Text Match se centra en las ocurrencias exactas de los términos.
+
Milvus utiliza Tantivy para soportar la indexación invertida y la búsqueda de texto basada en términos. El proceso implica.
+
+
Analizador: Tokeniza y procesa el texto de entrada.
+
Indexación: Crea un índice invertido que asigna tokens únicos a documentos.
diff --git a/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/filtering-templating.json b/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/filtering-templating.json
new file mode 100644
index 000000000..5e67fea3c
--- /dev/null
+++ b/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/filtering-templating.json
@@ -0,0 +1 @@
+{"codeList":["filter = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\n\n","expr = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\nres = client.search(\n \"hello_milvus\",\n vectors[:nq],\n filter=expr,\n limit=10,\n output_fields=[\"age\", \"city\"],\n search_params={\"metric_type\": \"COSINE\", \"params\": {\"search_list\": 100}},\n filter_params=filter_params,\n)\n\n","expr = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\nres = client.query(\n \"hello_milvus\",\n filter=expr,\n output_fields=[\"age\", \"city\"],\n filter_params=filter_params\n)\n\n","expr = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\nres = client.delete(\n \"hello_milvus\",\n filter=expr,\n filter_params=filter_params\n)\n\n"],"headingContent":"Filter Templating","anchorList":[{"label":"Plantillas de filtro","href":"Filter-Templating","type":1,"isActive":false},{"label":"Descripción general","href":"Overview","type":2,"isActive":false},{"label":"Operaciones de búsqueda","href":"Search-Operations","type":2,"isActive":false},{"label":"Operaciones de consulta","href":"Query-Operations","type":2,"isActive":false},{"label":"Operaciones de eliminación","href":"Delete-Operations","type":2,"isActive":false},{"label":"Conclusión","href":"Conclusion","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/filtering-templating.md b/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/filtering-templating.md
new file mode 100644
index 000000000..b58163ab2
--- /dev/null
+++ b/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/filtering-templating.md
@@ -0,0 +1,156 @@
+---
+id: filtering-templating.md
+summary: >-
+ En Milvus, las expresiones de filtro complejas con numerosos elementos,
+ especialmente las que implican caracteres no ASCII como los caracteres CJK,
+ pueden afectar significativamente al rendimiento de la consulta. Para
+ solucionar este problema, Milvus introduce un mecanismo de plantillas de
+ expresiones de filtro diseñado para mejorar la eficacia reduciendo el tiempo
+ empleado en analizar expresiones complejas. Esta página explica el uso de
+ plantillas de expresiones de filtro en operaciones de búsqueda, consulta y
+ eliminación.
+title: Filtrado Plantillas
+---
+
Plantillas de filtro
+
+
+
+
En Milvus, las expresiones de filtro complejas con numerosos elementos, especialmente las que implican caracteres no ASCII como los caracteres CJK, pueden afectar significativamente al rendimiento de la consulta. Para solucionar este problema, Milvus introduce un mecanismo de plantillas de expresiones de filtro diseñado para mejorar la eficacia reduciendo el tiempo empleado en analizar expresiones complejas. Esta página explica el uso de plantillas de expresiones de filtro en operaciones de búsqueda, consulta y eliminación.
+
Descripción general
+
+
+
+
Las plantillas de expresiones de filtrado permiten crear expresiones de filtrado con marcadores de posición que pueden sustituirse dinámicamente por valores durante la ejecución de la consulta. El uso de plantillas permite evitar la incrustación de matrices de gran tamaño o expresiones complejas directamente en el filtro, lo que reduce el tiempo de análisis y mejora el rendimiento de las consultas.
+
Supongamos que tiene una expresión de filtro que incluye dos campos, age y city, y desea encontrar a todas las personas cuya edad sea superior a 25 años y que vivan en "北京" (Pekín) o "上海" (Shanghái). En lugar de incrustar directamente los valores en la expresión del filtro, puede utilizar una plantilla.
+
filter = "age > {age} AND city IN {city}"
+filter_params = {"age": 25, "city": ["北京", "上海"]}
+
+
+
Aquí, {age} y {city} son marcadores de posición que se sustituirán por los valores reales en filter_params cuando se ejecute la consulta.
+
El uso de plantillas de expresión de filtro en Milvus tiene varias ventajas clave.
+
+
Reducción del tiempo de análisis: Al sustituir expresiones de filtro grandes o complejas por marcadores de posición, el sistema emplea menos tiempo en analizar y procesar el filtro.
+
Mejora del rendimiento de las consultas: Al reducirse la sobrecarga de análisis sintáctico, mejora el rendimiento de las consultas, lo que se traduce en mayores QPS y tiempos de respuesta más rápidos.
+
Escalabilidad: A medida que sus conjuntos de datos crecen y las expresiones de filtro se vuelven más complejas, la creación de plantillas garantiza que el rendimiento siga siendo eficiente y escalable.
+
+
Operaciones de búsqueda
+
+
+
+
Para las operaciones de búsqueda en Milvus, la expresión filter se utiliza para definir la condición de filtrado, y el parámetro filter_params se utiliza para especificar los valores de los marcadores de posición. El diccionario filter_params contiene los valores dinámicos que Milvus utilizará para sustituir en la expresión de filtrado.
En este ejemplo, Milvus sustituirá dinámicamente {age} por 25 y {city} por ["北京", "上海"] al ejecutar la búsqueda.
+
Operaciones de consulta
+
+
+
+
El mismo mecanismo de plantillas puede aplicarse a las operaciones de consulta en Milvus. En la función query, se define la expresión de filtro y se utiliza filter_params para especificar los valores a sustituir.
Utilizando filter_params, Milvus maneja eficientemente la inserción dinámica de valores, mejorando la velocidad de ejecución de la consulta.
+
Operaciones de eliminación
+
+
+
+
También puede utilizar plantillas de expresiones de filtrado en operaciones de eliminación. De forma similar a la búsqueda y la consulta, la expresión filter define las condiciones y filter_params proporciona los valores dinámicos para los marcadores de posición.
+
expr = "age > {age} AND city IN {city}"
+filter_params = {"age": 25, "city": ["北京", "上海"]}
+res = client.delete(
+ "hello_milvus",
+ filter=expr,
+ filter_params=filter_params
+)
+
+
+
Este enfoque mejora el rendimiento de las operaciones de eliminación, especialmente cuando se trata de condiciones de filtro complejas.
+
Conclusión
+
+
+
+
Las plantillas de expresiones de filtro son una herramienta esencial para optimizar el rendimiento de las consultas en Milvus. Utilizando marcadores de posición y el diccionario filter_params, puede reducir significativamente el tiempo empleado en analizar expresiones de filtro complejas. Esto conduce a una ejecución más rápida de la consulta y a un mejor rendimiento general.
diff --git a/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/json-operators.json b/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/json-operators.json
new file mode 100644
index 000000000..a4f935b30
--- /dev/null
+++ b/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/json-operators.json
@@ -0,0 +1 @@
+{"codeList":["# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter = 'json_contains(tags, \"sale\")'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\", \"discount\"]}\nfilter = 'json_contains_all(tags, [\"electronics\", \"sale\", \"new\"])'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter = 'json_contains_any(tags, [\"electronics\", \"new\", \"clearance\"])'\n\n"],"headingContent":"JSON Operators","anchorList":[{"label":"Operadores JSON","href":"JSON-Operators","type":1,"isActive":false},{"label":"Operadores JSON disponibles","href":"Available-JSON-Operators","type":2,"isActive":false},{"label":"JSON_CONTAINS","href":"JSONCONTAINS","type":2,"isActive":false},{"label":"JSON_CONTAINS_ALL","href":"JSONCONTAINSALL","type":2,"isActive":false},{"label":"JSON_COTAINS_ANY","href":"JSONCOTAINSANY","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/json-operators.md b/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/json-operators.md
new file mode 100644
index 000000000..2edbe7784
--- /dev/null
+++ b/localization/v2.5.x/site/es/userGuide/search-query-get/boolean/json-operators.md
@@ -0,0 +1,122 @@
+---
+id: json-operators.md
+summary: >-
+ Milvus admite operadores avanzados para consultar y filtrar campos JSON, lo
+ que los hace perfectos para gestionar datos complejos y estructurados. Estos
+ operadores permiten una consulta altamente efectiva de documentos JSON,
+ permitiéndole recuperar entidades basadas en elementos específicos, valores o
+ condiciones dentro de los campos JSON. Esta sección le guiará a través del uso
+ de operadores específicos JSON en Milvus, proporcionando ejemplos prácticos
+ para ilustrar su funcionalidad.
+title: Operadores JSON
+---
+
Operadores JSON
+
+
+
+
Milvus soporta operadores avanzados para consultar y filtrar campos JSON, haciéndolos perfectos para gestionar datos complejos y estructurados. Estos operadores permiten una consulta altamente efectiva de documentos JSON, permitiéndole recuperar entidades basadas en elementos específicos, valores o condiciones dentro de los campos JSON. Esta sección le guiará a través del uso de operadores específicos JSON en Milvus, proporcionando ejemplos prácticos para ilustrar su funcionalidad.
+
+
Los campos JSON no pueden manejar estructuras anidadas complejas y tratan todas las estructuras anidadas como cadenas simples. Por lo tanto, cuando se trabaja con campos JSON, es aconsejable evitar el anidamiento excesivamente profundo y asegurarse de que sus estructuras de datos son tan planas como sea posible para un rendimiento óptimo.
+
+
Operadores JSON disponibles
+
+
+
+
Milvus proporciona varios potentes operadores JSON que ayudan a filtrar y consultar datos JSON, y estos operadores son.
Exploremos estos operadores con ejemplos para ver cómo se pueden aplicar en situaciones reales.
+
JSON_CONTAINS
+
+
+
+
El operador json_contains comprueba si existe un elemento o subarray específico dentro de un campo JSON. Es útil cuando quieres asegurarte de que un array u objeto JSON contiene un valor concreto.
+
Ejemplo
+
Imagine que tiene una colección de productos, cada uno con un campo tags que contiene una matriz JSON de cadenas, como ["electronics", "sale", "new"]. Quiere filtrar los productos que tienen la etiqueta "sale".
En este ejemplo, Milvus devolverá todos los productos cuyo campo tags contenga el elemento "sale".
+
JSON_CONTAINS_ALL
+
+
+
+
El operador json_contains_all garantiza que todos los elementos de una expresión JSON especificada estén presentes en el campo de destino. Resulta especialmente útil cuando es necesario buscar múltiples valores dentro de una matriz JSON.
+
Ejemplo
+
Siguiendo con el escenario de las etiquetas de producto, si desea encontrar todos los productos que tengan las etiquetas "electronics", "sale", y "new", puede utilizar el operador json_contains_all.
Esta consulta devolverá todos los productos cuya matriz tags contenga los tres elementos especificados: "electronics", "sale", y "new".
+
JSON_COTAINS_ANY
+
+
+
+
El operador json_contains_any filtra las entidades en las que existe al menos un miembro de la expresión JSON dentro del campo. Resulta útil cuando se desea buscar entidades en función de uno de varios valores posibles.
+
Ejemplo
+
Supongamos que desea filtrar productos que tengan al menos una de las etiquetas "electronics", "sale", o "new". Puede utilizar el operador json_contains_any para conseguirlo.
En este caso, Milvus le devolverá todos los productos que tengan al menos una de las etiquetas de la lista ["electronics", "new", "clearance"]. Incluso si un producto sólo tiene una de estas etiquetas, se incluirá en el resultado.
diff --git a/localization/v2.5.x/site/es/userGuide/tools/milvus-webui.json b/localization/v2.5.x/site/es/userGuide/tools/milvus-webui.json
new file mode 100644
index 000000000..1a85834e8
--- /dev/null
+++ b/localization/v2.5.x/site/es/userGuide/tools/milvus-webui.json
@@ -0,0 +1 @@
+{"codeList":[],"headingContent":"Milvus WebUI","anchorList":[{"label":"Milvus WebUI","href":"Milvus-WebUI","type":1,"isActive":false},{"label":"Visión general","href":"Overview","type":2,"isActive":false},{"label":"Inicio","href":"Home","type":2,"isActive":false},{"label":"Colecciones","href":"Collections","type":2,"isActive":false},{"label":"Consulta","href":"Query","type":2,"isActive":false},{"label":"Datos","href":"Data","type":2,"isActive":false},{"label":"Tareas","href":"Tasks","type":2,"isActive":false},{"label":"Solicitudes lentas","href":"Slow-requests","type":2,"isActive":false},{"label":"Configuraciones","href":"Configurations","type":2,"isActive":false},{"label":"Herramientas","href":"Tools","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/es/userGuide/tools/milvus-webui.md b/localization/v2.5.x/site/es/userGuide/tools/milvus-webui.md
new file mode 100644
index 000000000..8f177567e
--- /dev/null
+++ b/localization/v2.5.x/site/es/userGuide/tools/milvus-webui.md
@@ -0,0 +1,279 @@
+---
+id: milvus-webui.md
+summary: >-
+ Milvus Web UI es una herramienta de gestión gráfica para Milvus. Mejora la
+ observabilidad del sistema con una interfaz sencilla e intuitiva. Puede
+title: Milvus WebUI
+---
+
Milvus WebUI
+
+
+
+
Milvus Web UI es una herramienta de gestión gráfica para Milvus. Mejora la observabilidad del sistema con una interfaz sencilla e intuitiva. Puede utilizar Milvus Web UI para observar las estadísticas y métricas de los componentes y dependencias de Milvus, comprobar los detalles de la base de datos y la colección, y listar las configuraciones detalladas de Milvus.
+
Visión general
+
+
+
+
Milvus Web UI difiere de Birdwatcher y Attu en que es una herramienta incorporada para proporcionar una observabilidad general del sistema con una interfaz sencilla e intuitiva.
+
La siguiente tabla compara las características de Milvus Web UI y Birdwatcher/Attu:
+
+
+
Característica
Milvus Web UI
Birdwatcher
Attu
+
+
+
Forma operativa
GUI
CLI
GUI
+
Usuarios objetivo
Responsables de mantenimiento, desarrolladores
Responsables
Desarrolladores
+
Instalación
Integrado en
Herramienta independiente
Herramienta independiente
+
Dependencias
Milvus
Milvus / etcd
Milvus
+
Funciones principales
Entorno de ejecución, detalles de la base de datos/colección, segmentos, canales, tareas y solicitudes de consultas lentas
Inspección de metadatos y ejecución de la API de Milvus
Gestión de bases de datos y tareas operativas
+
+
+
Milvus Web UI proporciona las siguientes funciones:
Puede encontrar información sobre la instancia de Milvus que se está ejecutando actualmente, sus componentes, los clientes conectados y las dependencias.
Puede ver las estadísticas recopiladas de los nodos de consulta y los coordinadores de consulta en términos de segmentos, canales, réplicas y grupos de recursos.
Puede ver la lista de tareas que se ejecutan en Milvus, incluidas las tareas del programador de Querycoord, las tareas de compactación, las tareas de creación de índices, las tareas de importación y las tareas de sincronización de datos.
Puede acceder a las dos herramientas integradas, pprof y la herramienta de visualización de datos de Milvus, desde la interfaz web.
+
+
Inicio
+
+
+
+
En la página de Inicio, puede encontrar la siguiente información:
+
+
+
+ Inicio de Milvus Web UI
+
+
Información del sistema: Ver información del sistema, incluida información sobre el modo de despliegue, la imagen utilizada en el despliegue e información relacionada.
+
Información del componente: Ver el estado y las métricas de los componentes en Milvus, incluyendo el estado y las métricas de los nodos de consulta, nodos de datos, nodos de índice, coordinadores y proxies.
+
Clientes conectados: Vea los clientes conectados y su información, incluido el tipo y la versión del SDK, el nombre de usuario y su historial de acceso.
+
Dependencias del sistema: Vea el estado y las métricas de las dependencias de Milvus, incluidos el estado y las métricas del metaalmacén, la cola de mensajes y el almacenamiento de objetos.
+
+
Colecciones
+
+
+
+
En la página Colecciones, puede ver la lista de bases de datos y colecciones actualmente en Milvus y comprobar sus detalles.
+
+
+
+ Colecciones de Milvus Web UI
+
+
Base de datos: Vea la lista de bases de datos actualmente en Milvus y sus detalles.
+
Colecciones: Ver la lista de colecciones en cada base de datos y sus detalles.
+
+
Consulta
+
+
+
+
+
+
+ Página de consulta de la interfaz web de Milvus
+
+
Segmentos: Ver la lista de segmentos y sus detalles, incluido el ID del segmento, la colección correspondiente, el estado, el tamaño, etc.
+
En la columna Desde, puede encontrar la fuente del segmento. Los posibles indicadores de origen son los siguientes
+
+
QN: Nodo de consulta
+
CT: Objetivo actual en QueryCoord
+
NT: Objetivo siguiente en QueryCoord
+
DIST: Distribución en QueryCoord
+
+
Canales: Vea la lista de canales y sus detalles, incluido el nombre del canal, las colecciones correspondientes, etc.
+
En la columna Desde, puede encontrar la fuente del segmento. Los posibles indicadores de origen son los siguientes
+
+
QN: Nodo de consulta
+
CT: Objetivo actual en QueryCoord
+
NT: Objetivo siguiente en QueryCoord
+
DIST: Distribución en QueryCoord
+
+
Réplicas: Ver la lista de réplicas y sus detalles, incluyendo el ID de la réplica, la colección correspondiente, etc.
+
Grupos de recursos: Ver la lista de grupos de recursos y sus detalles, incluyendo el nombre del grupo de recursos, el número de nodos de consulta en el grupo, y sus configuraciones, etc.
+
+
Datos
+
+
+
+
+
+
+ Página de datos de Milvus Web UI
+
+
Segmentos: Ver la lista de segmentos de los nodos de datos/coordinadores y sus detalles, incluido el ID del segmento, la colección correspondiente, el estado, el tamaño, etc.
+
Canales: Vea la lista de canales de los nodos/coordinadores de datos y sus detalles, incluido el nombre del canal, las colecciones correspondientes, etc.
+
+
Tareas
+
+
+
+
+
+
+ Página de tareas de Milvus Web UI
+
+
Tareas: Ver la lista de tareas en ejecución en Milvus, incluyendo el tipo de tarea, estado y acciones.
+
+
Tareas QueryCoord: Ver todas las tareas del programador QueryCoord, incluidos los verificadores de equilibrador, índice/segmento/canal/líder en los últimos 15 minutos.
+
Tareas decompactación: Ver todas las tareas de compactación de los coordinadores de datos en los últimos 15 minutos.
+
Tareas decreación de índices: Ver todas las tareas de creación de índices de los coordinadores de datos en los últimos 30 minutos.
+
Tareas deimportación: Ver todas las tareas de importación de los coordinadores de datos en los últimos 30 minutos.
+
Tareas desincronización de datos: Ver todas las tareas de sincronización de datos de los nodos de datos en los últimos 15 minutos.
+
+
+
Solicitudes lentas
+
+
+
+
+
+
+ Página de solicitudes lentas de Milvus Web UI
+
+
Peticiones lentas: Una solicitud lenta es una búsqueda o una consulta que tiene una latencia superior al valor de proxy.slowQuerySpanInSeconds especificado en la configuración. La lista de peticiones lentas muestra todas las peticiones lentas de los últimos 15 minutos.
+
+
Configuraciones
+
+
+
+
+
+
+ Página de configuraciones de Milvus Web UI
+
+
Configuraciones: Vea la lista de configuraciones de tiempo de ejecución de Milvus y sus valores.
+
+
Herramientas
+
+
+
+
+
pprof: Acceda a la herramienta pprof para perfilar y depurar Milvus.
+
Herramienta de visualización de datos de Milvus: Acceda a la herramienta de visualización de datos de Milvus para visualizar los datos en Milvus.
+
diff --git a/localization/v2.5.x/site/fr/adminGuide/config_jaeger_tracing.md b/localization/v2.5.x/site/fr/adminGuide/config_jaeger_tracing.md
index 87c6b5006..ec89d5e3a 100644
--- a/localization/v2.5.x/site/fr/adminGuide/config_jaeger_tracing.md
+++ b/localization/v2.5.x/site/fr/adminGuide/config_jaeger_tracing.md
@@ -67,7 +67,7 @@ $ kubectl create -f https://github.com/jaegertracing/jaeger-operator/releases/do
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
jaeger-operator111148s
-
2. Déployer Jager
La manière la plus simple de créer une instance de Jaeger est de créer un fichier YAML comme dans l'exemple suivant. Cela installera la stratégie AllInOne par défaut, qui déploie l'image tout-en-un (combinant jaeger-agent, jaeger-collector, jaeger-query, et Jaeger UI) dans un seul pod, en utilisant le stockage en mémoire par défaut.
+
2. Déployer Jaeger
La manière la plus simple de créer une instance de Jaeger est de créer un fichier YAML comme dans l'exemple suivant. Cela installera la stratégie AllInOne par défaut, qui déploie l'image tout-en-un (combinant jaeger-agent, jaeger-collector, jaeger-query, et Jaeger UI) dans un seul pod, en utilisant le stockage en mémoire par défaut.
Si vous souhaitez stocker des traces pendant une longue période, veuillez vous référer à production-strategy.
apiVersion: jaegertracing.io/v1
kind: Jaeger
diff --git a/localization/v2.5.x/site/fr/adminGuide/configure-docker.json b/localization/v2.5.x/site/fr/adminGuide/configure-docker.json
index dffab2a61..46a74efc1 100644
--- a/localization/v2.5.x/site/fr/adminGuide/configure-docker.json
+++ b/localization/v2.5.x/site/fr/adminGuide/configure-docker.json
@@ -1 +1 @@
-{"codeList":["$ wget https://raw.githubusercontent.com/milvus-io/milvus/v2.5.0-beta/configs/milvus.yaml\n","# For Milvus standalone\n$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0-beta/milvus-standalone-docker-compose.yml -O docker-compose.yml\n","...\n standalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.2.13\n command: [\"milvus\", \"run\", \"standalone\"]\n environment:\n ETCD_ENDPOINTS: etcd:2379\n MINIO_ADDRESS: minio:9000\n volumes:\n - /local/path/to/your/milvus.yaml:/milvus/configs/milvus.yaml # Map the local path to the container path\n - ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/milvus:/var/lib/milvus\n ports:\n - \"19530:19530\"\n - \"9091:9091\"\n depends_on:\n - \"etcd\"\n - \"minio\"\n...\n","$ sudo docker compose up -d\n"],"headingContent":"Configure Milvus with Docker Compose","anchorList":[{"label":"Configurer Milvus avec Docker Compose","href":"Configure-Milvus-with-Docker-Compose","type":1,"isActive":false},{"label":"Télécharger un fichier de configuration","href":"Download-a-configuration-file","type":2,"isActive":false},{"label":"Modifier le fichier de configuration","href":"Modify-the-configuration-file","type":2,"isActive":false},{"label":"Télécharger un fichier d'installation","href":"Download-an-installation-file","type":2,"isActive":false},{"label":"Modifier le fichier d'installation","href":"Modify-the-installation-file","type":2,"isActive":false},{"label":"Démarrer Milvus","href":"Start-Milvus","type":2,"isActive":false},{"label":"Prochaines étapes","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["$ wget https://raw.githubusercontent.com/milvus-io/milvus/v2.5.0/configs/milvus.yaml\n","# For Milvus standalone\n$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0/milvus-standalone-docker-compose.yml -O docker-compose.yml\n","...\n standalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.2.13\n command: [\"milvus\", \"run\", \"standalone\"]\n environment:\n ETCD_ENDPOINTS: etcd:2379\n MINIO_ADDRESS: minio:9000\n volumes:\n - /local/path/to/your/milvus.yaml:/milvus/configs/milvus.yaml # Map the local path to the container path\n - ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/milvus:/var/lib/milvus\n ports:\n - \"19530:19530\"\n - \"9091:9091\"\n depends_on:\n - \"etcd\"\n - \"minio\"\n...\n","$ sudo docker compose up -d\n"],"headingContent":"Configure Milvus with Docker Compose","anchorList":[{"label":"Configurer Milvus avec Docker Compose","href":"Configure-Milvus-with-Docker-Compose","type":1,"isActive":false},{"label":"Télécharger un fichier de configuration","href":"Download-a-configuration-file","type":2,"isActive":false},{"label":"Modifier le fichier de configuration","href":"Modify-the-configuration-file","type":2,"isActive":false},{"label":"Télécharger un fichier d'installation","href":"Download-an-installation-file","type":2,"isActive":false},{"label":"Modifier le fichier d'installation","href":"Modify-the-installation-file","type":2,"isActive":false},{"label":"Démarrer Milvus","href":"Start-Milvus","type":2,"isActive":false},{"label":"Prochaines étapes","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/fr/adminGuide/configure-docker.md b/localization/v2.5.x/site/fr/adminGuide/configure-docker.md
index f0e5d7ce3..5483fef38 100644
--- a/localization/v2.5.x/site/fr/adminGuide/configure-docker.md
+++ b/localization/v2.5.x/site/fr/adminGuide/configure-docker.md
@@ -38,8 +38,8 @@ Dans la version actuelle, tous les paramètres ne prennent effet qu'après le re
d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"
>
-
Téléchargezmilvus.yaml directement ou à l'aide de la commande suivante.
Modifier le fichier d'installation resp = client.listUsers();\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nmilvusClient.listUsers()\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","['root']\n\n","from pymilvus import MilvusClient\n\nclient.drop_role(role_name=\"role_a\")\n\n","import io.milvus.v2.service.rbac.request.DropRoleReq\n\nDropRoleReq dropRoleReq = DropRoleReq.builder()\n .roleName(\"role_a\")\n .build();\nclient.dropRole(dropRoleReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nmilvusClient.dropRole({\n roleName: 'role_a',\n })\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/drop\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.list_roles()\n\n","List resp = client.listRoles();\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nmilvusClient.listRoles(\n includeUserInfo: True\n)\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","['admin']\n\n"],"headingContent":"Drop Users & Roles","anchorList":[{"label":"Supprimer des utilisateurs et des rôles","href":"Drop-Users--Roles","type":1,"isActive":false},{"label":"Supprimer un utilisateur","href":"Drop-a-user","type":2,"isActive":false},{"label":"Abandonner un rôle","href":"Drop-a-role","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/fr/adminGuide/drop_users_roles.md b/localization/v2.5.x/site/fr/adminGuide/drop_users_roles.md
new file mode 100644
index 000000000..658897405
--- /dev/null
+++ b/localization/v2.5.x/site/fr/adminGuide/drop_users_roles.md
@@ -0,0 +1,205 @@
+---
+id: drop_users_roles.md
+related_key: enable RBAC
+summary: >-
+ Pour garantir la sécurité des données, il est recommandé de supprimer les
+ utilisateurs et les rôles qui ne sont plus utilisés. Ce guide explique comment
+ supprimer des utilisateurs et des rôles.
+title: Supprimer des utilisateurs et des rôles
+---
+
Supprimer des utilisateurs et des rôles
+
+
+
+
Pour garantir la sécurité des données, il est recommandé de supprimer les utilisateurs et les rôles qui ne sont plus utilisés. Ce guide explique comment supprimer des utilisateurs et des rôles.
Voici un exemple de résultat. Il n'y a pas de role_a dans la liste. L'opération de suppression est réussie.
+
['admin']
+
+
diff --git a/localization/v2.5.x/site/fr/adminGuide/grant_privileges.json b/localization/v2.5.x/site/fr/adminGuide/grant_privileges.json
new file mode 100644
index 000000000..ea3e99b3e
--- /dev/null
+++ b/localization/v2.5.x/site/fr/adminGuide/grant_privileges.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.grant_privilege_v2(\n role_name=\"role_a\",\n privilege=\"Search\"\n collection_name='collection_01'\n db_name='default',\n)\n \nclient.grant_privilege_v2(\n role_name=\"role_a\",\n privilege=\"privilege_group_1\"\n collection_name='collection_01'\n db_name='default',\n)\n\nclient.grant_privilege_v2(\n role_name=\"role_a\",\n privilege=\"ClusterReadOnly\"\n collection_name='*'\n db_name='*',\n)\n","import io.milvus.v2.service.rbac.request.GrantPrivilegeReqV2\n\nclient.grantPrivilegeV2(GrantPrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"Search\")\n .collectionName(\"collection_01\")\n .dbName(\"default\")\n .build());\n\nclient.grantPrivilegeV2(GrantPrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"privilege_group_1\")\n .collectionName(\"collection_01\")\n .dbName(\"default\")\n .build());\n\nclient.grantPrivilegeV2(GrantPrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"ClusterReadOnly\")\n .collectionName(\"*\")\n .dbName(\"*\")\n .build());\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.GrantV2(context.Background(), \"role_a\", \"collection_01\", \"Search\", entity.WithOperatePrivilegeDatabase(\"default\"))\n\nclient.GrantV2(context.Background(), \"role_a\", \"collection_01\", \"privilege_group_1\", entity.WithOperatePrivilegeDatabase(\"default\"))\n\nclient.GrantV2(context.Background(), \"role_a\", \"*\", \"ClusterReadOnly\", entity.WithOperatePrivilegeDatabase(\"*\"))\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nconst address = \"http://localhost:19530\";\nconst token = \"root:Milvus\";\nconst client = new MilvusClient({address, token});\n\nawait milvusClient.grantPrivilege({\n roleName: 'role_a',\n object: 'Collection', \n objectName: 'collection_01',\n privilegeName: 'Search'\n });\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/grant_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"Search\",\n \"collectionName\": \"collection_01\",\n \"dbName\":\"default\"\n}'\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/grant_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"privilege_group_1\",\n \"collectionName\": \"collection_01\",\n \"dbName\":\"default\"\n}'\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/grant_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"ClusterReadOnly\",\n \"collectionName\": \"*\",\n \"dbName\":\"*\"\n}'\n","from pymilvus import MilvusClient\n\nclient.describe_role(role_name=\"role_a\")\n","import io.milvus.v2.service.rbac.response.DescribeRoleResp;\nimport io.milvus.v2.service.rbac.request.DescribeRoleReq\n\nDescribeRoleReq describeRoleReq = DescribeRoleReq.builder()\n .roleName(\"role_a\")\n .build();\nDescribeRoleResp resp = client.describeRole(describeRoleReq);\nList infos = resp.getGrantInfos();\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.ListRoles(context.Background())\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.describeRole({roleName: 'role_a'});\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/describe\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\"\n}'\n","{\n \"role\": \"role_a\",\n \"privileges\": [\n {\n \"collection_name\": \"collection_01\",\n \"db_name\": \"default\",\n \"role_name\": \"role_a\",\n \"privilege\": \"Search\",\n \"grantor_name\": \"root\"\n },\n \"privilege_group_1\"\n ]\n}\n","from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.revoke_privilege_v2(\n role_name=\"role_a\",\n privilege=\"Search\"\n collection_name='collection_01'\n db_name='default',\n)\n \nclient.revoke_privilege_v2(\n role_name=\"role_a\",\n privilege=\"privilege_group_1\"\n collection_name='collection_01'\n db_name='default',\n)\n\nclient.revoke_privilege_v2(\n role_name=\"role_a\",\n privilege=\"ClusterReadOnly\"\n collection_name='*'\n db_name='*',\n)\n","import io.milvus.v2.service.rbac.request.RevokePrivilegeReqV2\n\nclient.revokePrivilegeV2(RevokePrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"Search\")\n .collectionName(\"collection_01\")\n .dbName(\"default\")\n .build());\n\nclient.revokePrivilegeV2(RevokePrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"privilege_group_1\")\n .collectionName(\"collection_01\")\n .dbName(\"default\")\n .build());\n\nclient.revokePrivilegeV2(RevokePrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"ClusterReadOnly\")\n .collectionName(\"*\")\n .dbName(\"*\")\n .build());\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.RevokeV2(context.Background(), \"role_a\", \"collection_01\", \"Search\", entity.WithOperatePrivilegeDatabase(\"default\"))\n\nclient.RevokeV2(context.Background(), \"role_a\", \"collection_01\", \"privielge_group_1\", entity.WithOperatePrivilegeDatabase(\"default\"))\n\nclient.RevokeV2(context.Background(), \"role_a\", \"*\", \"ClusterReadOnly\", entity.WithOperatePrivilegeDatabase(\"*\"))\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/revoke_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"Search\",\n \"collectionName\": \"collection_01\",\n \"dbName\":\"default\"\n}'\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/revoke_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"Search\",\n \"collectionName\": \"collection_01\",\n \"dbName\":\"default\"\n}'\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/revoke_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"ClusterReadOnly\",\n \"collectionName\": \"*\",\n \"dbName\":\"*\"\n}'\n"],"headingContent":"Grant Privilege or Privilege Group to Roles","anchorList":[{"label":"Octroi de privilèges ou de groupes de privilèges à des rôles","href":"Grant-Privilege-or-Privilege-Group-to-Roles","type":1,"isActive":false},{"label":"Octroi d'un privilège ou d'un groupe de privilèges à un rôle","href":"Grant-a-privilege-or-a-privilege-group-to-a-role","type":2,"isActive":false},{"label":"Décrire un rôle","href":"Describe-a-role","type":2,"isActive":false},{"label":"Révoquer un privilège ou un groupe de privilèges d'un rôle","href":"Revoke-a-privilege-or-a-privilege-group-from-a-role","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/fr/adminGuide/grant_privileges.md b/localization/v2.5.x/site/fr/adminGuide/grant_privileges.md
new file mode 100644
index 000000000..1b0bbc8f0
--- /dev/null
+++ b/localization/v2.5.x/site/fr/adminGuide/grant_privileges.md
@@ -0,0 +1,543 @@
+---
+id: grant_privileges.md
+related_key: enable RBAC
+summary: >-
+ Une fois qu'un rôle est créé, vous pouvez lui accorder des privilèges. Ce
+ guide explique comment accorder des privilèges ou des groupes de privilèges à
+ un rôle.
+title: Octroi de privilèges ou de groupes de privilèges à des rôles
+---
+
Octroi de privilèges ou de groupes de privilèges à des rôles
+
+
+
+
Une fois qu'un rôle est créé, vous pouvez lui accorder des privilèges. Ce guide explique comment accorder des privilèges ou des groupes de privilèges à un rôle.
+
Octroi d'un privilège ou d'un groupe de privilèges à un rôle
+
+
+
+
Milvus 2.5 introduit une nouvelle version de l'API qui rationalise l'opération d'octroi. Il n'est plus nécessaire de rechercher le type d'objet lors de l'octroi d'un privilège à un rôle. Voici les paramètres et les explications correspondantes.
+
+
role_name : Le nom du rôle cible auquel le(s) privilège(s) ou le(s) groupe(s) de privilèges doit(vent) être accordé(s).
+
Ressource: La ressource cible d'un privilège, qui peut être une instance, une base de données ou une collection spécifique. Le tableau suivant explique comment spécifier la ressource dans la méthode client.grantV2().
Saisissez `*` comme nom de base de données et `*` comme nom de collection.
+
+
+
Privilège: Le privilège spécifique ou le groupe de privilèges que vous devez accorder à un rôle. Actuellement, Milvus propose 56 types de privilèges que vous pouvez accorder. Le tableau ci-dessous répertorie les privilèges dans Milvus.
+
+
La colonne "type" du tableau ci-dessous est utilisée pour faciliter la recherche rapide des privilèges et n'est utilisée qu'à des fins de classification. Lors de l'octroi de privilèges, il n'est pas nécessaire de comprendre les types. Il vous suffit de saisir les privilèges correspondants.
+
+
+
**Type **
+
**Privilège**
+
**Description
+
**Description de l'API correspondante du côté du client.
+
Privilèges relatifs aux bases de données
+
Liste des bases de données
+
Affiche toutes les bases de données de l'instance actuelle
Persiste toutes les entités d'une collection dans un segment scellé. Toute entité insérée après l'opération de vidage sera stockée dans un nouveau segment.
L'exemple suivant montre comment accorder le privilège PrivilegeSearch à collection_01 sous la base de données par défaut ainsi qu'un groupe de privilèges nommé privilege_group_1 au rôle role_a.
Révoquer un privilège ou un groupe de privilèges d'un rôle
+
+
+
+
L'exemple suivant montre comment révoquer le privilège PrivilegeSearch sur collection_01 sous la base de données par défaut ainsi que le groupe de privilèges privilege_group_1 qui ont été accordés au rôle role_a.
diff --git a/localization/v2.5.x/site/fr/adminGuide/grant_roles.json b/localization/v2.5.x/site/fr/adminGuide/grant_roles.json
new file mode 100644
index 000000000..f5abbc9c2
--- /dev/null
+++ b/localization/v2.5.x/site/fr/adminGuide/grant_roles.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.grant_role(user_name=\"user_1\", role_name=\"role_a\")\n\n","import io.milvus.v2.client.ConnectConfig;\nimport io.milvus.v2.client.MilvusClientV2;\nimport io.milvus.v2.service.rbac.request.GrantRoleReq;\n\nString CLUSTER_ENDPOINT = \"http://localhost:19530\";\nString TOKEN = \"root:Milvus\";\n\n\nConnectConfig connectConfig = ConnectConfig.builder()\n .uri(CLUSTER_ENDPOINT)\n .token(TOKEN)\n .build();\n \nMilvusClientV2 client = new MilvusClientV2(connectConfig);\n\nGrantRoleReq grantRoleReq = GrantRoleReq.builder()\n .roleName(\"role_a\")\n .userName(\"user_1\")\n .build();\nclient.grantRole(grantRoleReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nconst address = \"http://localhost:19530\";\nconst token = \"root:Milvus\";\nconst client = new MilvusClient({address, token});\n\nmilvusClient.grantRole({\n username: 'user_1',\n roleName: 'role_a'\n })\n\n","export CLUSTER_ENDPOINT=\"http://localhost:19530\"\nexport TOKEN=\"root:Milvus\"\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/grant_role\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"userName\": \"user_1\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.describe_user(user_name=\"user_1\")\n\n","import io.milvus.v2.service.rbac.request.DescribeUserReq;\nimport io.milvus.v2.service.rbac.response.DescribeUserResp;\n\nDescribeUserReq describeUserReq = DescribeUserReq.builder()\n .userName(\"user_1\")\n .build();\nDescribeUserResp describeUserResp = client.describeUser(describeUserReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nmilvusClient.describeUser({username: 'user_1'})\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/describe\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"userName\": \"user_1\"\n}'\n\n","{'user_name': 'user_1', 'roles': 'role_a'}\n\n","from pymilvus import MilvusClient\n\nclient.revoke_role(\n user_name='user_1',\n role_name='role_a'\n)\n\n","import io.milvus.v2.service.rbac.request.RevokeRoleReq;\n\nclient.revokeRole(RevokeRoleReq.builder()\n .userName(\"user_1\")\n .roleName(\"role_a\")\n .build());\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\n\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/revoke_role\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"userName\": \"user_1\",\n \"roleName\": \"role_a\"\n}'\n\n"],"headingContent":"Grant Roles to Users","anchorList":[{"label":"Attribution de rôles aux utilisateurs","href":"Grant-Roles-to-Users","type":1,"isActive":false},{"label":"Attribution d'un rôle à un utilisateur","href":"Grant-a-role-to-a-user","type":2,"isActive":false},{"label":"Décrire l'utilisateur","href":"Describe-user","type":2,"isActive":false},{"label":"Révoquer un rôle","href":"Revoke-a-role","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/fr/adminGuide/grant_roles.md b/localization/v2.5.x/site/fr/adminGuide/grant_roles.md
new file mode 100644
index 000000000..48b5fb646
--- /dev/null
+++ b/localization/v2.5.x/site/fr/adminGuide/grant_roles.md
@@ -0,0 +1,204 @@
+---
+id: grant_roles.md
+related_key: enable RBAC
+summary: >-
+ Après avoir créé un rôle et lui avoir accordé des privilèges, vous pouvez
+ attribuer le rôle à des utilisateurs afin qu'ils puissent accéder aux
+ ressources et effectuer les actions définies par le rôle. Vous pouvez
+ attribuer plusieurs rôles à un utilisateur ou attribuer un rôle à plusieurs
+ utilisateurs. Ce guide explique comment attribuer des rôles aux utilisateurs.
+title: Attribution de rôles aux utilisateurs
+---
+
Attribution de rôles aux utilisateurs
+
+
+
+
Après avoir créé un rôle et lui avoir accordé des privilèges, vous pouvez attribuer le rôle aux utilisateurs afin qu'ils puissent accéder aux ressources et effectuer les actions définies par le rôle. Vous pouvez attribuer plusieurs rôles à un utilisateur ou attribuer un rôle à plusieurs utilisateurs. Ce guide explique comment attribuer des rôles aux utilisateurs.
+
L'utilisateur intégré root dans Milvus s'est déjà vu attribuer le rôle admin, qui dispose de tous les privilèges. Il n'est pas nécessaire de lui attribuer d'autres rôles.
+
Attribution d'un rôle à un utilisateur
+
+
+
+
L'exemple suivant montre comment attribuer le rôle role_a à l'utilisateur user_1.
diff --git a/localization/v2.5.x/site/fr/adminGuide/privilege_group.json b/localization/v2.5.x/site/fr/adminGuide/privilege_group.json
new file mode 100644
index 000000000..d1b2c5a9d
--- /dev/null
+++ b/localization/v2.5.x/site/fr/adminGuide/privilege_group.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\nclient.create_privileg_group(group_name='privilege_group_1')\n\n","import io.milvus.v2.service.rbac.request.CreatePrivilegeGroupReq;\n\nclient.createPrivilegeGroup(CreatePrivilegeGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.CreatePrivilegeGroup(context.Background(), \"privilege_group_1\")\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/create\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\"\n}'\n\n","from pymilvus import MilvusClient\nclient.add_privileges_to_group(group_name='privilege_group_1', privileges=['Query', 'Search'])\n\n","import io.milvus.v2.service.rbac.request.AddPrivilegesToGroupReq;\n\nclient.addPrivilegesToGroup(AddPrivilegesToGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .privileges(Arrays.asList(\"Query\", \"Search\"))\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.AddPrivilegesToGroup(context.Background(), \"privilege_group_1\", []string{\"Query\", \"Search\"})\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/add_privileges_to_group\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\",\n \"privileges\":[\"Query\", \"Search\"]\n}'\n\n","from pymilvus import MilvusClient\nclient.remove_privileges_from_group(group_name='privilege_group_1', privileges='Search')\n\n","import io.milvus.v2.service.rbac.request.RemovePrivilegesFromGroupReq;\n\nclient.removePrivilegesFromGroup(RemovePrivilegesFromGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .privileges(Collections.singletonList(\"Search\"))\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.RemovePrivilegesFromGroup(context.Background(), \"privilege_group_1\", []string{\"Search\"})\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/remove_privileges_from_group\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\",\n \"privileges\":[\"Search\"]\n}'\n\n","from pymilvus import MilvusClient\nclient.list_privilege_groups()\n\n","import io.milvus.v2.service.rbac.PrivilegeGroup;\nimport io.milvus.v2.service.rbac.request.ListPrivilegeGroupsReq;\nimport io.milvus.v2.service.rbac.response.ListPrivilegeGroupsResp;\n\nListPrivilegeGroupsResp resp = client.listPrivilegeGroups(ListPrivilegeGroupsReq.builder()\n .build());\nList groups = resp.getPrivilegeGroups();\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.ListPrivilegeGroups(context.Background())\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","PrivilegeGroupItem: , \n\n","from pymilvus import MilvusClient\nclient.drop_privilege_group(group_name='privilege_group_1')\n\n","import io.milvus.v2.service.rbac.request.DropPrivilegeGroupReq;\n\nclient.dropPrivilegeGroup(DropPrivilegeGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.DropPrivilegeGroup(context.Background(), \"privilege_group_1\")\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/drop\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\"\n}'\n\n"],"headingContent":"Create Privilege Group","anchorList":[{"label":"Créer un groupe de privilèges","href":"Create-Privilege-Group","type":1,"isActive":false},{"label":"Groupe de privilèges et privilèges","href":"Privilege-group-vs-privileges","type":2,"isActive":false},{"label":"Groupes de privilèges intégrés","href":"Built-in-privilege-groups","type":2,"isActive":false},{"label":"Procédures","href":"Procedures","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/fr/adminGuide/privilege_group.md b/localization/v2.5.x/site/fr/adminGuide/privilege_group.md
new file mode 100644
index 000000000..dcb82388d
--- /dev/null
+++ b/localization/v2.5.x/site/fr/adminGuide/privilege_group.md
@@ -0,0 +1,491 @@
+---
+id: privilege_group.md
+related_key: enable RBAC
+summary: >-
+ Pour rationaliser le processus d'octroi des privilèges, il est recommandé de
+ regrouper plusieurs privilèges dans un groupe de privilèges.
+title: Créer un groupe de privilèges
+---
+
Créer un groupe de privilèges
+
+
+
+
Pour rationaliser le processus d'octroi des privilèges, il est recommandé de regrouper plusieurs privilèges dans un groupe de privilèges.
+
Groupe de privilèges et privilèges
+
+
+
+
Un groupe de privilèges se compose de plusieurs privilèges.
+
+
+
+ Illustration d'un groupe de privilèges
+
Comme le montre la figure ci-dessus, supposons que vous deviez accorder trois privilèges différents à un rôle.
+
+
Si vous n'utilisez pas de groupe de privilèges, vous devez accorder les privilèges trois fois.
+
Si vous utilisez un groupe de privilèges, il vous suffit de créer un groupe de privilèges, d'y ajouter les trois privilèges et d'accorder le groupe de privilèges au rôle A.
+
+
L'utilisation d'un groupe de privilèges permet d'accorder plusieurs privilèges en bloc à un rôle.
+
Groupes de privilèges intégrés
+
+
+
+
Pour faciliter l'utilisation, Milvus fournit un total de 9 privilèges intégrés au niveau de la collection, de la base de données et de l'instance : COLL_RO, COLL_RW, COLL_ADMIN, DB_RO, DB_RW, DB_Admin, Cluster_RO, Cluster_RW et Cluster_Admin.
+
+
Les trois niveaux de groupes de privilèges intégrés n'ont pas de relation en cascade. La définition d'un groupe de privilèges au niveau de l'instance ne définit pas automatiquement les autorisations pour toutes les bases de données et collections de cette instance. Les privilèges au niveau de la base de données et de la collection doivent être définis manuellement.
+
+
Les tableaux suivants expliquent les privilèges inclus dans chacun des groupes de privilèges intégrés.
+
Niveau de collection
+
COLL_RO: comprend les privilèges de lecture des données de la collection.
+
COLL_RW: comprend les privilèges de lecture et d'écriture des données de la collection.
+
COLL_ADMIN: comprend les privilèges de lecture et d'écriture des données de collecte et de gestion des collections.
+
+
Le tableau ci-dessous répertorie les privilèges spécifiques inclus dans les trois groupes de privilèges intégrés au niveau de la collecte.
+
**Privilège**
+
CollecteLectureSeulement** **CollectionReadOnly**
+
**CollecteLectureEcriture**
+
**Administrateur de collection
+
Requête
+
✔️
+
✔️
+
✔️
+
Recherche
+
✔️
+
✔️
+
✔️
+
Détails de l'index
+
✔️
+
✔️
+
✔️
+
GetFlushState
+
✔️
+
✔️
+
✔️
+
GetLoadState
+
✔️
+
✔️
+
✔️
+
GetLoadingProgress
+
✔️
+
✔️
+
✔️
+
HasPartition
+
✔️
+
✔️
+
✔️
+
ShowPartitions
+
✔️
+
✔️
+
✔️
+
ListAliases
+
✔️
+
✔️
+
✔️
+
DescribeCollection
+
✔️
+
✔️
+
✔️
+
DescribeAlias
+
✔️
+
✔️
+
✔️
+
Obtenir des statistiques
+
✔️
+
✔️
+
✔️
+
CreateIndex
+
❌
+
✔️
+
✔️
+
DropIndex
+
❌
+
✔️
+
✔️
+
CreatePartition
+
❌
+
✔️
+
✔️
+
DropPartition
+
❌
+
✔️
+
✔️
+
Chargement
+
❌
+
✔️
+
✔️
+
Release
+
❌
+
✔️
+
✔️
+
Insert
+
❌
+
✔️
+
✔️
+
Supprimer
+
❌
+
✔️
+
✔️
+
Upsert
+
❌
+
✔️
+
✔️
+
Importation
+
❌
+
✔️
+
✔️
+
Flush
+
❌
+
✔️
+
✔️
+
Compaction
+
❌
+
✔️
+
✔️
+
Équilibre des charges
+
❌
+
✔️
+
✔️
+
CreateAlias
+
❌
+
❌
+
✔️
+
DropAlias
+
❌
+
❌
+
✔️
+
+
Niveau de la base de données
+
DB_RO: comprend les privilèges de lecture des données de la base de données
+
DB_RW: comprend les privilèges de lecture et d'écriture des données de la base de données.
+
DB_Admin: comprend les privilèges de lecture et d'écriture des données de la base et de gestion des bases de données.
+
+
Le tableau ci-dessous répertorie les privilèges spécifiques inclus dans les trois groupes de privilèges intégrés au niveau de la base de données.
+
**Privilège**
+
**Lecture de la base de données uniquement **Lecture de la base de données en écriture
+
Base de données en lecture seule** **Base de données en lecture-écriture**
+
**Base de donnéesAdmin**
+
Afficher les collections
+
✔️
+
✔️
+
✔️
+
DescribeDatabase
+
✔️
+
✔️
+
✔️
+
CreateCollection
+
❌
+
❌
+
✔️
+
DropCollection
+
❌
+
❌
+
✔️
+
AlterDatabase
+
❌
+
✔️
+
✔️
+
+
Niveau du cluster
+
Cluster_RO: inclut les privilèges de lecture des données d'instance
+
Cluster_RW: comprend les privilèges de lecture et d'écriture des données d'instance.
+
Cluster_Admin: comprend les privilèges de lecture et d'écriture des données d'instance et de gestion des instances.
+
+
Le tableau ci-dessous répertorie les privilèges spécifiques inclus dans les trois groupes de privilèges intégrés au niveau de l'instance.
L'exemple suivant montre comment ajouter les privilèges PrivilegeBackupRBAC et PrivilegeRestoreRBAC au groupe de privilèges privilege_group_1 qui vient d'être créé.
diff --git a/localization/v2.5.x/site/fr/adminGuide/rbac.json b/localization/v2.5.x/site/fr/adminGuide/rbac.json
index 310ba5ff9..cc55f0e1a 100644
--- a/localization/v2.5.x/site/fr/adminGuide/rbac.json
+++ b/localization/v2.5.x/site/fr/adminGuide/rbac.json
@@ -1 +1 @@
-{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri='http://localhost:19530', # replace with your own Milvus server address\n token='root:Milvus' # replace with your own Milvus server token\n)\n","client.create_user(\n user_name='user_1',\n password='P@ssw0rd'\n)\n","client.update_password(\n user_name='user_1',\n old_password='P@ssw0rd',\n new_password='P@ssw0rd123'\n)\n","client.list_users()\n\n# output:\n# ['root', 'user_1']\n","client.describe_user(user_name='user_1')\n\n# output:\n# {'user_name': 'user_1', 'roles': ()}\n","client.create_role(\n role_name=\"roleA\",\n)\n","client.list_roles()\n\n# output:\n# ['admin', 'public', 'roleA']\n","# grant privilege to a role\n\nclient.grant_privilege(\n role_name='roleA',\n object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName\n object_name='user_1', # value here can be * or a specific user name if object type is 'User'\n privilege='SelectUser'\n)\n","client.describe_role(\n role_name='roleA'\n)\n\n# output:\n# {'role': 'roleA',\n# 'privileges': [{'object_type': 'User',\n# 'object_name': 'user_1',\n# 'db_name': 'default',\n# 'role_name': 'roleA',\n# 'privilege': 'SelectUser',\n# 'grantor_name': 'root'}]}\n","# grant a role to a user\n\nclient.grant_role(\n user_name='user_1',\n role_name='roleA'\n)\n","client.describe_user(\n user_name='user_1'\n)\n\n# output:\n# {'user_name': 'user_1', 'roles': ('roleA')}\n","client.revoke_privilege(\n role_name='roleA',\n object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName\n object_name='user_1', # value here can be * or a specific user name if object type is 'User'\n privilege='SelectUser'\n)\n","client.revoke_role(\n user_name='user_1',\n role_name='roleA'\n)\n","client.drop_role(role_name='roleA')\n","client.drop_user(user_name='user_1')\n"],"headingContent":"Enable RBAC","anchorList":[{"label":"Activer RBAC","href":"Enable-RBAC","type":1,"isActive":false},{"label":"1. Lancer un client Milvus pour établir une connexion","href":"1-Initiate-a-Milvus-client-to-establish-a-connection","type":2,"isActive":false},{"label":"2. Créer un utilisateur","href":"2-Create-a-user","type":2,"isActive":false},{"label":"3. Créez un rôle","href":"3-Create-a-role","type":2,"isActive":false},{"label":"4. Accorder un privilège à un rôle","href":"4-Grant-a-privilege-to-a-role","type":2,"isActive":false},{"label":"5. Accorder un rôle à un utilisateur","href":"5-Grant-a-role-to-a-user","type":2,"isActive":false},{"label":"6. Révoquer des privilèges","href":"6-Revoke-privileges","type":2,"isActive":false},{"label":"Prochaines étapes","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":[],"headingContent":"RBAC Explained","anchorList":[{"label":"RBAC expliqué","href":"RBAC-Explained","type":1,"isActive":false},{"label":"Concepts clés de RBAC","href":"RBAC-key-concepts","type":2,"isActive":false},{"label":"Procédures","href":"Procedures","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/fr/adminGuide/rbac.md b/localization/v2.5.x/site/fr/adminGuide/rbac.md
index 10c070c71..27ca7107c 100644
--- a/localization/v2.5.x/site/fr/adminGuide/rbac.md
+++ b/localization/v2.5.x/site/fr/adminGuide/rbac.md
@@ -1,10 +1,14 @@
---
id: rbac.md
related_key: enable RBAC
-summary: 'Apprendre à gérer les utilisateurs, les rôles et les privilèges.'
-title: Activer RBAC
+summary: >-
+ Le RBAC (Role-Based Access Control) est une méthode de contrôle d'accès basée
+ sur les rôles. Avec le RBAC, vous pouvez contrôler finement les opérations que
+ les utilisateurs peuvent effectuer au niveau de la collection, de la base de
+ données et de l'instance, ce qui renforce la sécurité des données.
+title: RBAC expliqué
---
-
Activer RBAC
+
RBAC expliqué
-
En activant RBAC, vous pouvez contrôler l'accès à des ressources Milvus spécifiques (par exemple, une collection ou une partition) ou les autorisations en fonction du rôle et des privilèges de l'utilisateur. Actuellement, cette fonctionnalité n'est disponible qu'en Python et Java.
Les extraits de code de cette page utilisent le nouveau MilvusClient (Python) pour interagir avec Milvus. De nouveaux SDK MilvusClient pour d'autres langages seront publiés dans de futures mises à jour.
-
-
1. Lancer un client Milvus pour établir une connexion
+
Le RBAC (Role-Based Access Control) est une méthode de contrôle d'accès basée sur les rôles. Avec le RBAC, vous pouvez contrôler finement les opérations que les utilisateurs peuvent effectuer au niveau de la collection, de la base de données et de l'instance, ce qui renforce la sécurité des données.
+
Contrairement aux modèles traditionnels de contrôle d'accès des utilisateurs, le RBAC introduit le concept de rôles. Dans le modèle RBAC, vous accordez des privilèges à des rôles, puis vous accordez ces rôles à des utilisateurs. Les utilisateurs peuvent ensuite obtenir des privilèges.
+
Le modèle RBAC peut améliorer l'efficacité de la gestion du contrôle d'accès. Par exemple, si plusieurs utilisateurs ont besoin du même ensemble de privilèges, il n'est pas nécessaire de définir manuellement les privilèges de chaque utilisateur. Au lieu de cela, vous pouvez créer un rôle et l'attribuer aux utilisateurs. Si vous souhaitez modifier les privilèges de ces utilisateurs, il vous suffit de modifier les privilèges du rôle et la modification sera appliquée à tous les utilisateurs ayant ce rôle.
+
Concepts clés de RBAC
-
Après avoir activé l'authentification utilisateur, connectez-vous à votre instance Milvus à l'aide de token qui se compose d'un nom d'utilisateur et d'un mot de passe. Par défaut, Milvus utilise l'utilisateur root avec le mot de passe Milvus.
-
from pymilvus import MilvusClient
-
-client = MilvusClient(
- uri='http://localhost:19530', # replace with your own Milvus server address
- token='root:Milvus'# replace with your own Milvus server token
-)
-
-
2. Créer un utilisateur
-
-
-
-
Créez un utilisateur nommé user_1 avec le mot de passe P@ssw0rd:
Le modèle RBAC se compose de quatre éléments principaux.
-
dresser la liste de tous les rôles.
+
**La ressource : **L'entité ressource à laquelle on peut accéder. Il existe trois niveaux de ressources dans Milvus - instance, base de données et collection.
+
**Privilège : **L'autorisation d'effectuer certaines opérations sur les ressources Milvus (par exemple, créer des collections, insérer des données, etc.)
+
**Groupe de privilèges : **Un groupe de privilèges multiples.
+
**Rôle : **Un rôle se compose de deux parties : les privilèges et les ressources. Les privilèges définissent le type d'opérations qu'un rôle peut effectuer, tandis que les ressources définissent les ressources cibles sur lesquelles les opérations peuvent être effectuées. Par exemple, le rôle d'administrateur de base de données peut effectuer des opérations de lecture, d'écriture et de gestion sur certaines bases de données.
+
**Utilisateur : **Un utilisateur est une personne qui utilise Milvus. Chaque utilisateur a un identifiant unique et se voit attribuer un ou plusieurs rôles.
L'exemple suivant montre comment accorder l'autorisation de rechercher toutes les collections au rôle nommé roleA.
-
L'adresse object_type spécifie le type d'objet, qui peut également être considéré comme le type de ressource. Actuellement, les valeurs valables sont Collection/User/Global, etc., où Global signifie qu'il n'y a pas de type de ressource spécifique. L'adresse object_name est le nom de la ressource. Si objecttypeest Collection, le nom de l'objet peut faire référence à un nom de collection spécifique, ou vous pouvez utiliser * pour spécifier toutes les collections. Sile type d'objet est Global, le nom de l'objet ne peut être spécifié que par *. Voir Utilisateurs et rôles pour connaître les autres types de privilèges que vous pouvez accorder.
-
Avant de gérer les privilèges des rôles, assurez-vous d'avoir activé l'authentification des utilisateurs. Dans le cas contraire, une erreur risque de se produire. Pour plus d'informations sur l'activation de l'authentification des utilisateurs, reportez-vous à la section Authentifier l'accès des utilisateurs.
-
# grant privilege to a role
-
-client.grant_privilege(
- role_name='roleA',
- object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName
- object_name='user_1', # value here can be * or a specific user name if object type is 'User'
- privilege='SelectUser'
-)
-
-
Après avoir accordé un privilège à un rôle, vous pouvez
Soyez prudent lorsque vous effectuez les opérations suivantes, car elles sont irréversibles.
-
-
-
Supprimer un privilège d'un rôle. Si vous révoquez un privilège qui n'a pas été accordé au rôle, une erreur se produit.
-
-
client.revoke_privilege(
- role_name='roleA',
- object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName
- object_name='user_1', # value here can be * or a specific user name if object type is 'User'
- privilege='SelectUser'
-)
-
-
-
Supprimer un utilisateur d'un rôle. Si vous révoquez un rôle qui n'a pas été accordé à l'utilisateur, une erreur se produit.
Pour réaliser le contrôle d'accès via RBAC, vous devez suivre les étapes ci-dessous.
+
+
Créer un utilisateur: Outre l'utilisateur par défaut root dans Milvus, vous pouvez créer de nouveaux utilisateurs et définir des mots de passe pour protéger la sécurité des données.
+
Créer un rôle: Vous pouvez créer des rôles personnalisés en fonction de vos besoins. Les capacités spécifiques d'un rôle sont déterminées par ses privilèges.
+
Créer un groupe de privilèges: Combinez plusieurs privilèges en un seul groupe de privilèges afin de rationaliser le processus d'octroi de privilèges à un rôle.
Attribuer des rôles aux utilisateurs: Accorder des rôles avec certains privilèges aux utilisateurs afin que ces derniers puissent bénéficier des privilèges d'un rôle. Un même rôle peut être attribué à plusieurs utilisateurs.
+
diff --git a/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_cluster-docker.json b/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_cluster-docker.json
index 5ff8bf4be..2fcf06acb 100644
--- a/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_cluster-docker.json
+++ b/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_cluster-docker.json
@@ -1 +1 @@
-{"codeList":["...\nrootcoord:\n container_name: milvus-rootcoord\n image: milvusdb/milvus:v2.5.0-beta\n...\nproxy:\n container_name: milvus-proxy\n image: milvusdb/milvus:v2.5.0-beta\n...\nquerycoord:\n container_name: milvus-querycoord\n image: milvusdb/milvus:v2.5.0-beta \n...\nquerynode:\n container_name: milvus-querynode\n image: milvusdb/milvus:v2.5.0-beta\n...\nindexcoord:\n container_name: milvus-indexcoord\n image: milvusdb/milvus:v2.5.0-beta\n...\nindexnode:\n container_name: milvus-indexnode\n image: milvusdb/milvus:v2.5.0-beta \n...\ndatacoord:\n container_name: milvus-datacoord\n image: milvusdb/milvus:v2.5.0-beta \n...\ndatanode:\n container_name: milvus-datanode\n image: milvusdb/milvus:v2.5.0-beta\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0-beta\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvus/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","Update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Cluster with Docker Compose","anchorList":[{"label":"Mise à niveau du cluster Milvus avec Docker Compose","href":"Upgrade-Milvus-Cluster-with-Docker-Compose","type":1,"isActive":false},{"label":"Mise à niveau de Milvus en modifiant son image","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migration des métadonnées","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"Suite de l'article","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["...\nrootcoord:\n container_name: milvus-rootcoord\n image: milvusdb/milvus:v2.5.0\n...\nproxy:\n container_name: milvus-proxy\n image: milvusdb/milvus:v2.5.0\n...\nquerycoord:\n container_name: milvus-querycoord\n image: milvusdb/milvus:v2.5.0 \n...\nquerynode:\n container_name: milvus-querynode\n image: milvusdb/milvus:v2.5.0\n...\nindexcoord:\n container_name: milvus-indexcoord\n image: milvusdb/milvus:v2.5.0\n...\nindexnode:\n container_name: milvus-indexnode\n image: milvusdb/milvus:v2.5.0 \n...\ndatacoord:\n container_name: milvus-datacoord\n image: milvusdb/milvus:v2.5.0 \n...\ndatanode:\n container_name: milvus-datanode\n image: milvusdb/milvus:v2.5.0\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvus/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","Update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Cluster with Docker Compose","anchorList":[{"label":"Mise à niveau du cluster Milvus avec Docker Compose","href":"Upgrade-Milvus-Cluster-with-Docker-Compose","type":1,"isActive":false},{"label":"Mise à niveau de Milvus en modifiant son image","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migration des métadonnées","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"Suite de l'article","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_cluster-docker.md b/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_cluster-docker.md
index 7251dc155..791734746 100644
--- a/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_cluster-docker.md
+++ b/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_cluster-docker.md
@@ -20,7 +20,7 @@ title: Mise à niveau du cluster Milvus avec Docker Compose
>
Cette rubrique décrit comment mettre à niveau votre Milvus à l'aide de Docker Compose.
Effectuer une mise à niveau continue
@@ -130,7 +130,7 @@ zilliztech/milvus 4.1.0 2.3.0 Milvus is an ope
>
Depuis Milvus 2.2.3, vous pouvez configurer les coordinateurs Milvus pour qu'ils fonctionnent en mode actif-veille et activer la fonction de mise à niveau continue pour eux, afin que Milvus puisse répondre aux demandes entrantes pendant les mises à niveau des coordinateurs. Dans les versions précédentes, les coordinateurs doivent être supprimés puis créés lors d'une mise à niveau, ce qui peut entraîner certains temps d'arrêt du service.
-
Les mises à niveau en continu exigent que les coordinateurs fonctionnent en mode actif-veille. Vous pouvez utiliser le script que nous fournissons pour configurer les coordinateurs afin qu'ils travaillent en mode veille active et lancer la mise à jour continue.
+
Les mises à niveau en continu exigent que les coordinateurs fonctionnent en mode actif-veille. Vous pouvez utiliser le script que nous fournissons pour configurer les coordinateurs afin qu'ils travaillent en mode de veille active et lancer la mise à jour continue.
Basé sur les capacités de mise à jour continue fournies par Kubernetes, le script ci-dessus applique une mise à jour ordonnée des déploiements en fonction de leurs dépendances. En outre, Milvus met en œuvre un mécanisme garantissant que ses composants restent compatibles avec ceux qui en dépendent pendant la mise à niveau, ce qui réduit considérablement les temps d'arrêt potentiels des services.
Le script s'applique uniquement à la mise à niveau de Milvus installé avec Helm. Le tableau suivant répertorie les drapeaux de commande disponibles dans les scripts.
@@ -145,8 +145,8 @@ zilliztech/milvus 4.1.0 2.3.0 Milvus is an ope
o
Fonctionnement
update
Faux
-
Une fois que vous vous êtes assuré que tous les déploiements de votre instance Milvus sont dans leur état normal. Vous pouvez exécuter la commande suivante pour mettre à niveau l'instance Milvus vers 2.5.0-beta.
Une fois que vous vous êtes assuré que tous les déploiements de votre instance Milvus sont dans leur état normal, vous pouvez exécuter la commande suivante pour mettre à niveau l'instance Milvus vers la version 2.5.0. Vous pouvez exécuter la commande suivante pour mettre à niveau l'instance Milvus vers 2.5.0.
diff --git a/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_cluster-operator.json b/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_cluster-operator.json
index 20fa4449a..b5f0819a7 100644
--- a/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_cluster-operator.json
+++ b/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_cluster-operator.json
@@ -1 +1 @@
-{"codeList":["helm repo add zilliztech-milvus-operator https://zilliztech.github.io/milvus-operator/\nhelm repo update zilliztech-milvus-operator\nhelm -n milvus-operator upgrade milvus-operator zilliztech-milvus-operator/milvus-operator\n","apiVersion: milvus.io/v1beta1\nkind: Milvus\nmetadata:\n name: my-release\nspec:\n components:\n enableRollingUpdate: true\n imageUpdateMode: rollingUpgrade # Default value, can be omitted\n image: milvusdb/milvus:v2.5.0-beta\n","apiVersion: milvus.io/v1beta1\nkind: Milvus\nmetadata:\n name: my-release\nspec:\n components:\n enableRollingUpdate: true\n imageUpdateMode: all\n image: milvusdb/milvus:v2.5.0-beta\n","apiVersion: milvus.io/v1beta1\nkind: Milvus\nmetadata:\n name: my-release\nspec:\n components:\n enableRollingUpdate: true\n imageUpdateMode: rollingDowngrade\n image: milvusdb/milvus:\n","kubectl patch -f milvusupgrade.yml\n","apiVersion: milvus.io/v1beta1\nkind: Milvus\nmetadata:\n name: my-release\nspec:\n # Omit other fields ...\n components:\n image: milvusdb/milvus:v2.5.0-beta\n","kubectl patch -f milvusupgrade.yaml\n","apiVersion: milvus.io/v1beta1\nkind: MilvusUpgrade\nmetadata:\n name: my-release-upgrade\nspec:\n milvus:\n namespace: default\n name: my-release\n sourceVersion: \"v2.1.4\"\n targetVersion: \"v2.5.0-beta\"\n # below are some omit default values:\n # targetImage: \"milvusdb/milvus:v2.5.0-beta\"\n # toolImage: \"milvusdb/meta-migration:v2.2.0\"\n # operation: upgrade\n # rollbackIfFailed: true\n # backupPVC: \"\"\n # maxRetry: 3\n","$ kubectl create -f https://github.com/zilliztech/milvus-operator/blob/main/config/samples/beta/milvusupgrade.yaml\n","kubectl describe milvus release-name\n"],"headingContent":"Upgrade Milvus Cluster with Milvus Operator","anchorList":[{"label":"Mise à niveau du cluster Milvus avec Milvus Operator","href":"Upgrade-Milvus-Cluster-with-Milvus-Operator","type":1,"isActive":false},{"label":"Mise à niveau de l'opérateur Milvus","href":"Upgrade-your-Milvus-operator","type":2,"isActive":false},{"label":"Effectuer une mise à niveau continue","href":"Conduct-a-rolling-upgrade","type":2,"isActive":false},{"label":"Mettre à niveau Milvus en changeant son image","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrer les métadonnées","href":"Migrate-the-metadata","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["helm repo add zilliztech-milvus-operator https://zilliztech.github.io/milvus-operator/\nhelm repo update zilliztech-milvus-operator\nhelm -n milvus-operator upgrade milvus-operator zilliztech-milvus-operator/milvus-operator\n","apiVersion: milvus.io/v1beta1\nkind: Milvus\nmetadata:\n name: my-release\nspec:\n components:\n enableRollingUpdate: true\n imageUpdateMode: rollingUpgrade # Default value, can be omitted\n image: milvusdb/milvus:v2.5.0\n","apiVersion: milvus.io/v1beta1\nkind: Milvus\nmetadata:\n name: my-release\nspec:\n components:\n enableRollingUpdate: true\n imageUpdateMode: all\n image: milvusdb/milvus:v2.5.0\n","apiVersion: milvus.io/v1beta1\nkind: Milvus\nmetadata:\n name: my-release\nspec:\n components:\n enableRollingUpdate: true\n imageUpdateMode: rollingDowngrade\n image: milvusdb/milvus:\n","kubectl patch -f milvusupgrade.yml\n","apiVersion: milvus.io/v1beta1\nkind: Milvus\nmetadata:\n name: my-release\nspec:\n # Omit other fields ...\n components:\n image: milvusdb/milvus:v2.5.0\n","kubectl patch -f milvusupgrade.yaml\n","apiVersion: milvus.io/v1beta1\nkind: MilvusUpgrade\nmetadata:\n name: my-release-upgrade\nspec:\n milvus:\n namespace: default\n name: my-release\n sourceVersion: \"v2.1.4\"\n targetVersion: \"v2.5.0\"\n # below are some omit default values:\n # targetImage: \"milvusdb/milvus:v2.5.0\"\n # toolImage: \"milvusdb/meta-migration:v2.2.0\"\n # operation: upgrade\n # rollbackIfFailed: true\n # backupPVC: \"\"\n # maxRetry: 3\n","$ kubectl create -f https://github.com/zilliztech/milvus-operator/blob/main/config/samples/beta/milvusupgrade.yaml\n","kubectl describe milvus release-name\n"],"headingContent":"Upgrade Milvus Cluster with Milvus Operator","anchorList":[{"label":"Mise à niveau du cluster Milvus avec Milvus Operator","href":"Upgrade-Milvus-Cluster-with-Milvus-Operator","type":1,"isActive":false},{"label":"Mise à niveau de l'opérateur Milvus","href":"Upgrade-your-Milvus-operator","type":2,"isActive":false},{"label":"Effectuer une mise à niveau en continu","href":"Conduct-a-rolling-upgrade","type":2,"isActive":false},{"label":"Mettre à niveau Milvus en changeant son image","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrer les métadonnées","href":"Migrate-the-metadata","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_cluster-operator.md b/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_cluster-operator.md
index 08ec96faa..ace5302d3 100644
--- a/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_cluster-operator.md
+++ b/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_cluster-operator.md
@@ -46,11 +46,11 @@ helm -n milvus-operator upgrade milvus-
Une fois que vous avez mis à niveau votre opérateur Milvus vers la dernière version, vous avez le choix entre les options suivantes :
-
Pour mettre à niveau Milvus à partir de la version 2.2.3 ou de versions ultérieures vers la version 2.5.0-beta, vous pouvez effectuer une mise à niveau continue.
Pour mettre à niveau Milvus de la version 2.1.x à la version 2.5.0-beta, vous devez migrer les métadonnées avant la mise à niveau proprement dite.
+
Pour mettre à niveau Milvus à partir de la version 2.2.3 ou de versions ultérieures vers la version 2.5.0, vous pouvez effectuer une mise à niveau continue.
Pour mettre à niveau Milvus de la version 2.1.x à la version 2.5.0, vous devez migrer les métadonnées avant la mise à niveau proprement dite.
-
Effectuer une mise à niveau continue
+
Effectuer une mise à niveau en continutrue
imageUpdateMode: rollingUpgrade # Default value, can be omitted
- image: milvusdb/milvus:v2.5.0-beta
+ image: milvusdb/milvus:v2.5.0
Dans le fichier de configuration ci-dessus, définissez spec.components.enableRollingUpdate comme true et spec.components.image comme la version souhaitée de Milvus.
Par défaut, Milvus effectue une mise à niveau continue pour les coordinateurs de manière ordonnée, c'est-à-dire qu'il remplace les images des pods des coordinateurs l'une après l'autre. Pour réduire le temps de mise à niveau, envisagez de définir spec.components.imageUpdateMode sur all afin que Milvus remplace toutes les images de pods en même temps.
Vous pouvez définir spec.components.imageUpdateMode sur rollingDowngrade pour que Milvus remplace les images de pods coordinateurs par une version inférieure.
Depuis Milvus 2.2.0, les métadonnées sont incompatibles avec celles des versions précédentes. Les exemples suivants supposent une mise à niveau de Milvus 2.1.4 vers Milvus 2.5.0-beta.
-
1. Création d'un fichier .yaml pour la migration des métadonnées
Créer un fichier de migration des métadonnées. Voici un exemple. Vous devez spécifier les fichiers name, sourceVersion, et targetVersion dans le fichier de configuration. L'exemple suivant définit name en my-release-upgrade, sourceVersion en v2.1.4, et targetVersion en v2.5.0-beta. Cela signifie que votre cluster Milvus sera mis à niveau de la v2.1.4 à la v2.5.0-beta.
+
Depuis Milvus 2.2.0, les métadonnées sont incompatibles avec celles des versions précédentes. Les exemples suivants supposent une mise à niveau de Milvus 2.1.4 vers Milvus 2.5.0.
+
1. Création d'un fichier .yaml pour la migration des métadonnées
Créer un fichier de migration des métadonnées. Voici un exemple. Vous devez spécifier les fichiers name, sourceVersion et targetVersion dans le fichier de configuration. L'exemple suivant définit name en my-release-upgrade, sourceVersion en v2.1.4, et targetVersion en v2.5.0. Cela signifie que votre cluster Milvus sera mis à niveau de la v2.1.4 à la v2.5.0.
apiVersion: milvus.io/v1beta1
kind: MilvusUpgrade
metadata:
@@ -159,9 +159,9 @@ spec:
namespace: default
name: my-release
sourceVersion: "v2.1.4"
- targetVersion: "v2.5.0-beta"
+ targetVersion: "v2.5.0"# below are some omit default values:
- # targetImage: "milvusdb/milvus:v2.5.0-beta"
+ # targetImage: "milvusdb/milvus:v2.5.0"# toolImage: "milvusdb/meta-migration:v2.2.0"# operation: upgrade# rollbackIfFailed: true
diff --git a/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-docker.json b/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-docker.json
index 23c946228..c7616f877 100644
--- a/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-docker.json
+++ b/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-docker.json
@@ -1 +1 @@
-{"codeList":["...\nstandalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.5.0-beta\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0-beta\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvusdb/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","// Run the following only after update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Standalone with Docker Compose","anchorList":[{"label":"Mise à niveau de Milvus Standalone avec Docker Compose","href":"Upgrade-Milvus-Standalone-with-Docker-Compose","type":1,"isActive":false},{"label":"Mettre à niveau Milvus en modifiant son image","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migration des métadonnées","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"Suite de l'article","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["...\nstandalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.5.0\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvusdb/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","// Run the following only after update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Standalone with Docker Compose","anchorList":[{"label":"Mise à niveau de Milvus Standalone avec Docker Compose","href":"Upgrade-Milvus-Standalone-with-Docker-Compose","type":1,"isActive":false},{"label":"Mettre à niveau Milvus en modifiant son image","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migration des métadonnées","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"Suite de l'article","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-docker.md b/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-docker.md
index c2174c1e4..f0d084fb5 100644
--- a/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-docker.md
+++ b/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-docker.md
@@ -24,9 +24,9 @@ title: Mise à niveau de Milvus Standalone avec Docker Compose
>
Cette rubrique décrit comment mettre à niveau votre Milvus à l'aide de Docker Compose.
Pour des raisons de sécurité, Milvus met à niveau son MinIO vers RELEASE.2023-03-20T20-16-18Z avec la publication de la v2.2.5. Avant toute mise à niveau à partir des versions précédentes de Milvus Standalone installées à l'aide de Docker Compose, vous devez créer un déploiement MinIO Single-Node Single-Drive et migrer les paramètres et le contenu MinIO existants vers le nouveau déploiement. Pour plus de détails, reportez-vous à ce guide.
+
Pour des raisons de sécurité, Milvus met à niveau son MinIO vers RELEASE.2023-03-20T20-16-18Z avec la sortie de la v2.2.5. Avant toute mise à niveau à partir des versions précédentes de Milvus Standalone installées à l'aide de Docker Compose, vous devez créer un déploiement MinIO Single-Node Single-Drive et migrer les paramètres et le contenu MinIO existants vers le nouveau déploiement. Pour plus de détails, reportez-vous à ce guide.
Mettre à niveau Milvus en modifiant son image...
standalone:
container_name: milvus-standalone
- image: milvusdb/milvus:v2.5.0-beta
+ image: milvusdb/milvus:v2.5.0
Exécutez les commandes suivantes pour effectuer la mise à niveau.
docker compose down
@@ -83,7 +83,7 @@ cmd:
runWithBackup: true
config:
sourceVersion: 2.1.4# Specify your milvus version
- targetVersion: 2.5.0-beta
+ targetVersion: 2.5.0
backupFilePath: /tmp/migration.bak
metastore:
type: etcd
diff --git a/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-helm.json b/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-helm.json
index 7144d6b67..d787ee5f8 100644
--- a/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-helm.json
+++ b/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-helm.json
@@ -1 +1 @@
-{"codeList":["$ helm repo update\n$ helm search repo zilliztech/milvus --versions\n","helm repo add zilliztech https://zilliztech.github.io/milvus-helm\nhelm repo update zilliztech\n# upgrade existing helm release\nhelm upgrade my-release zilliztech/milvus --reset-then-reuse-values\n","NAME CHART VERSION APP VERSION DESCRIPTION \nzilliztech/milvus 4.1.34 2.4.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.33 2.4.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.32 2.4.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.31 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.30 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.29 2.4.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.24 2.3.11 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.23 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.22 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.21 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.20 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.18 2.3.10 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.18 2.3.9 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.17 2.3.8 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.16 2.3.7 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.15 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.14 2.3.6 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.13 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.12 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.11 2.3.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.10 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.9 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.8 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.7 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.6 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.5 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.4 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.3 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.2 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.1 2.3.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.0 2.3.0 Milvus is an open-source vector database built ...\n","sh rollingUpdate.sh -n default -i my-release -o update -t 2.5.0-beta -w 'milvusdb/milvus:v2.5.0-beta'\n","helm repo update\nhelm upgrade my-release milvus/milvus --reset-then-reuse-values --version=4.1.24 # use the helm chart version here\n","NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION \nmy-release default 1 2022-11-21 15:41:25.51539 +0800 CST deployed milvus-3.2.18 2.1.4\n","NAME READY STATUS RESTARTS AGE\nmy-release-etcd-0 1/1 Running 0 84s\nmy-release-milvus-standalone-75c599fffc-6rwlj 1/1 Running 0 84s\nmy-release-minio-744dd9586f-qngzv 1/1 Running 0 84s\n","$ kubectl get pods my-release-milvus-proxy-6c548f787f-scspp -o=jsonpath='{$.spec.containers[0].image}'\n# milvusdb/milvus:v2.1.4\n","./migrate.sh -i my-release -s 2.1.4 -t 2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -w milvusdb/milvus:v2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -w milvusdb/milvus:v2.5.0-beta -d true\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -o rollback -w milvusdb/milvus:v2.1.1\n./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -o migrate -w milvusdb/milvus:v2.5.0-beta\n"],"headingContent":"Upgrade Milvus Standalone with Helm Chart","anchorList":[{"label":"Mise à niveau de Milvus Standalone avec la carte Helm","href":"Upgrade-Milvus-Standalone-with-Helm-Chart","type":1,"isActive":false},{"label":"Conditions préalables","href":"Prerequisites","type":2,"isActive":false},{"label":"Vérifier la version de Milvus","href":"Check-the-Milvus-version","type":2,"isActive":false},{"label":"Effectuer une mise à niveau continue","href":"Conduct-a-rolling-upgrade","type":2,"isActive":false},{"label":"Mise à niveau de Milvus à l'aide de Helm","href":"Upgrade-Milvus-using-Helm","type":2,"isActive":false},{"label":"Migrer les métadonnées","href":"Migrate-the-metadata","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["$ helm repo update\n$ helm search repo zilliztech/milvus --versions\n","helm repo add zilliztech https://zilliztech.github.io/milvus-helm\nhelm repo update zilliztech\n# upgrade existing helm release\nhelm upgrade my-release zilliztech/milvus --reset-then-reuse-values\n","NAME CHART VERSION APP VERSION DESCRIPTION \nzilliztech/milvus 4.1.34 2.4.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.33 2.4.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.32 2.4.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.31 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.30 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.29 2.4.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.24 2.3.11 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.23 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.22 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.21 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.20 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.18 2.3.10 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.18 2.3.9 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.17 2.3.8 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.16 2.3.7 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.15 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.14 2.3.6 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.13 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.12 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.11 2.3.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.10 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.9 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.8 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.7 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.6 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.5 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.4 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.3 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.2 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.1 2.3.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.0 2.3.0 Milvus is an open-source vector database built ...\n","sh rollingUpdate.sh -n default -i my-release -o update -t 2.5.0 -w 'milvusdb/milvus:v2.5.0'\n","helm repo update\nhelm upgrade my-release milvus/milvus --reset-then-reuse-values --version=4.1.24 # use the helm chart version here\n","NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION \nmy-release default 1 2022-11-21 15:41:25.51539 +0800 CST deployed milvus-3.2.18 2.1.4\n","NAME READY STATUS RESTARTS AGE\nmy-release-etcd-0 1/1 Running 0 84s\nmy-release-milvus-standalone-75c599fffc-6rwlj 1/1 Running 0 84s\nmy-release-minio-744dd9586f-qngzv 1/1 Running 0 84s\n","$ kubectl get pods my-release-milvus-proxy-6c548f787f-scspp -o=jsonpath='{$.spec.containers[0].image}'\n# milvusdb/milvus:v2.1.4\n","./migrate.sh -i my-release -s 2.1.4 -t 2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -w milvusdb/milvus:v2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -w milvusdb/milvus:v2.5.0 -d true\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -o rollback -w milvusdb/milvus:v2.1.1\n./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -o migrate -w milvusdb/milvus:v2.5.0\n"],"headingContent":"Upgrade Milvus Standalone with Helm Chart","anchorList":[{"label":"Mise à niveau de Milvus Standalone avec la carte Helm","href":"Upgrade-Milvus-Standalone-with-Helm-Chart","type":1,"isActive":false},{"label":"Conditions préalables","href":"Prerequisites","type":2,"isActive":false},{"label":"Vérifier la version de Milvus","href":"Check-the-Milvus-version","type":2,"isActive":false},{"label":"Effectuer une mise à niveau continue","href":"Conduct-a-rolling-upgrade","type":2,"isActive":false},{"label":"Mise à niveau de Milvus à l'aide de Helm","href":"Upgrade-Milvus-using-Helm","type":2,"isActive":false},{"label":"Migrer les métadonnées","href":"Migrate-the-metadata","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-helm.md b/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-helm.md
index e01591ea9..1396644f3 100644
--- a/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-helm.md
+++ b/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-helm.md
@@ -108,10 +108,10 @@ zilliztech/milvus 4.1.1 2.3.0 Milvus is an ope
zilliztech/milvus 4.1.0 2.3.0 Milvus is an open-source vector database built ...
Vous pouvez choisir le chemin de mise à niveau pour votre Milvus comme suit :
-
- [Effectuer une mise à niveau continue](#conduct-a-rolling-upgrade) de Milvus v2.2.3 et versions ultérieures vers v2.5.0-beta.
+
- [Effectuer une mise à niveau continue](#conduct-a-rolling-upgrade) de Milvus v2.2.3 et versions ultérieures vers v2.5.0.
Effectuer une mise à niveau continue
@@ -130,7 +130,7 @@ zilliztech/milvus 4.1.0 2.3.0 Milvus is an ope
>
Depuis Milvus 2.2.3, vous pouvez configurer les coordinateurs Milvus pour qu'ils fonctionnent en mode actif-veille et activer la fonction de mise à niveau continue pour eux, afin que Milvus puisse répondre aux demandes entrantes pendant les mises à niveau des coordinateurs. Dans les versions précédentes, les coordinateurs doivent être supprimés puis créés lors d'une mise à niveau, ce qui peut entraîner certains temps d'arrêt du service.
-
Les mises à niveau en continu exigent que les coordinateurs fonctionnent en mode actif-veille. Vous pouvez utiliser le script que nous fournissons pour configurer les coordinateurs afin qu'ils travaillent en mode veille active et lancer la mise à jour continue.
+
Les mises à niveau en continu exigent que les coordinateurs fonctionnent en mode actif-veille. Vous pouvez utiliser le script que nous fournissons pour configurer les coordinateurs afin qu'ils travaillent en mode de veille active et lancer la mise à jour continue.
Basé sur les capacités de mise à jour continue fournies par Kubernetes, le script ci-dessus applique une mise à jour ordonnée des déploiements en fonction de leurs dépendances. En outre, Milvus met en œuvre un mécanisme garantissant que ses composants restent compatibles avec ceux qui en dépendent pendant la mise à niveau, ce qui réduit considérablement les temps d'arrêt potentiels des services.
Le script s'applique uniquement à la mise à niveau de Milvus installé avec Helm. Le tableau suivant répertorie les drapeaux de commande disponibles dans les scripts.
@@ -145,8 +145,8 @@ zilliztech/milvus 4.1.0 2.3.0 Milvus is an ope
o
Fonctionnement
update
Faux
-
Une fois que vous vous êtes assuré que tous les déploiements de votre instance Milvus sont dans leur état normal, vous pouvez exécuter la commande suivante pour mettre à niveau l'instance Milvus vers 2.5.0-beta. Vous pouvez exécuter la commande suivante pour mettre à niveau l'instance Milvus vers la version 2.5.0-beta.
Une fois que vous vous êtes assuré que tous les déploiements de votre instance Milvus sont dans leur état normal, vous pouvez exécuter la commande suivante pour mettre à niveau l'instance Milvus vers la version 2.5.0. Vous pouvez exécuter la commande suivante pour mettre à niveau l'instance Milvus vers la version 2.5.0.
Démarrer les composants Milvus avec une nouvelle image.
-
2. Mise à niveau de Milvus de la version 2.1.x vers la version 2.5.0-beta
Les commandes suivantes supposent que vous mettez à niveau Milvus de la version 2.1.4 à la version 2.5.0-beta. Modifiez-les pour obtenir les versions qui répondent à vos besoins.
+
2. Mise à niveau de Milvus de la version 2.1.x à la version 2.5.0
Les commandes suivantes supposent que vous mettez à niveau Milvus de la version 2.1.4 à la version 2.5.0. Modifiez-les pour obtenir les versions qui répondent à vos besoins.
-
Spécifiez le nom de l'instance Milvus, la version source de Milvus et la version cible de Milvus.
diff --git a/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-operator.json b/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-operator.json
index 511d74a94..e49d7a94f 100644
--- a/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-operator.json
+++ b/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-operator.json
@@ -1 +1 @@
-{"codeList":["helm repo add zilliztech-milvus-operator https://zilliztech.github.io/milvus-operator/\nhelm repo update zilliztech-milvus-operator\nhelm -n milvus-operator upgrade milvus-operator zilliztech-milvus-operator/milvus-operator\n","apiVersion: milvus.io/v1beta1\nkind: Milvus\nmetadata:\n name: my-release\nspec:\n components:\n enableRollingUpdate: true\n imageUpdateMode: rollingUpgrade # Default value, can be omitted\n image: milvusdb/milvus:v2.5.0-beta\n","apiVersion: milvus.io/v1beta1\nkind: Milvus\nmetadata:\n name: my-release\nspec:\n components:\n enableRollingUpdate: true\n imageUpdateMode: all\n image: milvusdb/milvus:v2.5.0-beta\n","apiVersion: milvus.io/v1beta1\nkind: Milvus\nmetadata:\n name: my-release\nspec:\n components:\n enableRollingUpdate: true\n imageUpdateMode: rollingDowngrade\n image: milvusdb/milvus:\n","kubectl patch -f milvusupgrade.yml\n","apiVersion: milvus.io/v1beta1\nkind: Milvus\nmetadata:\n name: my-release\nlabels:\n app: milvus\nspec:\n # Omit other fields ...\n components:\n image: milvusdb/milvus:v2.5.0-beta\n","kubectl patch -f milvusupgrade.yaml\n","apiVersion: milvus.io/v1beta1\nkind: MilvusUpgrade\nmetadata:\n name: my-release-upgrade\nspec:\n milvus:\n namespace: default\n name: my-release\n sourceVersion: \"v2.1.4\"\n targetVersion: \"v2.5.0-beta\"\n # below are some omit default values:\n # targetImage: \"milvusdb/milvus:v2.5.0-beta\"\n # toolImage: \"milvusdb/meta-migration:v2.2.0\"\n # operation: upgrade\n # rollbackIfFailed: true\n # backupPVC: \"\"\n # maxRetry: 3\n","$ kubectl create -f https://raw.githubusercontent.com/zilliztech/milvus-operator/main/config/samples/milvusupgrade.yaml\n","kubectl describe milvus release-name\n"],"headingContent":"Upgrade Milvus Standalone with Milvus Operator","anchorList":[{"label":"Mise à niveau de Milvus Standalone avec Milvus Operator","href":"Upgrade-Milvus-Standalone-with-Milvus-Operator","type":1,"isActive":false},{"label":"Mise à niveau de l'opérateur Milvus","href":"Upgrade-your-Milvus-operator","type":2,"isActive":false},{"label":"Effectuer une mise à niveau continue","href":"Conduct-a-rolling-upgrade","type":2,"isActive":false},{"label":"Mettre à niveau Milvus en changeant son image","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrer les métadonnées","href":"Migrate-the-metadata","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["helm repo add zilliztech-milvus-operator https://zilliztech.github.io/milvus-operator/\nhelm repo update zilliztech-milvus-operator\nhelm -n milvus-operator upgrade milvus-operator zilliztech-milvus-operator/milvus-operator\n","apiVersion: milvus.io/v1beta1\nkind: Milvus\nmetadata:\n name: my-release\nspec:\n components:\n enableRollingUpdate: true\n imageUpdateMode: rollingUpgrade # Default value, can be omitted\n image: milvusdb/milvus:v2.5.0\n","apiVersion: milvus.io/v1beta1\nkind: Milvus\nmetadata:\n name: my-release\nspec:\n components:\n enableRollingUpdate: true\n imageUpdateMode: all\n image: milvusdb/milvus:v2.5.0\n","apiVersion: milvus.io/v1beta1\nkind: Milvus\nmetadata:\n name: my-release\nspec:\n components:\n enableRollingUpdate: true\n imageUpdateMode: rollingDowngrade\n image: milvusdb/milvus:\n","kubectl patch -f milvusupgrade.yml\n","apiVersion: milvus.io/v1beta1\nkind: Milvus\nmetadata:\n name: my-release\nlabels:\n app: milvus\nspec:\n # Omit other fields ...\n components:\n image: milvusdb/milvus:v2.5.0\n","kubectl patch -f milvusupgrade.yaml\n","apiVersion: milvus.io/v1beta1\nkind: MilvusUpgrade\nmetadata:\n name: my-release-upgrade\nspec:\n milvus:\n namespace: default\n name: my-release\n sourceVersion: \"v2.1.4\"\n targetVersion: \"v2.5.0\"\n # below are some omit default values:\n # targetImage: \"milvusdb/milvus:v2.5.0\"\n # toolImage: \"milvusdb/meta-migration:v2.2.0\"\n # operation: upgrade\n # rollbackIfFailed: true\n # backupPVC: \"\"\n # maxRetry: 3\n","$ kubectl create -f https://raw.githubusercontent.com/zilliztech/milvus-operator/main/config/samples/milvusupgrade.yaml\n","kubectl describe milvus release-name\n"],"headingContent":"Upgrade Milvus Standalone with Milvus Operator","anchorList":[{"label":"Mise à niveau de Milvus Standalone avec Milvus Operator","href":"Upgrade-Milvus-Standalone-with-Milvus-Operator","type":1,"isActive":false},{"label":"Mise à niveau de l'opérateur Milvus","href":"Upgrade-your-Milvus-operator","type":2,"isActive":false},{"label":"Effectuer une mise à niveau en continu","href":"Conduct-a-rolling-upgrade","type":2,"isActive":false},{"label":"Mettre à niveau Milvus en changeant son image","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrer les métadonnées","href":"Migrate-the-metadata","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-operator.md b/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-operator.md
index 272af46e4..68f4bb174 100644
--- a/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-operator.md
+++ b/localization/v2.5.x/site/fr/adminGuide/upgrade_milvus_standalone-operator.md
@@ -46,11 +46,11 @@ helm -n milvus-operator upgrade milvus-
Une fois que vous avez mis à niveau votre opérateur Milvus vers la dernière version, vous avez le choix entre les options suivantes :
-
Pour mettre à niveau Milvus à partir de la version 2.2.3 ou de versions ultérieures vers la version 2.5.0-beta, vous pouvez effectuer une mise à niveau continue.
Pour mettre à niveau Milvus de la version 2.1.x à la version 2.5.0-beta, vous devez migrer les métadonnées avant la mise à niveau proprement dite.
+
Pour mettre à niveau Milvus à partir de la version 2.2.3 ou de versions ultérieures vers la version 2.5.0, vous pouvez effectuer une mise à niveau continue.
Pour mettre à niveau Milvus de la version 2.1.x à la version 2.5.0, vous devez migrer les métadonnées avant la mise à niveau proprement dite.
-
Effectuer une mise à niveau continue
+
Effectuer une mise à niveau en continutrue
imageUpdateMode: rollingUpgrade # Default value, can be omitted
- image: milvusdb/milvus:v2.5.0-beta
+ image: milvusdb/milvus:v2.5.0
Dans le fichier de configuration ci-dessus, définissez spec.components.enableRollingUpdate comme true et spec.components.image comme la version souhaitée de Milvus.
Par défaut, Milvus effectue une mise à niveau continue pour les coordinateurs de manière ordonnée, en remplaçant les images des pods des coordinateurs l'une après l'autre. Pour réduire le temps de mise à niveau, envisagez de définir spec.components.imageUpdateMode sur all afin que Milvus remplace toutes les images de pods en même temps.
Vous pouvez définir spec.components.imageUpdateMode sur rollingDowngrade pour que Milvus remplace les images de pods coordinateurs par une version inférieure.
Dans les cas normaux, vous pouvez simplement mettre à jour votre Milvus en changeant son image. Toutefois, il convient de noter qu'il y aura un certain temps d'arrêt lors de la mise à niveau de Milvus de cette manière.
+
Dans les cas normaux, vous pouvez simplement mettre à jour votre Milvus en changeant son image. Notez toutefois qu'il y aura un certain temps d'arrêt lors de la mise à niveau de Milvus de cette manière.
Composez un fichier de configuration comme suit et enregistrez-le sous milvusupgrade.yaml:
Depuis Milvus 2.2.0, les métadonnées sont incompatibles avec celles des versions précédentes. Les exemples suivants supposent une mise à niveau de Milvus 2.1.4 vers Milvus v2.5.0-beta.
-
1. Créer un fichier .yaml pour la migration des métadonnées
Créer un fichier de migration des métadonnées. Voici un exemple. Vous devez spécifier les fichiers name, sourceVersion, et targetVersion dans le fichier de configuration. L'exemple suivant définit name en my-release-upgrade, sourceVersion en v2.1.4, et targetVersion en v2.5.0-beta. Cela signifie que votre instance Milvus sera mise à niveau de la v2.1.4 à la v2.5.0-beta.
+
Depuis Milvus 2.2.0, les métadonnées sont incompatibles avec celles des versions précédentes. Les exemples suivants supposent une mise à niveau de Milvus 2.1.4 vers Milvus v2.5.0.
+
1. Création d'un fichier .yaml pour la migration des métadonnées
Créer un fichier de migration des métadonnées. Voici un exemple. Vous devez spécifier les fichiers name, sourceVersion et targetVersion dans le fichier de configuration. L'exemple suivant définit name en my-release-upgrade, sourceVersion en v2.1.4, et targetVersion en v2.5.0. Cela signifie que votre instance Milvus sera mise à niveau de la v2.1.4 à la v2.5.0.
apiVersion: milvus.io/v1beta1
kind: MilvusUpgrade
metadata:
@@ -161,9 +161,9 @@ spec:
namespace: default
name: my-release
sourceVersion: "v2.1.4"
- targetVersion: "v2.5.0-beta"
+ targetVersion: "v2.5.0"# below are some omit default values:
- # targetImage: "milvusdb/milvus:v2.5.0-beta"
+ # targetImage: "milvusdb/milvus:v2.5.0"# toolImage: "milvusdb/meta-migration:v2.2.0"# operation: upgrade# rollbackIfFailed: true
diff --git a/localization/v2.5.x/site/fr/adminGuide/users_and_roles.json b/localization/v2.5.x/site/fr/adminGuide/users_and_roles.json
new file mode 100644
index 000000000..ef1b280f4
--- /dev/null
+++ b/localization/v2.5.x/site/fr/adminGuide/users_and_roles.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.create_user(user_name=\"user_1\", password=\"P@ssw0rd\")\n\n","import io.milvus.v2.client.ConnectConfig;\nimport io.milvus.v2.client.MilvusClientV2;\nimport io.milvus.v2.service.rbac.request.CreateUserReq;\n\nConnectConfig connectConfig = ConnectConfig.builder()\n .uri(\"http://localhost:19530\")\n .token(\"root:Milvus\")\n .build();\n \nMilvusClientV2 client = new MilvusClientV2(connectConfig);\n\nCreateUserReq createUserReq = CreateUserReq.builder()\n .userName(\"user_1\")\n .password(\"P@ssw0rd\")\n .build();\n \nclient.createUser(createUserReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nconst address = \"http://localhost:19530\";\nconst token = \"root:Milvus\";\nconst client = new MilvusClient({address, token});\n\nawait milvusClient.createUser({\n username: 'user_1',\n password: 'P@ssw0rd',\n });\n\n","export CLUSTER_ENDPOINT=\"http://localhost:19530\"\nexport TOKEN=\"root:Milvus\"\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/create\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"userName\": \"user_1\",\n \"password\": \"P@ssw0rd\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.update_password(\n user_name=\"user_1\",\n old_password=\"P@ssw0rd\",\n new_password=\"NewP@ssw0rd\"\n)\n\n","import io.milvus.v2.service.rbac.request.UpdatePasswordReq;\n\nUpdatePasswordReq updatePasswordReq = UpdatePasswordReq.builder()\n .userName(\"user_1\")\n .password(\"P@ssw0rd\")\n .newPassword(\"NewP@ssw0rd\")\n .build();\nclient.updatePassword(updatePasswordReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.updateUser({\n username: 'user_1',\n newPassword: 'P@ssw0rd',\n oldPassword: 'NewP@ssw0rd',\n});\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/update_password\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"newPassword\": \"P@ssw0rd!\",\n \"userName\": \"user_1\",\n \"password\": \"P@ssw0rd\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.list_users()\n\n","List resp = client.listUsers();\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.listUsers();\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","['root', 'user_1']\n\n","from pymilvus import MilvusClient\n\nclient.create_role(role_name=\"role_a\")\nimport io.milvus.v2.service.rbac.request.CreateRoleReq;\n\n","CreateRoleReq createRoleReq = CreateRoleReq.builder()\n .roleName(\"role_a\")\n .build();\n \n\n","client.createRole(createRoleReq);\nconst { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.createRole({\n roleName: 'role_a',\n});\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/create\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.list_roles()\n\n","List roles = client.listRoles();\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.listRoles(\n includeUserInfo: True\n);\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","['admin', 'role_a']\n\n"],"headingContent":"Create Users & Roles","anchorList":[{"label":"Créer des utilisateurs et des rôles","href":"Create-Users--Roles","type":1,"isActive":false},{"label":"Utilisateur","href":"User","type":2,"isActive":false},{"label":"Rôle","href":"Role","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/fr/adminGuide/users_and_roles.md b/localization/v2.5.x/site/fr/adminGuide/users_and_roles.md
new file mode 100644
index 000000000..6816438b3
--- /dev/null
+++ b/localization/v2.5.x/site/fr/adminGuide/users_and_roles.md
@@ -0,0 +1,261 @@
+---
+id: users_and_roles.md
+related_key: 'users, roles'
+summary: >-
+ Milvus permet un contrôle d'accès précis par le biais de RBAC. Vous pouvez
+ commencer par créer des utilisateurs et des rôles, puis attribuer des
+ privilèges ou des groupes de privilèges aux rôles, et enfin gérer le contrôle
+ d'accès en accordant des rôles aux utilisateurs. Cette méthode garantit
+ l'efficacité et la sécurité de la gestion des accès. Cette page explique
+ comment créer des utilisateurs et des rôles dans Milvus.
+title: Créer des utilisateurs et des rôles
+---
+
Créer des utilisateurs et des rôles
+
+
+
+
Milvus permet un contrôle d'accès précis grâce à la méthode RBAC. Vous pouvez commencer par créer des utilisateurs et des rôles, puis attribuer des privilèges ou des groupes de privilèges aux rôles, et enfin gérer le contrôle d'accès en accordant des rôles aux utilisateurs. Cette méthode garantit l'efficacité et la sécurité de la gestion des accès. Cette page présente la création d'utilisateurs et de rôles dans Milvus.
+
Utilisateur
+
+
+
+
Après l'initialisation d'une instance Milvus, un utilisateur racine est automatiquement généré pour l'authentification lors de la première connexion à Milvus. Le nom d'utilisateur de l'utilisateur racine est root et le mot de passe est Milvus. Le rôle par défaut de l'utilisateur racine est admin, qui a accès à toutes les ressources. Pour garantir la sécurité des données, veuillez conserver les informations d'identification de l'utilisateur racine afin d'éviter tout accès non autorisé.
+
Pour les opérations quotidiennes, nous recommandons de créer des utilisateurs au lieu d'utiliser l'utilisateur racine.
+
Créer un utilisateur
L'exemple suivant montre comment créer un utilisateur avec le nom d'utilisateur user_1 et le mot de passe P@ssw0rd. Le nom d'utilisateur et le mot de passe de l'utilisateur doivent respecter les règles suivantes.
+
+
Nom d'utilisateur : doit commencer par une lettre et ne peut inclure que des lettres majuscules ou minuscules, des chiffres et des traits de soulignement.
+
Mot de passe : il doit être composé de 8 à 64 caractères et doit inclure trois des éléments suivants : lettres majuscules, lettres minuscules, chiffres et caractères spéciaux.
Après avoir créé un utilisateur, vous pouvez mettre à jour le mot de passe en cas d'oubli.
+
Le nouveau mot de passe doit également respecter la règle suivante.
+
+
Il doit être composé de 8 à 64 caractères et inclure trois des éléments suivants : lettres majuscules, lettres minuscules, chiffres et caractères spéciaux.
+
+
L'exemple suivant montre comment mettre à jour le mot de passe de l'utilisateur user_1 en NewP@ssw0rd.
Voici un exemple de résultat. root est l'utilisateur par défaut généré automatiquement dans Milvus. user_1 est le nouvel utilisateur qui vient d'être créé.
+
['root', 'user_1']
+
+
+
Rôle
+
+
+
+
Milvus fournit un rôle intégré appelé admin, qui est un rôle d'administrateur pouvant accéder aux ressources sous toutes les instances et disposant de privilèges pour toutes les opérations. Pour une gestion plus fine des accès et une meilleure sécurité des données, il est recommandé de créer des rôles personnalisés en fonction de vos besoins.
+
Créer un rôle
L'exemple suivant montre comment créer un rôle nommé role_a.
+
Le nom du rôle doit respecter la règle suivante.
+
+
Il doit commencer par une lettre et ne peut comprendre que des lettres majuscules ou minuscules, des chiffres et des traits de soulignement."
Voici un exemple de sortie. admin est le rôle par défaut dans Milvus. role_a est le nouveau rôle qui vient d'être créé.
+
['admin', 'role_a']
+
+
diff --git a/localization/v2.5.x/site/fr/getstarted/run-milvus-docker/install_standalone-docker-compose.json b/localization/v2.5.x/site/fr/getstarted/run-milvus-docker/install_standalone-docker-compose.json
index 1d7e03b42..ebb8a4c94 100644
--- a/localization/v2.5.x/site/fr/getstarted/run-milvus-docker/install_standalone-docker-compose.json
+++ b/localization/v2.5.x/site/fr/getstarted/run-milvus-docker/install_standalone-docker-compose.json
@@ -1 +1 @@
-{"codeList":["# Download the configuration file\n$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0-beta/milvus-standalone-docker-compose.yml -O docker-compose.yml\n\n# Start Milvus\n$ sudo docker compose up -d\n\nCreating milvus-etcd ... done\nCreating milvus-minio ... done\nCreating milvus-standalone ... done\n","$ sudo docker-compose ps\n\n Name Command State Ports\n--------------------------------------------------------------------------------------------------------------------\nmilvus-etcd etcd -advertise-client-url ... Up 2379/tcp, 2380/tcp\nmilvus-minio /usr/bin/docker-entrypoint ... Up (healthy) 9000/tcp\nmilvus-standalone /tini -- milvus run standalone Up 0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp\n","# Stop Milvus\n$ sudo docker compose down\n\n# Delete service data\n$ sudo rm -rf volumes\n"],"headingContent":"Run Milvus with Docker Compose (Linux)","anchorList":[{"label":"Exécuter Milvus avec Docker Compose (Linux)","href":"Run-Milvus-with-Docker-Compose-Linux","type":1,"isActive":false},{"label":"Conditions préalables","href":"Prerequisites","type":2,"isActive":false},{"label":"Installer Milvus","href":"Install-Milvus","type":2,"isActive":false},{"label":"Prochaines étapes","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["# Download the configuration file\n$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0/milvus-standalone-docker-compose.yml -O docker-compose.yml\n\n# Start Milvus\n$ sudo docker compose up -d\n\nCreating milvus-etcd ... done\nCreating milvus-minio ... done\nCreating milvus-standalone ... done\n","$ sudo docker-compose ps\n\n Name Command State Ports\n--------------------------------------------------------------------------------------------------------------------\nmilvus-etcd etcd -advertise-client-url ... Up 2379/tcp, 2380/tcp\nmilvus-minio /usr/bin/docker-entrypoint ... Up (healthy) 9000/tcp\nmilvus-standalone /tini -- milvus run standalone Up 0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp\n","# Stop Milvus\n$ sudo docker compose down\n\n# Delete service data\n$ sudo rm -rf volumes\n"],"headingContent":"Run Milvus with Docker Compose (Linux)","anchorList":[{"label":"Exécuter Milvus avec Docker Compose (Linux)","href":"Run-Milvus-with-Docker-Compose-Linux","type":1,"isActive":false},{"label":"Conditions préalables","href":"Prerequisites","type":2,"isActive":false},{"label":"Installer Milvus","href":"Install-Milvus","type":2,"isActive":false},{"label":"Prochaines étapes","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/fr/getstarted/run-milvus-docker/install_standalone-docker-compose.md b/localization/v2.5.x/site/fr/getstarted/run-milvus-docker/install_standalone-docker-compose.md
index b631d0f19..d2566aada 100644
--- a/localization/v2.5.x/site/fr/getstarted/run-milvus-docker/install_standalone-docker-compose.md
+++ b/localization/v2.5.x/site/fr/getstarted/run-milvus-docker/install_standalone-docker-compose.md
@@ -57,7 +57,7 @@ title: Exécuter Milvus avec Docker Compose (Linux)
Milvus fournit un fichier de configuration Docker Compose dans le référentiel Milvus. Pour installer Milvus à l'aide de Docker Compose, il suffit d'exécuter la commande suivante
Si vous n'avez pas réussi à exécuter la commande ci-dessus, veuillez vérifier si Docker Compose V1 est installé sur votre système. Si c'est le cas, il est conseillé de migrer vers Docker Compose V2 en raison des notes sur cette page.
-
Si vous rencontrez des problèmes en tirant l'image, contactez-nous à l'adresse community@zilliz.com en détaillant le problème, et nous vous fournirons l'assistance nécessaire.
+
Si vous rencontrez des problèmes lors de l'extraction de l'image, contactez-nous à l'adresse community@zilliz.com en détaillant le problème, et nous vous fournirons l'assistance nécessaire.
Après le démarrage de Milvus,
diff --git a/localization/v2.5.x/site/fr/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.json b/localization/v2.5.x/site/fr/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.json
index d56b950e1..8ce1be4b8 100644
--- a/localization/v2.5.x/site/fr/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.json
+++ b/localization/v2.5.x/site/fr/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.json
@@ -1 +1 @@
-{"codeList":["$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0-beta/milvus-standalone-docker-compose-gpu.yml -O docker-compose.yml\n","...\nstandalone:\n ...\n deploy:\n resources:\n reservations:\n devices:\n - driver: nvidia\n capabilities: [\"gpu\"]\n device_ids: [\"0\"]\n...\n","...\nstandalone:\n ...\n deploy:\n resources:\n reservations:\n devices:\n - driver: nvidia\n capabilities: [\"gpu\"]\n device_ids: ['0', '1']\n...\n","$ sudo docker compose up -d\n\nCreating milvus-etcd ... done\nCreating milvus-minio ... done\nCreating milvus-standalone ... done\n","$ sudo docker compose ps\n\n Name Command State Ports\n--------------------------------------------------------------------------------------------------------------------\nmilvus-etcd etcd -advertise-client-url ... Up 2379/tcp, 2380/tcp\nmilvus-minio /usr/bin/docker-entrypoint ... Up (healthy) 9000/tcp\nmilvus-standalone /tini -- milvus run standalone Up 0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp\n","$ CUDA_VISIBLE_DEVICES=0 ./milvus run standalone\n","$ CUDA_VISIBLE_DEVICES=0,1 ./milvus run standalone\n","# Stop Milvus\n$ sudo docker compose down\n\n# Delete service data\n$ sudo rm -rf volumes\n","docker cp :/milvus/configs/milvus.yaml milvus.yaml\n","vim milvus.yaml\n","...\ngpu:\n initMemSize: 0\n maxMemSize: 0\n...\n","docker cp milvus.yaml :/milvus/configs/milvus.yaml\n","docker stop \ndocker start \n"],"headingContent":"Run Milvus with GPU Support Using Docker Compose","anchorList":[{"label":"Exécution de Milvus avec prise en charge du GPU à l'aide de Docker Compose","href":"Run-Milvus-with-GPU-Support-Using-Docker-Compose","type":1,"isActive":false},{"label":"Conditions préalables","href":"Prerequisites","type":2,"isActive":false},{"label":"Installer Milvus","href":"Install-Milvus","type":2,"isActive":false},{"label":"Configuration du pool de mémoire","href":"Configure-memory-pool","type":2,"isActive":false},{"label":"Prochaines étapes","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0/milvus-standalone-docker-compose-gpu.yml -O docker-compose.yml\n","...\nstandalone:\n ...\n deploy:\n resources:\n reservations:\n devices:\n - driver: nvidia\n capabilities: [\"gpu\"]\n device_ids: [\"0\"]\n...\n","...\nstandalone:\n ...\n deploy:\n resources:\n reservations:\n devices:\n - driver: nvidia\n capabilities: [\"gpu\"]\n device_ids: ['0', '1']\n...\n","$ sudo docker compose up -d\n\nCreating milvus-etcd ... done\nCreating milvus-minio ... done\nCreating milvus-standalone ... done\n","$ sudo docker compose ps\n\n Name Command State Ports\n--------------------------------------------------------------------------------------------------------------------\nmilvus-etcd etcd -advertise-client-url ... Up 2379/tcp, 2380/tcp\nmilvus-minio /usr/bin/docker-entrypoint ... Up (healthy) 9000/tcp\nmilvus-standalone /tini -- milvus run standalone Up 0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp\n","$ CUDA_VISIBLE_DEVICES=0 ./milvus run standalone\n","$ CUDA_VISIBLE_DEVICES=0,1 ./milvus run standalone\n","# Stop Milvus\n$ sudo docker compose down\n\n# Delete service data\n$ sudo rm -rf volumes\n","docker cp :/milvus/configs/milvus.yaml milvus.yaml\n","vim milvus.yaml\n","...\ngpu:\n initMemSize: 0\n maxMemSize: 0\n...\n","docker cp milvus.yaml :/milvus/configs/milvus.yaml\n","docker stop \ndocker start \n"],"headingContent":"Run Milvus with GPU Support Using Docker Compose","anchorList":[{"label":"Exécution de Milvus avec prise en charge du GPU à l'aide de Docker Compose","href":"Run-Milvus-with-GPU-Support-Using-Docker-Compose","type":1,"isActive":false},{"label":"Conditions préalables","href":"Prerequisites","type":2,"isActive":false},{"label":"Installer Milvus","href":"Install-Milvus","type":2,"isActive":false},{"label":"Configuration du pool de mémoire","href":"Configure-memory-pool","type":2,"isActive":false},{"label":"Prochaines étapes","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/fr/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.md b/localization/v2.5.x/site/fr/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.md
index 4057d32aa..25170d913 100644
--- a/localization/v2.5.x/site/fr/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.md
+++ b/localization/v2.5.x/site/fr/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.md
@@ -59,8 +59,8 @@ title: Exécution de Milvus avec prise en charge du GPU à l'aide de Docker Comp
>
Pour installer Milvus avec prise en charge du GPU à l'aide de Docker Compose, procédez comme suit.
Vous devez apporter quelques modifications aux variables d'environnement du service autonome dans le fichier YAML, comme suit :
@@ -119,7 +119,7 @@ milvus-etcd etcd -advertise-client-url ... Up 2379/tcp, 23
milvus-minio /usr/bin/docker-entrypoint ... Up (healthy) 9000/tcp
milvus-standalone /tini -- milvus run standalone Up 0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp
-
Si vous avez affecté plusieurs périphériques GPU à Milvus dans docker-compose.yml, vous pouvez spécifier quel périphérique GPU est visible ou disponible pour l'utilisation.
+
Si vous avez affecté plusieurs périphériques GPU à Milvus dans docker-compose.yml, vous pouvez spécifier quel périphérique GPU est visible ou disponible pour utilisation.
Découvrez les nouveautés de Milvus ! Cette page résume les nouvelles fonctionnalités, les améliorations, les problèmes connus et les corrections de bogues de chaque version. Vous trouverez dans cette section les notes de version pour chaque version publiée après la v2.5.0. Nous vous conseillons de consulter régulièrement cette page pour prendre connaissance des mises à jour.
-
v2.5.0-beta
+
v2.5.0
-
Date de publication : 26 novembre 2024
+
Date de publication : 23 décembre 2024
Version de Milvus
Version du SDK Python
Version du SDK Node.js
Version du SDK Java
-
2.5.0-beta
2.5.0
2.5.0
2.5.0
+
2.5.0
2.5.1
2.5.2
2.5.2
-
Milvus 2.5.0-beta apporte des avancées significatives pour améliorer la convivialité, l'évolutivité et les performances pour les utilisateurs traitant de la recherche vectorielle et de la gestion de données à grande échelle. Avec cette version, Milvus intègre de nouvelles fonctionnalités puissantes telles que la recherche basée sur les termes, le compactage des clusters pour des requêtes optimisées et la prise en charge polyvalente des méthodes de recherche vectorielle dense et éparse. Les améliorations apportées à la gestion des clusters, à l'indexation et au traitement des données introduisent de nouveaux niveaux de flexibilité et de facilité d'utilisation, faisant de Milvus une base de données vectorielles encore plus robuste et conviviale.
+
Milvus 2.5.0 apporte des avancées significatives pour améliorer la convivialité, l'évolutivité et les performances pour les utilisateurs traitant de la recherche vectorielle et de la gestion de données à grande échelle. Avec cette version, Milvus intègre de nouvelles fonctionnalités puissantes telles que la recherche basée sur les termes, le compactage des grappes pour des requêtes optimisées et la prise en charge polyvalente des méthodes de recherche vectorielle dense et éparse. Les améliorations apportées à la gestion des clusters, à l'indexation et au traitement des données introduisent de nouveaux niveaux de flexibilité et de facilité d'utilisation, faisant de Milvus une base de données vectorielles encore plus robuste et conviviale.
Caractéristiques principales
Recherche en texte intégral
Milvus 2.5 prend en charge la recherche plein texte mise en œuvre avec Sparse-BM25 ! Cette fonctionnalité est un complément important aux solides capacités de recherche sémantique de Milvus, en particulier dans les scénarios impliquant des mots rares ou des termes techniques. Dans les versions précédentes, Milvus prenait en charge les vecteurs épars pour faciliter les scénarios de recherche par mot-clé. Ces vecteurs épars étaient générés en dehors de Milvus par des modèles neuronaux tels que SPLADEv2/BGE-M3 ou des modèles statistiques tels que l'algorithme BM25.
Alimenté par Tantivy, Milvus 2.5 dispose d'analyseurs intégrés et d'une extraction de vecteurs épars, étendant l'API de la simple réception de vecteurs en entrée à l'acceptation directe de texte. Les informations statistiques de l'algorithme BM25 sont mises à jour en temps réel au fur et à mesure de l'insertion des données, ce qui améliore la convivialité et la précision. En outre, les vecteurs épars basés sur les algorithmes de voisinage le plus proche (ANN) offrent des performances plus puissantes que les systèmes de recherche par mots clés standard.
Amélioration de l'analyse des expressions par la mise en place d'un cache pour les expressions répétées, la mise à niveau d'ANTLR et l'optimisation des performances des clauses NOT IN.
Amélioration des performances en matière de simultanéité des DDL
Optimisation des performances de simultanéité des opérations DDL (Data Definition Language).
Alignement des fonctionnalités de l'API RESTful
Alignement des fonctionnalités de l'API RESTful avec d'autres SDK pour plus de cohérence.
+
Mises à jour de la sécurité et de la configuration
Prise en charge de TLS pour sécuriser les communications entre nœuds dans les environnements plus complexes ou d'entreprise. Pour plus de détails, voir Configuration de la sécurité.
+
Amélioration des performances de compactage
Suppression des limites maximales de segments dans le compactage mixte et priorité aux segments plus petits, ce qui améliore l'efficacité et accélère les requêtes sur les ensembles de données volumineux ou fragmentés.
+
Équilibrage des canaux basé sur le score
Introduction d'une politique qui équilibre dynamiquement les charges entre les canaux, ce qui améliore l'utilisation des ressources et la stabilité globale dans les déploiements à grande échelle.
Si une collection doit être abandonnée pendant une période spécifique, envisagez de définir son délai de vie (TTL) en secondes. Une fois le TTL dépassé, Milvus supprime les entités de la collection et abandonne la collection. La suppression est asynchrone, ce qui signifie que les recherches et les requêtes sont toujours possibles avant que la suppression ne soit terminée.
+
Si une collection doit être abandonnée pendant une période spécifique, envisagez de définir son délai de vie (TTL) en secondes. Une fois le TTL dépassé, Milvus supprime les entités de la collection. La suppression est asynchrone, ce qui signifie que les recherches et les requêtes sont toujours possibles avant que la suppression ne soit terminée.
L'extrait de code suivant montre comment modifier le TTL d'une collection.
import io.milvus.v2.service.collection.request.AlterCollectionReq;
import java.util.HashMap;
diff --git a/localization/v2.5.x/site/fr/userGuide/schema/string.md b/localization/v2.5.x/site/fr/userGuide/schema/string.md
index 2fd2b8b17..6f487b229 100644
--- a/localization/v2.5.x/site/fr/userGuide/schema/string.md
+++ b/localization/v2.5.x/site/fr/userGuide/schema/string.md
@@ -5,7 +5,7 @@ summary: >-
Dans Milvus, VARCHAR est le type de données utilisé pour stocker des données
de type chaîne, adapté au stockage de chaînes de longueur variable. Il permet
de stocker des chaînes de caractères à un ou plusieurs octets, avec une
- longueur maximale de 60 535 caractères. Lorsque vous définissez un champ
+ longueur maximale de 65 535 caractères. Lorsque vous définissez un champ
VARCHAR, vous devez également spécifier le paramètre de longueur maximale
max_length. Le type de chaîne VARCHAR offre un moyen efficace et flexible de
stocker et de gérer des données textuelles, ce qui le rend idéal pour les
@@ -26,7 +26,7 @@ summary: >-
d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"
>
-
Dans Milvus, VARCHAR est le type de données utilisé pour stocker des données de type chaîne de caractères, adaptées au stockage de chaînes de caractères de longueur variable. Il permet de stocker des chaînes de caractères à un ou plusieurs octets, avec une longueur maximale de 60 535 caractères. Lorsque vous définissez un champ VARCHAR, vous devez également spécifier le paramètre de longueur maximale max_length. Le type de chaîne VARCHAR offre un moyen efficace et flexible de stocker et de gérer des données textuelles, ce qui le rend idéal pour les applications qui gèrent des chaînes de différentes longueurs.
+
Dans Milvus, VARCHAR est le type de données utilisé pour stocker des données de type chaîne, adaptées au stockage de chaînes de longueur variable. Il permet de stocker des chaînes de caractères à un ou plusieurs octets, avec une longueur maximale de 65 535 caractères. Lorsque vous définissez un champ VARCHAR, vous devez également spécifier le paramètre de longueur maximale max_length. Le type de chaîne VARCHAR offre un moyen efficace et flexible de stocker et de gérer des données textuelles, ce qui le rend idéal pour les applications qui gèrent des chaînes de différentes longueurs.
Ajout d'un champ VARCHAR-
+ Milvus fournit des opérateurs puissants pour interroger les champs des
+ tableaux, ce qui permet de filtrer et d'extraire des entités en fonction du
+ contenu des tableaux.
+title: Opérateurs de tableau
+---
+
Opérateurs ARRAY
+
+
+
+
Milvus fournit des opérateurs puissants pour interroger les champs de tableau, ce qui vous permet de filtrer et d'extraire des entités en fonction du contenu des tableaux.
+
+
Tous les éléments d'un tableau doivent être du même type et les structures imbriquées dans les tableaux sont traitées comme des chaînes simples. Par conséquent, lorsque vous travaillez avec des champs ARRAY, il est conseillé d'éviter une imbrication trop profonde et de veiller à ce que vos structures de données soient aussi plates que possible pour des performances optimales.
+
+
Opérateurs ARRAY disponibles
+
+
+
+
Les opérateurs ARRAY permettent une interrogation fine des champs de type tableau dans Milvus. Ces opérateurs sont les suivants
ARRAY_LENGTH(identifier, expr)La fonction ARRAY_CONTAINS permet de filtrer les entités en fonction du nombre d'éléments présents dans un champ de type tableau.
+
+
ARRAY_CONTAINS
+
+
+
+
L'opérateur ARRAY_CONTAINS vérifie si un élément spécifique existe dans un champ de tableau. Il est utile lorsque vous souhaitez trouver des entités dans lesquelles un élément donné est présent dans le tableau.
+
Exemple
+
Supposons que vous disposiez d'un champ de tableau history_temperatures, qui contient les températures les plus basses enregistrées pour différentes années. Pour trouver toutes les entités dont le tableau contient la valeur 23, vous pouvez utiliser l'expression de filtre suivante.
Cette expression renverra toutes les entités dont le tableau history_temperatures contient la valeur 23.
+
ARRAY_CONTAINS_ALL
+
+
+
+
L'opérateur ARRAY_CONTAINS_ALL garantit que tous les éléments de la liste spécifiée sont présents dans le champ du tableau. Cet opérateur est utile lorsque vous souhaitez faire correspondre des entités qui contiennent plusieurs valeurs dans le tableau.
+
Exemple
+
Si vous souhaitez trouver toutes les entités dont le tableau history_temperatures contient à la fois 23 et 24, vous pouvez utiliser.
Vous obtiendrez toutes les entités dont le tableau history_temperatures contient les deux valeurs spécifiées.
+
ARRAY_CONTAINS_ANY
+
+
+
+
L'opérateur ARRAY_CONTAINS_ANY vérifie si l'un des éléments de la liste spécifiée est présent dans le champ du tableau. Cet opérateur est utile lorsque vous souhaitez faire correspondre des entités qui contiennent au moins une des valeurs spécifiées dans le tableau.
+
Exemple
+
Pour trouver toutes les entités dont le tableau history_temperatures contient soit 23, soit 24, vous pouvez utiliser.
Ceci renverra toutes les entités dont le tableau history_temperatures contient au moins l'une des valeurs 23 ou 24.
+
ARRAY_LENGTH
+
+
+
+
L'opérateur ARRAY_LENGTH vous permet de filtrer les entités en fonction du nombre d'éléments d'un champ de tableau. Cet opérateur est utile lorsque vous devez trouver des entités dont les tableaux sont d'une certaine longueur.
+
Exemple
+
Si vous souhaitez trouver toutes les entités dont le tableau history_temperatures comporte moins de 10 éléments, vous pouvez utiliser l'opérateur.
Cela renverra toutes les entités dont le tableau history_temperatures comporte moins de 10 éléments.
diff --git a/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/basic-operators.json b/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/basic-operators.json
new file mode 100644
index 000000000..b226e8529
--- /dev/null
+++ b/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/basic-operators.json
@@ -0,0 +1 @@
+{"codeList":["filter = 'status == \"active\"'\n\n","filter = 'status != \"inactive\"'\n\n","filter = 'age > 30'\n\n","filter = 'price < 100'\n\n","filter = 'rating >= 4'\n\n","filter = 'discount <= 10'\n\n","filter = 'color in [\"red\", \"green\", \"blue\"]'\n\n","filter = 'name LIKE \"Prod%\"'\n\n","filter = 'name LIKE \"%XYZ\"'\n\n","filter = 'name LIKE \"%Pro%\"'\n\n","filter = 'total == base_price + tax'\n\n","filter = 'quantity - quantity_sold > 50'\n\n","filter = 'price * quantity > 1000'\n\n","filter = 'total_price / quantity < 50'\n\n","filter = 'id % 2 == 0'\n\n","filter = 'price ** 2 > 1000'\n\n","filter = 'price > 100 AND stock > 50'\n\n","filter = 'color == \"red\" OR color == \"blue\"'\n\n","filter = 'NOT color == \"green\"'\n\n","filter = 'product[\"price\"] > 1000'\n\n","filter = 'history_temperatures[0] > 30'\n\n"],"headingContent":"Basic Operators","anchorList":[{"label":"Opérateurs de base","href":"Basic-Operators","type":1,"isActive":false},{"label":"Opérateurs de comparaison","href":"Comparison-operators","type":2,"isActive":false},{"label":"Opérateurs de plage","href":"Range-operators","type":2,"isActive":false},{"label":"Opérateurs arithmétiques","href":"Arithmetic-Operators","type":2,"isActive":false},{"label":"Opérateurs logiques","href":"Logical-Operators","type":2,"isActive":false},{"label":"Conseils sur l'utilisation des opérateurs de base avec les champs JSON et ARRAY","href":"Tips-on-Using-Basic-Operators-with-JSON-and-ARRAY-Fields","type":2,"isActive":false},{"label":"Conclusion","href":"Conclusion","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/basic-operators.md b/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/basic-operators.md
new file mode 100644
index 000000000..233ba48d2
--- /dev/null
+++ b/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/basic-operators.md
@@ -0,0 +1,237 @@
+---
+id: basic-operators.md
+summary: >-
+ Milvus fournit un riche ensemble d'opérateurs de base pour vous aider à
+ filtrer et à interroger efficacement les données. Ces opérateurs vous
+ permettent d'affiner vos conditions de recherche en fonction de champs
+ scalaires, de calculs numériques, de conditions logiques, etc. Il est
+ essentiel de comprendre comment utiliser ces opérateurs pour élaborer des
+ requêtes précises et maximiser l'efficacité de vos recherches.
+title: Opérateurs de base
+---
+
Opérateurs de base
+
+
+
+
Milvus fournit un ensemble riche d'opérateurs de base pour vous aider à filtrer et à interroger efficacement les données. Ces opérateurs vous permettent d'affiner vos conditions de recherche en fonction de champs scalaires, de calculs numériques, de conditions logiques, etc. Il est essentiel de comprendre comment utiliser ces opérateurs pour élaborer des requêtes précises et maximiser l'efficacité de vos recherches.
+
Opérateurs de comparaison
+
+
+
+
Les opérateurs de comparaison sont utilisés pour filtrer les données en fonction de l'égalité, de l'inégalité ou de la taille. Ils s'appliquent aux champs numériques, de texte et de date.
+
Opérateurs de comparaison pris en charge.
+
== (égal à)
+
!= (différent de)
+
> (Supérieur à)
+
< (inférieur à)
+
>= (supérieur ou égal)
+
<= (Inférieur ou égal)
+
+
Exemple 1 : Filtrage avec Equal To (==)
Supposons que vous disposiez d'un champ nommé status et que vous souhaitiez trouver toutes les entités pour lesquelles status est "actif". Vous pouvez utiliser l'opérateur d'égalité ==.
+
filter = 'status == "active"'
+
+
+
Exemple 2 : Filtrage avec Not Equal To (!=)
Pour trouver les entités où status n'est pas "inactif".
+
filter = 'status != "inactive"'
+
+
+
Exemple 3 : Filtrage avec Greater Than (>)
Pour trouver toutes les entités dont l'adresse age est supérieure à 30.
+
filter = 'age > 30'
+
+
+
Exemple 4 : Filtrage avec Less Than (<)
Pour trouver les entités dont l'adresse price est inférieure à 100.
+
filter = 'price < 100'
+
+
+
Exemple 5 : Filtrage avec une valeur supérieure ou égale à (>=)
Pour trouver toutes les entités dont le site rating est supérieur ou égal à 4.
+
filter = 'rating >= 4'
+
+
+
Exemple 6 : Filtrage avec une valeur inférieure ou égale à (<=)
Pour trouver les entités dont l'adresse discount est inférieure ou égale à 10 %.
+
filter = 'discount <= 10'
+
+
+
Opérateurs de plage
+
+
+
+
Les opérateurs de plage permettent de filtrer les données en fonction d'ensembles ou de plages de valeurs spécifiques.
+
Opérateurs de plage pris en charge.
+
IN: Utilisés pour faire correspondre des valeurs à l'intérieur d'un ensemble ou d'une plage spécifique.
+
LIKE: Utilisé pour faire correspondre un modèle (principalement pour les champs de texte).
+
+
Exemple 1 : Utilisation de IN pour faire correspondre plusieurs valeurs
Si vous souhaitez trouver toutes les entités dont la valeur color est soit "rouge", soit "verte", soit "bleue".
+
filter = 'color in ["red", "green", "blue"]'
+
+
+
C'est utile lorsque vous souhaitez vérifier l'appartenance à une liste de valeurs.
+
Exemple 2 : utilisation de LIKE pour la recherche de motifs
L'opérateur LIKE est utilisé pour la recherche de motifs dans les champs de type chaîne de caractères. Il peut faire correspondre des sous-chaînes à différentes positions dans le texte : en tant que préfixe, infixe ou suffixe. L'opérateur LIKE utilise le symbole % comme caractère de remplacement, qui peut correspondre à n'importe quel nombre de caractères (y compris zéro).
+
Correspondance de préfixes (commence par)
Pour effectuer une recherche par préfixe, où la chaîne commence par un motif donné, vous pouvez placer le motif au début et utiliser % pour rechercher tous les caractères qui le suivent. Par exemple, pour trouver tous les produits dont le site name commence par "Prod".
+
filter = 'name LIKE "Prod%"'
+
+
+
Cela correspondra à tous les produits dont le nom commence par "Prod", tels que "Produit A", "Produit B", etc.
+
Correspondance par suffixe (se termine par)
Pour une correspondance par suffixe, lorsque la chaîne se termine par un motif donné, placez le symbole % au début du motif. Par exemple, pour trouver tous les produits dont le site name se termine par "XYZ".
+
filter = 'name LIKE "%XYZ"'
+
+
+
Cette recherche portera sur tous les produits dont le nom se termine par "XYZ", tels que "ProductXYZ", "SampleXYZ", etc.
+
Correspondance infixe (contient)
Pour effectuer une correspondance infixe, où le motif peut apparaître n'importe où dans la chaîne, vous pouvez placer le symbole % au début et à la fin du motif. Par exemple, pour trouver tous les produits dont le site name contient le mot "Pro".
+
filter = 'name LIKE "%Pro%"'
+
+
+
Cela correspondra à tous les produits dont le nom contient la sous-chaîne "Pro", comme "Product", "ProLine" ou "SuperPro".
+
Opérateurs arithmétiques
+
+
+
+
Les opérateurs arithmétiques vous permettent de créer des conditions basées sur des calculs impliquant des champs numériques.
+
Opérateurs arithmétiques pris en charge.
+
+ (Addition)
+
- (Soustraction)
+
* (Multiplication)
+
/ (division)
+
% (Modulus)
+
** (exponentiation)
+
+
Exemple 1 : Utilisation de l'addition (+)
Pour trouver les entités dont le prix total est la somme de base_price et tax.
+
filter = 'total == base_price + tax'
+
+
+
Exemple 2 : Utilisation de la soustraction (-)
Pour trouver les entités où quantity est supérieur à 50 et quantity_sold est inférieur à 30.
+
filter = 'quantity - quantity_sold > 50'
+
+
+
Exemple 3 : Utilisation de la multiplication (*)
Pour trouver les entités où price est supérieur à 100 et quantity est supérieur à 10, multiplié.
+
filter = 'price * quantity > 1000'
+
+
+
Exemple 4 : Utilisation de la division (/)
Pour trouver des produits où total_price divisé par quantity est inférieur à 50.
+
filter = 'total_price / quantity < 50'
+
+
+
Exemple 5 : Utilisation du module (%)
Pour trouver des entités dont le id est un nombre pair (c'est-à-dire divisible par 2).
+
filter = 'id % 2 == 0'
+
+
+
Exemple 6 : Utilisation de l'exponentiation (**)
Pour trouver les entités où price élevé à la puissance 2 est supérieur à 1000.
+
filter = 'price ** 2 > 1000'
+
+
+
Opérateurs logiques
+
+
+
+
Les opérateurs logiques sont utilisés pour combiner plusieurs conditions dans une expression de filtre plus complexe. Ils comprennent AND, OR, et NOT.
+
Opérateurs logiques pris en charge.
+
AND: Combine plusieurs conditions qui doivent toutes être vraies.
+
OR: Combine des conditions dont au moins une doit être vraie.
+
NOT: Négation d'une condition.
+
+
Exemple 1 : Utilisation de AND pour combiner des conditions
Trouver tous les produits pour lesquels price est supérieur à 100 et stock est supérieur à 50.
+
filter = 'price > 100 AND stock > 50'
+
+
+
Exemple 2 : Utilisation de OR pour combiner des conditions
Pour trouver tous les produits pour lesquels color est soit "rouge", soit "bleu".
+
filter = 'color == "red" OR color == "blue"'
+
+
+
Exemple 3 : Utilisation de NOT pour exclure une condition
Pour trouver tous les produits pour lesquels color n'est pas "vert".
+
filter = 'NOT color == "green"'
+
+
+
Conseils sur l'utilisation des opérateurs de base avec les champs JSON et ARRAY
+
+
+
+
Si les opérateurs de base de Milvus sont polyvalents et peuvent être appliqués à des champs scalaires, ils peuvent également être utilisés efficacement avec les clés et les index des champs JSON et ARRAY.
+
Par exemple, si vous avez un champ product qui contient plusieurs clés comme price, model, et tags, faites toujours référence à la clé directement.
+
filter = 'product["price"] > 1000'
+
+
+
Pour trouver les enregistrements dont la première température d'un tableau de températures enregistrées dépasse une certaine valeur, utilisez .
+
filter = 'history_temperatures[0] > 30'
+
+
+
Conclusion
+
+
+
+
Milvus propose une gamme d'opérateurs de base qui vous offrent une grande souplesse dans le filtrage et l'interrogation de vos données. En combinant des opérateurs de comparaison, de plage, arithmétiques et logiques, vous pouvez créer des expressions de filtrage puissantes pour réduire les résultats de vos recherches et récupérer efficacement les données dont vous avez besoin.
diff --git a/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/boolean.json b/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/boolean.json
new file mode 100644
index 000000000..e47effebf
--- /dev/null
+++ b/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/boolean.json
@@ -0,0 +1 @@
+{"codeList":["filter='color in [\"red\", \"green\", \"blue\"]'\n\n","filter='product[\"model\"] == \"JSN-087\" AND product[\"price\"] < 1850'\n\n","filter='history_temperatures[10] > 23'\n\n","filter = \"age > 25 AND city IN ['北京', '上海']\"\n\n","filter = \"age > {age} AND city in {city}\",\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter='json_contains(tags, \"sale\")'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\", \"discount\"]}\nfilter='json_contains_all(tags, [\"electronics\", \"sale\", \"new\"])'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter='json_contains_any(tags, [\"electronics\", \"new\", \"clearance\"])'\n\n","filter=\"ARRAY_CONTAINS(history_temperatures, 23)\"\n\n","filter=\"ARRAY_CONTAINS_ALL(history_temperatures, [23, 24])\"\n\n","filter=\"ARRAY_CONTAINS_ANY(history_temperatures, [23, 24])\"\n\n","filter=\"ARRAY_LENGTH(history_temperatures) < 10\"\n\n"],"headingContent":"Filtering Explained","anchorList":[{"label":"Explication du filtrage","href":"Filtering-Explained","type":1,"isActive":false},{"label":"Opérateurs de base","href":"Basic-operators","type":2,"isActive":false},{"label":"Modèles d'expression de filtrage","href":"Filter-expression-templates","type":2,"isActive":false},{"label":"Opérateurs spécifiques aux types de données","href":"Data-type-specific-operators","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/boolean.md b/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/boolean.md
new file mode 100644
index 000000000..fd637c449
--- /dev/null
+++ b/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/boolean.md
@@ -0,0 +1,148 @@
+---
+id: boolean.md
+summary: >-
+ Milvus offre de puissantes capacités de filtrage qui permettent une
+ interrogation précise de vos données. Les expressions de filtre vous
+ permettent de cibler des champs scalaires spécifiques et d'affiner les
+ résultats de la recherche avec différentes conditions. Ce guide explique
+ comment utiliser les expressions de filtre dans Milvus, avec des exemples axés
+ sur les opérations de requête. Vous pouvez également appliquer ces filtres
+ dans les requêtes de recherche et de suppression.
+title: Le filtrage expliqué
+---
+
Explication du filtrage
+
+
+
+
Milvus offre de puissantes capacités de filtrage qui permettent une interrogation précise de vos données. Les expressions de filtre vous permettent de cibler des champs scalaires spécifiques et d'affiner les résultats de la recherche avec différentes conditions. Ce guide explique comment utiliser les expressions de filtre dans Milvus, avec des exemples axés sur les opérations de requête. Vous pouvez également appliquer ces filtres dans les requêtes de recherche et de suppression.
+
Opérateurs de base
+
+
+
+
Milvus prend en charge plusieurs opérateurs de base pour filtrer les données.
+
+
Opérateurs de comparaison: ==, !=, >, <, >=, et <= permettent de filtrer sur la base de champs numériques, de texte ou de date.
+
Filtres de plage: IN et LIKE permettent de faire correspondre des plages ou des ensembles de valeurs spécifiques.
+
Opérateurs arithmétiques: + Les opérateurs arithmétiques, -, *, /, % et ** sont utilisés pour les calculs impliquant des champs numériques.
+
Opérateurs logiques: AND, OR, et NOT combinent plusieurs conditions dans des expressions complexes.
+
+
Exemple : Filtrage par couleur
Pour trouver des entités de couleur primaire (rouge, vert ou bleu) dans un champ scalaire color, utilisez l'expression de filtrage suivante.
+
filter='color in ["red", "green", "blue"]'
+
+
+
Exemple : Filtrage des champs JSON
Milvus permet de référencer des clés dans des champs JSON. Par exemple, si vous avez un champ JSON product avec les clés price et model, et que vous voulez trouver des produits avec un modèle spécifique et un prix inférieur à 1 850, utilisez l'expression de filtre suivante.
+
filter='product["model"] == "JSN-087" AND product["price"] < 1850'
+
+
+
Exemple : Filtrage des champs de type tableau
Si vous disposez d'un champ de tableau history_temperatures contenant des enregistrements de température et que vous souhaitez trouver des observatoires dont la 10e température enregistrée dépasse 23 °C, utilisez cette expression.
+
filter='history_temperatures[10] > 23'
+
+
+
Pour plus d'informations sur ces opérateurs de base, reportez-vous à la section Opérateurs de base.
+
Modèles d'expression de filtrage
+
+
+
+
Lorsque le filtrage utilise des caractères CJK, le traitement peut être plus complexe en raison des jeux de caractères plus importants et des différences d'encodage. Cela peut entraîner des performances plus lentes, en particulier avec l'opérateur IN.
+
Milvus introduit un modèle d'expression de filtre pour optimiser les performances lors de l'utilisation de caractères CJK. En séparant les valeurs dynamiques de l'expression de filtre, le moteur de requête traite l'insertion de paramètres plus efficacement.
+
Exemple
Pour trouver les personnes de plus de 25 ans vivant à "北京" (Pékin) ou à "上海" (Shanghai), utilisez le modèle d'expression suivant.
+
filter = "age > 25 AND city IN ['北京', '上海']"
+
+
+
Pour améliorer les performances, utilisez cette variante avec des paramètres.
+
filter = "age > {age} AND city in {city}",
+filter_params = {"age": 25, "city": ["北京", "上海"]}
+
+
+
Cette approche permet de réduire la charge d'analyse et d'améliorer la vitesse d'interrogation. Pour plus d'informations, voir la section Modélisation des filtres.
+
Opérateurs spécifiques aux types de données
+
+
+
+
Milvus fournit des opérateurs de filtrage avancés pour des types de données spécifiques, tels que les champs JSON, ARRAY et VARCHAR.
+
Opérateurs spécifiques aux champs JSON
Milvus propose des opérateurs avancés pour l'interrogation des champs JSON, permettant un filtrage précis dans des structures JSON complexes.
+
**JSON_CONTAINS(identifier, jsonExpr)**: Vérifie si une expression JSON existe dans le champ.
Pour plus de détails sur les opérateurs JSON, voir Opérateurs JSON.
+
Opérateurs spécifiques aux champs ARRAY
Milvus propose des opérateurs de filtrage avancés pour les champs de type tableau, tels que ARRAY_CONTAINS, ARRAY_CONTAINS_ALL, ARRAY_CONTAINS_ANY, et ARRAY_LENGTH, qui permettent un contrôle fin des données de type tableau.
+
**ARRAY_CONTAINS**: Filtre les entités contenant un élément spécifique.
Pour plus de détails sur les opérateurs de tableau, voir Opérateurs de tableau.
+
Opérateurs spécifiques aux champs VARCHAR
L'opérateur **Text_Match** permet d'extraire des documents avec précision en fonction de termes d'interrogation spécifiques. Il est particulièrement utile pour les recherches filtrées qui combinent des filtres scalaires avec des recherches de similarité vectorielle. Contrairement aux recherches sémantiques, la correspondance de texte se concentre sur les occurrences exactes des termes.
+
Milvus utilise Tantivy pour prendre en charge l'indexation inversée et la recherche textuelle basée sur les termes. Le processus implique
+
+
Analyseur: Tokenise et traite le texte d'entrée.
+
Indexation: Création d'un index inversé mettant en correspondance des tokens uniques avec des documents.
diff --git a/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/filtering-templating.json b/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/filtering-templating.json
new file mode 100644
index 000000000..67f010cc5
--- /dev/null
+++ b/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/filtering-templating.json
@@ -0,0 +1 @@
+{"codeList":["filter = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\n\n","expr = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\nres = client.search(\n \"hello_milvus\",\n vectors[:nq],\n filter=expr,\n limit=10,\n output_fields=[\"age\", \"city\"],\n search_params={\"metric_type\": \"COSINE\", \"params\": {\"search_list\": 100}},\n filter_params=filter_params,\n)\n\n","expr = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\nres = client.query(\n \"hello_milvus\",\n filter=expr,\n output_fields=[\"age\", \"city\"],\n filter_params=filter_params\n)\n\n","expr = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\nres = client.delete(\n \"hello_milvus\",\n filter=expr,\n filter_params=filter_params\n)\n\n"],"headingContent":"Filter Templating","anchorList":[{"label":"Modèle de filtre","href":"Filter-Templating","type":1,"isActive":false},{"label":"Vue d'ensemble","href":"Overview","type":2,"isActive":false},{"label":"Opérations de recherche","href":"Search-Operations","type":2,"isActive":false},{"label":"Opérations de requête","href":"Query-Operations","type":2,"isActive":false},{"label":"Opérations de suppression","href":"Delete-Operations","type":2,"isActive":false},{"label":"Conclusion","href":"Conclusion","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/filtering-templating.md b/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/filtering-templating.md
new file mode 100644
index 000000000..bdb08a03c
--- /dev/null
+++ b/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/filtering-templating.md
@@ -0,0 +1,156 @@
+---
+id: filtering-templating.md
+summary: >-
+ Dans Milvus, les expressions de filtre complexes comportant de nombreux
+ éléments, en particulier celles qui impliquent des caractères non ASCII tels
+ que les caractères CJK, peuvent affecter de manière significative les
+ performances des requêtes. Pour remédier à ce problème, Milvus introduit un
+ mécanisme de modélisation des expressions de filtre conçu pour améliorer
+ l'efficacité en réduisant le temps consacré à l'analyse des expressions
+ complexes. Cette page explique comment utiliser le modèle d'expression de
+ filtre dans les opérations de recherche, d'interrogation et de suppression.
+title: Filtrage Templating
+---
+
Modèle de filtre
+
+
+
+
Dans Milvus, les expressions de filtre complexes comportant de nombreux éléments, en particulier celles qui impliquent des caractères non ASCII tels que les caractères CJK, peuvent affecter de manière significative les performances des requêtes. Pour y remédier, Milvus introduit un mécanisme de modélisation des expressions de filtre conçu pour améliorer l'efficacité en réduisant le temps consacré à l'analyse des expressions complexes. Cette page explique comment utiliser le modèle d'expression de filtre dans les opérations de recherche, de requête et de suppression.
+
Vue d'ensemble
+
+
+
+
Le modèle d'expression de filtre vous permet de créer des expressions de filtre avec des espaces réservés, qui peuvent être remplacés dynamiquement par des valeurs pendant l'exécution de la requête. En utilisant le modèle, vous évitez d'intégrer de grands tableaux ou des expressions complexes directement dans le filtre, ce qui réduit le temps d'analyse et améliore les performances de la requête.
+
Supposons que vous ayez une expression de filtre impliquant deux champs, age et city, et que vous souhaitiez trouver toutes les personnes dont l'âge est supérieur à 25 ans et qui vivent soit à "北京" (Pékin), soit à "上海" (Shanghai). Au lieu d'intégrer directement les valeurs dans l'expression du filtre, vous pouvez utiliser un modèle.
+
filter = "age > {age} AND city IN {city}"
+filter_params = {"age": 25, "city": ["北京", "上海"]}
+
+
+
Ici, {age} et {city} sont des espaces réservés qui seront remplacés par les valeurs réelles de filter_params lorsque la requête sera exécutée.
+
L'utilisation d'un modèle d'expression de filtre dans Milvus présente plusieurs avantages clés.
+
+
Réduction du temps d'analyse: en remplaçant les expressions de filtre complexes ou volumineuses par des caractères génériques, le système passe moins de temps à analyser et à traiter le filtre.
+
Amélioration des performances des requêtes: La réduction des frais généraux d'analyse permet d'améliorer les performances des requêtes, ce qui se traduit par des QPS plus élevés et des temps de réponse plus rapides.
+
Évolutivité: Au fur et à mesure que vos ensembles de données se développent et que les expressions de filtre deviennent plus complexes, le templating garantit que les performances restent efficaces et évolutives.
+
+
Opérations de recherche
+
+
+
+
Pour les opérations de recherche dans Milvus, l'expression filter est utilisée pour définir la condition de filtrage et le paramètre filter_params est utilisé pour spécifier les valeurs des espaces réservés. Le dictionnaire filter_params contient les valeurs dynamiques que Milvus utilisera pour remplacer l'expression de filtrage.
Dans cet exemple, Milvus remplacera dynamiquement {age} par 25 et {city} par ["北京", "上海"] lors de l'exécution de la recherche.
+
Opérations de requête
+
+
+
+
Le même mécanisme de modélisation peut être appliqué aux opérations de requête dans Milvus. Dans la fonction query, vous définissez l'expression du filtre et utilisez filter_params pour spécifier les valeurs à remplacer.
En utilisant filter_params, Milvus gère efficacement l'insertion dynamique des valeurs, ce qui améliore la vitesse d'exécution de la requête.
+
Opérations de suppression
+
+
+
+
Vous pouvez également utiliser le modèle d'expression de filtre dans les opérations de suppression. Comme pour la recherche et la requête, l'expression filter définit les conditions et filter_params fournit les valeurs dynamiques pour les espaces réservés.
+
expr = "age > {age} AND city IN {city}"
+filter_params = {"age": 25, "city": ["北京", "上海"]}
+res = client.delete(
+ "hello_milvus",
+ filter=expr,
+ filter_params=filter_params
+)
+
+
+
Cette approche améliore les performances des opérations de suppression, en particulier lorsqu'il s'agit de conditions de filtrage complexes.
+
Conclusion
+
+
+
+
Le modelage des expressions de filtre est un outil essentiel pour optimiser les performances des requêtes dans Milvus. En utilisant les caractères génériques et le dictionnaire filter_params, vous pouvez réduire considérablement le temps passé à analyser des expressions de filtre complexes. Cela permet d'accélérer l'exécution des requêtes et d'améliorer les performances globales.
diff --git a/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/json-operators.json b/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/json-operators.json
new file mode 100644
index 000000000..aa41e794d
--- /dev/null
+++ b/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/json-operators.json
@@ -0,0 +1 @@
+{"codeList":["# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter = 'json_contains(tags, \"sale\")'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\", \"discount\"]}\nfilter = 'json_contains_all(tags, [\"electronics\", \"sale\", \"new\"])'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter = 'json_contains_any(tags, [\"electronics\", \"new\", \"clearance\"])'\n\n"],"headingContent":"JSON Operators","anchorList":[{"label":"Opérateurs JSON","href":"JSON-Operators","type":1,"isActive":false},{"label":"Opérateurs JSON disponibles","href":"Available-JSON-Operators","type":2,"isActive":false},{"label":"JSON_CONTAINS","href":"JSONCONTAINS","type":2,"isActive":false},{"label":"JSON_CONTAINS_ALL","href":"JSONCONTAINSALL","type":2,"isActive":false},{"label":"JSON_COTAINS_ANY","href":"JSONCOTAINSANY","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/json-operators.md b/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/json-operators.md
new file mode 100644
index 000000000..99a536e8d
--- /dev/null
+++ b/localization/v2.5.x/site/fr/userGuide/search-query-get/boolean/json-operators.md
@@ -0,0 +1,123 @@
+---
+id: json-operators.md
+summary: >-
+ Milvus prend en charge des opérateurs avancés pour l'interrogation et le
+ filtrage des champs JSON, ce qui les rend parfaits pour la gestion de données
+ complexes et structurées. Ces opérateurs permettent d'effectuer des requêtes
+ très efficaces dans les documents JSON et d'extraire des entités en fonction
+ d'éléments, de valeurs ou de conditions spécifiques dans les champs JSON.
+ Cette section vous guidera dans l'utilisation des opérateurs spécifiques à
+ JSON dans Milvus, en fournissant des exemples pratiques pour illustrer leur
+ fonctionnalité.
+title: Opérateurs JSON
+---
+
Opérateurs JSON
+
+
+
+
Milvus prend en charge des opérateurs avancés pour l'interrogation et le filtrage des champs JSON, ce qui les rend parfaits pour la gestion de données complexes et structurées. Ces opérateurs permettent d'effectuer des requêtes très efficaces dans les documents JSON, ce qui permet d'extraire des entités en fonction d'éléments, de valeurs ou de conditions spécifiques dans les champs JSON. Cette section vous guidera dans l'utilisation des opérateurs spécifiques à JSON dans Milvus, en fournissant des exemples pratiques pour illustrer leur fonctionnalité.
+
+
Les champs JSON ne peuvent pas traiter les structures complexes imbriquées et traitent toutes les structures imbriquées comme des chaînes simples. Par conséquent, lorsque vous travaillez avec des champs JSON, il est conseillé d'éviter une imbrication trop profonde et de veiller à ce que vos structures de données soient aussi plates que possible pour des performances optimales.
+
+
Opérateurs JSON disponibles
+
+
+
+
Milvus fournit plusieurs opérateurs JSON puissants qui permettent de filtrer et d'interroger les données JSON.
Explorons ces opérateurs à l'aide d'exemples pour voir comment ils peuvent être appliqués dans des scénarios réels.
+
JSON_CONTAINS
+
+
+
+
L'opérateur json_contains vérifie si un élément ou un sous-réseau spécifique existe dans un champ JSON. Il est utile lorsque vous voulez vous assurer qu'un tableau ou un objet JSON contient une valeur particulière.
+
Exemple
+
Imaginez que vous ayez une collection de produits, chacun avec un champ tags qui contient un tableau JSON de chaînes de caractères, comme ["electronics", "sale", "new"]. Vous souhaitez filtrer les produits qui ont la balise "sale".
Dans cet exemple, Milvus renvoie tous les produits dont le champ tags contient l'élément "sale".
+
JSON_CONTAINS_ALL
+
+
+
+
L'opérateur json_contains_all garantit que tous les éléments d'une expression JSON spécifiée sont présents dans le champ cible. Il est particulièrement utile lorsque vous devez faire correspondre plusieurs valeurs dans un tableau JSON.
+
Exemple
+
Si vous voulez trouver tous les produits qui ont les étiquettes "electronics", "sale", et "new", vous pouvez utiliser l'opérateur json_contains_all.
Cette requête renverra tous les produits dont le tableau tags contient les trois éléments spécifiés : "electronics", "sale", et "new".
+
JSON_COTAINS_ANY
+
+
+
+
L'opérateur json_contains_any filtre les entités dont au moins un membre de l'expression JSON existe dans le champ. Cet opérateur est utile lorsque vous souhaitez faire correspondre des entités sur la base de l'une des valeurs possibles.
+
Exemple
+
Supposons que vous souhaitiez filtrer les produits qui ont au moins une des balises "electronics", "sale", ou "new". Vous pouvez utiliser l'opérateur json_contains_any pour y parvenir.
Dans ce cas, Milvus renverra tous les produits qui ont au moins une des balises de la liste ["electronics", "new", "clearance"]. Même si un produit n'a qu'une seule de ces balises, il sera inclus dans le résultat.
diff --git a/localization/v2.5.x/site/fr/userGuide/tools/milvus-webui.json b/localization/v2.5.x/site/fr/userGuide/tools/milvus-webui.json
new file mode 100644
index 000000000..2e1e8d8c6
--- /dev/null
+++ b/localization/v2.5.x/site/fr/userGuide/tools/milvus-webui.json
@@ -0,0 +1 @@
+{"codeList":[],"headingContent":"Milvus WebUI","anchorList":[{"label":"Milvus WebUI","href":"Milvus-WebUI","type":1,"isActive":false},{"label":"Vue d'ensemble","href":"Overview","type":2,"isActive":false},{"label":"Accueil","href":"Home","type":2,"isActive":false},{"label":"Collections","href":"Collections","type":2,"isActive":false},{"label":"Requête","href":"Query","type":2,"isActive":false},{"label":"Données","href":"Data","type":2,"isActive":false},{"label":"Tâches","href":"Tasks","type":2,"isActive":false},{"label":"Requêtes lentes","href":"Slow-requests","type":2,"isActive":false},{"label":"Configurations","href":"Configurations","type":2,"isActive":false},{"label":"Outils","href":"Tools","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/fr/userGuide/tools/milvus-webui.md b/localization/v2.5.x/site/fr/userGuide/tools/milvus-webui.md
new file mode 100644
index 000000000..e13fcfeb7
--- /dev/null
+++ b/localization/v2.5.x/site/fr/userGuide/tools/milvus-webui.md
@@ -0,0 +1,280 @@
+---
+id: milvus-webui.md
+summary: >-
+ Milvus Web UI est un outil de gestion graphique pour Milvus. Il améliore
+ l'observabilité du système grâce à une interface simple et intuitive. Vous
+ pouvez
+title: Milvus WebUI
+---
+
Milvus WebUI
+
+
+
+
Milvus WebUI est un outil de gestion graphique pour Milvus. Il améliore l'observabilité du système grâce à une interface simple et intuitive. Vous pouvez utiliser l'interface Web de Milvus pour observer les statistiques et les métriques des composants et des dépendances de Milvus, vérifier les détails de la base de données et de la collection, et répertorier les configurations détaillées de Milvus.
+
Vue d'ensemble
+
+
+
+
L'interface Web de Milvus diffère de Birdwatcher et d'Attu en ce sens qu'il s'agit d'un outil intégré permettant d'observer l'ensemble du système à l'aide d'une interface simple et intuitive.
+
Le tableau suivant compare les fonctionnalités de l'interface Web de Milvus et de Birdwatcher/Attu :
+
+
+
Fonctionnalité
Milvus Web UI
Birdwatcher
Attu
+
+
+
Forme opérationnelle
GUI
CLI
GUI
+
Utilisateurs cibles
Mainteneurs, développeurs
Mainteneurs
Développeurs
+
Installation
Intégré
Outil autonome
Outil autonome
+
Dépendances
Milvus
Milvus / etcd
Milvus
+
Fonctionnalités principales
Environnement d'exécution, détails de la base de données/collection, segments, canaux, tâches et demandes de requêtes lentes
Inspection des métadonnées et exécution de l'API Milvus
Gestion de la base de données et tâches opérationnelles
+
+
+
L'interface Web Milvus offre les fonctionnalités suivantes :
Vous pouvez consulter les statistiques collectées des nœuds de requête et des coordinateurs de requête en termes de segments, de canaux, de répliques et de groupes de ressources.
Vous pouvez afficher la liste des tâches en cours d'exécution dans Milvus, y compris les tâches du planificateur Querycoord, les tâches de compactage, les tâches de construction d'index, les tâches d'importation et les tâches de synchronisation des données.
Vous pouvez accéder aux deux outils intégrés, pprof et l'outil de visualisation des données Milvus, à partir de l'interface Web.
+
+
Accueil
+
+
+
+
La page d'accueil contient les informations suivantes :
+
+
+
+ Accueil de l'interface Web Milvus
+
+
Informations sur le système: Afficher les informations sur le système, y compris les informations sur le mode de déploiement, l'image utilisée dans le déploiement et les informations connexes.
+
Informations sur les composants: Afficher l'état et les métriques des composants de Milvus, y compris l'état et les métriques des nœuds de requête, des nœuds de données, des nœuds d'index, des coordinateurs et des proxys.
+
Clients connectés: Affichez les clients connectés et leurs informations, notamment le type et la version du SDK, le nom d'utilisateur et l'historique de leurs accès.
+
Dépendances du système: Affichez l'état et les mesures des dépendances de Milvus, y compris l'état et les mesures du méta-magasin, de la file d'attente de messages et du stockage d'objets.
+
+
Collections
+
+
+
+
Sur la page Collections, vous pouvez afficher la liste des bases de données et des collections actuellement dans Milvus et vérifier leurs détails.
+
+
+
+ Collections de l'interface Web de Milvus
+
+
Base de données: Afficher la liste des bases de données actuellement dans Milvus et leurs détails.
+
Collection: Voir la liste des collections dans chaque base de données et leurs détails.
+
+
Requête
+
+
+
+
+
+
+ Page de requête de l'interface Web de Milvus
+
+
Segments: Affiche la liste des segments et leurs détails, y compris l'ID du segment, la collection correspondante, l'état, la taille, etc.
+
Dans la colonne De, vous pouvez trouver la source du segment. Les indicateurs de sources possibles sont les suivants
+
+
QN: Query node (nœud de requête)
+
CT: cible actuelle dans QueryCoord
+
NT: Prochaine cible dans QueryCoord
+
DIST: Distribution dans QueryCoord
+
+
Channels (Canaux) : Affichez la liste des canaux et leurs détails, y compris le nom du canal, les collections correspondantes, etc.
+
Dans la colonne From, vous pouvez trouver la source du segment. Les indicateurs de sources possibles sont les suivants
+
+
QN: Query node (nœud de requête)
+
CT: cible actuelle dans QueryCoord
+
NT: Prochaine cible dans QueryCoord
+
DIST: Distribution dans le QueryCoord
+
+
Répliques: Affiche la liste des répliques et leurs détails, y compris l'ID de la réplique, la collection correspondante, etc.
+
Groupes de ressources: Affichez la liste des groupes de ressources et leurs détails, y compris le nom du groupe de ressources, le nombre de nœuds de requête dans le groupe, et ses configurations, etc.
+
+
Données
+
+
+
+
+
+
+ Page de données de l'interface Web Milvus
+
+
Segments: Affiche la liste des segments des nœuds de données/coordinateurs et leurs détails, y compris l'ID du segment, la collection correspondante, l'état, la taille, etc.
+
Canaux: Affichez la liste des canaux des nœuds de données/coordinateurs et leurs détails, y compris le nom du canal, les collections correspondantes, etc.
+
+
Tâches
+
+
+
+
+
+
+ Page des tâches de l'interface Web Milvus
+
+
Tâches: Affiche la liste des tâches en cours d'exécution dans Milvus, y compris le type de tâche, l'état et les actions.
+
+
Tâches QueryCoord: Affiche toutes les tâches du planificateur QueryCoord, y compris les vérificateurs d'équilibre, d'index/segment/canal/chef de file au cours des 15 dernières minutes.
+
Tâches de compactage: Afficher toutes les tâches de compactage des coordinateurs de données au cours des 15 dernières minutes.
+
Tâches de construction d'index: Voir toutes les tâches de construction d'index des coordinateurs de données au cours des 30 dernières minutes.
+
Tâches d'importation: Voir toutes les tâches d'importation effectuées par les coordinateurs de données au cours des 30 dernières minutes.
+
Tâches de synchronisation des données: Afficher toutes les tâches de synchronisation des données effectuées par les nœuds de données au cours des 15 dernières minutes.
+
+
+
Requêtes lentes
+
+
+
+
+
+
+ Page des demandes lentes de l'interface Web Milvus
+
+
Requêtes lentes: Une demande lente est une recherche ou une requête dont le temps de latence est supérieur à la valeur de proxy.slowQuerySpanInSeconds spécifiée dans la configuration. La liste des requêtes lentes affiche toutes les requêtes lentes des 15 dernières minutes.
+
+
Configurations
+
+
+
+
+
+
+ Page des configurations de l'interface Web Milvus
+
+
Configurations: Affiche la liste des configurations d'exécution Milvus et leurs valeurs.
+
+
Outils
+
+
+
+
+
pprof: Accéder à l'outil pprof pour le profilage et le débogage de Milvus.
+
Outil de visualisation des données Milvus: Accédez à l'outil de visualisation des données Milvus pour visualiser les données dans Milvus.
A questo punto, dovrebbe essere disponibile un deployment jaeger-operator. È possibile visualizzarlo eseguendo il seguente comando:
+
A questo punto, dovrebbe essere disponibile una distribuzione jaeger-operator. È possibile visualizzarlo eseguendo il seguente comando:
$ kubectl get deployment jaeger-operator -n observability
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
jaeger-operator111148s
-
2. Distribuire Jager
Il modo più semplice per creare un'istanza di Jaeger è creare un file YAML come nell'esempio seguente. Questo installerà la strategia predefinita AllInOne, che distribuisce l'immagine all-in-one (che combina jaeger-agent, jaeger-collector, jaeger-query e Jaeger UI) in un singolo pod, utilizzando per impostazione predefinita lo storage in-memory.
+
2. Distribuire Jaeger
Il modo più semplice per creare un'istanza di Jaeger è creare un file YAML come nell'esempio seguente. Questo installerà la strategia predefinita AllInOne, che distribuisce l'immagine all-in-one (che combina jaeger-agent, jaeger-collector, jaeger-query e Jaeger UI) in un singolo pod, utilizzando per impostazione predefinita lo storage in-memory.
Se si desidera memorizzare le tracce per un lungo periodo, fare riferimento a production-strategy.
apiVersion: jaegertracing.io/v1
kind: Jaeger
@@ -136,7 +136,7 @@ $ helm upgrade --install -f values.yaml my-release milvus/milvus
NAME CLASS HOSTS ADDRESS PORTS AGE
jaeger-query <none> * 192.168.122.348014m
-
Una volta che l'ingress è disponibile, è possibile accedere all'interfaccia utente di Jaeger navigando su http://${ADDRESS}. Sostituire ${ADDRESS} con l'indirizzo IP effettivo dell'ingress.
+
Una volta che l'ingress è disponibile, si può accedere all'interfaccia utente di Jaeger navigando su http://${ADDRESS}. Sostituire ${ADDRESS} con l'indirizzo IP effettivo dell'ingress.
La seguente schermata mostra l'interfaccia Jaeger con le tracce di Milvus durante un'operazione di ricerca e un'operazione di raccolta del carico:
@@ -145,4 +145,4 @@ jaeger-query <none> * 192.168
- Richiesta di raccolta del carico
+ Traccia della richiesta di raccolta del carico
diff --git a/localization/v2.5.x/site/it/adminGuide/configure-docker.json b/localization/v2.5.x/site/it/adminGuide/configure-docker.json
index 6ef3fc481..03ca49438 100644
--- a/localization/v2.5.x/site/it/adminGuide/configure-docker.json
+++ b/localization/v2.5.x/site/it/adminGuide/configure-docker.json
@@ -1 +1 @@
-{"codeList":["$ wget https://raw.githubusercontent.com/milvus-io/milvus/v2.5.0-beta/configs/milvus.yaml\n","# For Milvus standalone\n$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0-beta/milvus-standalone-docker-compose.yml -O docker-compose.yml\n","...\n standalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.2.13\n command: [\"milvus\", \"run\", \"standalone\"]\n environment:\n ETCD_ENDPOINTS: etcd:2379\n MINIO_ADDRESS: minio:9000\n volumes:\n - /local/path/to/your/milvus.yaml:/milvus/configs/milvus.yaml # Map the local path to the container path\n - ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/milvus:/var/lib/milvus\n ports:\n - \"19530:19530\"\n - \"9091:9091\"\n depends_on:\n - \"etcd\"\n - \"minio\"\n...\n","$ sudo docker compose up -d\n"],"headingContent":"Configure Milvus with Docker Compose","anchorList":[{"label":"Configurare Milvus con Docker Compose","href":"Configure-Milvus-with-Docker-Compose","type":1,"isActive":false},{"label":"Scaricare un file di configurazione","href":"Download-a-configuration-file","type":2,"isActive":false},{"label":"Modificare il file di configurazione","href":"Modify-the-configuration-file","type":2,"isActive":false},{"label":"Scaricare un file di installazione","href":"Download-an-installation-file","type":2,"isActive":false},{"label":"Modificare il file di installazione","href":"Modify-the-installation-file","type":2,"isActive":false},{"label":"Avviare Milvus","href":"Start-Milvus","type":2,"isActive":false},{"label":"Cosa succede dopo","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["$ wget https://raw.githubusercontent.com/milvus-io/milvus/v2.5.0/configs/milvus.yaml\n","# For Milvus standalone\n$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0/milvus-standalone-docker-compose.yml -O docker-compose.yml\n","...\n standalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.2.13\n command: [\"milvus\", \"run\", \"standalone\"]\n environment:\n ETCD_ENDPOINTS: etcd:2379\n MINIO_ADDRESS: minio:9000\n volumes:\n - /local/path/to/your/milvus.yaml:/milvus/configs/milvus.yaml # Map the local path to the container path\n - ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/milvus:/var/lib/milvus\n ports:\n - \"19530:19530\"\n - \"9091:9091\"\n depends_on:\n - \"etcd\"\n - \"minio\"\n...\n","$ sudo docker compose up -d\n"],"headingContent":"Configure Milvus with Docker Compose","anchorList":[{"label":"Configurazione di Milvus con Docker Compose","href":"Configure-Milvus-with-Docker-Compose","type":1,"isActive":false},{"label":"Scaricare un file di configurazione","href":"Download-a-configuration-file","type":2,"isActive":false},{"label":"Modificare il file di configurazione","href":"Modify-the-configuration-file","type":2,"isActive":false},{"label":"Scaricare un file di installazione","href":"Download-an-installation-file","type":2,"isActive":false},{"label":"Modificare il file di installazione","href":"Modify-the-installation-file","type":2,"isActive":false},{"label":"Avviare Milvus","href":"Start-Milvus","type":2,"isActive":false},{"label":"Cosa succede dopo","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/it/adminGuide/configure-docker.md b/localization/v2.5.x/site/it/adminGuide/configure-docker.md
index cc49984b5..630464f16 100644
--- a/localization/v2.5.x/site/it/adminGuide/configure-docker.md
+++ b/localization/v2.5.x/site/it/adminGuide/configure-docker.md
@@ -3,9 +3,9 @@ id: configure-docker.md
label: Docker Compose
related_key: configure
summary: Configurare Milvus con Docker Compose.
-title: Configurare Milvus con Docker Compose
+title: Configurazione di Milvus con Docker Compose
---
-
Configurare Milvus con Docker Compose
+
Configurazione di Milvus con Docker Compose
-
Scaricaremilvus.yaml direttamente o con il seguente comando.
In docker-compose.yml, aggiungere una sezione volumes sotto ogni milvus-standalone.
-
Mappare il percorso locale del file milvus.yaml sui corrispondenti percorsi del contenitore docker dei file di configurazione /milvus/configs/milvus.yaml sotto tutte le sezioni volumes.
+
Mappate il percorso locale del vostro file milvus.yaml sui percorsi corrispondenti del contenitore docker ai file di configurazione /milvus/configs/milvus.yaml sotto tutte le sezioni volumes.
...
standalone:
container_name: milvus-standalone
diff --git a/localization/v2.5.x/site/it/adminGuide/drop_users_roles.json b/localization/v2.5.x/site/it/adminGuide/drop_users_roles.json
new file mode 100644
index 000000000..e42f0d264
--- /dev/null
+++ b/localization/v2.5.x/site/it/adminGuide/drop_users_roles.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\n# create a user\nclient.drop_user(user_name=\"user_1\")\n\n","import io.milvus.v2.client.ConnectConfig\nimport io.milvus.v2.client.MilvusClientV2\nimport io.milvus.v2.service.rbac.request.DropUserReq\n\nConnectConfig connectConfig = ConnectConfig.builder()\n .uri(\"http://localhost:19530\")\n .token(\"root:Milvus\")\n .build();\n \nMilvusClientV2 client = new MilvusClientV2(connectConfig);\n\nDropUserReq dropUserReq = DropUserReq.builder()\n .userName(\"user_1\")\n .build();\nclient.dropUser(dropUserReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nconst address = \"http://localhost:19530\";\nconst token = \"root:Milvus\";\nconst client = new MilvusClient({address, token});\n\nmilvusClient.deleteUser({\n username: 'user_1'\n})\n\n","export CLUSTER_ENDPOINT=\"http://localhost:19530\"\nexport TOKEN=\"root:Milvus\"\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/drop\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"userName\": \"user_1\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.list_users()\n\n","import io.milvus.v2.service.rbac.request.listUsersReq\n\nList resp = client.listUsers();\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nmilvusClient.listUsers()\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","['root']\n\n","from pymilvus import MilvusClient\n\nclient.drop_role(role_name=\"role_a\")\n\n","import io.milvus.v2.service.rbac.request.DropRoleReq\n\nDropRoleReq dropRoleReq = DropRoleReq.builder()\n .roleName(\"role_a\")\n .build();\nclient.dropRole(dropRoleReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nmilvusClient.dropRole({\n roleName: 'role_a',\n })\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/drop\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.list_roles()\n\n","List resp = client.listRoles();\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nmilvusClient.listRoles(\n includeUserInfo: True\n)\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","['admin']\n\n"],"headingContent":"Drop Users & Roles","anchorList":[{"label":"Eliminazione di utenti e ruoli","href":"Drop-Users--Roles","type":1,"isActive":false},{"label":"Eliminare un utente","href":"Drop-a-user","type":2,"isActive":false},{"label":"Eliminare un ruolo","href":"Drop-a-role","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/it/adminGuide/drop_users_roles.md b/localization/v2.5.x/site/it/adminGuide/drop_users_roles.md
new file mode 100644
index 000000000..383627b89
--- /dev/null
+++ b/localization/v2.5.x/site/it/adminGuide/drop_users_roles.md
@@ -0,0 +1,205 @@
+---
+id: drop_users_roles.md
+related_key: enable RBAC
+summary: >-
+ Per garantire la sicurezza dei dati, si consiglia di eliminare gli utenti e i
+ ruoli non più utilizzati. Questa guida spiega come eliminare gli utenti e i
+ ruoli.
+title: Eliminazione di utenti e ruoli
+---
+
Eliminazione di utenti e ruoli
+
+
+
+
Per garantire la sicurezza dei dati, si consiglia di eliminare gli utenti e i ruoli non più utilizzati. Questa guida spiega come eliminare utenti e ruoli.
+
Eliminare un utente
+
+
+
+
L'esempio seguente mostra come eliminare l'utente user_1.
Di seguito è riportato un esempio di output. Nell'elenco non c'è role_a. L'operazione di abbandono è riuscita.
+
['admin']
+
+
diff --git a/localization/v2.5.x/site/it/adminGuide/grant_privileges.json b/localization/v2.5.x/site/it/adminGuide/grant_privileges.json
new file mode 100644
index 000000000..e56dbb13d
--- /dev/null
+++ b/localization/v2.5.x/site/it/adminGuide/grant_privileges.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.grant_privilege_v2(\n role_name=\"role_a\",\n privilege=\"Search\"\n collection_name='collection_01'\n db_name='default',\n)\n \nclient.grant_privilege_v2(\n role_name=\"role_a\",\n privilege=\"privilege_group_1\"\n collection_name='collection_01'\n db_name='default',\n)\n\nclient.grant_privilege_v2(\n role_name=\"role_a\",\n privilege=\"ClusterReadOnly\"\n collection_name='*'\n db_name='*',\n)\n","import io.milvus.v2.service.rbac.request.GrantPrivilegeReqV2\n\nclient.grantPrivilegeV2(GrantPrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"Search\")\n .collectionName(\"collection_01\")\n .dbName(\"default\")\n .build());\n\nclient.grantPrivilegeV2(GrantPrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"privilege_group_1\")\n .collectionName(\"collection_01\")\n .dbName(\"default\")\n .build());\n\nclient.grantPrivilegeV2(GrantPrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"ClusterReadOnly\")\n .collectionName(\"*\")\n .dbName(\"*\")\n .build());\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.GrantV2(context.Background(), \"role_a\", \"collection_01\", \"Search\", entity.WithOperatePrivilegeDatabase(\"default\"))\n\nclient.GrantV2(context.Background(), \"role_a\", \"collection_01\", \"privilege_group_1\", entity.WithOperatePrivilegeDatabase(\"default\"))\n\nclient.GrantV2(context.Background(), \"role_a\", \"*\", \"ClusterReadOnly\", entity.WithOperatePrivilegeDatabase(\"*\"))\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nconst address = \"http://localhost:19530\";\nconst token = \"root:Milvus\";\nconst client = new MilvusClient({address, token});\n\nawait milvusClient.grantPrivilege({\n roleName: 'role_a',\n object: 'Collection', \n objectName: 'collection_01',\n privilegeName: 'Search'\n });\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/grant_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"Search\",\n \"collectionName\": \"collection_01\",\n \"dbName\":\"default\"\n}'\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/grant_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"privilege_group_1\",\n \"collectionName\": \"collection_01\",\n \"dbName\":\"default\"\n}'\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/grant_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"ClusterReadOnly\",\n \"collectionName\": \"*\",\n \"dbName\":\"*\"\n}'\n","from pymilvus import MilvusClient\n\nclient.describe_role(role_name=\"role_a\")\n","import io.milvus.v2.service.rbac.response.DescribeRoleResp;\nimport io.milvus.v2.service.rbac.request.DescribeRoleReq\n\nDescribeRoleReq describeRoleReq = DescribeRoleReq.builder()\n .roleName(\"role_a\")\n .build();\nDescribeRoleResp resp = client.describeRole(describeRoleReq);\nList infos = resp.getGrantInfos();\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.ListRoles(context.Background())\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.describeRole({roleName: 'role_a'});\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/describe\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\"\n}'\n","{\n \"role\": \"role_a\",\n \"privileges\": [\n {\n \"collection_name\": \"collection_01\",\n \"db_name\": \"default\",\n \"role_name\": \"role_a\",\n \"privilege\": \"Search\",\n \"grantor_name\": \"root\"\n },\n \"privilege_group_1\"\n ]\n}\n","from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.revoke_privilege_v2(\n role_name=\"role_a\",\n privilege=\"Search\"\n collection_name='collection_01'\n db_name='default',\n)\n \nclient.revoke_privilege_v2(\n role_name=\"role_a\",\n privilege=\"privilege_group_1\"\n collection_name='collection_01'\n db_name='default',\n)\n\nclient.revoke_privilege_v2(\n role_name=\"role_a\",\n privilege=\"ClusterReadOnly\"\n collection_name='*'\n db_name='*',\n)\n","import io.milvus.v2.service.rbac.request.RevokePrivilegeReqV2\n\nclient.revokePrivilegeV2(RevokePrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"Search\")\n .collectionName(\"collection_01\")\n .dbName(\"default\")\n .build());\n\nclient.revokePrivilegeV2(RevokePrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"privilege_group_1\")\n .collectionName(\"collection_01\")\n .dbName(\"default\")\n .build());\n\nclient.revokePrivilegeV2(RevokePrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"ClusterReadOnly\")\n .collectionName(\"*\")\n .dbName(\"*\")\n .build());\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.RevokeV2(context.Background(), \"role_a\", \"collection_01\", \"Search\", entity.WithOperatePrivilegeDatabase(\"default\"))\n\nclient.RevokeV2(context.Background(), \"role_a\", \"collection_01\", \"privielge_group_1\", entity.WithOperatePrivilegeDatabase(\"default\"))\n\nclient.RevokeV2(context.Background(), \"role_a\", \"*\", \"ClusterReadOnly\", entity.WithOperatePrivilegeDatabase(\"*\"))\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/revoke_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"Search\",\n \"collectionName\": \"collection_01\",\n \"dbName\":\"default\"\n}'\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/revoke_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"Search\",\n \"collectionName\": \"collection_01\",\n \"dbName\":\"default\"\n}'\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/revoke_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"ClusterReadOnly\",\n \"collectionName\": \"*\",\n \"dbName\":\"*\"\n}'\n"],"headingContent":"Grant Privilege or Privilege Group to Roles","anchorList":[{"label":"Concessione di privilegi o gruppi di privilegi ai ruoli","href":"Grant-Privilege-or-Privilege-Group-to-Roles","type":1,"isActive":false},{"label":"Assegnare un privilegio o un gruppo di privilegi a un ruolo","href":"Grant-a-privilege-or-a-privilege-group-to-a-role","type":2,"isActive":false},{"label":"Descrivere un ruolo","href":"Describe-a-role","type":2,"isActive":false},{"label":"Revocare un privilegio o un gruppo di privilegi a un ruolo","href":"Revoke-a-privilege-or-a-privilege-group-from-a-role","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/it/adminGuide/grant_privileges.md b/localization/v2.5.x/site/it/adminGuide/grant_privileges.md
new file mode 100644
index 000000000..561a3481c
--- /dev/null
+++ b/localization/v2.5.x/site/it/adminGuide/grant_privileges.md
@@ -0,0 +1,542 @@
+---
+id: grant_privileges.md
+related_key: enable RBAC
+summary: >-
+ Una volta creato un ruolo, è possibile assegnare i privilegi al ruolo. Questa
+ guida illustra come concedere privilegi o gruppi di privilegi a un ruolo.
+title: Concessione di privilegi o gruppi di privilegi ai ruoli
+---
+
Concessione di privilegi o gruppi di privilegi ai ruoli
+
+
+
+
Una volta creato un ruolo, è possibile concedere privilegi al ruolo. Questa guida illustra come concedere privilegi o gruppi di privilegi a un ruolo.
+
Assegnare un privilegio o un gruppo di privilegi a un ruolo
+
+
+
+
Milvus 2.5 introduce una nuova versione dell'API che semplifica l'operazione di assegnazione. Non è più necessario cercare il tipo di oggetto quando si concede un privilegio a un ruolo. Di seguito sono riportati i parametri e le relative spiegazioni.
+
+
nome_ruolo: il nome del ruolo di destinazione a cui devono essere concessi i privilegi o i gruppi di privilegi.
+
Risorsa: La risorsa di destinazione di un privilegio, che può essere un'istanza specifica, un database o una raccolta. La tabella seguente spiega come specificare la risorsa nel metodo client.grantV2().
Inserire `*` come nome del database e `*` come nome della collezione.
+
+
+
Privilegio: Il privilegio specifico o il gruppo di privilegi da concedere a un ruolo. Attualmente, Milvus offre 56 tipi di privilegi che possono essere concessi. La tabella seguente elenca i privilegi di Milvus.
+
+
La colonna del tipo nella tabella sottostante è utilizzata per facilitare la ricerca rapida dei privilegi ed è usata solo a scopo di classificazione. Quando si concedono privilegi, non è necessario comprendere i tipi. È sufficiente inserire i privilegi corrispondenti.
+
+
+
**Tipo **
+
**Privilegio**
+
**Descrizione**
+
**Descrizione dell'API pertinente sul lato client**
Persiste tutte le entità di una collezione in un segmento sigillato. Qualsiasi entità inserita dopo l'operazione di flush sarà memorizzata in un nuovo segmento.
L'esempio seguente mostra come concedere il privilegio PrivilegeSearch su collection_01 sotto il database predefinito e un gruppo di privilegi chiamato privilege_group_1 al ruolo role_a.
Revocare un privilegio o un gruppo di privilegi a un ruolo
+
+
+
+
L'esempio seguente mostra come revocare il privilegio PrivilegeSearch su collection_01 sotto il database predefinito e il gruppo di privilegi privilege_group_1 che sono stati concessi al ruolo role_a.
diff --git a/localization/v2.5.x/site/it/adminGuide/grant_roles.json b/localization/v2.5.x/site/it/adminGuide/grant_roles.json
new file mode 100644
index 000000000..089bf5efc
--- /dev/null
+++ b/localization/v2.5.x/site/it/adminGuide/grant_roles.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.grant_role(user_name=\"user_1\", role_name=\"role_a\")\n\n","import io.milvus.v2.client.ConnectConfig;\nimport io.milvus.v2.client.MilvusClientV2;\nimport io.milvus.v2.service.rbac.request.GrantRoleReq;\n\nString CLUSTER_ENDPOINT = \"http://localhost:19530\";\nString TOKEN = \"root:Milvus\";\n\n\nConnectConfig connectConfig = ConnectConfig.builder()\n .uri(CLUSTER_ENDPOINT)\n .token(TOKEN)\n .build();\n \nMilvusClientV2 client = new MilvusClientV2(connectConfig);\n\nGrantRoleReq grantRoleReq = GrantRoleReq.builder()\n .roleName(\"role_a\")\n .userName(\"user_1\")\n .build();\nclient.grantRole(grantRoleReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nconst address = \"http://localhost:19530\";\nconst token = \"root:Milvus\";\nconst client = new MilvusClient({address, token});\n\nmilvusClient.grantRole({\n username: 'user_1',\n roleName: 'role_a'\n })\n\n","export CLUSTER_ENDPOINT=\"http://localhost:19530\"\nexport TOKEN=\"root:Milvus\"\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/grant_role\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"userName\": \"user_1\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.describe_user(user_name=\"user_1\")\n\n","import io.milvus.v2.service.rbac.request.DescribeUserReq;\nimport io.milvus.v2.service.rbac.response.DescribeUserResp;\n\nDescribeUserReq describeUserReq = DescribeUserReq.builder()\n .userName(\"user_1\")\n .build();\nDescribeUserResp describeUserResp = client.describeUser(describeUserReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nmilvusClient.describeUser({username: 'user_1'})\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/describe\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"userName\": \"user_1\"\n}'\n\n","{'user_name': 'user_1', 'roles': 'role_a'}\n\n","from pymilvus import MilvusClient\n\nclient.revoke_role(\n user_name='user_1',\n role_name='role_a'\n)\n\n","import io.milvus.v2.service.rbac.request.RevokeRoleReq;\n\nclient.revokeRole(RevokeRoleReq.builder()\n .userName(\"user_1\")\n .roleName(\"role_a\")\n .build());\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\n\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/revoke_role\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"userName\": \"user_1\",\n \"roleName\": \"role_a\"\n}'\n\n"],"headingContent":"Grant Roles to Users","anchorList":[{"label":"Assegnazione di ruoli agli utenti","href":"Grant-Roles-to-Users","type":1,"isActive":false},{"label":"Assegnare un ruolo a un utente","href":"Grant-a-role-to-a-user","type":2,"isActive":false},{"label":"Descrivere l'utente","href":"Describe-user","type":2,"isActive":false},{"label":"Revoca di un ruolo","href":"Revoke-a-role","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/it/adminGuide/grant_roles.md b/localization/v2.5.x/site/it/adminGuide/grant_roles.md
new file mode 100644
index 000000000..d44bef846
--- /dev/null
+++ b/localization/v2.5.x/site/it/adminGuide/grant_roles.md
@@ -0,0 +1,204 @@
+---
+id: grant_roles.md
+related_key: enable RBAC
+summary: >-
+ Dopo aver creato un ruolo e averne concesso i privilegi, è possibile assegnare
+ il ruolo agli utenti in modo che questi possano accedere alle risorse ed
+ eseguire le azioni definite dal ruolo. È possibile assegnare più ruoli a un
+ utente o assegnare un ruolo a più utenti. Questa guida illustra come assegnare
+ i ruoli agli utenti.
+title: Assegnazione di ruoli agli utenti
+---
+
Assegnazione di ruoli agli utenti
+
+
+
+
Dopo aver creato un ruolo e averne concesso i privilegi, è possibile assegnare il ruolo agli utenti in modo che questi possano accedere alle risorse ed eseguire le azioni definite dal ruolo. È possibile assegnare più ruoli a un utente o assegnare un ruolo a più utenti. Questa guida spiega come assegnare i ruoli agli utenti.
+
All'utente incorporato root in Milvus è già stato assegnato il ruolo admin, che ha tutti i privilegi. Non è necessario assegnargli altri ruoli.
+
Assegnare un ruolo a un utente
+
+
+
+
L'esempio seguente mostra come assegnare il ruolo role_a all'utente user_1.
diff --git a/localization/v2.5.x/site/it/adminGuide/privilege_group.json b/localization/v2.5.x/site/it/adminGuide/privilege_group.json
new file mode 100644
index 000000000..7106de2e2
--- /dev/null
+++ b/localization/v2.5.x/site/it/adminGuide/privilege_group.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\nclient.create_privileg_group(group_name='privilege_group_1')\n\n","import io.milvus.v2.service.rbac.request.CreatePrivilegeGroupReq;\n\nclient.createPrivilegeGroup(CreatePrivilegeGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.CreatePrivilegeGroup(context.Background(), \"privilege_group_1\")\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/create\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\"\n}'\n\n","from pymilvus import MilvusClient\nclient.add_privileges_to_group(group_name='privilege_group_1', privileges=['Query', 'Search'])\n\n","import io.milvus.v2.service.rbac.request.AddPrivilegesToGroupReq;\n\nclient.addPrivilegesToGroup(AddPrivilegesToGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .privileges(Arrays.asList(\"Query\", \"Search\"))\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.AddPrivilegesToGroup(context.Background(), \"privilege_group_1\", []string{\"Query\", \"Search\"})\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/add_privileges_to_group\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\",\n \"privileges\":[\"Query\", \"Search\"]\n}'\n\n","from pymilvus import MilvusClient\nclient.remove_privileges_from_group(group_name='privilege_group_1', privileges='Search')\n\n","import io.milvus.v2.service.rbac.request.RemovePrivilegesFromGroupReq;\n\nclient.removePrivilegesFromGroup(RemovePrivilegesFromGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .privileges(Collections.singletonList(\"Search\"))\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.RemovePrivilegesFromGroup(context.Background(), \"privilege_group_1\", []string{\"Search\"})\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/remove_privileges_from_group\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\",\n \"privileges\":[\"Search\"]\n}'\n\n","from pymilvus import MilvusClient\nclient.list_privilege_groups()\n\n","import io.milvus.v2.service.rbac.PrivilegeGroup;\nimport io.milvus.v2.service.rbac.request.ListPrivilegeGroupsReq;\nimport io.milvus.v2.service.rbac.response.ListPrivilegeGroupsResp;\n\nListPrivilegeGroupsResp resp = client.listPrivilegeGroups(ListPrivilegeGroupsReq.builder()\n .build());\nList groups = resp.getPrivilegeGroups();\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.ListPrivilegeGroups(context.Background())\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","PrivilegeGroupItem: , \n\n","from pymilvus import MilvusClient\nclient.drop_privilege_group(group_name='privilege_group_1')\n\n","import io.milvus.v2.service.rbac.request.DropPrivilegeGroupReq;\n\nclient.dropPrivilegeGroup(DropPrivilegeGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.DropPrivilegeGroup(context.Background(), \"privilege_group_1\")\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/drop\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\"\n}'\n\n"],"headingContent":"Create Privilege Group","anchorList":[{"label":"Creare un gruppo di privilegi","href":"Create-Privilege-Group","type":1,"isActive":false},{"label":"Gruppo di privilegi vs. privilegi","href":"Privilege-group-vs-privileges","type":2,"isActive":false},{"label":"Gruppi di privilegi integrati","href":"Built-in-privilege-groups","type":2,"isActive":false},{"label":"Procedure","href":"Procedures","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/it/adminGuide/privilege_group.md b/localization/v2.5.x/site/it/adminGuide/privilege_group.md
new file mode 100644
index 000000000..988ed0d16
--- /dev/null
+++ b/localization/v2.5.x/site/it/adminGuide/privilege_group.md
@@ -0,0 +1,491 @@
+---
+id: privilege_group.md
+related_key: enable RBAC
+summary: >-
+ Per semplificare il processo di concessione dei privilegi, si consiglia di
+ combinare più privilegi in un gruppo di privilegi.
+title: Creare un gruppo di privilegi
+---
+
Creare un gruppo di privilegi
+
+
+
+
Per semplificare il processo di concessione dei privilegi, si consiglia di combinare più privilegi in un gruppo di privilegi.
+
Gruppo di privilegi vs. privilegi
+
+
+
+
Un gruppo di privilegi è costituito da più privilegi.
+
+
+
+ Gruppo di privilegi illustrato
+
Come mostrato nella figura precedente, si supponga di dover concedere tre diversi privilegi a un ruolo.
+
+
Se non si utilizza un gruppo di privilegi, è necessario concedere i privilegi tre volte.
+
Se si utilizza un gruppo di privilegi, è sufficiente creare un gruppo di privilegi e aggiungere i tre privilegi a questo gruppo di privilegi e concedere il gruppo di privilegi al ruolo A.
+
+
Utilizzando un gruppo di privilegi, è possibile concedere più privilegi in blocco a un ruolo.
+
Gruppi di privilegi integrati
+
+
+
+
Per facilitare l'uso, Milvus fornisce un totale di 9 privilegi incorporati a livello di raccolta, database e istanza: COLL_RO, COLL_RW, COLL_ADMIN, DB_RO, DB_RW, DB_Admin, Cluster_RO, Cluster_RW e Cluster_Admin.
+
+
I tre livelli di gruppi di privilegi integrati non hanno una relazione a cascata. L'impostazione di un gruppo di privilegi a livello di istanza non imposta automaticamente le autorizzazioni per tutti i database e le raccolte sotto quell'istanza. I privilegi a livello di database e di raccolta devono essere impostati manualmente.
+
+
Le tabelle seguenti illustrano i privilegi inclusi in ciascun gruppo di privilegi incorporato.
+
Livello di raccolta
+
COLL_RO: include i privilegi di lettura dei dati della raccolta.
+
COLL_RW: include i privilegi di lettura e scrittura dei dati della raccolta.
+
COLL_ADMIN: include i privilegi di lettura e scrittura dei dati della raccolta e di gestione delle raccolte.
+
+
La tabella seguente elenca i privilegi specifici inclusi nei tre gruppi di privilegi integrati a livello di raccolta.
+
**Privilegio**
+
**CollectionReadOnly**
+
**CollectionReadWrite**
+
**CollectionAdmin**
+
Interrogazione
+
✔️
+
✔️
+
✔️
+
Ricerca
+
✔️
+
✔️
+
✔️
+
IndiceDettaglio
+
✔️
+
✔️
+
✔️
+
GetFlushState
+
✔️
+
✔️
+
✔️
+
Ottieni lo stato di caricamento
+
✔️
+
✔️
+
✔️
+
Ottenere l'avanzamento del caricamento
+
✔️
+
✔️
+
✔️
+
HasPartition
+
✔️
+
✔️
+
✔️
+
MostraPartizioni
+
✔️
+
✔️
+
✔️
+
ElencoAlias
+
✔️
+
✔️
+
✔️
+
DescriviCollezione
+
✔️
+
✔️
+
✔️
+
DescrivereAlias
+
✔️
+
✔️
+
✔️
+
OttieniStatistiche
+
✔️
+
✔️
+
✔️
+
CreaIndice
+
❌
+
✔️
+
✔️
+
Rilasciare l'indice
+
❌
+
✔️
+
✔️
+
CreaPartizione
+
❌
+
✔️
+
✔️
+
AbbandonaPartizione
+
❌
+
✔️
+
✔️
+
Carico
+
❌
+
✔️
+
✔️
+
Rilascio
+
❌
+
✔️
+
✔️
+
Inserire
+
❌
+
✔️
+
✔️
+
Cancellare
+
❌
+
✔️
+
✔️
+
Inserisci
+
❌
+
✔️
+
✔️
+
Importazione
+
❌
+
✔️
+
✔️
+
Sciacquare
+
❌
+
✔️
+
✔️
+
Compattazione
+
❌
+
✔️
+
✔️
+
Bilanciamento del carico
+
❌
+
✔️
+
✔️
+
CreaAlias
+
❌
+
❌
+
✔️
+
EliminaAlias
+
❌
+
❌
+
✔️
+
+
Livello del database
+
DB_RO: include i privilegi di lettura dei dati del database
+
DB_RW: include i privilegi di lettura e scrittura dei dati del database
+
DB_Admin: include i privilegi di lettura e scrittura dei dati del database e di gestione dei database.
+
+
La tabella seguente elenca i privilegi specifici inclusi nei tre gruppi di privilegi integrati a livello di database.
+
**Privilegio**
+
**Lettura del database**
+
**LetturaDatabaseScrittura**
+
**Admin del database**
+
Mostra collezioni
+
✔️
+
✔️
+
✔️
+
DescriviDatabase
+
✔️
+
✔️
+
✔️
+
CreaCollezione
+
❌
+
❌
+
✔️
+
AbbandonaCollezione
+
❌
+
❌
+
✔️
+
Alterare il database
+
❌
+
✔️
+
✔️
+
+
Livello del cluster
+
Cluster_RO: include i privilegi di lettura dei dati di istanza
+
Cluster_RW: include i privilegi di lettura e scrittura dei dati delle istanze
+
Cluster_Admin: include i privilegi di lettura e scrittura dei dati di istanza e di gestione delle istanze.
+
+
La tabella seguente elenca i privilegi specifici inclusi nei tre gruppi di privilegi incorporati a livello di istanza.
+
**Privilegio**
+
**ClusterReadOnly**
+
**ClusterReadWrite**
+
**ClusterAdmin**
+
ElencoDatabase
+
✔️
+
✔️
+
✔️
+
RinominaCollezione
+
❌
+
❌
+
✔️
+
CreaProprietà
+
❌
+
❌
+
✔️
+
AggiornaUtente
+
❌
+
❌
+
✔️
+
AbbandonaProprietà
+
❌
+
❌
+
✔️
+
SelezionaProprietà
+
✔️
+
✔️
+
✔️
+
GestisciProprietà
+
❌
+
❌
+
✔️
+
SelezionaUtente
+
✔️
+
✔️
+
✔️
+
BackupRBAC
+
❌
+
❌
+
✔️
+
RipristinoRBAC
+
❌
+
❌
+
✔️
+
CreaGruppoRisorse
+
❌
+
❌
+
✔️
+
AbbandonaGruppoRisorse
+
❌
+
❌
+
✔️
+
AggiornaGruppiRisorse
+
❌
+
✔️
+
✔️
+
DescriviGruppoRisorse
+
✔️
+
✔️
+
✔️
+
ElencoGruppiRisorse
+
✔️
+
✔️
+
✔️
+
TrasferimentoNodo
+
❌
+
✔️
+
✔️
+
TrasferimentoReplica
+
❌
+
✔️
+
✔️
+
CreaDatabase
+
❌
+
❌
+
✔️
+
AbbandonaDatabase
+
❌
+
❌
+
✔️
+
RisciacquareTutti
+
❌
+
✔️
+
✔️
+
CreaGruppoPrivilegi
+
❌
+
❌
+
✔️
+
Abbandona GruppoPrivilegio
+
❌
+
❌
+
✔️
+
ElencoGruppiPrivilegio
+
❌
+
❌
+
✔️
+
OperareGruppoPrivilegio
+
❌
+
❌
+
✔️
+
+
Procedure
+
+
+
+
È possibile creare un gruppo di privilegi e quindi aggiungere privilegi al gruppo di privilegi.
+
Creare un gruppo di privilegi
L'esempio seguente mostra come creare un gruppo di privilegi denominato privilege_group_1.
L'esempio seguente mostra come aggiungere i privilegi PrivilegeBackupRBAC e PrivilegeRestoreRBAC al gruppo di privilegi privilege_group_1 appena creato.
diff --git a/localization/v2.5.x/site/it/adminGuide/rbac.json b/localization/v2.5.x/site/it/adminGuide/rbac.json
index 844316ddb..cdca18934 100644
--- a/localization/v2.5.x/site/it/adminGuide/rbac.json
+++ b/localization/v2.5.x/site/it/adminGuide/rbac.json
@@ -1 +1 @@
-{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri='http://localhost:19530', # replace with your own Milvus server address\n token='root:Milvus' # replace with your own Milvus server token\n)\n","client.create_user(\n user_name='user_1',\n password='P@ssw0rd'\n)\n","client.update_password(\n user_name='user_1',\n old_password='P@ssw0rd',\n new_password='P@ssw0rd123'\n)\n","client.list_users()\n\n# output:\n# ['root', 'user_1']\n","client.describe_user(user_name='user_1')\n\n# output:\n# {'user_name': 'user_1', 'roles': ()}\n","client.create_role(\n role_name=\"roleA\",\n)\n","client.list_roles()\n\n# output:\n# ['admin', 'public', 'roleA']\n","# grant privilege to a role\n\nclient.grant_privilege(\n role_name='roleA',\n object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName\n object_name='user_1', # value here can be * or a specific user name if object type is 'User'\n privilege='SelectUser'\n)\n","client.describe_role(\n role_name='roleA'\n)\n\n# output:\n# {'role': 'roleA',\n# 'privileges': [{'object_type': 'User',\n# 'object_name': 'user_1',\n# 'db_name': 'default',\n# 'role_name': 'roleA',\n# 'privilege': 'SelectUser',\n# 'grantor_name': 'root'}]}\n","# grant a role to a user\n\nclient.grant_role(\n user_name='user_1',\n role_name='roleA'\n)\n","client.describe_user(\n user_name='user_1'\n)\n\n# output:\n# {'user_name': 'user_1', 'roles': ('roleA')}\n","client.revoke_privilege(\n role_name='roleA',\n object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName\n object_name='user_1', # value here can be * or a specific user name if object type is 'User'\n privilege='SelectUser'\n)\n","client.revoke_role(\n user_name='user_1',\n role_name='roleA'\n)\n","client.drop_role(role_name='roleA')\n","client.drop_user(user_name='user_1')\n"],"headingContent":"Enable RBAC","anchorList":[{"label":"Abilitare RBAC","href":"Enable-RBAC","type":1,"isActive":false},{"label":"1. Avviare un client Milvus per stabilire una connessione","href":"1-Initiate-a-Milvus-client-to-establish-a-connection","type":2,"isActive":false},{"label":"2. Creare un utente","href":"2-Create-a-user","type":2,"isActive":false},{"label":"3. Creare un ruolo","href":"3-Create-a-role","type":2,"isActive":false},{"label":"4. Concedere un privilegio a un ruolo","href":"4-Grant-a-privilege-to-a-role","type":2,"isActive":false},{"label":"5. Assegnare un ruolo a un utente","href":"5-Grant-a-role-to-a-user","type":2,"isActive":false},{"label":"6. Revocare i privilegi","href":"6-Revoke-privileges","type":2,"isActive":false},{"label":"Cosa succede dopo","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":[],"headingContent":"RBAC Explained","anchorList":[{"label":"RBAC spiegato","href":"RBAC-Explained","type":1,"isActive":false},{"label":"Concetti chiave di RBAC","href":"RBAC-key-concepts","type":2,"isActive":false},{"label":"Le procedure","href":"Procedures","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/it/adminGuide/rbac.md b/localization/v2.5.x/site/it/adminGuide/rbac.md
index ca25aff97..d7ee633b6 100644
--- a/localization/v2.5.x/site/it/adminGuide/rbac.md
+++ b/localization/v2.5.x/site/it/adminGuide/rbac.md
@@ -1,10 +1,14 @@
---
id: rbac.md
related_key: enable RBAC
-summary: 'Imparare a gestire utenti, ruoli e privilegi.'
-title: Abilitare RBAC
+summary: >-
+ RBAC (Role-Based Access Control) è un metodo di controllo degli accessi basato
+ sui ruoli. Con RBAC è possibile controllare con precisione le operazioni che
+ gli utenti possono eseguire a livello di raccolta, database e istanza,
+ migliorando la sicurezza dei dati.
+title: RBAC spiegato
---
-
Abilitare RBAC
+
RBAC spiegato
-
Abilitando il RBAC, è possibile controllare l'accesso a risorse specifiche di Milvus (ad esempio una collezione o una partizione) o i permessi in base al ruolo e ai privilegi dell'utente. Attualmente questa funzione è disponibile solo in Python e Java.
-
Questo argomento descrive come abilitare RBAC e gestire utenti e ruoli.
-
-
I frammenti di codice di questa pagina utilizzano il nuovo MilvusClient (Python) per interagire con Milvus. I nuovi SDK MilvusClient per altri linguaggi saranno rilasciati nei prossimi aggiornamenti.
-
-
1. Avviare un client Milvus per stabilire una connessione
+
RBAC (Role-Based Access Control) è un metodo di controllo degli accessi basato sui ruoli. Con RBAC è possibile controllare con precisione le operazioni che gli utenti possono eseguire a livello di raccolta, database e istanza, migliorando la sicurezza dei dati.
+
A differenza dei modelli tradizionali di controllo dell'accesso degli utenti, RBAC introduce il concetto di ruoli. Nel modello RBAC, si assegnano privilegi ai ruoli e poi si assegnano tali ruoli agli utenti. Poi gli utenti possono ottenere i privilegi.
+
Il modello RBAC può migliorare l'efficienza della gestione del controllo degli accessi. Ad esempio, se più utenti richiedono lo stesso insieme di privilegi, non è necessario impostare manualmente i privilegi per ciascun utente. Si può invece creare un ruolo e assegnarlo agli utenti. Se si desidera modificare i privilegi di questi utenti, è sufficiente modificare i privilegi del ruolo e la modifica verrà applicata a tutti gli utenti con questo ruolo.
+
Concetti chiave di RBAC
-
Dopo aver abilitato l'autenticazione dell'utente, ci si connette all'istanza di Milvus usando token che consiste in un nome utente e una password. Per impostazione predefinita, Milvus utilizza l'utente root con la password Milvus.
-
from pymilvus import MilvusClient
-
-client = MilvusClient(
- uri='http://localhost:19530', # replace with your own Milvus server address
- token='root:Milvus'# replace with your own Milvus server token
-)
-
-
2. Creare un utente
-
-
-
-
Create un utente chiamato user_1 con la password P@ssw0rd:
L'esempio seguente crea un ruolo denominato roleA.
-
client.create_role(
- role_name="roleA",
-)
-
-
Dopo aver creato un ruolo, è possibile:
+
+
+
+ Utenti, ruoli e privilegi
+
Il modello RBAC comprende quattro componenti principali.
-
Elencare tutti i ruoli.
+
**Risorsa: **L'entità risorsa a cui si può accedere. In Milvus esistono tre livelli di risorse: istanza, database e collezione.
+
**Privilegio: **Il permesso di eseguire determinate operazioni sulle risorse Milvus (ad esempio, creare collezioni, inserire dati, ecc.).
+
**Gruppo di privilegi: **Un gruppo di privilegi multipli.
+
**Ruolo: **Un ruolo è composto da due parti: privilegi e risorse. I privilegi definiscono il tipo di operazioni che un ruolo può eseguire, mentre le risorse definiscono le risorse di destinazione su cui le operazioni possono essere eseguite. Ad esempio, il ruolo di amministratore di database può eseguire operazioni di lettura, scrittura e gestione su determinati database.
+
**Utente: **Un utente è una persona che utilizza Milvus. Ogni utente ha un ID unico e gli viene assegnato un ruolo o più ruoli.
L'esempio seguente mostra come concedere il permesso di ricerca in tutte le raccolte al ruolo roleA.
-
object_type specifica il tipo di oggetto, che può essere inteso anche come tipo di risorsa. Attualmente, i valori validi sono Collezione/Utente/Globale, ecc., dove Globale significa che non esiste un tipo di risorsa specifico. object_name è il nome della risorsa. Se objecttypeè Collection, il nome dell'oggetto può essere riferito a un nome di raccolta specifico, oppure si può usare * per specificare tutte le raccolte. Seiltipo di oggettoè Globale, il nome dell'oggetto può essere specificato solo come *. Vedere Utenti e ruoli per altri tipi di privilegi che si possono concedere.
-
Prima di gestire i privilegi dei ruoli, assicurarsi di aver abilitato l'autenticazione degli utenti. In caso contrario, potrebbe verificarsi un errore. Per informazioni su come abilitare l'autenticazione dell'utente, fare riferimento a Autenticare l'accesso dell'utente.
-
# grant privilege to a role
-
-client.grant_privilege(
- role_name='roleA',
- object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName
- object_name='user_1', # value here can be * or a specific user name if object type is 'User'
- privilege='SelectUser'
-)
-
-
Dopo aver concesso un privilegio a un ruolo, è possibile:
Prestare attenzione quando si eseguono le seguenti operazioni, perché sono irreversibili.
-
-
-
Rimuovere un privilegio da un ruolo. Se si revoca un privilegio che non è stato concesso al ruolo, si verifica un errore.
-
-
client.revoke_privilege(
- role_name='roleA',
- object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName
- object_name='user_1', # value here can be * or a specific user name if object type is 'User'
- privilege='SelectUser'
-)
-
-
-
Rimuovere un utente da un ruolo. Se si revoca un ruolo che non è stato concesso all'utente, si verifica un errore.
Per ottenere il controllo degli accessi tramite RBAC, è necessario seguire i passaggi seguenti.
+
+
Creare un utente: Oltre all'utente predefinito root in Milvus, è possibile creare nuovi utenti e impostare password per proteggere la sicurezza dei dati.
+
Creare un ruolo: È possibile creare ruoli personalizzati in base alle proprie esigenze. Le capacità specifiche di un ruolo sono determinate dai suoi privilegi.
+
Creare un gruppo di privilegi: Combinare più privilegi in un gruppo di privilegi per semplificare il processo di concessione dei privilegi a un ruolo.
Assegnare ruoli agli utenti: Assegnare ruoli con determinati privilegi agli utenti, in modo che questi ultimi possano avere i privilegi di un ruolo. Un singolo ruolo può essere assegnato a più utenti.
+
diff --git a/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_cluster-docker.json b/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_cluster-docker.json
index 3c370149a..3ccad29f6 100644
--- a/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_cluster-docker.json
+++ b/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_cluster-docker.json
@@ -1 +1 @@
-{"codeList":["...\nrootcoord:\n container_name: milvus-rootcoord\n image: milvusdb/milvus:v2.5.0-beta\n...\nproxy:\n container_name: milvus-proxy\n image: milvusdb/milvus:v2.5.0-beta\n...\nquerycoord:\n container_name: milvus-querycoord\n image: milvusdb/milvus:v2.5.0-beta \n...\nquerynode:\n container_name: milvus-querynode\n image: milvusdb/milvus:v2.5.0-beta\n...\nindexcoord:\n container_name: milvus-indexcoord\n image: milvusdb/milvus:v2.5.0-beta\n...\nindexnode:\n container_name: milvus-indexnode\n image: milvusdb/milvus:v2.5.0-beta \n...\ndatacoord:\n container_name: milvus-datacoord\n image: milvusdb/milvus:v2.5.0-beta \n...\ndatanode:\n container_name: milvus-datanode\n image: milvusdb/milvus:v2.5.0-beta\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0-beta\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvus/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","Update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Cluster with Docker Compose","anchorList":[{"label":"Aggiornamento del cluster Milvus con Docker Compose","href":"Upgrade-Milvus-Cluster-with-Docker-Compose","type":1,"isActive":false},{"label":"Aggiornare Milvus cambiando l'immagine","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrazione dei metadati","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"Cosa fare dopo","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["...\nrootcoord:\n container_name: milvus-rootcoord\n image: milvusdb/milvus:v2.5.0\n...\nproxy:\n container_name: milvus-proxy\n image: milvusdb/milvus:v2.5.0\n...\nquerycoord:\n container_name: milvus-querycoord\n image: milvusdb/milvus:v2.5.0 \n...\nquerynode:\n container_name: milvus-querynode\n image: milvusdb/milvus:v2.5.0\n...\nindexcoord:\n container_name: milvus-indexcoord\n image: milvusdb/milvus:v2.5.0\n...\nindexnode:\n container_name: milvus-indexnode\n image: milvusdb/milvus:v2.5.0 \n...\ndatacoord:\n container_name: milvus-datacoord\n image: milvusdb/milvus:v2.5.0 \n...\ndatanode:\n container_name: milvus-datanode\n image: milvusdb/milvus:v2.5.0\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvus/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","Update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Cluster with Docker Compose","anchorList":[{"label":"Aggiornamento del cluster Milvus con Docker Compose","href":"Upgrade-Milvus-Cluster-with-Docker-Compose","type":1,"isActive":false},{"label":"Aggiornare Milvus cambiando l'immagine","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrazione dei metadati","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"Cosa fare dopo","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_cluster-docker.md b/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_cluster-docker.md
index 78b2d95b0..88d44ad46 100644
--- a/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_cluster-docker.md
+++ b/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_cluster-docker.md
@@ -20,7 +20,7 @@ title: Aggiornamento del cluster Milvus con Docker Compose
>
Questo argomento descrive come aggiornare Milvus utilizzando Docker Compose.
Eseguire un aggiornamento continuo
@@ -145,8 +145,8 @@ zilliztech/milvus 4.1.0 2.3.0 Milvus is an ope
o
Operazione
update
Falso
-
Dopo essersi assicurati che tutte le distribuzioni nella vostra istanza Milvus siano nello stato normale. È possibile eseguire il seguente comando per aggiornare l'istanza Milvus alla versione 2.5.0-beta.
Dopo essersi assicurati che tutte le installazioni nella vostra istanza Milvus siano nello stato normale. Si può eseguire il seguente comando per aggiornare l'istanza Milvus alla versione 2.5.0.
Per aggiornare Milvus dalla v2.1.x alla 2.5.0, è necessario migrare i metadati prima dell'aggiornamento effettivo.
Eseguire un aggiornamento continuooperator upgrade milvus-
A partire da Milvus 2.2.3, è possibile configurare i coordinatori di Milvus per lavorare in modalità active-standby e abilitare la funzione di aggiornamento continuo per loro, in modo che Milvus possa rispondere alle richieste in arrivo durante gli aggiornamenti dei coordinatori. Nelle versioni precedenti, i coordinatori dovevano essere rimossi e poi creati durante un aggiornamento, il che poteva comportare alcuni tempi di inattività del servizio.
Basandosi sulle funzionalità di aggiornamento continuo fornite da Kubernetes, il gestore di Milvus impone un aggiornamento ordinato delle distribuzioni in base alle loro dipendenze. Inoltre, Milvus implementa un meccanismo per garantire che i suoi componenti rimangano compatibili con quelli che dipendono da loro durante l'aggiornamento, riducendo in modo significativo il potenziale downtime del servizio.
-
La funzione di aggiornamento continuo è disabilitata per impostazione predefinita. È necessario abilitarla esplicitamente attraverso un file di configurazione.
+
La funzione di aggiornamento continuo è disattivata per impostazione predefinita. È necessario abilitarla esplicitamente attraverso un file di configurazione.
In questo file di configurazione, impostare spec.components.enableRollingUpdate su true e spec.components.image sulla versione di Milvus desiderata.
Per impostazione predefinita, Milvus esegue l'aggiornamento continuo dei coordinatori in modo ordinato, sostituendo le immagini dei pod dei coordinatori una dopo l'altra. Per ridurre il tempo di aggiornamento, si può impostare spec.components.imageUpdateMode su all, in modo che Milvus sostituisca tutte le immagini dei pod nello stesso momento.
Si può impostare spec.components.imageUpdateMode su rollingDowngrade per far sì che Milvus sostituisca le immagini dei pod coordinatori con una versione inferiore.
A partire da Milvus 2.2.0, i metadati sono incompatibili con quelli delle versioni precedenti. I seguenti esempi ipotizzano un aggiornamento da Milvus 2.1.4 a Milvus 2.5.0-beta.
-
1. Creare un file .yaml per la migrazione dei metadati.
Creare un file di migrazione dei metadati. Il seguente è un esempio. È necessario specificare i file name, sourceVersion e targetVersion nel file di configurazione. L'esempio seguente imposta name su my-release-upgrade, sourceVersion su v2.1.4 e targetVersion su v2.5.0-beta. Ciò significa che il cluster Milvus sarà aggiornato dalla v2.1.4 alla v2.5.0-beta.
+
Da Milvus 2.2.0, i metadati sono incompatibili con quelli delle versioni precedenti. Gli esempi seguenti ipotizzano un aggiornamento da Milvus 2.1.4 a Milvus 2.5.0.
+
1. Creare un file .yaml per la migrazione dei metadati
Creare un file di migrazione dei metadati. Il seguente è un esempio. È necessario specificare i file name, sourceVersion e targetVersion nel file di configurazione. L'esempio seguente imposta name su my-release-upgrade, sourceVersion su v2.1.4 e targetVersion su v2.5.0. Ciò significa che il cluster Milvus verrà aggiornato dalla v2.1.4 alla v2.5.0.
apiVersion: milvus.io/v1beta1
kind: MilvusUpgrade
metadata:
@@ -159,9 +159,9 @@ spec:
namespace: default
name: my-release
sourceVersion: "v2.1.4"
- targetVersion: "v2.5.0-beta"
+ targetVersion: "v2.5.0"# below are some omit default values:
- # targetImage: "milvusdb/milvus:v2.5.0-beta"
+ # targetImage: "milvusdb/milvus:v2.5.0"# toolImage: "milvusdb/meta-migration:v2.2.0"# operation: upgrade# rollbackIfFailed: true
diff --git a/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_standalone-docker.json b/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_standalone-docker.json
index f03049fbc..c8b3679ac 100644
--- a/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_standalone-docker.json
+++ b/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_standalone-docker.json
@@ -1 +1 @@
-{"codeList":["...\nstandalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.5.0-beta\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0-beta\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvusdb/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","// Run the following only after update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Standalone with Docker Compose","anchorList":[{"label":"Aggiornamento di Milvus Standalone con Docker Compose","href":"Upgrade-Milvus-Standalone-with-Docker-Compose","type":1,"isActive":false},{"label":"Aggiornare Milvus cambiando l'immagine","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrare i metadati","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"Cosa fare dopo","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["...\nstandalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.5.0\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvusdb/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","// Run the following only after update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Standalone with Docker Compose","anchorList":[{"label":"Aggiornamento di Milvus Standalone con Docker Compose","href":"Upgrade-Milvus-Standalone-with-Docker-Compose","type":1,"isActive":false},{"label":"Aggiornare Milvus cambiando l'immagine","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrare i metadati","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"Cosa fare dopo","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_standalone-docker.md b/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_standalone-docker.md
index e7fe1c88d..025ae3b6d 100644
--- a/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_standalone-docker.md
+++ b/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_standalone-docker.md
@@ -24,9 +24,9 @@ title: Aggiornamento di Milvus Standalone con Docker Compose
>
Questo argomento descrive come aggiornare Milvus utilizzando Docker Compose.
A causa di problemi di sicurezza, Milvus aggiorna il suo MinIO a RELEASE.2023-03-20T20-16-18Z con il rilascio della v2.2.5. Prima di qualsiasi aggiornamento da versioni precedenti di Milvus Standalone installate con Docker Compose, è necessario creare un deployment MinIO a singolo nodo e singola unità e migrare le impostazioni e i contenuti di MinIO esistenti nel nuovo deployment. Per i dettagli, fate riferimento a questa guida.
+
A causa di problemi di sicurezza, Milvus aggiorna il proprio MinIO a RELEASE.2023-03-20T20-16-18Z con il rilascio della v2.2.5. Prima di qualsiasi aggiornamento da versioni precedenti di Milvus Standalone installate con Docker Compose, è necessario creare un deployment MinIO a singolo nodo e singola unità e migrare le impostazioni e i contenuti di MinIO esistenti nel nuovo deployment. Per i dettagli, fate riferimento a questa guida.
diff --git a/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_standalone-helm.json b/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_standalone-helm.json
index da6dd021b..3ae8eb48b 100644
--- a/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_standalone-helm.json
+++ b/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_standalone-helm.json
@@ -1 +1 @@
-{"codeList":["$ helm repo update\n$ helm search repo zilliztech/milvus --versions\n","helm repo add zilliztech https://zilliztech.github.io/milvus-helm\nhelm repo update zilliztech\n# upgrade existing helm release\nhelm upgrade my-release zilliztech/milvus --reset-then-reuse-values\n","NAME CHART VERSION APP VERSION DESCRIPTION \nzilliztech/milvus 4.1.34 2.4.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.33 2.4.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.32 2.4.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.31 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.30 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.29 2.4.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.24 2.3.11 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.23 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.22 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.21 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.20 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.18 2.3.10 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.18 2.3.9 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.17 2.3.8 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.16 2.3.7 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.15 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.14 2.3.6 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.13 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.12 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.11 2.3.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.10 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.9 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.8 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.7 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.6 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.5 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.4 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.3 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.2 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.1 2.3.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.0 2.3.0 Milvus is an open-source vector database built ...\n","sh rollingUpdate.sh -n default -i my-release -o update -t 2.5.0-beta -w 'milvusdb/milvus:v2.5.0-beta'\n","helm repo update\nhelm upgrade my-release milvus/milvus --reset-then-reuse-values --version=4.1.24 # use the helm chart version here\n","NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION \nmy-release default 1 2022-11-21 15:41:25.51539 +0800 CST deployed milvus-3.2.18 2.1.4\n","NAME READY STATUS RESTARTS AGE\nmy-release-etcd-0 1/1 Running 0 84s\nmy-release-milvus-standalone-75c599fffc-6rwlj 1/1 Running 0 84s\nmy-release-minio-744dd9586f-qngzv 1/1 Running 0 84s\n","$ kubectl get pods my-release-milvus-proxy-6c548f787f-scspp -o=jsonpath='{$.spec.containers[0].image}'\n# milvusdb/milvus:v2.1.4\n","./migrate.sh -i my-release -s 2.1.4 -t 2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -w milvusdb/milvus:v2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -w milvusdb/milvus:v2.5.0-beta -d true\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -o rollback -w milvusdb/milvus:v2.1.1\n./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -o migrate -w milvusdb/milvus:v2.5.0-beta\n"],"headingContent":"Upgrade Milvus Standalone with Helm Chart","anchorList":[{"label":"Aggiornamento di Milvus standalone con i grafici Helm","href":"Upgrade-Milvus-Standalone-with-Helm-Chart","type":1,"isActive":false},{"label":"Prerequisiti","href":"Prerequisites","type":2,"isActive":false},{"label":"Controllare la versione di Milvus","href":"Check-the-Milvus-version","type":2,"isActive":false},{"label":"Eseguire un aggiornamento continuo","href":"Conduct-a-rolling-upgrade","type":2,"isActive":false},{"label":"Aggiornare Milvus con Helm","href":"Upgrade-Milvus-using-Helm","type":2,"isActive":false},{"label":"Migrazione dei metadati","href":"Migrate-the-metadata","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["$ helm repo update\n$ helm search repo zilliztech/milvus --versions\n","helm repo add zilliztech https://zilliztech.github.io/milvus-helm\nhelm repo update zilliztech\n# upgrade existing helm release\nhelm upgrade my-release zilliztech/milvus --reset-then-reuse-values\n","NAME CHART VERSION APP VERSION DESCRIPTION \nzilliztech/milvus 4.1.34 2.4.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.33 2.4.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.32 2.4.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.31 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.30 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.29 2.4.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.24 2.3.11 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.23 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.22 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.21 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.20 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.18 2.3.10 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.18 2.3.9 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.17 2.3.8 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.16 2.3.7 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.15 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.14 2.3.6 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.13 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.12 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.11 2.3.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.10 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.9 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.8 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.7 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.6 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.5 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.4 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.3 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.2 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.1 2.3.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.0 2.3.0 Milvus is an open-source vector database built ...\n","sh rollingUpdate.sh -n default -i my-release -o update -t 2.5.0 -w 'milvusdb/milvus:v2.5.0'\n","helm repo update\nhelm upgrade my-release milvus/milvus --reset-then-reuse-values --version=4.1.24 # use the helm chart version here\n","NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION \nmy-release default 1 2022-11-21 15:41:25.51539 +0800 CST deployed milvus-3.2.18 2.1.4\n","NAME READY STATUS RESTARTS AGE\nmy-release-etcd-0 1/1 Running 0 84s\nmy-release-milvus-standalone-75c599fffc-6rwlj 1/1 Running 0 84s\nmy-release-minio-744dd9586f-qngzv 1/1 Running 0 84s\n","$ kubectl get pods my-release-milvus-proxy-6c548f787f-scspp -o=jsonpath='{$.spec.containers[0].image}'\n# milvusdb/milvus:v2.1.4\n","./migrate.sh -i my-release -s 2.1.4 -t 2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -w milvusdb/milvus:v2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -w milvusdb/milvus:v2.5.0 -d true\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -o rollback -w milvusdb/milvus:v2.1.1\n./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -o migrate -w milvusdb/milvus:v2.5.0\n"],"headingContent":"Upgrade Milvus Standalone with Helm Chart","anchorList":[{"label":"Aggiornamento di Milvus standalone con i grafici Helm","href":"Upgrade-Milvus-Standalone-with-Helm-Chart","type":1,"isActive":false},{"label":"Prerequisiti","href":"Prerequisites","type":2,"isActive":false},{"label":"Controllare la versione di Milvus","href":"Check-the-Milvus-version","type":2,"isActive":false},{"label":"Eseguire un aggiornamento continuo","href":"Conduct-a-rolling-upgrade","type":2,"isActive":false},{"label":"Aggiornare Milvus con Helm","href":"Upgrade-Milvus-using-Helm","type":2,"isActive":false},{"label":"Migrazione dei metadati","href":"Migrate-the-metadata","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_standalone-helm.md b/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_standalone-helm.md
index bbbc95fad..eef509752 100644
--- a/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_standalone-helm.md
+++ b/localization/v2.5.x/site/it/adminGuide/upgrade_milvus_standalone-helm.md
@@ -7,7 +7,7 @@ related_key: upgrade Milvus Standalone
summary: Scoprite come aggiornare Milvus standalone con Helm Chart.
title: Aggiornamento di Milvus standalone con i grafici Helm
---
-
Eseguire un aggiornamento continuo
@@ -145,14 +145,14 @@ zilliztech/milvus 4.1.0 2.3.0 Milvus is an ope
o
Operazione
update
Falso
-
Dopo essersi assicurati che tutte le distribuzioni nella vostra istanza Milvus siano nello stato normale. Potete eseguire il seguente comando per aggiornare l'istanza Milvus alla versione 2.5.0-beta.
Dopo essersi assicurati che tutte le installazioni nella vostra istanza Milvus siano nello stato normale. Potete eseguire il comando seguente per aggiornare l'istanza Milvus alla versione 2.5.0.
A partire da Milvus 2.2.0, i metadati sono incompatibili con quelli delle versioni precedenti. Gli esempi seguenti presuppongono un aggiornamento da Milvus 2.1.4 a Milvus 2.2.0.
+
A partire da Milvus 2.2.0, i metadati sono incompatibili con quelli delle versioni precedenti. I seguenti esempi ipotizzano un aggiornamento da Milvus 2.1.4 a Milvus 2.2.0.
1. Controllare la versione di Milvus
Eseguire $ helm list per verificare la versione dell'applicazione Milvus. Si può notare che APP VERSION è 2.1.4.
Per aggiornare Milvus dalla v2.1.x alla 2.5.0, è necessario migrare i metadati prima dell'aggiornamento effettivo.
Eseguire un aggiornamento continuooperator
upgrade milvus-
A partire da Milvus 2.2.3, è possibile configurare i coordinatori di Milvus per lavorare in modalità active-standby e abilitare la funzione di aggiornamento continuo per loro, in modo che Milvus possa rispondere alle richieste in arrivo durante gli aggiornamenti dei coordinatori. Nelle versioni precedenti, i coordinatori dovevano essere rimossi e poi creati durante un aggiornamento, il che poteva comportare alcuni tempi di inattività del servizio.
Basandosi sulle funzionalità di aggiornamento continuo fornite da Kubernetes, il gestore di Milvus impone un aggiornamento ordinato delle distribuzioni in base alle loro dipendenze. Inoltre, Milvus implementa un meccanismo per garantire che i suoi componenti rimangano compatibili con quelli che dipendono da loro durante l'aggiornamento, riducendo in modo significativo il potenziale downtime del servizio.
-
La funzione di aggiornamento continuo è disabilitata per impostazione predefinita. È necessario abilitarla esplicitamente attraverso un file di configurazione.
+
La funzione di aggiornamento continuo è disattivata per impostazione predefinita. È necessario abilitarla esplicitamente attraverso un file di configurazione.
In questo file di configurazione, impostare spec.components.enableRollingUpdate su true e spec.components.image sulla versione di Milvus desiderata.
Per impostazione predefinita, Milvus esegue un aggiornamento continuo dei coordinatori in modo ordinato, sostituendo le immagini dei pod dei coordinatori una dopo l'altra. Per ridurre il tempo di aggiornamento, si può impostare spec.components.imageUpdateMode su all, in modo che Milvus sostituisca tutte le immagini dei pod nello stesso momento.
Si può impostare spec.components.imageUpdateMode su rollingDowngrade per far sì che Milvus sostituisca le immagini dei pod coordinatori con una versione inferiore.
Da Milvus 2.2.0, i metadati sono incompatibili con quelli delle versioni precedenti. I seguenti esempi ipotizzano un aggiornamento da Milvus 2.1.4 a Milvus v2.5.0-beta.
-
1. Creare un file .yaml per la migrazione dei metadati.
Creare un file di migrazione dei metadati. Il seguente è un esempio. È necessario specificare i file name, sourceVersion e targetVersion nel file di configurazione. L'esempio seguente imposta name su my-release-upgrade, sourceVersion su v2.1.4 e targetVersion su v2.5.0-beta. Ciò significa che l'istanza Milvus verrà aggiornata dalla v2.1.4 alla v2.5.0-beta.
+
Da Milvus 2.2.0, i metadati sono incompatibili con quelli delle versioni precedenti. I seguenti esempi ipotizzano un aggiornamento da Milvus 2.1.4 a Milvus v2.5.0.
+
1. Creare un file .yaml per la migrazione dei metadati.
Creare un file di migrazione dei metadati. Il seguente è un esempio. È necessario specificare i file name, sourceVersion e targetVersion nel file di configurazione. L'esempio seguente imposta name su my-release-upgrade, sourceVersion su v2.1.4 e targetVersion su v2.5.0. Ciò significa che l'istanza di Milvus verrà aggiornata dalla v2.1.4 alla v2.5.0.
apiVersion: milvus.io/v1beta1
kind: MilvusUpgrade
metadata:
@@ -161,9 +161,9 @@ spec:
namespace: default
name: my-release
sourceVersion: "v2.1.4"
- targetVersion: "v2.5.0-beta"
+ targetVersion: "v2.5.0"# below are some omit default values:
- # targetImage: "milvusdb/milvus:v2.5.0-beta"
+ # targetImage: "milvusdb/milvus:v2.5.0"# toolImage: "milvusdb/meta-migration:v2.2.0"# operation: upgrade# rollbackIfFailed: true
diff --git a/localization/v2.5.x/site/it/adminGuide/users_and_roles.json b/localization/v2.5.x/site/it/adminGuide/users_and_roles.json
new file mode 100644
index 000000000..d986055d6
--- /dev/null
+++ b/localization/v2.5.x/site/it/adminGuide/users_and_roles.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.create_user(user_name=\"user_1\", password=\"P@ssw0rd\")\n\n","import io.milvus.v2.client.ConnectConfig;\nimport io.milvus.v2.client.MilvusClientV2;\nimport io.milvus.v2.service.rbac.request.CreateUserReq;\n\nConnectConfig connectConfig = ConnectConfig.builder()\n .uri(\"http://localhost:19530\")\n .token(\"root:Milvus\")\n .build();\n \nMilvusClientV2 client = new MilvusClientV2(connectConfig);\n\nCreateUserReq createUserReq = CreateUserReq.builder()\n .userName(\"user_1\")\n .password(\"P@ssw0rd\")\n .build();\n \nclient.createUser(createUserReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nconst address = \"http://localhost:19530\";\nconst token = \"root:Milvus\";\nconst client = new MilvusClient({address, token});\n\nawait milvusClient.createUser({\n username: 'user_1',\n password: 'P@ssw0rd',\n });\n\n","export CLUSTER_ENDPOINT=\"http://localhost:19530\"\nexport TOKEN=\"root:Milvus\"\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/create\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"userName\": \"user_1\",\n \"password\": \"P@ssw0rd\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.update_password(\n user_name=\"user_1\",\n old_password=\"P@ssw0rd\",\n new_password=\"NewP@ssw0rd\"\n)\n\n","import io.milvus.v2.service.rbac.request.UpdatePasswordReq;\n\nUpdatePasswordReq updatePasswordReq = UpdatePasswordReq.builder()\n .userName(\"user_1\")\n .password(\"P@ssw0rd\")\n .newPassword(\"NewP@ssw0rd\")\n .build();\nclient.updatePassword(updatePasswordReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.updateUser({\n username: 'user_1',\n newPassword: 'P@ssw0rd',\n oldPassword: 'NewP@ssw0rd',\n});\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/update_password\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"newPassword\": \"P@ssw0rd!\",\n \"userName\": \"user_1\",\n \"password\": \"P@ssw0rd\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.list_users()\n\n","List resp = client.listUsers();\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.listUsers();\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","['root', 'user_1']\n\n","from pymilvus import MilvusClient\n\nclient.create_role(role_name=\"role_a\")\nimport io.milvus.v2.service.rbac.request.CreateRoleReq;\n\n","CreateRoleReq createRoleReq = CreateRoleReq.builder()\n .roleName(\"role_a\")\n .build();\n \n\n","client.createRole(createRoleReq);\nconst { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.createRole({\n roleName: 'role_a',\n});\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/create\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.list_roles()\n\n","List roles = client.listRoles();\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.listRoles(\n includeUserInfo: True\n);\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","['admin', 'role_a']\n\n"],"headingContent":"Create Users & Roles","anchorList":[{"label":"Creare utenti e ruoli","href":"Create-Users--Roles","type":1,"isActive":false},{"label":"Utente","href":"User","type":2,"isActive":false},{"label":"Ruolo","href":"Role","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/it/adminGuide/users_and_roles.md b/localization/v2.5.x/site/it/adminGuide/users_and_roles.md
new file mode 100644
index 000000000..942f95326
--- /dev/null
+++ b/localization/v2.5.x/site/it/adminGuide/users_and_roles.md
@@ -0,0 +1,261 @@
+---
+id: users_and_roles.md
+related_key: 'users, roles'
+summary: >-
+ Milvus consente di ottenere un controllo degli accessi a grana fine tramite
+ RBAC. È possibile iniziare creando utenti e ruoli, quindi assegnare privilegi
+ o gruppi di privilegi ai ruoli e infine gestire il controllo degli accessi
+ assegnando ruoli agli utenti. Questo metodo garantisce l'efficienza e la
+ sicurezza della gestione degli accessi. Questa pagina illustra come creare
+ utenti e ruoli in Milvus.
+title: Creare utenti e ruoli
+---
+
Creare utenti e ruoli
+
+
+
+
Milvus consente di ottenere un controllo degli accessi a grana fine tramite RBAC. È possibile iniziare creando utenti e ruoli, quindi assegnare privilegi o gruppi di privilegi ai ruoli e infine gestire il controllo degli accessi assegnando ruoli agli utenti. Questo metodo garantisce l'efficienza e la sicurezza della gestione degli accessi. Questa pagina illustra come creare utenti e ruoli in Milvus.
+
Utente
+
+
+
+
Dopo l'inizializzazione di un'istanza Milvus, viene generato automaticamente un utente root per l'autenticazione quando ci si connette a Milvus per la prima volta. Il nome utente dell'utente root è root e la password è Milvus. Il ruolo predefinito dell'utente root è admin, che ha accesso a tutte le risorse. Per garantire la sicurezza dei dati, si consiglia di conservare le credenziali dell'utente root per evitare accessi non autorizzati.
+
Per le operazioni quotidiane, si consiglia di creare degli utenti invece di utilizzare l'utente root.
+
Creare un utente
L'esempio seguente mostra come creare un utente con il nome utente user_1 e la password P@ssw0rd. Il nome utente e la password dell'utente devono seguire queste regole.
+
+
Nome utente: deve iniziare con una lettera e può includere solo lettere maiuscole o minuscole, numeri e trattini bassi.
+
Password: deve essere composta da 8-64 caratteri e deve includere tre dei seguenti: lettere maiuscole, lettere minuscole, numeri e caratteri speciali.
Dopo aver creato un utente, è possibile aggiornare la password in caso di dimenticanza.
+
La nuova password deve seguire la seguente regola.
+
+
Deve avere una lunghezza compresa tra 8 e 64 caratteri e includere tre dei seguenti elementi: lettere maiuscole, lettere minuscole, numeri e caratteri speciali.
+
+
L'esempio seguente mostra come aggiornare la password dell'utente user_1 in NewP@ssw0rd.
Di seguito è riportato un esempio di output. root è l'utente predefinito generato automaticamente in Milvus. user_1 è il nuovo utente appena creato.
+
['root', 'user_1']
+
+
+
Ruolo
+
+
+
+
Milvus fornisce un ruolo integrato chiamato admin, che è un ruolo di amministratore che può accedere alle risorse di tutte le istanze e ha privilegi per tutte le operazioni. Per una gestione più precisa degli accessi e una maggiore sicurezza dei dati, si consiglia di creare ruoli personalizzati in base alle proprie esigenze.
+
Creare un ruolo
L'esempio seguente mostra come creare un ruolo chiamato role_a.
+
Il nome del ruolo deve seguire la seguente regola.
+
+
Deve iniziare con una lettera e può includere solo lettere maiuscole o minuscole, numeri e trattini bassi".
Di seguito è riportato un esempio di output. admin è il ruolo predefinito in Milvus. role_a è il nuovo ruolo appena creato.
+
['admin', 'role_a']
+
+
diff --git a/localization/v2.5.x/site/it/getstarted/run-milvus-docker/install_standalone-docker-compose.json b/localization/v2.5.x/site/it/getstarted/run-milvus-docker/install_standalone-docker-compose.json
index 68dac2e8f..96fc672a1 100644
--- a/localization/v2.5.x/site/it/getstarted/run-milvus-docker/install_standalone-docker-compose.json
+++ b/localization/v2.5.x/site/it/getstarted/run-milvus-docker/install_standalone-docker-compose.json
@@ -1 +1 @@
-{"codeList":["# Download the configuration file\n$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0-beta/milvus-standalone-docker-compose.yml -O docker-compose.yml\n\n# Start Milvus\n$ sudo docker compose up -d\n\nCreating milvus-etcd ... done\nCreating milvus-minio ... done\nCreating milvus-standalone ... done\n","$ sudo docker-compose ps\n\n Name Command State Ports\n--------------------------------------------------------------------------------------------------------------------\nmilvus-etcd etcd -advertise-client-url ... Up 2379/tcp, 2380/tcp\nmilvus-minio /usr/bin/docker-entrypoint ... Up (healthy) 9000/tcp\nmilvus-standalone /tini -- milvus run standalone Up 0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp\n","# Stop Milvus\n$ sudo docker compose down\n\n# Delete service data\n$ sudo rm -rf volumes\n"],"headingContent":"Run Milvus with Docker Compose (Linux)","anchorList":[{"label":"Eseguire Milvus con Docker Compose (Linux)","href":"Run-Milvus-with-Docker-Compose-Linux","type":1,"isActive":false},{"label":"Prerequisiti","href":"Prerequisites","type":2,"isActive":false},{"label":"Installare Milvus","href":"Install-Milvus","type":2,"isActive":false},{"label":"Cosa succede dopo","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["# Download the configuration file\n$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0/milvus-standalone-docker-compose.yml -O docker-compose.yml\n\n# Start Milvus\n$ sudo docker compose up -d\n\nCreating milvus-etcd ... done\nCreating milvus-minio ... done\nCreating milvus-standalone ... done\n","$ sudo docker-compose ps\n\n Name Command State Ports\n--------------------------------------------------------------------------------------------------------------------\nmilvus-etcd etcd -advertise-client-url ... Up 2379/tcp, 2380/tcp\nmilvus-minio /usr/bin/docker-entrypoint ... Up (healthy) 9000/tcp\nmilvus-standalone /tini -- milvus run standalone Up 0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp\n","# Stop Milvus\n$ sudo docker compose down\n\n# Delete service data\n$ sudo rm -rf volumes\n"],"headingContent":"Run Milvus with Docker Compose (Linux)","anchorList":[{"label":"Eseguire Milvus con Docker Compose (Linux)","href":"Run-Milvus-with-Docker-Compose-Linux","type":1,"isActive":false},{"label":"Prerequisiti","href":"Prerequisites","type":2,"isActive":false},{"label":"Installare Milvus","href":"Install-Milvus","type":2,"isActive":false},{"label":"Cosa succede dopo","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/it/getstarted/run-milvus-docker/install_standalone-docker-compose.md b/localization/v2.5.x/site/it/getstarted/run-milvus-docker/install_standalone-docker-compose.md
index 23a09bd4e..e147f907b 100644
--- a/localization/v2.5.x/site/it/getstarted/run-milvus-docker/install_standalone-docker-compose.md
+++ b/localization/v2.5.x/site/it/getstarted/run-milvus-docker/install_standalone-docker-compose.md
@@ -57,7 +57,7 @@ title: Eseguire Milvus con Docker Compose (Linux)
Milvus fornisce un file di configurazione di Docker Compose nel repository Milvus. Per installare Milvus usando Docker Compose, basta eseguire il comando
# Download the configuration file
-$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0-beta/milvus-standalone-docker-compose.yml -O docker-compose.yml
+$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0/milvus-standalone-docker-compose.yml -O docker-compose.yml
# Start Milvus
$ sudo docker compose up -d
diff --git a/localization/v2.5.x/site/it/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.json b/localization/v2.5.x/site/it/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.json
index 3f82a1d33..52a8ac29d 100644
--- a/localization/v2.5.x/site/it/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.json
+++ b/localization/v2.5.x/site/it/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.json
@@ -1 +1 @@
-{"codeList":["$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0-beta/milvus-standalone-docker-compose-gpu.yml -O docker-compose.yml\n","...\nstandalone:\n ...\n deploy:\n resources:\n reservations:\n devices:\n - driver: nvidia\n capabilities: [\"gpu\"]\n device_ids: [\"0\"]\n...\n","...\nstandalone:\n ...\n deploy:\n resources:\n reservations:\n devices:\n - driver: nvidia\n capabilities: [\"gpu\"]\n device_ids: ['0', '1']\n...\n","$ sudo docker compose up -d\n\nCreating milvus-etcd ... done\nCreating milvus-minio ... done\nCreating milvus-standalone ... done\n","$ sudo docker compose ps\n\n Name Command State Ports\n--------------------------------------------------------------------------------------------------------------------\nmilvus-etcd etcd -advertise-client-url ... Up 2379/tcp, 2380/tcp\nmilvus-minio /usr/bin/docker-entrypoint ... Up (healthy) 9000/tcp\nmilvus-standalone /tini -- milvus run standalone Up 0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp\n","$ CUDA_VISIBLE_DEVICES=0 ./milvus run standalone\n","$ CUDA_VISIBLE_DEVICES=0,1 ./milvus run standalone\n","# Stop Milvus\n$ sudo docker compose down\n\n# Delete service data\n$ sudo rm -rf volumes\n","docker cp :/milvus/configs/milvus.yaml milvus.yaml\n","vim milvus.yaml\n","...\ngpu:\n initMemSize: 0\n maxMemSize: 0\n...\n","docker cp milvus.yaml :/milvus/configs/milvus.yaml\n","docker stop \ndocker start \n"],"headingContent":"Run Milvus with GPU Support Using Docker Compose","anchorList":[{"label":"Esecuzione di Milvus con supporto GPU tramite Docker Compose","href":"Run-Milvus-with-GPU-Support-Using-Docker-Compose","type":1,"isActive":false},{"label":"Prerequisiti","href":"Prerequisites","type":2,"isActive":false},{"label":"Installare Milvus","href":"Install-Milvus","type":2,"isActive":false},{"label":"Configurare il pool di memoria","href":"Configure-memory-pool","type":2,"isActive":false},{"label":"Cosa succede ora","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0/milvus-standalone-docker-compose-gpu.yml -O docker-compose.yml\n","...\nstandalone:\n ...\n deploy:\n resources:\n reservations:\n devices:\n - driver: nvidia\n capabilities: [\"gpu\"]\n device_ids: [\"0\"]\n...\n","...\nstandalone:\n ...\n deploy:\n resources:\n reservations:\n devices:\n - driver: nvidia\n capabilities: [\"gpu\"]\n device_ids: ['0', '1']\n...\n","$ sudo docker compose up -d\n\nCreating milvus-etcd ... done\nCreating milvus-minio ... done\nCreating milvus-standalone ... done\n","$ sudo docker compose ps\n\n Name Command State Ports\n--------------------------------------------------------------------------------------------------------------------\nmilvus-etcd etcd -advertise-client-url ... Up 2379/tcp, 2380/tcp\nmilvus-minio /usr/bin/docker-entrypoint ... Up (healthy) 9000/tcp\nmilvus-standalone /tini -- milvus run standalone Up 0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp\n","$ CUDA_VISIBLE_DEVICES=0 ./milvus run standalone\n","$ CUDA_VISIBLE_DEVICES=0,1 ./milvus run standalone\n","# Stop Milvus\n$ sudo docker compose down\n\n# Delete service data\n$ sudo rm -rf volumes\n","docker cp :/milvus/configs/milvus.yaml milvus.yaml\n","vim milvus.yaml\n","...\ngpu:\n initMemSize: 0\n maxMemSize: 0\n...\n","docker cp milvus.yaml :/milvus/configs/milvus.yaml\n","docker stop \ndocker start \n"],"headingContent":"Run Milvus with GPU Support Using Docker Compose","anchorList":[{"label":"Esecuzione di Milvus con supporto GPU tramite Docker Compose","href":"Run-Milvus-with-GPU-Support-Using-Docker-Compose","type":1,"isActive":false},{"label":"Prerequisiti","href":"Prerequisites","type":2,"isActive":false},{"label":"Installare Milvus","href":"Install-Milvus","type":2,"isActive":false},{"label":"Configurare il pool di memoria","href":"Configure-memory-pool","type":2,"isActive":false},{"label":"Cosa succede ora","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/it/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.md b/localization/v2.5.x/site/it/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.md
index 706b6011e..f1668e2d8 100644
--- a/localization/v2.5.x/site/it/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.md
+++ b/localization/v2.5.x/site/it/getstarted/run-milvus-gpu/install_standalone-docker-compose-gpu.md
@@ -59,8 +59,8 @@ title: Esecuzione di Milvus con supporto GPU tramite Docker Compose
>
Per installare Milvus con supporto GPU usando Docker Compose, seguite i seguenti passi.
Se non si è riusciti a eseguire il comando precedente, verificare se nel sistema è installato Docker Compose V1. In tal caso, si consiglia di migrare a Docker Compose V2, come indicato nelle note di questa pagina.
+
Se non si è riusciti a eseguire il comando precedente, verificare se sul sistema è installato Docker Compose V1. In tal caso, si consiglia di migrare a Docker Compose V2, come indicato nelle note di questa pagina.
Dopo aver avviato Milvus,
@@ -120,7 +120,7 @@ milvus-minio /usr/bin/docker-entrypoint ... Up (healthy) 9000/tcp
milvus-standalone /tini -- milvus run standalone Up 0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp
Se sono stati assegnati più dispositivi GPU a Milvus in docker-compose.yml, è possibile specificare quale dispositivo GPU è visibile o disponibile per l'uso.
-
Rendere visibile a Milvus il dispositivo GPU 0:
+
Rendere il dispositivo GPU 0 visibile a Milvus:
$ CUDA_VISIBLE_DEVICES=0 ./milvus run standalone
Rendere visibili a Milvus i dispositivi GPU 0 e 1:
Scoprite le novità di Milvus! Questa pagina riassume le nuove funzionalità, i miglioramenti, i problemi noti e le correzioni di bug di ogni versione. In questa sezione è possibile trovare le note di rilascio per ogni versione rilasciata dopo la v2.5.0. Si consiglia di visitare regolarmente questa pagina per conoscere gli aggiornamenti.
-
v2.5.0-beta
+
Scoprite le novità di Milvus! Questa pagina riassume le nuove funzionalità, i miglioramenti, i problemi noti e le correzioni di bug di ogni versione. In questa sezione è possibile trovare le note di rilascio per ogni versione successiva alla v2.5.0. Si consiglia di visitare regolarmente questa pagina per conoscere gli aggiornamenti.
+
v2.5.0
-
Data di rilascio: 26 novembre 2024
+
Data di rilascio: 23 dicembre 2024
-
Versione di Milvus
Versione dell'SDK Python
Versione dell'SDK Node.js
Versione SDK Java
+
Versione Milvus
Versione dell'SDK Python
Versione dell'SDK Node.js
Versione SDK Java
-
2.5.0-beta
2.5.0
2.5.0
2.5.0
+
2.5.0
2.5.1
2.5.2
2.5.2
-
Milvus 2.5.0-beta apporta significativi miglioramenti per migliorare l'usabilità, la scalabilità e le prestazioni per gli utenti che si occupano di ricerca vettoriale e di gestione di dati su larga scala. Con questa versione, Milvus integra nuove potenti funzionalità come la ricerca basata sui termini, la compattazione dei cluster per ottimizzare le query e il supporto versatile per i metodi di ricerca vettoriale rada e densa. I miglioramenti nella gestione dei cluster, nell'indicizzazione e nella gestione dei dati introducono nuovi livelli di flessibilità e facilità d'uso, rendendo Milvus un database vettoriale ancora più robusto e facile da usare.
+
Milvus 2.5.0 apporta significativi miglioramenti per migliorare l'usabilità, la scalabilità e le prestazioni per gli utenti che si occupano di ricerca vettoriale e di gestione di dati su larga scala. Con questa versione, Milvus integra nuove potenti funzionalità come la ricerca basata sui termini, la compattazione dei cluster per ottimizzare le query e il supporto versatile per i metodi di ricerca vettoriale rada e densa. I miglioramenti nella gestione dei cluster, nell'indicizzazione e nella gestione dei dati introducono nuovi livelli di flessibilità e facilità d'uso, rendendo Milvus un database vettoriale ancora più robusto e facile da usare.
Caratteristiche principali
Ricerca a testo pieno
Milvus 2.5 supporta la ricerca full text implementata con Sparse-BM25! Questa funzione è un importante complemento alle forti capacità di ricerca semantica di Milvus, soprattutto in scenari che coinvolgono parole rare o termini tecnici. Nelle versioni precedenti, Milvus supportava vettori sparsi per aiutare gli scenari di ricerca per parole chiave. Questi vettori sparsi venivano generati al di fuori di Milvus da modelli neurali come SPLADEv2/BGE-M3 o da modelli statistici come l'algoritmo BM25.
Grazie a Tantivy, Milvus 2.5 dispone di analizzatori integrati e di estrazione di vettori sparsi, estendendo l'API dalla ricezione di soli vettori come input all'accettazione diretta di testo. Le informazioni statistiche del BM25 vengono aggiornate in tempo reale durante l'inserimento dei dati, migliorando l'usabilità e l'accuratezza. Inoltre, i vettori sparsi basati su algoritmi di prossimità approssimata (ANN) offrono prestazioni più potenti rispetto ai sistemi di ricerca per parole chiave standard.
Gli indici Bitmap sono stati tradizionalmente efficaci per i campi a bassa cardinalità, che hanno un numero modesto di valori distinti, ad esempio una colonna contenente informazioni sul sesso con solo due valori possibili: maschio e femmina.
Milvus supporta ora l'impostazione di proprietà nullable e di valori predefiniti per campi scalari diversi da quello della chiave primaria. Per i campi scalari contrassegnati come nullable=True, gli utenti possono omettere il campo durante l'inserimento dei dati; il sistema lo tratterà come valore nullo o valore predefinito (se impostato) senza lanciare un errore.
-
I valori predefiniti e le proprietà annullabili offrono a Milvus una maggiore flessibilità. Gli utenti possono utilizzare questa funzione per i campi con valori incerti durante la creazione di collezioni. Inoltre, semplificano la migrazione dei dati da altri sistemi di database a Milvus, consentendo di gestire insiemi di dati contenenti valori nulli conservando le impostazioni originali dei valori predefiniti.
+
I valori predefiniti e le proprietà annullabili offrono a Milvus una maggiore flessibilità. Gli utenti possono utilizzare questa funzione per i campi con valori incerti durante la creazione di collezioni. Inoltre, semplificano la migrazione dei dati da altri sistemi di database a Milvus, consentendo di gestire insiemi di dati contenenti valori nulli, conservando le impostazioni originali dei valori predefiniti.
Grazie alla stretta collaborazione con la comunità di Faiss, l'algoritmo HNSW di Faiss è stato notevolmente migliorato sia in termini di funzionalità che di prestazioni. Per motivi di stabilità e manutenibilità, Milvus 2.5 ha ufficialmente migrato il supporto per HNSW da hnswlib a Faiss.
Basato su Faiss, Milvus 2.5 supporta diversi metodi di quantizzazione su HNSW per soddisfare le esigenze di diversi scenari: SQ (Scalar Quantizers), PQ (Product Quantizer) e PRQ (Product Residual Quantizer). SQ e PQ sono più comuni; SQ offre buone prestazioni di interrogazione e velocità di costruzione, mentre PQ offre un richiamo migliore a parità di rapporto di compressione. Molti database vettoriali utilizzano comunemente la quantizzazione binaria, che è una forma semplice di quantizzazione SQ.
PRQ è una fusione di PQ e AQ (Additive Quantizer). Rispetto a PQ, richiede tempi di costruzione più lunghi per offrire un richiamo migliore, soprattutto a tassi di compressione elevati, come la compressione binaria.
Compattazione dei cluster (Beta)
Milvus 2.5 introduce la Clustering Compaction per accelerare le ricerche e ridurre i costi di grandi collezioni. Specificando un campo scalare come chiave di clustering, i dati vengono ridistribuiti per intervallo per ottimizzare la memorizzazione e il recupero. Agendo come un indice globale, questa funzione consente a Milvus di sfrondare in modo efficiente i dati durante le query basate sui metadati di clustering, migliorando le prestazioni di ricerca quando vengono applicati filtri scalari.
Milvus 2.5 introduce un nuovo componente chiamato nodo di streaming, che fornisce servizi di Write-Ahead Logging (WAL). Ciò consente a Milvus di ottenere il consenso prima e dopo la lettura e la scrittura dei canali, sbloccando nuove caratteristiche, funzionalità e ottimizzazioni. Questa funzione è disabilitata per impostazione predefinita in Milvus 2.5 e sarà disponibile ufficialmente nella versione 3.0.
+
Altre caratteristiche
Nodo di streaming (Beta)
Milvus 2.5 introduce un nuovo componente chiamato nodo di streaming, che fornisce servizi di Write-Ahead Logging (WAL). Ciò consente a Milvus di ottenere il consenso prima e dopo la lettura e la scrittura dei canali, sbloccando nuove caratteristiche, funzionalità e ottimizzazioni. Questa funzione è disabilitata per impostazione predefinita in Milvus 2.5 e sarà ufficialmente disponibile nella versione 3.0.
Supporto IPv6
Milvus supporta ora IPv6, consentendo una maggiore connettività e compatibilità di rete.
Importazione massiva CSV
Oltre ai formati JSON e Parquet, Milvus supporta ora l'importazione diretta di dati in massa in formato CSV.
Modelli di espressione per l'accelerazione delle query
Milvus supporta ora i modelli di espressione, migliorando l'efficienza dell'analisi delle espressioni, in particolare in scenari con espressioni complesse.
@@ -81,3 +81,6 @@ title: Note di rilascio
Ottimizzazione del parsing delle espressioni
Migliorato il parsing delle espressioni implementando la cache per le espressioni ripetute, aggiornando ANTLR e ottimizzando le prestazioni delle clausole NOT IN.
Miglioramento delle prestazioni di concomitanza del DDL
Ottimizzate le prestazioni di concorrenza delle operazioni del Data Definition Language (DDL).
Allineamento delle funzionalità dell'API RESTful
Allineate le funzionalità dell'API RESTful con gli altri SDK per coerenza.
+
Aggiornamenti di sicurezza e configurazione
Supportato TLS per proteggere la comunicazione tra i nodi in ambienti più complessi o aziendali. Per i dettagli, consultare la sezione Configurazione della sicurezza.
+
Miglioramenti delle prestazioni di compattazione
Eliminati i limiti massimi dei segmenti nella compattazione mista e ora viene data priorità ai segmenti più piccoli, migliorando l'efficienza e accelerando le query su insiemi di dati grandi o frammentati.
+
Bilanciamento dei canali basato sui punteggi
Introdotto un criterio che bilancia dinamicamente i carichi tra i canali, migliorando l'utilizzo delle risorse e la stabilità complessiva nelle distribuzioni su larga scala.
Se una raccolta deve essere abbandonata per un periodo specifico, si può impostare il suo Time-To-Live (TTL) in secondi. Una volta scaduto il TTL, Milvus cancella le entità della collezione e la abbandona. La cancellazione è asincrona, il che significa che le ricerche e le interrogazioni sono ancora possibili prima che la cancellazione sia completata.
+
Se una raccolta deve essere abbandonata per un periodo specifico, si può impostare il suo Time-To-Live (TTL) in secondi. Una volta scaduto il TTL, Milvus cancella le entità della raccolta. La cancellazione è asincrona, il che significa che le ricerche e le interrogazioni sono ancora possibili prima che la cancellazione sia completata.
Il seguente frammento di codice mostra come modificare il TTL di una collezione.
import io.milvus.v2.service.collection.request.AlterCollectionReq;
import java.util.HashMap;
diff --git a/localization/v2.5.x/site/it/userGuide/schema/string.md b/localization/v2.5.x/site/it/userGuide/schema/string.md
index 4948e9de5..420348781 100644
--- a/localization/v2.5.x/site/it/userGuide/schema/string.md
+++ b/localization/v2.5.x/site/it/userGuide/schema/string.md
@@ -5,7 +5,7 @@ summary: >-
In Milvus, VARCHAR è il tipo di dati utilizzato per la memorizzazione di dati
di tipo stringa, adatto alla memorizzazione di stringhe di lunghezza
variabile. Può memorizzare stringhe con caratteri sia a uno che a più byte,
- con una lunghezza massima di 60.535 caratteri. Quando si definisce un campo
+ con una lunghezza massima di 65.535 caratteri. Quando si definisce un campo
VARCHAR, è necessario specificare anche il parametro di lunghezza massima
max_length. Il tipo di stringa VARCHAR offre un modo efficiente e flessibile
di memorizzare e gestire i dati di testo, rendendolo ideale per le
@@ -26,7 +26,7 @@ summary: >-
d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"
>
-
In Milvus, VARCHAR è il tipo di dati utilizzato per la memorizzazione di dati di tipo stringa, adatto alla memorizzazione di stringhe di lunghezza variabile. Può memorizzare stringhe con caratteri sia a uno che a più byte, con una lunghezza massima di 60.535 caratteri. Quando si definisce un campo VARCHAR, è necessario specificare anche il parametro di lunghezza massima max_length. Il tipo di stringa VARCHAR offre un modo efficiente e flessibile di memorizzare e gestire i dati di testo, rendendolo ideale per le applicazioni che gestiscono stringhe di varia lunghezza.
+
In Milvus, VARCHAR è il tipo di dati utilizzato per la memorizzazione di dati di tipo stringa, adatto alla memorizzazione di stringhe di lunghezza variabile. Può memorizzare stringhe con caratteri sia a uno che a più byte, con una lunghezza massima di 65.535 caratteri. Quando si definisce un campo VARCHAR, è necessario specificare anche il parametro di lunghezza massima max_length. Il tipo di stringa VARCHAR offre un modo efficiente e flessibile di memorizzare e gestire i dati di testo, rendendolo ideale per le applicazioni che gestiscono stringhe di varia lunghezza.
Aggiungere un campo VARCHAR
-
In questo esempio, si aggiungono due campi VARCHAR: varchar_field1 e varchar_field2, con lunghezza massima impostata rispettivamente a 100 e 200 caratteri. Si consiglia di impostare max_length in base alle caratteristiche dei propri dati, per assicurarsi che possa accogliere i dati più lunghi evitando un'eccessiva allocazione di spazio. Inoltre, sono stati aggiunti un campo primario pk e un campo vettoriale embedding.
+
In questo esempio, si aggiungono due campi VARCHAR: varchar_field1 e varchar_field2, con lunghezza massima impostata rispettivamente a 100 e 200 caratteri. Si consiglia di impostare max_length in base alle caratteristiche dei dati, per assicurarsi che possa accogliere i dati più lunghi evitando di allocare troppo spazio. Inoltre, sono stati aggiunti un campo primario pk e un campo vettoriale embedding.
Il campo primario e il campo vettoriale sono obbligatori quando si crea una raccolta. Il campo primario identifica in modo univoco ogni entità, mentre il campo vettoriale è fondamentale per la ricerca di similarità. Per maggiori dettagli, consultare Campo primario e AutoID, Vettore denso, Vettore binario o Vettore sparso.
@@ -432,7 +432,7 @@ client.insert({
>
Dopo aver aggiunto i campi stringa, è possibile utilizzarli per filtrare le operazioni di ricerca e di interrogazione, ottenendo risultati di ricerca più precisi.
-
Filtro delle query
Dopo aver aggiunto i campi stringa, è possibile filtrare i risultati utilizzando questi campi nelle query. Ad esempio, si possono interrogare tutte le entità in cui varchar_field1 è uguale a "Product A".
+
Filtrare le query
Dopo aver aggiunto i campi stringa, è possibile filtrare i risultati utilizzando questi campi nelle query. Ad esempio, si possono interrogare tutte le entità in cui varchar_field1 è uguale a "Product A".
filter = 'varchar_field1 == "Product A"'
diff --git a/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/array-operators.json b/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/array-operators.json
new file mode 100644
index 000000000..de76b3899
--- /dev/null
+++ b/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/array-operators.json
@@ -0,0 +1 @@
+{"codeList":["filter = 'ARRAY_CONTAINS(history_temperatures, 23)'\n\n","filter = 'ARRAY_CONTAINS_ALL(history_temperatures, [23, 24])'\n\n","filter = 'ARRAY_CONTAINS_ANY(history_temperatures, [23, 24])'\n\n","filter = 'ARRAY_LENGTH(history_temperatures) < 10'\n\n"],"headingContent":"ARRAY Operators","anchorList":[{"label":"Operatori ARRAY","href":"ARRAY-Operators","type":1,"isActive":false},{"label":"Operatori ARRAY disponibili","href":"Available-ARRAY-Operators","type":2,"isActive":false},{"label":"ARRAY_CONTAINS","href":"ARRAYCONTAINS","type":2,"isActive":false},{"label":"ARRAY_CONTAINS_ALL","href":"ARRAYCONTAINSALL","type":2,"isActive":false},{"label":"ARRAY_CONTAINS_ANY","href":"ARRAYCONTAINSANY","type":2,"isActive":false},{"label":"LUNGHEZZA_ARRAY","href":"ARRAYLENGTH","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/array-operators.md b/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/array-operators.md
new file mode 100644
index 000000000..9a5d5b14c
--- /dev/null
+++ b/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/array-operators.md
@@ -0,0 +1,136 @@
+---
+id: array-operators.md
+summary: >-
+ Milvus offre potenti operatori per interrogare i campi degli array,
+ consentendo di filtrare e recuperare le entità in base al loro contenuto.
+title: Operatori di matrice
+---
+
Operatori ARRAY
+
+
+
+
Milvus offre potenti operatori per interrogare i campi degli array, consentendo di filtrare e recuperare le entità in base al contenuto degli array.
+
+
Tutti gli elementi di un array devono essere dello stesso tipo e le strutture annidate all'interno degli array sono trattate come stringhe semplici. Pertanto, quando si lavora con i campi ARRAY, è consigliabile evitare annidamenti troppo profondi e assicurarsi che le strutture di dati siano il più possibile piatte per ottenere prestazioni ottimali.
+
+
Operatori ARRAY disponibili
+
+
+
+
Gli operatori ARRAY consentono di interrogare con precisione i campi array in Milvus. Gli operatori sono.
L'operatore ARRAY_CONTAINS controlla se un elemento specifico esiste in un campo array. È utile quando si vogliono trovare entità in cui un determinato elemento è presente nella matrice.
+
Esempio
+
Si supponga di avere un campo array history_temperatures, che contiene le temperature minime registrate per diversi anni. Per trovare tutte le entità in cui l'array contiene il valore 23, si può usare la seguente espressione di filtro.
Questo restituirà tutte le entità in cui l'array history_temperatures contiene il valore 23.
+
ARRAY_CONTAINS_ALL
+
+
+
+
L'operatore ARRAY_CONTAINS_ALL assicura che tutti gli elementi dell'elenco specificato siano presenti nel campo dell'array. Questo operatore è utile quando si desidera abbinare entità che contengono più valori nell'array.
+
Esempio
+
Se si vogliono trovare tutte le entità in cui l'array history_temperatures contiene sia 23 che 24, si può usare.
Questo restituirà tutte le entità in cui l'array history_temperatures contiene entrambi i valori specificati.
+
ARRAY_CONTAINS_ANY
+
+
+
+
L'operatore ARRAY_CONTAINS_ANY controlla se uno qualsiasi degli elementi dell'elenco specificato è presente nel campo dell'array. È utile quando si desidera abbinare entità che contengono almeno uno dei valori specificati nell'array.
+
Esempio
+
Per trovare tutte le entità in cui l'array history_temperatures contiene o 23 o 24, si può usare l'operatore.
Questo restituirà tutte le entità in cui l'array history_temperatures contiene almeno uno dei valori 23 o 24.
+
LUNGHEZZA_ARRAY
+
+
+
+
L'operatore ARRAY_LENGTH consente di filtrare le entità in base al numero di elementi di un campo array. È utile quando si devono trovare entità con array di una certa lunghezza.
+
Esempio
+
Se si desidera trovare tutte le entità in cui l'array history_temperatures ha meno di 10 elementi, è possibile utilizzare l'operatore .
Questo restituirà tutte le entità in cui l'array history_temperatures ha meno di 10 elementi.
diff --git a/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/basic-operators.json b/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/basic-operators.json
new file mode 100644
index 000000000..a054dd3c5
--- /dev/null
+++ b/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/basic-operators.json
@@ -0,0 +1 @@
+{"codeList":["filter = 'status == \"active\"'\n\n","filter = 'status != \"inactive\"'\n\n","filter = 'age > 30'\n\n","filter = 'price < 100'\n\n","filter = 'rating >= 4'\n\n","filter = 'discount <= 10'\n\n","filter = 'color in [\"red\", \"green\", \"blue\"]'\n\n","filter = 'name LIKE \"Prod%\"'\n\n","filter = 'name LIKE \"%XYZ\"'\n\n","filter = 'name LIKE \"%Pro%\"'\n\n","filter = 'total == base_price + tax'\n\n","filter = 'quantity - quantity_sold > 50'\n\n","filter = 'price * quantity > 1000'\n\n","filter = 'total_price / quantity < 50'\n\n","filter = 'id % 2 == 0'\n\n","filter = 'price ** 2 > 1000'\n\n","filter = 'price > 100 AND stock > 50'\n\n","filter = 'color == \"red\" OR color == \"blue\"'\n\n","filter = 'NOT color == \"green\"'\n\n","filter = 'product[\"price\"] > 1000'\n\n","filter = 'history_temperatures[0] > 30'\n\n"],"headingContent":"Basic Operators","anchorList":[{"label":"Operatori di base","href":"Basic-Operators","type":1,"isActive":false},{"label":"Operatori di confronto","href":"Comparison-operators","type":2,"isActive":false},{"label":"Operatori di intervallo","href":"Range-operators","type":2,"isActive":false},{"label":"Operatori aritmetici","href":"Arithmetic-Operators","type":2,"isActive":false},{"label":"Operatori logici","href":"Logical-Operators","type":2,"isActive":false},{"label":"Suggerimenti per l'uso degli operatori di base con i campi JSON e ARRAY","href":"Tips-on-Using-Basic-Operators-with-JSON-and-ARRAY-Fields","type":2,"isActive":false},{"label":"Conclusione","href":"Conclusion","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/basic-operators.md b/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/basic-operators.md
new file mode 100644
index 000000000..20dd6434e
--- /dev/null
+++ b/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/basic-operators.md
@@ -0,0 +1,236 @@
+---
+id: basic-operators.md
+summary: >-
+ Milvus offre una ricca serie di operatori di base che aiutano a filtrare e
+ interrogare i dati in modo efficiente. Questi operatori consentono di affinare
+ le condizioni di ricerca in base a campi scalari, calcoli numerici, condizioni
+ logiche e altro ancora. Capire come usare questi operatori è fondamentale per
+ creare query precise e massimizzare l'efficienza delle ricerche.
+title: Operatori di base
+---
+
Operatori di base
+
+
+
+
Milvus offre una ricca serie di operatori di base che aiutano a filtrare e interrogare i dati in modo efficiente. Questi operatori consentono di affinare le condizioni di ricerca in base a campi scalari, calcoli numerici, condizioni logiche e altro ancora. Capire come usare questi operatori è fondamentale per creare query precise e massimizzare l'efficienza delle ricerche.
+
Operatori di confronto
+
+
+
+
Gli operatori di confronto sono utilizzati per filtrare i dati in base all'uguaglianza, alla disuguaglianza o alla dimensione. Sono applicabili a campi numerici, di testo e di date.
+
Operatori di confronto supportati.
+
== (uguale a)
+
!= (Non uguale a)
+
> (Maggiore di)
+
< (minore di)
+
>= (Maggiore o uguale a)
+
<= (Minore o uguale a)
+
+
Esempio 1: Filtraggio con Equal To (==)
Si supponga di avere un campo chiamato status e di voler trovare tutte le entità in cui status è "attivo". Si può usare l'operatore di uguaglianza ==.
+
filter = 'status == "active"'
+
+
+
Esempio 2: Filtro con Not Equal To (!=)
Per trovare le entità in cui status non è "inattivo".
+
filter = 'status != "inactive"'
+
+
+
Esempio 3: Filtro con Maggiore di (>)
Se si vogliono trovare tutte le entità con un age superiore a 30.
+
filter = 'age > 30'
+
+
+
Esempio 4: Filtraggio con Meno di (<)
Per trovare le entità in cui price è inferiore a 100.
+
filter = 'price < 100'
+
+
+
Esempio 5: Filtro con Maggiore o uguale a (>=)
Se si desidera trovare tutte le entità con rating maggiore o uguale a 4.
+
filter = 'rating >= 4'
+
+
+
Esempio 6: Filtro con meno o uguale a (<=)
Per trovare le entità con discount minore o uguale a 10%.
+
filter = 'discount <= 10'
+
+
+
Operatori di intervallo
+
+
+
+
Gli operatori di intervallo aiutano a filtrare i dati in base a specifici insiemi o intervalli di valori.
+
Operatori di intervallo supportati.
+
IN: Utilizzati per trovare valori all'interno di un insieme o di un intervallo specifico.
+
LIKE: Utilizzati per corrispondere a uno schema (soprattutto per i campi di testo).
+
+
Esempio 1: Uso di IN per abbinare più valori
Se si vogliono trovare tutte le entità in cui color è "rosso", "verde" o "blu".
+
filter = 'color in ["red", "green", "blue"]'
+
+
+
Questo è utile quando si vuole verificare l'appartenenza a un elenco di valori.
+
Esempio 2: Uso di LIKE per la corrispondenza dei modelli
L'operatore LIKE è utilizzato per la corrispondenza di modelli nei campi stringa. Può corrispondere a sottostringhe in diverse posizioni all'interno del testo: come prefisso, infisso o suffisso. L'operatore LIKE utilizza il simbolo % come carattere jolly, che può corrispondere a qualsiasi numero di caratteri (incluso zero).
+
Corrispondenza di prefisso (inizia con)
Per eseguire una corrispondenza di prefisso, in cui la stringa inizia con un determinato schema, è possibile posizionare lo schema all'inizio e utilizzare % per abbinare tutti i caratteri che lo seguono. Ad esempio, per trovare tutti i prodotti il cui name inizia con "Prod".
+
filter = 'name LIKE "Prod%"'
+
+
+
Questo corrisponderà a tutti i prodotti il cui nome inizia con "Prod", come "Product A", "Product B", ecc.
+
Corrispondenza per suffisso (finisce con)
Per una corrispondenza di suffisso, in cui la stringa termina con un determinato modello, inserire il simbolo % all'inizio del modello. Ad esempio, per trovare tutti i prodotti il cui name termina con "XYZ".
+
filter = 'name LIKE "%XYZ"'
+
+
+
Questo corrisponderà a tutti i prodotti il cui nome termina con "XYZ", come "ProductXYZ", "SampleXYZ", ecc.
+
Corrispondenza infissa (contiene)
Per eseguire una corrispondenza infissa, in cui il modello può apparire in qualsiasi punto della stringa, è possibile inserire il simbolo % sia all'inizio che alla fine del modello. Ad esempio, per trovare tutti i prodotti il cui name contiene la parola "Pro".
+
filter = 'name LIKE "%Pro%"'
+
+
+
Questo corrisponde a tutti i prodotti il cui nome contiene la sottostringa "Pro", come "Product", "ProLine" o "SuperPro".
+
Operatori aritmetici
+
+
+
+
Gli operatori aritmetici consentono di creare condizioni basate su calcoli che coinvolgono campi numerici.
+
Operatori aritmetici supportati.
+
+ (Addizione)
+
- (Sottrazione)
+
* (Moltiplicazione)
+
/ (Divisione)
+
% (Modulo)
+
** (Esponenziazione)
+
+
Esempio 1: Uso dell'addizione (+)
Per trovare entità in cui il prezzo total è la somma di base_price e tax.
+
filter = 'total == base_price + tax'
+
+
+
Esempio 2: Uso della sottrazione (-)
Per trovare le entità in cui quantity è superiore a 50 e quantity_sold è inferiore a 30.
+
filter = 'quantity - quantity_sold > 50'
+
+
+
Esempio 3: Utilizzo della moltiplicazione (*)
Per trovare le entità in cui price è maggiore di 100 e quantity è maggiore di 10, moltiplicato.
+
filter = 'price * quantity > 1000'
+
+
+
Esempio 4: Utilizzo della divisione (/)
Per trovare prodotti in cui total_price diviso per quantity è inferiore a 50.
+
filter = 'total_price / quantity < 50'
+
+
+
Esempio 5: Utilizzo del modulo (%)
Per trovare entità in cui id è un numero pari (cioè divisibile per 2).
+
filter = 'id % 2 == 0'
+
+
+
Esempio 6: Uso dell'esponenziazione (**)
Per trovare le entità in cui price elevato a potenza di 2 è maggiore di 1000.
+
filter = 'price ** 2 > 1000'
+
+
+
Operatori logici
+
+
+
+
Gli operatori logici vengono utilizzati per combinare più condizioni in un'espressione di filtro più complessa. Questi includono AND, OR e NOT.
+
Operatori logici supportati.
+
AND: Combina più condizioni che devono essere tutte vere.
+
OR: Combina condizioni in cui almeno una deve essere vera.
+
NOT: Annulla una condizione.
+
+
Esempio 1: Uso di AND per combinare le condizioni
Per trovare tutti i prodotti in cui price è superiore a 100 e stock è superiore a 50.
+
filter = 'price > 100 AND stock > 50'
+
+
+
Esempio 2: Uso di OR per combinare le condizioni
Per trovare tutti i prodotti in cui color è "rosso" o "blu".
+
filter = 'color == "red" OR color == "blue"'
+
+
+
Esempio 3: Usare NOT per escludere una condizione
Per trovare tutti i prodotti in cui color non è "verde".
+
filter = 'NOT color == "green"'
+
+
+
Suggerimenti per l'uso degli operatori di base con i campi JSON e ARRAY
+
+
+
+
Gli operatori di base di Milvus sono versatili e possono essere applicati ai campi scalari, ma possono essere utilizzati efficacemente anche con le chiavi e gli indici dei campi JSON e ARRAY.
+
Ad esempio, se si dispone di un campo product che contiene più chiavi come price, model e tags, fare sempre riferimento direttamente alla chiave.
+
filter = 'product["price"] > 1000'
+
+
+
Per trovare i record in cui la prima temperatura in un array di temperature registrate supera un determinato valore, utilizzare.
+
filter = 'history_temperatures[0] > 30'
+
+
+
Conclusione
+
+
+
+
Milvus offre una serie di operatori di base che consentono di filtrare e interrogare i dati in modo flessibile. Combinando operatori di confronto, di intervallo, aritmetici e logici, è possibile creare potenti espressioni di filtro per restringere i risultati della ricerca e recuperare i dati necessari in modo efficiente.
diff --git a/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/boolean.json b/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/boolean.json
new file mode 100644
index 000000000..b1698ba3c
--- /dev/null
+++ b/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/boolean.json
@@ -0,0 +1 @@
+{"codeList":["filter='color in [\"red\", \"green\", \"blue\"]'\n\n","filter='product[\"model\"] == \"JSN-087\" AND product[\"price\"] < 1850'\n\n","filter='history_temperatures[10] > 23'\n\n","filter = \"age > 25 AND city IN ['北京', '上海']\"\n\n","filter = \"age > {age} AND city in {city}\",\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter='json_contains(tags, \"sale\")'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\", \"discount\"]}\nfilter='json_contains_all(tags, [\"electronics\", \"sale\", \"new\"])'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter='json_contains_any(tags, [\"electronics\", \"new\", \"clearance\"])'\n\n","filter=\"ARRAY_CONTAINS(history_temperatures, 23)\"\n\n","filter=\"ARRAY_CONTAINS_ALL(history_temperatures, [23, 24])\"\n\n","filter=\"ARRAY_CONTAINS_ANY(history_temperatures, [23, 24])\"\n\n","filter=\"ARRAY_LENGTH(history_temperatures) < 10\"\n\n"],"headingContent":"Filtering Explained","anchorList":[{"label":"Il filtraggio spiegato","href":"Filtering-Explained","type":1,"isActive":false},{"label":"Operatori di base","href":"Basic-operators","type":2,"isActive":false},{"label":"Modelli di espressione di filtro","href":"Filter-expression-templates","type":2,"isActive":false},{"label":"Operatori specifici per i tipi di dati","href":"Data-type-specific-operators","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/boolean.md b/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/boolean.md
new file mode 100644
index 000000000..d11728bab
--- /dev/null
+++ b/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/boolean.md
@@ -0,0 +1,147 @@
+---
+id: boolean.md
+summary: >-
+ Milvus offre potenti funzionalità di filtraggio che consentono di interrogare
+ con precisione i dati. Le espressioni di filtro consentono di indirizzare
+ campi scalari specifici e di affinare i risultati della ricerca con diverse
+ condizioni. Questa guida spiega come utilizzare le espressioni di filtro in
+ Milvus, con esempi incentrati sulle operazioni di interrogazione. È possibile
+ applicare questi filtri anche nelle richieste di ricerca e cancellazione.
+title: Il filtraggio spiegato
+---
+
Il filtraggio spiegato
+
+
+
+
Milvus offre potenti funzionalità di filtraggio che consentono di interrogare con precisione i dati. Le espressioni di filtro consentono di indirizzare campi scalari specifici e di affinare i risultati della ricerca con diverse condizioni. Questa guida spiega come utilizzare le espressioni di filtro in Milvus, con esempi incentrati sulle operazioni di interrogazione. È possibile applicare questi filtri anche nelle richieste di ricerca e cancellazione.
+
Operatori di base
+
+
+
+
Milvus supporta diversi operatori di base per filtrare i dati.
+
+
Operatori di confronto: ==, !=, >, <, >=, e <= permettono di filtrare in base a campi numerici, di testo o di data.
+
Filtri di intervallo: IN e LIKE consentono di trovare intervalli o insiemi di valori specifici.
+
Operatori aritmetici: +, -, *, /, % e ** sono utilizzati per i calcoli relativi ai campi numerici.
+
Operatori logici: AND, OR, e NOT combinano più condizioni in espressioni complesse.
+
+
Esempio: Filtro per colore
Per trovare entità con colori primari (rosso, verde o blu) in un campo scalare color, utilizzare la seguente espressione di filtro.
+
filter='color in ["red", "green", "blue"]'
+
+
+
Esempio: Filtrare i campi JSON
Milvus consente di fare riferimento a chiavi in campi JSON. Ad esempio, se si dispone di un campo JSON product con le chiavi price e model, e si desidera trovare prodotti con un modello specifico e un prezzo inferiore a 1.850, utilizzare questa espressione di filtro.
+
filter='product["model"] == "JSN-087" AND product["price"] < 1850'
+
+
+
Esempio: Filtrare i campi array
Se si dispone di un campo array history_temperatures contenente record di temperatura e si desidera trovare gli osservatori in cui la decima temperatura registrata supera i 23°C, utilizzare questa espressione.
+
filter='history_temperatures[10] > 23'
+
+
+
Per ulteriori informazioni su questi operatori di base, consultare Operatori di base.
+
Modelli di espressione di filtro
+
+
+
+
Quando si filtra utilizzando i caratteri CJK, l'elaborazione può risultare più complessa a causa dei set di caratteri più grandi e delle differenze di codifica. Ciò può comportare un rallentamento delle prestazioni, soprattutto con l'operatore IN.
+
Milvus introduce la templatura delle espressioni di filtro per ottimizzare le prestazioni quando si lavora con i caratteri CJK. Separando i valori dinamici dall'espressione del filtro, il motore di query gestisce in modo più efficiente l'inserimento dei parametri.
+
Esempio
Per trovare persone di età superiore ai 25 anni che vivono a "北京" (Pechino) o "上海" (Shanghai), utilizzare la seguente espressione modello.
+
filter = "age > 25 AND city IN ['北京', '上海']"
+
+
+
Per migliorare le prestazioni, utilizzare questa variante con i parametri.
+
filter = "age > {age} AND city in {city}",
+filter_params = {"age": 25, "city": ["北京", "上海"]}
+
+
+
Questo approccio riduce l'overhead del parsing e migliora la velocità della query. Per ulteriori informazioni, vedere Templatura dei filtri.
+
Operatori specifici per i tipi di dati
+
+
+
+
Milvus offre operatori di filtraggio avanzati per tipi di dati specifici, come i campi JSON, ARRAY e VARCHAR.
+
Operatori specifici per i campi JSON
Milvus offre operatori avanzati per l'interrogazione dei campi JSON, consentendo un filtraggio preciso all'interno di strutture JSON complesse.
+
**JSON_CONTAINS(identifier, jsonExpr)**: Controlla se un'espressione JSON esiste nel campo.
Per maggiori dettagli sugli operatori JSON, consultare Operatori JSON.
+
Operatori specifici del campo ARRAY
Milvus offre operatori di filtraggio avanzati per i campi array, come ARRAY_CONTAINS, ARRAY_CONTAINS_ALL, ARRAY_CONTAINS_ANY e ARRAY_LENGTH, che consentono un controllo a grana fine sui dati degli array.
+
**ARRAY_CONTAINS**: Filtra le entità contenenti un elemento specifico.
Per maggiori dettagli sugli operatori di array, vedere Operatori ARRAY.
+
Operatori specifici per il campo VARCHAR
L'operatore **Text_Match** consente di recuperare documenti precisi in base a termini specifici della query. È particolarmente utile per le ricerche filtrate che combinano filtri scalari con ricerche di somiglianza vettoriale. A differenza delle ricerche semantiche, Text Match si concentra sulle occorrenze esatte dei termini.
+
Milvus utilizza Tantivy per supportare l'indicizzazione inversa e la ricerca testuale basata sui termini. Il processo prevede.
+
+
Analizzatore: Tokenizza ed elabora il testo in ingresso.
+
Indicizzazione: Crea un indice invertito che mappa i token unici nei documenti.
diff --git a/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/filtering-templating.json b/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/filtering-templating.json
new file mode 100644
index 000000000..0bf0e2240
--- /dev/null
+++ b/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/filtering-templating.json
@@ -0,0 +1 @@
+{"codeList":["filter = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\n\n","expr = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\nres = client.search(\n \"hello_milvus\",\n vectors[:nq],\n filter=expr,\n limit=10,\n output_fields=[\"age\", \"city\"],\n search_params={\"metric_type\": \"COSINE\", \"params\": {\"search_list\": 100}},\n filter_params=filter_params,\n)\n\n","expr = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\nres = client.query(\n \"hello_milvus\",\n filter=expr,\n output_fields=[\"age\", \"city\"],\n filter_params=filter_params\n)\n\n","expr = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\nres = client.delete(\n \"hello_milvus\",\n filter=expr,\n filter_params=filter_params\n)\n\n"],"headingContent":"Filter Templating","anchorList":[{"label":"Templatura dei filtri","href":"Filter-Templating","type":1,"isActive":false},{"label":"Panoramica","href":"Overview","type":2,"isActive":false},{"label":"Operazioni di ricerca","href":"Search-Operations","type":2,"isActive":false},{"label":"Operazioni di query","href":"Query-Operations","type":2,"isActive":false},{"label":"Operazioni di cancellazione","href":"Delete-Operations","type":2,"isActive":false},{"label":"Conclusione","href":"Conclusion","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/filtering-templating.md b/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/filtering-templating.md
new file mode 100644
index 000000000..8099ff5c1
--- /dev/null
+++ b/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/filtering-templating.md
@@ -0,0 +1,156 @@
+---
+id: filtering-templating.md
+summary: >-
+ In Milvus, le espressioni di filtro complesse con numerosi elementi, in
+ particolare quelle che coinvolgono caratteri non ASCII come i caratteri CJK,
+ possono influire significativamente sulle prestazioni delle query. Per
+ risolvere questo problema, Milvus introduce un meccanismo di template delle
+ espressioni di filtro progettato per migliorare l'efficienza riducendo il
+ tempo di analisi delle espressioni complesse. Questa pagina spiega come
+ utilizzare il template delle espressioni di filtro nelle operazioni di
+ ricerca, interrogazione e cancellazione.
+title: Filtraggio Templating
+---
+
Templatura dei filtri
+
+
+
+
In Milvus, le espressioni di filtro complesse con numerosi elementi, in particolare quelle che coinvolgono caratteri non ASCII come i caratteri CJK, possono influire significativamente sulle prestazioni delle query. Per ovviare a questo problema, Milvus introduce un meccanismo di template delle espressioni di filtro progettato per migliorare l'efficienza riducendo il tempo di analisi delle espressioni complesse. Questa pagina spiega come utilizzare il templating delle espressioni di filtro nelle operazioni di ricerca, interrogazione e cancellazione.
+
Panoramica
+
+
+
+
Il templating delle espressioni di filtro consente di creare espressioni di filtro con segnaposto, che possono essere sostituiti dinamicamente con valori durante l'esecuzione della query. La templatura evita di incorporare grandi array o espressioni complesse direttamente nel filtro, riducendo i tempi di analisi e migliorando le prestazioni della query.
+
Supponiamo di avere un'espressione di filtro che coinvolge due campi, age e city, e di voler trovare tutte le persone la cui età è superiore a 25 anni e che vivono in "北京" (Pechino) o "上海" (Shanghai). Invece di inserire direttamente i valori nell'espressione del filtro, è possibile utilizzare un modello.
+
filter = "age > {age} AND city IN {city}"
+filter_params = {"age": 25, "city": ["北京", "上海"]}
+
+
+
In questo caso, {age} e {city} sono segnaposto che verranno sostituiti con i valori effettivi in filter_params quando la query verrà eseguita.
+
L'uso del template delle espressioni di filtro in Milvus offre diversi vantaggi.
+
+
Riduzione del tempo di analisi: sostituendo le espressioni di filtro complesse o di grandi dimensioni con dei segnaposto, il sistema spende meno tempo per l'analisi e l'elaborazione del filtro.
+
Migliori prestazioni delle query: Grazie alla riduzione dell'overhead di parsing, le prestazioni delle query migliorano, portando a QPS più elevati e a tempi di risposta più rapidi.
+
Scalabilità: Man mano che i dataset crescono e le espressioni dei filtri diventano più complesse, il templating garantisce prestazioni efficienti e scalabili.
+
+
Operazioni di ricerca
+
+
+
+
Per le operazioni di ricerca in Milvus, l'espressione filter è usata per definire la condizione di filtraggio e il parametro filter_params è usato per specificare i valori dei segnaposto. Il dizionario filter_params contiene i valori dinamici che Milvus utilizzerà per sostituire l'espressione del filtro.
In questo esempio, Milvus sostituirà dinamicamente {age} con 25 e {city} con ["北京", "上海"] durante l'esecuzione della ricerca.
+
Operazioni di query
+
+
+
+
Lo stesso meccanismo di template può essere applicato alle operazioni di interrogazione in Milvus. Nella funzione query si definisce l'espressione del filtro e si usa filter_params per specificare i valori da sostituire.
Utilizzando filter_params, Milvus gestisce in modo efficiente l'inserimento dinamico dei valori, migliorando la velocità di esecuzione delle query.
+
Operazioni di cancellazione
+
+
+
+
È possibile utilizzare la templatura delle espressioni di filtro anche nelle operazioni di cancellazione. Come per le ricerche e le query, l'espressione filter definisce le condizioni e filter_params fornisce i valori dinamici per i segnaposto.
+
expr = "age > {age} AND city IN {city}"
+filter_params = {"age": 25, "city": ["北京", "上海"]}
+res = client.delete(
+ "hello_milvus",
+ filter=expr,
+ filter_params=filter_params
+)
+
+
+
Questo approccio migliora le prestazioni delle operazioni di cancellazione, soprattutto quando si tratta di condizioni di filtro complesse.
+
Conclusione
+
+
+
+
La templatura delle espressioni di filtro è uno strumento essenziale per ottimizzare le prestazioni delle query in Milvus. Utilizzando i segnaposto e il dizionario filter_params, è possibile ridurre significativamente il tempo di analisi di espressioni di filtro complesse. Questo porta a un'esecuzione più rapida delle query e a migliori prestazioni complessive.
diff --git a/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/json-operators.json b/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/json-operators.json
new file mode 100644
index 000000000..cd454990b
--- /dev/null
+++ b/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/json-operators.json
@@ -0,0 +1 @@
+{"codeList":["# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter = 'json_contains(tags, \"sale\")'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\", \"discount\"]}\nfilter = 'json_contains_all(tags, [\"electronics\", \"sale\", \"new\"])'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter = 'json_contains_any(tags, [\"electronics\", \"new\", \"clearance\"])'\n\n"],"headingContent":"JSON Operators","anchorList":[{"label":"Operatori JSON","href":"JSON-Operators","type":1,"isActive":false},{"label":"Operatori JSON disponibili","href":"Available-JSON-Operators","type":2,"isActive":false},{"label":"JSON_CONTAINS","href":"JSONCONTAINS","type":2,"isActive":false},{"label":"JSON_CONTAINS_ALL","href":"JSONCONTAINSALL","type":2,"isActive":false},{"label":"JSON_COTAINS_ANY","href":"JSONCOTAINSANY","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/json-operators.md b/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/json-operators.md
new file mode 100644
index 000000000..c24e342a6
--- /dev/null
+++ b/localization/v2.5.x/site/it/userGuide/search-query-get/boolean/json-operators.md
@@ -0,0 +1,122 @@
+---
+id: json-operators.md
+summary: >-
+ Milvus supporta operatori avanzati per interrogare e filtrare i campi JSON,
+ rendendoli perfetti per la gestione di dati complessi e strutturati. Questi
+ operatori consentono di interrogare in modo estremamente efficace i documenti
+ JSON, permettendo di recuperare entità in base a elementi, valori o condizioni
+ specifiche all'interno dei campi JSON. Questa sezione vi guiderà nell'uso
+ degli operatori specifici per JSON in Milvus, fornendo esempi pratici per
+ illustrarne le funzionalità.
+title: Operatori JSON
+---
+
Operatori JSON
+
+
+
+
Milvus supporta operatori avanzati per interrogare e filtrare i campi JSON, rendendoli perfetti per la gestione di dati complessi e strutturati. Questi operatori consentono di interrogare in modo estremamente efficace i documenti JSON, permettendo di recuperare entità in base a elementi, valori o condizioni specifiche all'interno dei campi JSON. Questa sezione vi guiderà nell'uso degli operatori specifici per JSON in Milvus, fornendo esempi pratici per illustrarne la funzionalità.
+
+
I campi JSON non possono gestire strutture complesse e annidate e trattano tutte le strutture annidate come semplici stringhe. Pertanto, quando si lavora con i campi JSON, è consigliabile evitare annidamenti troppo profondi e assicurarsi che le strutture di dati siano il più possibile piatte per ottenere prestazioni ottimali.
+
+
Operatori JSON disponibili
+
+
+
+
Milvus fornisce diversi potenti operatori JSON che aiutano a filtrare e interrogare i dati JSON.
Esploriamo questi operatori con degli esempi per vedere come possono essere applicati in scenari reali.
+
JSON_CONTAINS
+
+
+
+
L'operatore json_contains verifica l'esistenza di un elemento o di una sotto-riga specifica all'interno di un campo JSON. È utile quando si vuole garantire che un array o un oggetto JSON contenga un particolare valore.
+
Esempio
+
Si immagini di avere un insieme di prodotti, ciascuno con un campo tags che contiene un array JSON di stringhe, come ["electronics", "sale", "new"]. Si desidera filtrare i prodotti che hanno il tag "sale".
In questo esempio, Milvus restituirà tutti i prodotti in cui il campo tags contiene l'elemento "sale".
+
JSON_CONTAINS_ALL
+
+
+
+
L'operatore json_contains_all assicura che tutti gli elementi di un'espressione JSON specificata siano presenti nel campo di destinazione. È particolarmente utile quando è necessario abbinare più valori all'interno di un array JSON.
+
Esempio
+
Continuando con lo scenario dei tag dei prodotti, se si vogliono trovare tutti i prodotti che hanno i tag "electronics", "sale", e "new", si può usare l'operatore json_contains_all.
Questa query restituirà tutti i prodotti in cui l'array tags contiene i tre elementi specificati: "electronics", "sale" e "new".
+
JSON_COTAINS_ANY
+
+
+
+
L'operatore json_contains_any filtra le entità in cui almeno un membro dell'espressione JSON esiste all'interno del campo. È utile quando si desidera abbinare le entità in base a uno qualsiasi dei valori possibili.
+
Esempio
+
Supponiamo di voler filtrare i prodotti che hanno almeno uno dei tag "electronics", "sale", o "new". Per ottenere questo risultato, è possibile utilizzare l'operatore json_contains_any.
In questo caso, Milvus restituirà tutti i prodotti che hanno almeno uno dei tag dell'elenco ["electronics", "new", "clearance"]. Anche se un prodotto ha solo uno di questi tag, sarà incluso nel risultato.
diff --git a/localization/v2.5.x/site/it/userGuide/tools/milvus-webui.json b/localization/v2.5.x/site/it/userGuide/tools/milvus-webui.json
new file mode 100644
index 000000000..163507faf
--- /dev/null
+++ b/localization/v2.5.x/site/it/userGuide/tools/milvus-webui.json
@@ -0,0 +1 @@
+{"codeList":[],"headingContent":"Milvus WebUI","anchorList":[{"label":"Milvus WebUI","href":"Milvus-WebUI","type":1,"isActive":false},{"label":"Panoramica","href":"Overview","type":2,"isActive":false},{"label":"Home","href":"Home","type":2,"isActive":false},{"label":"Collezioni","href":"Collections","type":2,"isActive":false},{"label":"Interrogazione","href":"Query","type":2,"isActive":false},{"label":"Dati","href":"Data","type":2,"isActive":false},{"label":"Attività","href":"Tasks","type":2,"isActive":false},{"label":"Richieste lente","href":"Slow-requests","type":2,"isActive":false},{"label":"Configurazioni","href":"Configurations","type":2,"isActive":false},{"label":"Strumenti","href":"Tools","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/it/userGuide/tools/milvus-webui.md b/localization/v2.5.x/site/it/userGuide/tools/milvus-webui.md
new file mode 100644
index 000000000..9f8d1b87e
--- /dev/null
+++ b/localization/v2.5.x/site/it/userGuide/tools/milvus-webui.md
@@ -0,0 +1,280 @@
+---
+id: milvus-webui.md
+summary: >-
+ Milvus Web UI è uno strumento di gestione grafica per Milvus. Migliora
+ l'osservabilità del sistema con un'interfaccia semplice e intuitiva. È
+ possibile
+title: Milvus WebUI
+---
+
Milvus WebUI
+
+
+
+
Milvus Web UI è uno strumento di gestione grafica per Milvus. Migliora l'osservabilità del sistema con un'interfaccia semplice e intuitiva. Con Milvus Web UI è possibile osservare le statistiche e le metriche dei componenti e delle dipendenze di Milvus, controllare i dettagli del database e della raccolta ed elencare le configurazioni dettagliate di Milvus.
+
Panoramica
+
+
+
+
Milvus Web UI si differenzia da Birdwatcher e Attu per essere uno strumento integrato che offre un'osservazione globale del sistema con un'interfaccia semplice e intuitiva.
+
La tabella seguente confronta le caratteristiche di Milvus Web UI e Birdwatcher/Attu:
+
+
+
Caratteristiche
Milvus Web UI
Birdwatcher
Attu
+
+
+
Forma operativa
GUI
CLI
GUI
+
Utenti target
Manutentori, sviluppatori
Manutentori
Sviluppatori
+
Installazione
Integrato
Strumento autonomo
Strumento autonomo
+
Dipendenze
Milvus
Milvus / etcd
Milvus
+
Funzionalità principali
Ambiente di runtime, dettagli di database/collezione, segmenti, canali, attività e richieste di query lente
Ispezione dei metadati ed esecuzione dell'API Milvus
Gestione del database e attività operative
+
+
+
L'interfaccia web di Milvus offre le seguenti funzionalità:
Si possono visualizzare le statistiche raccolte dei nodi di query e dei coordinatori di query in termini di segmenti, canali, repliche e gruppi di risorse.
È possibile visualizzare l'elenco delle attività in esecuzione in Milvus, comprese le attività dello scheduler Querycoord, le attività di compattazione, le attività di creazione di indici, le attività di importazione e le attività di sincronizzazione dei dati.
È possibile visualizzare l'elenco delle richieste lente in Milvus, compresi il tipo di richiesta, la durata della richiesta e i parametri della richiesta.
È possibile accedere ai due strumenti integrati, pprof e Milvus data visualzation tool, dall'interfaccia web.
+
+
Home
+
+
+
+
Nella pagina Home si trovano le seguenti informazioni:
+
+
+
+ Milvus Web UI Home
+
+
Informazioni sul sistema: Visualizza le informazioni sul sistema, comprese quelle relative alla modalità di distribuzione, all'immagine utilizzata nella distribuzione e alle informazioni correlate.
+
Informazioni sui componenti: Visualizza lo stato e le metriche dei componenti di Milvus, compresi lo stato e le metriche dei nodi di interrogazione, dei nodi di dati, dei nodi indice, dei coordinatori e dei proxy.
+
Client collegati: Visualizza i client connessi e le loro informazioni, tra cui il tipo e la versione dell'SDK, il nome utente e la cronologia degli accessi.
+
Dipendenze del sistema: Visualizza lo stato e le metriche delle dipendenze di Milvus, compreso lo stato e le metriche del meta store, della coda di messaggi e dello storage degli oggetti.
+
+
Collezioni
+
+
+
+
Nella pagina Collezioni è possibile visualizzare l'elenco dei database e delle collezioni attualmente presenti in Milvus e controllarne i dettagli.
+
+
+
+ Collezioni dell'interfaccia web di Milvus
+
+
Database: Visualizza l'elenco dei database attualmente presenti in Milvus e i loro dettagli.
+
Raccolta: Visualizza l'elenco delle collezioni di ciascun database e i relativi dettagli.
+
+
Interrogazione
+
+
+
+
+
+
+ Pagina di interrogazione dell'interfaccia web di Milvus
+
+
Segmenti: Visualizza l'elenco dei segmenti e i relativi dettagli, tra cui l'ID del segmento, la raccolta corrispondente, lo stato, la dimensione, ecc.
+
Nella colonna Da, è possibile trovare la fonte del segmento. I possibili indicatori di origine sono i seguenti:
+
+
QN: Nodo di query
+
CT: Destinazione corrente in QueryCoord
+
NT: Destinazione successiva nella QueryCoord
+
DIST: Distribuzione in QueryCoord
+
+
Canali: Visualizza l'elenco dei canali e i loro dettagli, tra cui il nome del canale, le raccolte corrispondenti, ecc.
+
Nella colonna Da, è possibile trovare la fonte del segmento. I possibili indicatori di origine sono i seguenti:
+
+
QN: Nodo di query
+
CT: Destinazione corrente in QueryCoord
+
NT: Destinazione successiva in QueryCoord
+
DIST: Distribuzione nella QueryCoord
+
+
Repliche: Visualizza l'elenco delle repliche e i loro dettagli, tra cui l'ID della replica, la raccolta corrispondente, ecc.
+
Gruppi di risorse: Visualizza l'elenco dei gruppi di risorse e i loro dettagli, tra cui il nome del gruppo di risorse, il numero di nodi di query nel gruppo e le sue configurazioni, ecc.
+
+
Dati
+
+
+
+
+
+
+ Pagina dati dell'interfaccia web Milvus
+
+
Segmenti: Visualizza l'elenco dei segmenti dei nodi/coordinatori di dati e i loro dettagli, tra cui l'ID del segmento, la raccolta corrispondente, lo stato, la dimensione, ecc.
+
Canali: Visualizza l'elenco dei canali dei nodi/coordinatori di dati e i loro dettagli, compreso il nome del canale, le raccolte corrispondenti, ecc.
+
+
Attività
+
+
+
+
+
+
+ Pagina Attività dell'interfaccia web Milvus
+
+
Attività: Visualizza l'elenco delle attività in esecuzione in Milvus, compreso il tipo di attività, lo stato e le azioni.
+
+
Attività QueryCoord: Visualizza tutte le attività dello scheduler QueryCoord, compresi i bilanciatori, i controllori di indici/segmenti/canali/leader negli ultimi 15 minuti.
+
Attività di compattazione: Visualizza tutte le attività di compattazione dei coordinatori dei dati negli ultimi 15 minuti.
+
Attività di costruzione dell'indice: Visualizza tutte le attività di creazione di indici dei coordinatori dei dati negli ultimi 30 minuti.
+
Attività di importazione: Visualizza tutte le attività di importazione dei coordinatori dei dati negli ultimi 30 minuti.
+
Attività di sincronizzazione dei dati: Visualizza tutte le attività di sincronizzazione dei dati dei nodi dati negli ultimi 15 minuti.
+
+
+
Richieste lente
+
+
+
+
+
+
+ Pagina Richieste lente dell'interfaccia web Milvus
+
+
Richieste lente: Una richiesta lenta è una ricerca o una query che ha una latenza superiore al valore di proxy.slowQuerySpanInSeconds specificato nella configurazione. L'elenco delle richieste lente visualizza tutte le richieste lente degli ultimi 15 minuti.
+
+
Configurazioni
+
+
+
+
+
+
+ Pagina Configurazioni dell'interfaccia web di Milvus
+
+
Configurazioni: Visualizza l'elenco delle configurazioni del runtime Milvus e i loro valori.
+
+
Strumenti
+
+
+
+
+
pprof: accesso allo strumento pprof per il profiling e il debug di Milvus.
+
Strumento di visualizzazione dei dati Milvus: Accede allo strumento di visualizzazione dei dati di Milvus per visualizzare i dati in Milvus.
+
diff --git a/localization/v2.5.x/site/ja/adminGuide/config_jaeger_tracing.md b/localization/v2.5.x/site/ja/adminGuide/config_jaeger_tracing.md
index 3f8acdeb9..6797cbbae 100644
--- a/localization/v2.5.x/site/ja/adminGuide/config_jaeger_tracing.md
+++ b/localization/v2.5.x/site/ja/adminGuide/config_jaeger_tracing.md
@@ -65,7 +65,7 @@ $ kubectl create -f https://github.com/jaegertracing/jaeger-operator/releases/do
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
jaeger-operator111148s
diff --git a/localization/v2.5.x/site/ja/adminGuide/rbac.json b/localization/v2.5.x/site/ja/adminGuide/rbac.json
index 60e466309..02b29bdcc 100644
--- a/localization/v2.5.x/site/ja/adminGuide/rbac.json
+++ b/localization/v2.5.x/site/ja/adminGuide/rbac.json
@@ -1 +1 @@
-{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri='http://localhost:19530', # replace with your own Milvus server address\n token='root:Milvus' # replace with your own Milvus server token\n)\n","client.create_user(\n user_name='user_1',\n password='P@ssw0rd'\n)\n","client.update_password(\n user_name='user_1',\n old_password='P@ssw0rd',\n new_password='P@ssw0rd123'\n)\n","client.list_users()\n\n# output:\n# ['root', 'user_1']\n","client.describe_user(user_name='user_1')\n\n# output:\n# {'user_name': 'user_1', 'roles': ()}\n","client.create_role(\n role_name=\"roleA\",\n)\n","client.list_roles()\n\n# output:\n# ['admin', 'public', 'roleA']\n","# grant privilege to a role\n\nclient.grant_privilege(\n role_name='roleA',\n object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName\n object_name='user_1', # value here can be * or a specific user name if object type is 'User'\n privilege='SelectUser'\n)\n","client.describe_role(\n role_name='roleA'\n)\n\n# output:\n# {'role': 'roleA',\n# 'privileges': [{'object_type': 'User',\n# 'object_name': 'user_1',\n# 'db_name': 'default',\n# 'role_name': 'roleA',\n# 'privilege': 'SelectUser',\n# 'grantor_name': 'root'}]}\n","# grant a role to a user\n\nclient.grant_role(\n user_name='user_1',\n role_name='roleA'\n)\n","client.describe_user(\n user_name='user_1'\n)\n\n# output:\n# {'user_name': 'user_1', 'roles': ('roleA')}\n","client.revoke_privilege(\n role_name='roleA',\n object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName\n object_name='user_1', # value here can be * or a specific user name if object type is 'User'\n privilege='SelectUser'\n)\n","client.revoke_role(\n user_name='user_1',\n role_name='roleA'\n)\n","client.drop_role(role_name='roleA')\n","client.drop_user(user_name='user_1')\n"],"headingContent":"Enable RBAC","anchorList":[{"label":"RBACの有効化","href":"Enable-RBAC","type":1,"isActive":false},{"label":"1.Milvusクライアントを起動して接続を確立する","href":"1-Initiate-a-Milvus-client-to-establish-a-connection","type":2,"isActive":false},{"label":"2.ユーザの作成","href":"2-Create-a-user","type":2,"isActive":false},{"label":"3.ロールの作成","href":"3-Create-a-role","type":2,"isActive":false},{"label":"4.ロールへの権限の付与","href":"4-Grant-a-privilege-to-a-role","type":2,"isActive":false},{"label":"5.ユーザにロールを付与する","href":"5-Grant-a-role-to-a-user","type":2,"isActive":false},{"label":"6.権限の取り消し","href":"6-Revoke-privileges","type":2,"isActive":false},{"label":"次へ","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":[],"headingContent":"RBAC Explained","anchorList":[{"label":"RBACの説明","href":"RBAC-Explained","type":1,"isActive":false},{"label":"RBACの主な概念","href":"RBAC-key-concepts","type":2,"isActive":false},{"label":"手続き","href":"Procedures","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/ja/adminGuide/rbac.md b/localization/v2.5.x/site/ja/adminGuide/rbac.md
index f928638aa..33808f63f 100644
--- a/localization/v2.5.x/site/ja/adminGuide/rbac.md
+++ b/localization/v2.5.x/site/ja/adminGuide/rbac.md
@@ -1,10 +1,12 @@
---
id: rbac.md
related_key: enable RBAC
-summary: ユーザー、ロール、権限を管理する方法を学びます。
-title: RBACの有効化
+summary: >-
+ RBAC(Role-Based Access
+ Control)は、ロールに基づくアクセス制御手法です。RBACを使用すると、ユーザーが実行できる操作をコレクション、データベース、およびインスタンス・レベルで細かく制御できるため、データ・セキュリティが強化されます。
+title: RBACの説明
---
-
from pymilvus import MilvusClient
-
-client = MilvusClient(
- uri='http://localhost:19530', # replace with your own Milvus server address
- token='root:Milvus'# replace with your own Milvus server token
-)
-
# grant privilege to a role
-
-client.grant_privilege(
- role_name='roleA',
- object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName
- object_name='user_1', # value here can be * or a specific user name if object type is 'User'
- privilege='SelectUser'
-)
-
client.revoke_privilege(
- role_name='roleA',
- object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName
- object_name='user_1', # value here can be * or a specific user name if object type is 'User'
- privilege='SelectUser'
-)
-
apiVersion: milvus.io/v1beta1
kind: MilvusUpgrade
metadata:
@@ -159,9 +159,9 @@ spec:
namespace: default
name: my-release
sourceVersion: "v2.1.4"
- targetVersion: "v2.5.0-beta"
+ targetVersion: "v2.5.0"# below are some omit default values:
- # targetImage: "milvusdb/milvus:v2.5.0-beta"
+ # targetImage: "milvusdb/milvus:v2.5.0"# toolImage: "milvusdb/meta-migration:v2.2.0"# operation: upgrade# rollbackIfFailed: true
diff --git a/localization/v2.5.x/site/ja/adminGuide/upgrade_milvus_standalone-docker.json b/localization/v2.5.x/site/ja/adminGuide/upgrade_milvus_standalone-docker.json
index 572b4cf0e..4f5ec6532 100644
--- a/localization/v2.5.x/site/ja/adminGuide/upgrade_milvus_standalone-docker.json
+++ b/localization/v2.5.x/site/ja/adminGuide/upgrade_milvus_standalone-docker.json
@@ -1 +1 @@
-{"codeList":["...\nstandalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.5.0-beta\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0-beta\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvusdb/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","// Run the following only after update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Standalone with Docker Compose","anchorList":[{"label":"Docker Composeを使用したMilvusスタンドアロンのアップグレード","href":"Upgrade-Milvus-Standalone-with-Docker-Compose","type":1,"isActive":false},{"label":"イメージを変更してMilvusをアップグレードする","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"メタデータの移行","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"次のステップ","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["...\nstandalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.5.0\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvusdb/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","// Run the following only after update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Standalone with Docker Compose","anchorList":[{"label":"Docker Composeを使用したMilvusスタンドアロンのアップグレード","href":"Upgrade-Milvus-Standalone-with-Docker-Compose","type":1,"isActive":false},{"label":"イメージを変更してMilvusをアップグレードする","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"メタデータの移行","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"次のステップ","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/ja/adminGuide/upgrade_milvus_standalone-docker.md b/localization/v2.5.x/site/ja/adminGuide/upgrade_milvus_standalone-docker.md
index 95601d8f3..f5aad1426 100644
--- a/localization/v2.5.x/site/ja/adminGuide/upgrade_milvus_standalone-docker.md
+++ b/localization/v2.5.x/site/ja/adminGuide/upgrade_milvus_standalone-docker.md
@@ -24,9 +24,9 @@ title: Docker Composeを使用したMilvusスタンドアロンのアップグ
>
docker compose down
@@ -83,7 +83,7 @@ cmd:
runWithBackup: true
config:
sourceVersion: 2.1.4# Specify your milvus version
- targetVersion: 2.5.0-beta
+ targetVersion: 2.5.0
backupFilePath: /tmp/migration.bak
metastore:
type: etcd
diff --git a/localization/v2.5.x/site/ja/adminGuide/upgrade_milvus_standalone-helm.json b/localization/v2.5.x/site/ja/adminGuide/upgrade_milvus_standalone-helm.json
index ecf144ff7..f14333e0d 100644
--- a/localization/v2.5.x/site/ja/adminGuide/upgrade_milvus_standalone-helm.json
+++ b/localization/v2.5.x/site/ja/adminGuide/upgrade_milvus_standalone-helm.json
@@ -1 +1 @@
-{"codeList":["$ helm repo update\n$ helm search repo zilliztech/milvus --versions\n","helm repo add zilliztech https://zilliztech.github.io/milvus-helm\nhelm repo update zilliztech\n# upgrade existing helm release\nhelm upgrade my-release zilliztech/milvus --reset-then-reuse-values\n","NAME CHART VERSION APP VERSION DESCRIPTION \nzilliztech/milvus 4.1.34 2.4.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.33 2.4.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.32 2.4.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.31 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.30 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.29 2.4.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.24 2.3.11 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.23 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.22 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.21 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.20 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.18 2.3.10 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.18 2.3.9 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.17 2.3.8 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.16 2.3.7 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.15 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.14 2.3.6 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.13 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.12 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.11 2.3.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.10 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.9 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.8 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.7 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.6 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.5 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.4 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.3 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.2 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.1 2.3.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.0 2.3.0 Milvus is an open-source vector database built ...\n","sh rollingUpdate.sh -n default -i my-release -o update -t 2.5.0-beta -w 'milvusdb/milvus:v2.5.0-beta'\n","helm repo update\nhelm upgrade my-release milvus/milvus --reset-then-reuse-values --version=4.1.24 # use the helm chart version here\n","NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION \nmy-release default 1 2022-11-21 15:41:25.51539 +0800 CST deployed milvus-3.2.18 2.1.4\n","NAME READY STATUS RESTARTS AGE\nmy-release-etcd-0 1/1 Running 0 84s\nmy-release-milvus-standalone-75c599fffc-6rwlj 1/1 Running 0 84s\nmy-release-minio-744dd9586f-qngzv 1/1 Running 0 84s\n","$ kubectl get pods my-release-milvus-proxy-6c548f787f-scspp -o=jsonpath='{$.spec.containers[0].image}'\n# milvusdb/milvus:v2.1.4\n","./migrate.sh -i my-release -s 2.1.4 -t 2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -w milvusdb/milvus:v2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -w milvusdb/milvus:v2.5.0-beta -d true\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -o rollback -w milvusdb/milvus:v2.1.1\n./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -o migrate -w milvusdb/milvus:v2.5.0-beta\n"],"headingContent":"Upgrade Milvus Standalone with Helm Chart","anchorList":[{"label":"MilvusスタンドアロンとHelmチャートのアップグレード","href":"Upgrade-Milvus-Standalone-with-Helm-Chart","type":1,"isActive":false},{"label":"前提条件","href":"Prerequisites","type":2,"isActive":false},{"label":"Milvusバージョンの確認","href":"Check-the-Milvus-version","type":2,"isActive":false},{"label":"ローリングアップグレードの実施","href":"Conduct-a-rolling-upgrade","type":2,"isActive":false},{"label":"Helmを使用したMilvusのアップグレード","href":"Upgrade-Milvus-using-Helm","type":2,"isActive":false},{"label":"メタデータの移行","href":"Migrate-the-metadata","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["$ helm repo update\n$ helm search repo zilliztech/milvus --versions\n","helm repo add zilliztech https://zilliztech.github.io/milvus-helm\nhelm repo update zilliztech\n# upgrade existing helm release\nhelm upgrade my-release zilliztech/milvus --reset-then-reuse-values\n","NAME CHART VERSION APP VERSION DESCRIPTION \nzilliztech/milvus 4.1.34 2.4.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.33 2.4.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.32 2.4.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.31 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.30 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.29 2.4.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.24 2.3.11 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.23 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.22 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.21 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.20 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.18 2.3.10 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.18 2.3.9 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.17 2.3.8 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.16 2.3.7 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.15 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.14 2.3.6 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.13 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.12 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.11 2.3.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.10 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.9 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.8 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.7 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.6 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.5 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.4 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.3 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.2 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.1 2.3.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.0 2.3.0 Milvus is an open-source vector database built ...\n","sh rollingUpdate.sh -n default -i my-release -o update -t 2.5.0 -w 'milvusdb/milvus:v2.5.0'\n","helm repo update\nhelm upgrade my-release milvus/milvus --reset-then-reuse-values --version=4.1.24 # use the helm chart version here\n","NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION \nmy-release default 1 2022-11-21 15:41:25.51539 +0800 CST deployed milvus-3.2.18 2.1.4\n","NAME READY STATUS RESTARTS AGE\nmy-release-etcd-0 1/1 Running 0 84s\nmy-release-milvus-standalone-75c599fffc-6rwlj 1/1 Running 0 84s\nmy-release-minio-744dd9586f-qngzv 1/1 Running 0 84s\n","$ kubectl get pods my-release-milvus-proxy-6c548f787f-scspp -o=jsonpath='{$.spec.containers[0].image}'\n# milvusdb/milvus:v2.1.4\n","./migrate.sh -i my-release -s 2.1.4 -t 2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -w milvusdb/milvus:v2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -w milvusdb/milvus:v2.5.0 -d true\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -o rollback -w milvusdb/milvus:v2.1.1\n./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -o migrate -w milvusdb/milvus:v2.5.0\n"],"headingContent":"Upgrade Milvus Standalone with Helm Chart","anchorList":[{"label":"MilvusスタンドアロンとHelmチャートのアップグレード","href":"Upgrade-Milvus-Standalone-with-Helm-Chart","type":1,"isActive":false},{"label":"前提条件","href":"Prerequisites","type":2,"isActive":false},{"label":"Milvusバージョンの確認","href":"Check-the-Milvus-version","type":2,"isActive":false},{"label":"ローリングアップグレードの実施","href":"Conduct-a-rolling-upgrade","type":2,"isActive":false},{"label":"Helmを使用したMilvusのアップグレード","href":"Upgrade-Milvus-using-Helm","type":2,"isActive":false},{"label":"メタデータの移行","href":"Migrate-the-metadata","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/ja/adminGuide/upgrade_milvus_standalone-helm.md b/localization/v2.5.x/site/ja/adminGuide/upgrade_milvus_standalone-helm.md
index 08ac2de06..d86d1cae9 100644
--- a/localization/v2.5.x/site/ja/adminGuide/upgrade_milvus_standalone-helm.md
+++ b/localization/v2.5.x/site/ja/adminGuide/upgrade_milvus_standalone-helm.md
@@ -66,7 +66,7 @@ title: MilvusスタンドアロンとHelmチャートのアップグレード
$ helm search repo zilliztech/milvus --versions
status というフィールドがあり、status が "active" であるすべてのエンティティを検索したいとします。等号演算子== を使用できます。
+
filter = 'status == "active"'
+
+
+
例 2:Not Equal To (!=) を使ったフィルタリング
status が「非アクティブ」でないエンティティを見つける。
+
filter = 'status != "inactive"'
+
+
+
例 3:Greater Than (>) によるフィルタリング
age が 30 より大きいエンティティをすべて検索する場合。
+
filter = 'age > 30'
+
+
+
例4: Less Than (<) によるフィルタリング
price が 100 未満のエンティティを検索する場合。
+
filter = 'price < 100'
+
+
+
例 5:Greater Than または Equal To (>=) によるフィルタリング
rating が 4 以上のエンティティをすべて検索する場合。
+
filter = 'rating >= 4'
+
+
+
例 6:Less Than or Equal To (<=) によるフィルタリング
discount が 10% 以下のエンティティを検索する場合。
+
filter = 'discount <= 10'
+
+
+
範囲演算子
+
+
+
+
範囲演算子は、特定の値の集合または範囲に基づいてデータをフィルタリングするのに役立ちます。
+
サポートされている範囲演算子。
+
IN:特定のセットまたは範囲内の値をマッチさせるために使用されます。
+
LIKE:パターンにマッチさせるために使用します(主にテキストフィールドの場合)。
+
+
例 1:IN を使用して複数の値に一致させる
color が "red"、"green"、または "blue" のいずれかであるすべてのエンティティを検索する場合。
+
filter = 'color in ["red", "green", "blue"]'
+
+
+
これは、値のリストに含まれるかどうかを調べたいときに便利です。
+
例 2:LIKE を使ったパターンマッチング
LIKE 演算子は文字列フィールドのパターンマッチングに使われます。この演算子は、プレフィックス、インフィックス、サフィックスなど、テキスト内のさまざまな位置の部分文字列にマッチさせることができます。LIKE 演算子は% シンボルをワイルドカードとして使い、任意の文字数(ゼロを含む)にマッチさせることができます。
diff --git a/localization/v2.5.x/site/ja/userGuide/tools/milvus-webui.json b/localization/v2.5.x/site/ja/userGuide/tools/milvus-webui.json
new file mode 100644
index 000000000..6124ff7e9
--- /dev/null
+++ b/localization/v2.5.x/site/ja/userGuide/tools/milvus-webui.json
@@ -0,0 +1 @@
+{"codeList":[],"headingContent":"Milvus WebUI","anchorList":[{"label":"Milvus WebUI","href":"Milvus-WebUI","type":1,"isActive":false},{"label":"概要","href":"Overview","type":2,"isActive":false},{"label":"ホーム","href":"Home","type":2,"isActive":false},{"label":"コレクション","href":"Collections","type":2,"isActive":false},{"label":"クエリ","href":"Query","type":2,"isActive":false},{"label":"データ","href":"Data","type":2,"isActive":false},{"label":"タスク","href":"Tasks","type":2,"isActive":false},{"label":"スローリクエスト","href":"Slow-requests","type":2,"isActive":false},{"label":"設定","href":"Configurations","type":2,"isActive":false},{"label":"ツール","href":"Tools","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/ja/userGuide/tools/milvus-webui.md b/localization/v2.5.x/site/ja/userGuide/tools/milvus-webui.md
new file mode 100644
index 000000000..b2357c0dd
--- /dev/null
+++ b/localization/v2.5.x/site/ja/userGuide/tools/milvus-webui.md
@@ -0,0 +1,279 @@
+---
+id: milvus-webui.md
+summary: >-
+ Milvus Web
+ UIはMilvusのグラフィカルな管理ツールです。シンプルで直感的なインターフェイスにより、システムの観測性を高めます。以下のことが可能です。
+title: Milvus WebUI
+---
+
Milvus WebUI
+
+
+
+
Milvus WebUIはMilvusのグラフィカルな管理ツールです。シンプルで直感的なインターフェースにより、システムの観測性を向上させます。Milvus Web UIを使用することで、Milvusのコンポーネントや依存関係の統計やメトリクスの観察、データベースやコレクションの詳細の確認、Milvusの詳細な設定の一覧表示などを行うことができます。
+
概要
+
+
+
+
Milvus Web UIは、BirdwatcherやAttuとは異なり、シンプルで直感的なインターフェースでシステム全体の観測性を提供するビルトインツールです。
diff --git a/localization/v2.5.x/site/ko/adminGuide/config_jaeger_tracing.md b/localization/v2.5.x/site/ko/adminGuide/config_jaeger_tracing.md
index 7c4caecdb..7a5000b46 100644
--- a/localization/v2.5.x/site/ko/adminGuide/config_jaeger_tracing.md
+++ b/localization/v2.5.x/site/ko/adminGuide/config_jaeger_tracing.md
@@ -65,7 +65,7 @@ $ kubectl create -f https://github.com/jaegertracing/jaeger-operator/releases/do
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
jaeger-operator111148s
-
2. 예거 배포
예거 인스턴스를 만드는 가장 간단한 방법은 다음 예제와 같이 YAML 파일을 만드는 것입니다. 이렇게 하면 기본적으로 인메모리 스토리지를 사용하여 단일 포드에 올인원 이미지(예거 에이전트, 예거 수집기, 예거 쿼리 및 예거 UI를 결합)를 배포하는 기본 올인원 전략이 설치됩니다.
+
2. 예거 배포
예거 인스턴스를 만드는 가장 간단한 방법은 다음 예제와 같이 YAML 파일을 만드는 것입니다. 이렇게 하면 기본적으로 인메모리 스토리지를 사용하여 단일 포드에 올인원 이미지(예거 에이전트, 예거 수집기, 예거 쿼리 및 예거 UI를 결합)를 배포하는 기본 AllInOne 전략이 설치됩니다.
diff --git a/localization/v2.5.x/site/ko/adminGuide/grant_roles.json b/localization/v2.5.x/site/ko/adminGuide/grant_roles.json
new file mode 100644
index 000000000..3f9ef6b53
--- /dev/null
+++ b/localization/v2.5.x/site/ko/adminGuide/grant_roles.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.grant_role(user_name=\"user_1\", role_name=\"role_a\")\n\n","import io.milvus.v2.client.ConnectConfig;\nimport io.milvus.v2.client.MilvusClientV2;\nimport io.milvus.v2.service.rbac.request.GrantRoleReq;\n\nString CLUSTER_ENDPOINT = \"http://localhost:19530\";\nString TOKEN = \"root:Milvus\";\n\n\nConnectConfig connectConfig = ConnectConfig.builder()\n .uri(CLUSTER_ENDPOINT)\n .token(TOKEN)\n .build();\n \nMilvusClientV2 client = new MilvusClientV2(connectConfig);\n\nGrantRoleReq grantRoleReq = GrantRoleReq.builder()\n .roleName(\"role_a\")\n .userName(\"user_1\")\n .build();\nclient.grantRole(grantRoleReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nconst address = \"http://localhost:19530\";\nconst token = \"root:Milvus\";\nconst client = new MilvusClient({address, token});\n\nmilvusClient.grantRole({\n username: 'user_1',\n roleName: 'role_a'\n })\n\n","export CLUSTER_ENDPOINT=\"http://localhost:19530\"\nexport TOKEN=\"root:Milvus\"\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/grant_role\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"userName\": \"user_1\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.describe_user(user_name=\"user_1\")\n\n","import io.milvus.v2.service.rbac.request.DescribeUserReq;\nimport io.milvus.v2.service.rbac.response.DescribeUserResp;\n\nDescribeUserReq describeUserReq = DescribeUserReq.builder()\n .userName(\"user_1\")\n .build();\nDescribeUserResp describeUserResp = client.describeUser(describeUserReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nmilvusClient.describeUser({username: 'user_1'})\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/describe\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"userName\": \"user_1\"\n}'\n\n","{'user_name': 'user_1', 'roles': 'role_a'}\n\n","from pymilvus import MilvusClient\n\nclient.revoke_role(\n user_name='user_1',\n role_name='role_a'\n)\n\n","import io.milvus.v2.service.rbac.request.RevokeRoleReq;\n\nclient.revokeRole(RevokeRoleReq.builder()\n .userName(\"user_1\")\n .roleName(\"role_a\")\n .build());\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\n\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/revoke_role\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"userName\": \"user_1\",\n \"roleName\": \"role_a\"\n}'\n\n"],"headingContent":"Grant Roles to Users","anchorList":[{"label":"사용자에게 역할 부여하기","href":"Grant-Roles-to-Users","type":1,"isActive":false},{"label":"사용자에게 역할 부여하기","href":"Grant-a-role-to-a-user","type":2,"isActive":false},{"label":"사용자 설명","href":"Describe-user","type":2,"isActive":false},{"label":"역할 해지하기","href":"Revoke-a-role","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/ko/adminGuide/grant_roles.md b/localization/v2.5.x/site/ko/adminGuide/grant_roles.md
new file mode 100644
index 000000000..e50769b78
--- /dev/null
+++ b/localization/v2.5.x/site/ko/adminGuide/grant_roles.md
@@ -0,0 +1,202 @@
+---
+id: grant_roles.md
+related_key: enable RBAC
+summary: >-
+ 역할을 만들고 역할에 권한을 부여한 후에는 사용자에게 역할을 부여하여 사용자가 리소스에 액세스하고 역할에 정의된 작업을 수행할 수 있도록 할
+ 수 있습니다. 한 사용자에게 여러 역할을 부여하거나 여러 사용자에게 역할을 부여할 수 있습니다. 이 가이드에서는 사용자에게 역할을 부여하는
+ 방법을 소개합니다.
+title: 사용자에게 역할 부여하기
+---
+
사용자에게 역할 부여하기
+
+
+
+
역할을 만들고 역할에 권한을 부여한 후에는 사용자에게 역할을 부여하여 사용자가 리소스에 액세스하고 역할에 정의된 작업을 수행할 수 있도록 할 수 있습니다. 한 사용자에게 여러 개의 역할을 부여하거나 여러 사용자에게 역할을 부여할 수 있습니다. 이 가이드에서는 사용자에게 역할을 부여하는 방법을 소개합니다.
+
Milvus의 기본 제공 사용자 root 에게는 이미 모든 권한이 있는 admin 역할이 부여되어 있습니다. 다른 역할을 할당할 필요가 없습니다.
diff --git a/localization/v2.5.x/site/ko/adminGuide/privilege_group.json b/localization/v2.5.x/site/ko/adminGuide/privilege_group.json
new file mode 100644
index 000000000..6a7d71d1b
--- /dev/null
+++ b/localization/v2.5.x/site/ko/adminGuide/privilege_group.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\nclient.create_privileg_group(group_name='privilege_group_1')\n\n","import io.milvus.v2.service.rbac.request.CreatePrivilegeGroupReq;\n\nclient.createPrivilegeGroup(CreatePrivilegeGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.CreatePrivilegeGroup(context.Background(), \"privilege_group_1\")\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/create\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\"\n}'\n\n","from pymilvus import MilvusClient\nclient.add_privileges_to_group(group_name='privilege_group_1', privileges=['Query', 'Search'])\n\n","import io.milvus.v2.service.rbac.request.AddPrivilegesToGroupReq;\n\nclient.addPrivilegesToGroup(AddPrivilegesToGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .privileges(Arrays.asList(\"Query\", \"Search\"))\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.AddPrivilegesToGroup(context.Background(), \"privilege_group_1\", []string{\"Query\", \"Search\"})\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/add_privileges_to_group\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\",\n \"privileges\":[\"Query\", \"Search\"]\n}'\n\n","from pymilvus import MilvusClient\nclient.remove_privileges_from_group(group_name='privilege_group_1', privileges='Search')\n\n","import io.milvus.v2.service.rbac.request.RemovePrivilegesFromGroupReq;\n\nclient.removePrivilegesFromGroup(RemovePrivilegesFromGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .privileges(Collections.singletonList(\"Search\"))\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.RemovePrivilegesFromGroup(context.Background(), \"privilege_group_1\", []string{\"Search\"})\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/remove_privileges_from_group\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\",\n \"privileges\":[\"Search\"]\n}'\n\n","from pymilvus import MilvusClient\nclient.list_privilege_groups()\n\n","import io.milvus.v2.service.rbac.PrivilegeGroup;\nimport io.milvus.v2.service.rbac.request.ListPrivilegeGroupsReq;\nimport io.milvus.v2.service.rbac.response.ListPrivilegeGroupsResp;\n\nListPrivilegeGroupsResp resp = client.listPrivilegeGroups(ListPrivilegeGroupsReq.builder()\n .build());\nList groups = resp.getPrivilegeGroups();\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.ListPrivilegeGroups(context.Background())\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","PrivilegeGroupItem: , \n\n","from pymilvus import MilvusClient\nclient.drop_privilege_group(group_name='privilege_group_1')\n\n","import io.milvus.v2.service.rbac.request.DropPrivilegeGroupReq;\n\nclient.dropPrivilegeGroup(DropPrivilegeGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.DropPrivilegeGroup(context.Background(), \"privilege_group_1\")\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/drop\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\"\n}'\n\n"],"headingContent":"Create Privilege Group","anchorList":[{"label":"권한 그룹 만들기","href":"Create-Privilege-Group","type":1,"isActive":false},{"label":"권한 그룹과 권한 비교","href":"Privilege-group-vs-privileges","type":2,"isActive":false},{"label":"기본 제공 권한 그룹","href":"Built-in-privilege-groups","type":2,"isActive":false},{"label":"절차","href":"Procedures","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/ko/adminGuide/privilege_group.md b/localization/v2.5.x/site/ko/adminGuide/privilege_group.md
new file mode 100644
index 000000000..035a649e2
--- /dev/null
+++ b/localization/v2.5.x/site/ko/adminGuide/privilege_group.md
@@ -0,0 +1,489 @@
+---
+id: privilege_group.md
+related_key: enable RBAC
+summary: 권한을 부여하는 프로세스를 간소화하려면 여러 권한을 하나의 권한 그룹으로 결합하는 것이 좋습니다.
+title: 권한 그룹 만들기
+---
+
권한 그룹 만들기
+
+
+
+
권한을 부여하는 프로세스를 간소화하려면 여러 권한을 하나의 권한 그룹으로 결합하는 것이 좋습니다.
+
권한 그룹과 권한 비교
+
+
+
+
권한 그룹은 여러 권한으로 구성됩니다.
+
+
+
+ 권한 그룹 예시
+
위 그림과 같이 한 역할에 세 가지 다른 권한을 부여해야 한다고 가정해 보겠습니다.
+
+
권한 그룹을 사용하지 않는 경우에는 권한을 세 번 부여해야 합니다.
+
권한 그룹을 사용하는 경우에는 권한 그룹을 만든 다음 이 권한 그룹에 세 가지 권한을 추가하고 역할 A에 권한 그룹을 부여하기만 하면 됩니다.
+
+
권한 그룹을 사용하면 한 역할에 여러 권한을 일괄적으로 부여할 수 있습니다.
+
기본 제공 권한 그룹
+
+
+
+
Milvus는 사용 편의성을 위해 컬렉션, 데이터베이스, 인스턴스 수준에서 총 9개의 기본 제공 권한을 제공합니다: COLL_RO, COLL_RW, COLL_ADMIN, DB_RO, DB_RW, DB_Admin, Cluster_RO, Cluster_RW 및 Cluster_Admin입니다.
+
+
기본 제공 권한 그룹의 세 가지 수준은 계단식 관계가 없습니다. 인스턴스 수준에서 권한 그룹을 설정한다고 해서 해당 인스턴스 아래의 모든 데이터베이스 및 컬렉션에 대한 권한이 자동으로 설정되는 것은 아닙니다. 데이터베이스 및 컬렉션 수준에서의 권한은 수동으로 설정해야 합니다.
+
+
다음 표에서는 각 기본 제공 권한 그룹에 포함된 권한에 대해 설명합니다.
+
컬렉션 수준
+
COLL_RO: 컬렉션 데이터를 읽을 수 있는 권한이 포함됩니다.
+
COLL_RW: 컬렉션 데이터를 읽고 쓸 수 있는 권한 포함
+
COLL_ADMIN: 컬렉션 데이터를 읽고 쓸 수 있는 권한과 컬렉션을 관리할 수 있는 권한이 포함됩니다.
+
+
아래 표에는 컬렉션 수준에서 세 가지 기본 제공 권한 그룹에 포함된 특정 권한이 나열되어 있습니다.
+
**권한**
+
**컬렉션 읽기 전용**
+
컬렉션읽기** **컬렉션쓰기**
+
**CollectionAdmin**
+
쿼리
+
✔️
+
✔️
+
✔️
+
검색
+
✔️
+
✔️
+
✔️
+
IndexDetail
+
✔️
+
✔️
+
✔️
+
GetFlushState
+
✔️
+
✔️
+
✔️
+
GetLoadState
+
✔️
+
✔️
+
✔️
+
GetLoadingProgress
+
✔️
+
✔️
+
✔️
+
HasPartition
+
✔️
+
✔️
+
✔️
+
ShowPartitions
+
✔️
+
✔️
+
✔️
+
ListAliases
+
✔️
+
✔️
+
✔️
+
DescribeCollection
+
✔️
+
✔️
+
✔️
+
DescribeAlias
+
✔️
+
✔️
+
✔️
+
GetStatistics
+
✔️
+
✔️
+
✔️
+
CreateIndex
+
❌
+
✔️
+
✔️
+
DropIndex
+
❌
+
✔️
+
✔️
+
CreatePartition
+
❌
+
✔️
+
✔️
+
DropPartition
+
❌
+
✔️
+
✔️
+
Load
+
❌
+
✔️
+
✔️
+
릴리스
+
❌
+
✔️
+
✔️
+
Insert
+
❌
+
✔️
+
✔️
+
삭제
+
❌
+
✔️
+
✔️
+
Upsert
+
❌
+
✔️
+
✔️
+
Import
+
❌
+
✔️
+
✔️
+
Flush
+
❌
+
✔️
+
✔️
+
Compaction
+
❌
+
✔️
+
✔️
+
LoadBalance
+
❌
+
✔️
+
✔️
+
CreateAlias
+
❌
+
❌
+
✔️
+
DropAlias
+
❌
+
❌
+
✔️
+
+
데이터베이스 수준
+
DB_RO: 데이터베이스 데이터를 읽을 수 있는 권한 포함
+
DB_RW: 데이터베이스 데이터를 읽고 쓸 수 있는 권한을 포함합니다.
+
DB_Admin: 데이터베이스 데이터를 읽고 쓸 수 있는 권한과 데이터베이스를 관리할 수 있는 권한을 포함합니다.
+
+
아래 표에는 데이터베이스 수준에서 세 가지 기본 제공 권한 그룹에 포함된 특정 권한이 나열되어 있습니다.
+
**권한**
+
**데이터베이스 읽기 전용**
+
**데이터베이스 읽기/쓰기**
+
**DatabaseAdmin**
+
ShowCollections
+
✔️
+
✔️
+
✔️
+
DescribeDatabase
+
✔️
+
✔️
+
✔️
+
CreateCollection
+
❌
+
❌
+
✔️
+
DropCollection
+
❌
+
❌
+
✔️
+
AlterDatabase
+
❌
+
✔️
+
✔️
+
+
클러스터 수준
+
Cluster_RO: 인스턴스 데이터를 읽을 수 있는 권한 포함
+
Cluster_RW: 인스턴스 데이터를 읽고 쓸 수 있는 권한을 포함합니다.
+
Cluster_Admin: 인스턴스 데이터 읽기 및 쓰기 권한과 인스턴스 관리 권한이 포함됩니다.
+
+
아래 표에는 인스턴스 수준에서 세 가지 기본 제공 권한 그룹에 포함된 특정 권한이 나열되어 있습니다.
+
**권한**
+
**클러스터 읽기 전용**
+
**클러스터 읽기/쓰기**
+
**ClusterAdmin**
+
ListDatabases
+
✔️
+
✔️
+
✔️
+
RenameCollection
+
❌
+
❌
+
✔️
+
CreateOwnership
+
❌
+
❌
+
✔️
+
UpdateUser
+
❌
+
❌
+
✔️
+
DropOwnership
+
❌
+
❌
+
✔️
+
SelectOwnership
+
✔️
+
✔️
+
✔️
+
ManageOwnership
+
❌
+
❌
+
✔️
+
SelectUser
+
✔️
+
✔️
+
✔️
+
BackupRBAC
+
❌
+
❌
+
✔️
+
RestoreRBAC
+
❌
+
❌
+
✔️
+
CreateResourceGroup
+
❌
+
❌
+
✔️
+
DropResourceGroup
+
❌
+
❌
+
✔️
+
업데이트 리소스 그룹
+
❌
+
✔️
+
✔️
+
DescribeResourceGroup
+
✔️
+
✔️
+
✔️
+
리소스 그룹 나열
+
✔️
+
✔️
+
✔️
+
TransferNode
+
❌
+
✔️
+
✔️
+
TransferReplica
+
❌
+
✔️
+
✔️
+
CreateDatabase
+
❌
+
❌
+
✔️
+
DropDatabase
+
❌
+
❌
+
✔️
+
FlushAll
+
❌
+
✔️
+
✔️
+
CreatePrivilegeGroup
+
❌
+
❌
+
✔️
+
DropPrivilegeGroup
+
❌
+
❌
+
✔️
+
ListPrivilegeGroups
+
❌
+
❌
+
✔️
+
OperatePrivilegeGroup
+
❌
+
❌
+
✔️
+
+
절차
+
+
+
+
권한 그룹을 만든 다음 권한 그룹에 권한을 추가할 수 있습니다.
+
권한 그룹 만들기
다음 예에서는 privilege_group_1 라는 이름의 권한 그룹을 만드는 방법을 보여 줍니다.
diff --git a/localization/v2.5.x/site/ko/adminGuide/rbac.json b/localization/v2.5.x/site/ko/adminGuide/rbac.json
index f3864118e..755d0d630 100644
--- a/localization/v2.5.x/site/ko/adminGuide/rbac.json
+++ b/localization/v2.5.x/site/ko/adminGuide/rbac.json
@@ -1 +1 @@
-{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri='http://localhost:19530', # replace with your own Milvus server address\n token='root:Milvus' # replace with your own Milvus server token\n)\n","client.create_user(\n user_name='user_1',\n password='P@ssw0rd'\n)\n","client.update_password(\n user_name='user_1',\n old_password='P@ssw0rd',\n new_password='P@ssw0rd123'\n)\n","client.list_users()\n\n# output:\n# ['root', 'user_1']\n","client.describe_user(user_name='user_1')\n\n# output:\n# {'user_name': 'user_1', 'roles': ()}\n","client.create_role(\n role_name=\"roleA\",\n)\n","client.list_roles()\n\n# output:\n# ['admin', 'public', 'roleA']\n","# grant privilege to a role\n\nclient.grant_privilege(\n role_name='roleA',\n object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName\n object_name='user_1', # value here can be * or a specific user name if object type is 'User'\n privilege='SelectUser'\n)\n","client.describe_role(\n role_name='roleA'\n)\n\n# output:\n# {'role': 'roleA',\n# 'privileges': [{'object_type': 'User',\n# 'object_name': 'user_1',\n# 'db_name': 'default',\n# 'role_name': 'roleA',\n# 'privilege': 'SelectUser',\n# 'grantor_name': 'root'}]}\n","# grant a role to a user\n\nclient.grant_role(\n user_name='user_1',\n role_name='roleA'\n)\n","client.describe_user(\n user_name='user_1'\n)\n\n# output:\n# {'user_name': 'user_1', 'roles': ('roleA')}\n","client.revoke_privilege(\n role_name='roleA',\n object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName\n object_name='user_1', # value here can be * or a specific user name if object type is 'User'\n privilege='SelectUser'\n)\n","client.revoke_role(\n user_name='user_1',\n role_name='roleA'\n)\n","client.drop_role(role_name='roleA')\n","client.drop_user(user_name='user_1')\n"],"headingContent":"Enable RBAC","anchorList":[{"label":"RBAC 활성화","href":"Enable-RBAC","type":1,"isActive":false},{"label":"1. Milvus 클라이언트를 시작하여 연결 설정하기","href":"1-Initiate-a-Milvus-client-to-establish-a-connection","type":2,"isActive":false},{"label":"2. 사용자 만들기","href":"2-Create-a-user","type":2,"isActive":false},{"label":"3. 역할 만들기","href":"3-Create-a-role","type":2,"isActive":false},{"label":"4. 역할에 권한 부여하기","href":"4-Grant-a-privilege-to-a-role","type":2,"isActive":false},{"label":"5. 사용자에게 역할 부여하기","href":"5-Grant-a-role-to-a-user","type":2,"isActive":false},{"label":"6. 권한 취소하기","href":"6-Revoke-privileges","type":2,"isActive":false},{"label":"다음 단계","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":[],"headingContent":"RBAC Explained","anchorList":[{"label":"RBAC 설명","href":"RBAC-Explained","type":1,"isActive":false},{"label":"RBAC 주요 개념","href":"RBAC-key-concepts","type":2,"isActive":false},{"label":"절차","href":"Procedures","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/ko/adminGuide/rbac.md b/localization/v2.5.x/site/ko/adminGuide/rbac.md
index 23d5ff5ba..e96c0c1b3 100644
--- a/localization/v2.5.x/site/ko/adminGuide/rbac.md
+++ b/localization/v2.5.x/site/ko/adminGuide/rbac.md
@@ -1,10 +1,12 @@
---
id: rbac.md
related_key: enable RBAC
-summary: '사용자, 역할 및 권한을 관리하는 방법을 알아보세요.'
-title: RBAC 활성화
+summary: >-
+ RBAC(역할 기반 액세스 제어)는 역할에 기반한 액세스 제어 방식입니다. RBAC를 사용하면 사용자가 수행할 수 있는 작업을 컬렉션,
+ 데이터베이스, 인스턴스 수준에서 세밀하게 제어하여 데이터 보안을 강화할 수 있습니다.
+title: RBAC 설명
---
-
RBAC 활성화
+
RBAC 설명
-
RBAC를 활성화하면 특정 Milvus 리소스(예: 컬렉션 또는 파티션)에 대한 액세스 또는 사용자 역할 및 권한에 따른 권한을 제어할 수 있습니다. 현재 이 기능은 Python과 Java에서만 사용할 수 있습니다.
이 페이지의 코드 스니펫은 새로운 MilvusClient (Python)를 사용하여 Milvus와 상호 작용합니다. 다른 언어에 대한 새로운 MilvusClient SDK는 향후 업데이트를 통해 출시될 예정입니다.
-
-
1. Milvus 클라이언트를 시작하여 연결 설정하기
+
RBAC(역할 기반 액세스 제어)는 역할에 기반한 액세스 제어 방식입니다. RBAC를 사용하면 사용자가 수행할 수 있는 작업을 컬렉션, 데이터베이스, 인스턴스 수준에서 세밀하게 제어하여 데이터 보안을 강화할 수 있습니다.
+
기존의 사용자 접근 제어 모델과 달리 RBAC는 역할이라는 개념을 도입합니다. RBAC 모델에서는 역할에 권한을 부여한 다음 사용자에게 해당 역할을 부여합니다. 그러면 사용자는 권한을 얻을 수 있습니다.
+
RBAC 모델은 액세스 제어 관리의 효율성을 향상시킬 수 있습니다. 예를 들어 여러 사용자에게 동일한 권한 집합이 필요한 경우 각 사용자에 대한 권한을 수동으로 설정할 필요가 없습니다. 대신 역할을 만들어 사용자에게 역할을 할당하면 됩니다. 이러한 사용자의 권한을 조정하려는 경우 역할 권한을 조정하기만 하면 이 역할이 있는 모든 사용자에게 수정 사항이 적용됩니다.
+
RBAC 주요 개념
-
사용자 인증을 활성화한 후 사용자 이름과 비밀번호로 구성된 token 을 사용하여 Milvus 인스턴스에 연결합니다. 기본적으로 Milvus는 root 사용자와 비밀번호 Milvus 를 사용합니다.
-
from pymilvus import MilvusClient
-
-client = MilvusClient(
- uri='http://localhost:19530', # replace with your own Milvus server address
- token='root:Milvus'# replace with your own Milvus server token
-)
-
**리소스: 리소스: **액세스할 수 있는 리소스 엔티티입니다. Milvus에는 인스턴스, 데이터베이스, 컬렉션의 세 가지 리소스 레벨이 있습니다.
+
**권한: **Milvus 리소스에서 특정 작업(예: 컬렉션 생성, 데이터 삽입 등)을 수행할 수 있는 권한입니다.
+
**권한 그룹: **권한 그룹: **여러 권한의 그룹.
+
**역할: **역할은 권한과 리소스의 두 부분으로 구성됩니다. 권한은 역할이 수행할 수 있는 작업의 유형을 정의하고, 리소스는 작업을 수행할 수 있는 대상 리소스를 정의합니다. 예를 들어 데이터베이스 관리자 역할은 특정 데이터베이스에 대해 읽기, 쓰기 및 관리 작업을 수행할 수 있습니다.
+
**사용자: **사용자는 Milvus를 사용하는 사람입니다. 각 사용자는 고유 ID를 가지며 하나 또는 여러 개의 역할이 부여됩니다.
다음 예는 roleA 라는 역할에 모든 컬렉션을 검색할 수 있는 권한을 부여하는 방법을 보여줍니다.
-
object_type 은 리소스 유형으로도 이해할 수 있는 객체 유형을 지정합니다. 현재 유효한 값으로는 컬렉션/사용자/글로벌 등이 있으며, 여기서 글로벌은 특정 리소스 유형이 없음을 의미합니다. object_name 은 리소스 이름입니다. 객체 유형이Collection인 경우 객체 이름은 특정 컬렉션 이름을 참조하거나 *를 사용하여 모든 컬렉션을 지정할 수 있습니다.개체유형이Global인 경우에는 개체 이름을 *로만 지정할 수 있습니다. 부여할 수 있는 다른 유형의 권한은 사용자 및 역할을 참조하세요.
-
역할 권한을 관리하기 전에 사용자 인증을 사용 설정했는지 확인하세요. 그렇지 않으면 오류가 발생할 수 있습니다. 사용자 인증을 사용 설정하는 방법에 대한 자세한 내용은 사용자 액세스 인증하기를 참조하세요.
-
# grant privilege to a role
-
-client.grant_privilege(
- role_name='roleA',
- object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName
- object_name='user_1', # value here can be * or a specific user name if object type is 'User'
- privilege='SelectUser'
-)
-
client.revoke_privilege(
- role_name='roleA',
- object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName
- object_name='user_1', # value here can be * or a specific user name if object type is 'User'
- privilege='SelectUser'
-)
-
-
-
역할에서 사용자를 제거합니다. 사용자에게 부여되지 않은 역할을 취소하면 오류가 발생합니다.
Milvus를 v2.1.x에서 2.5.0으로 업그레이드하려면 실제 업그레이드 전에 메타데이터를 마이그레이션해야 합니다.
롤링 업그레이드 수행true
imageUpdateMode: rollingUpgrade # Default value, can be omitted
- image: milvusdb/milvus:v2.5.0-beta
+ image: milvusdb/milvus:v2.5.0
위의 구성 파일에서 spec.components.enableRollingUpdate 을 true 으로 설정하고 spec.components.image 을 원하는 Milvus 버전으로 설정합니다.
기본적으로 Milvus는 코디네이터에 대한 롤링 업그레이드를 수행하여 코디네이터 포드 이미지를 차례로 교체하는 순서대로 진행합니다. 업그레이드 시간을 줄이려면 spec.components.imageUpdateMode 을 all 으로 설정하여 Milvus가 모든 포드 이미지를 동시에 교체하도록 하세요.
Milvus 2.2.0부터는 메타데이터가 이전 릴리즈의 메타데이터와 호환되지 않습니다. 다음 예제 코드 조각은 Milvus 2.1.4에서 Milvus 2.5.0-beta로 업그레이드하는 경우를 가정합니다.
-
1. 메타데이터 마이그레이션을 위한 .yaml 파일 만들기
메타데이터 마이그레이션 파일을 만듭니다. 다음은 예시입니다. 설정 파일에 name, sourceVersion, targetVersion 을 지정해야 합니다. 다음 예에서는 name 을 my-release-upgrade 으로 , sourceVersion 을 v2.1.4 으로 , targetVersion 을 v2.5.0-beta 으로 설정합니다. 즉, Milvus 클러스터가 v2.1.4에서 v2.5.0-beta로 업그레이드됩니다.
+
Milvus 2.2.0부터는 메타데이터가 이전 릴리즈의 메타데이터와 호환되지 않습니다. 다음 예제 코드 조각은 Milvus 2.1.4에서 Milvus 2.5.0으로 업그레이드하는 경우를 가정합니다.
+
1. 메타데이터 마이그레이션을 위한 .yaml 파일 만들기
메타데이터 마이그레이션 파일을 만듭니다. 다음은 예시입니다. 설정 파일에 name, sourceVersion, targetVersion 을 지정해야 합니다. 다음 예에서는 name 을 my-release-upgrade 으로 , sourceVersion 을 v2.1.4 으로 , targetVersion 을 v2.5.0 으로 설정합니다. 즉, Milvus 클러스터가 v2.1.4에서 v2.5.0으로 업그레이드됩니다.
apiVersion: milvus.io/v1beta1
kind: MilvusUpgrade
metadata:
@@ -159,9 +159,9 @@ spec:
namespace: default
name: my-release
sourceVersion: "v2.1.4"
- targetVersion: "v2.5.0-beta"
+ targetVersion: "v2.5.0"# below are some omit default values:
- # targetImage: "milvusdb/milvus:v2.5.0-beta"
+ # targetImage: "milvusdb/milvus:v2.5.0"# toolImage: "milvusdb/meta-migration:v2.2.0"# operation: upgrade# rollbackIfFailed: true
diff --git a/localization/v2.5.x/site/ko/adminGuide/upgrade_milvus_standalone-docker.json b/localization/v2.5.x/site/ko/adminGuide/upgrade_milvus_standalone-docker.json
index 107141b1f..0eb788e52 100644
--- a/localization/v2.5.x/site/ko/adminGuide/upgrade_milvus_standalone-docker.json
+++ b/localization/v2.5.x/site/ko/adminGuide/upgrade_milvus_standalone-docker.json
@@ -1 +1 @@
-{"codeList":["...\nstandalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.5.0-beta\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0-beta\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvusdb/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","// Run the following only after update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Standalone with Docker Compose","anchorList":[{"label":"Docker Compose로 Milvus 독립형 업그레이드하기","href":"Upgrade-Milvus-Standalone-with-Docker-Compose","type":1,"isActive":false},{"label":"이미지를 변경하여 Milvus 업그레이드","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"메타데이터 마이그레이션","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"다음 단계","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["...\nstandalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.5.0\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvusdb/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","// Run the following only after update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Standalone with Docker Compose","anchorList":[{"label":"Docker Compose로 Milvus 독립형 업그레이드하기","href":"Upgrade-Milvus-Standalone-with-Docker-Compose","type":1,"isActive":false},{"label":"이미지를 변경하여 Milvus 업그레이드","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"메타데이터 마이그레이션","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"다음 단계","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/ko/adminGuide/upgrade_milvus_standalone-docker.md b/localization/v2.5.x/site/ko/adminGuide/upgrade_milvus_standalone-docker.md
index f65ba4376..0e3e1f610 100644
--- a/localization/v2.5.x/site/ko/adminGuide/upgrade_milvus_standalone-docker.md
+++ b/localization/v2.5.x/site/ko/adminGuide/upgrade_milvus_standalone-docker.md
@@ -24,7 +24,7 @@ title: Docker Compose로 Milvus 독립형 업그레이드하기
>
이 항목에서는 Docker Compose를 사용하여 Milvus를 업그레이드하는 방법을 설명합니다.
보안 문제로 인해 Milvus는 v2.2.5 릴리스와 함께 MinIO를 RELEASE.2023-03-20T20-16-18Z로 업그레이드합니다. Docker Compose를 사용하여 설치된 이전 Milvus 독립 실행형 릴리스에서 업그레이드하기 전에 단일 노드 단일 드라이브 MinIO 배포를 생성하고 기존 MinIO 설정 및 콘텐츠를 새 배포로 마이그레이션해야 합니다. 자세한 내용은 이 가이드를 참조하세요.
docker compose down
@@ -83,7 +83,7 @@ cmd:
runWithBackup: true
config:
sourceVersion: 2.1.4# Specify your milvus version
- targetVersion: 2.5.0-beta
+ targetVersion: 2.5.0
backupFilePath: /tmp/migration.bak
metastore:
type: etcd
diff --git a/localization/v2.5.x/site/ko/adminGuide/upgrade_milvus_standalone-helm.json b/localization/v2.5.x/site/ko/adminGuide/upgrade_milvus_standalone-helm.json
index d5d0bfcbf..db04f9e58 100644
--- a/localization/v2.5.x/site/ko/adminGuide/upgrade_milvus_standalone-helm.json
+++ b/localization/v2.5.x/site/ko/adminGuide/upgrade_milvus_standalone-helm.json
@@ -1 +1 @@
-{"codeList":["$ helm repo update\n$ helm search repo zilliztech/milvus --versions\n","helm repo add zilliztech https://zilliztech.github.io/milvus-helm\nhelm repo update zilliztech\n# upgrade existing helm release\nhelm upgrade my-release zilliztech/milvus --reset-then-reuse-values\n","NAME CHART VERSION APP VERSION DESCRIPTION \nzilliztech/milvus 4.1.34 2.4.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.33 2.4.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.32 2.4.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.31 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.30 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.29 2.4.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.24 2.3.11 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.23 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.22 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.21 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.20 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.18 2.3.10 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.18 2.3.9 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.17 2.3.8 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.16 2.3.7 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.15 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.14 2.3.6 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.13 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.12 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.11 2.3.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.10 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.9 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.8 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.7 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.6 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.5 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.4 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.3 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.2 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.1 2.3.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.0 2.3.0 Milvus is an open-source vector database built ...\n","sh rollingUpdate.sh -n default -i my-release -o update -t 2.5.0-beta -w 'milvusdb/milvus:v2.5.0-beta'\n","helm repo update\nhelm upgrade my-release milvus/milvus --reset-then-reuse-values --version=4.1.24 # use the helm chart version here\n","NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION \nmy-release default 1 2022-11-21 15:41:25.51539 +0800 CST deployed milvus-3.2.18 2.1.4\n","NAME READY STATUS RESTARTS AGE\nmy-release-etcd-0 1/1 Running 0 84s\nmy-release-milvus-standalone-75c599fffc-6rwlj 1/1 Running 0 84s\nmy-release-minio-744dd9586f-qngzv 1/1 Running 0 84s\n","$ kubectl get pods my-release-milvus-proxy-6c548f787f-scspp -o=jsonpath='{$.spec.containers[0].image}'\n# milvusdb/milvus:v2.1.4\n","./migrate.sh -i my-release -s 2.1.4 -t 2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -w milvusdb/milvus:v2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -w milvusdb/milvus:v2.5.0-beta -d true\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -o rollback -w milvusdb/milvus:v2.1.1\n./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -o migrate -w milvusdb/milvus:v2.5.0-beta\n"],"headingContent":"Upgrade Milvus Standalone with Helm Chart","anchorList":[{"label":"헬름 차트로 Milvus 스탠드얼론 업그레이드하기","href":"Upgrade-Milvus-Standalone-with-Helm-Chart","type":1,"isActive":false},{"label":"전제 조건","href":"Prerequisites","type":2,"isActive":false},{"label":"Milvus 버전 확인","href":"Check-the-Milvus-version","type":2,"isActive":false},{"label":"롤링 업그레이드 수행","href":"Conduct-a-rolling-upgrade","type":2,"isActive":false},{"label":"헬름을 사용하여 밀버스 업그레이드","href":"Upgrade-Milvus-using-Helm","type":2,"isActive":false},{"label":"메타데이터 마이그레이션","href":"Migrate-the-metadata","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["$ helm repo update\n$ helm search repo zilliztech/milvus --versions\n","helm repo add zilliztech https://zilliztech.github.io/milvus-helm\nhelm repo update zilliztech\n# upgrade existing helm release\nhelm upgrade my-release zilliztech/milvus --reset-then-reuse-values\n","NAME CHART VERSION APP VERSION DESCRIPTION \nzilliztech/milvus 4.1.34 2.4.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.33 2.4.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.32 2.4.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.31 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.30 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.29 2.4.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.24 2.3.11 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.23 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.22 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.21 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.20 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.18 2.3.10 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.18 2.3.9 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.17 2.3.8 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.16 2.3.7 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.15 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.14 2.3.6 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.13 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.12 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.11 2.3.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.10 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.9 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.8 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.7 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.6 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.5 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.4 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.3 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.2 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.1 2.3.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.0 2.3.0 Milvus is an open-source vector database built ...\n","sh rollingUpdate.sh -n default -i my-release -o update -t 2.5.0 -w 'milvusdb/milvus:v2.5.0'\n","helm repo update\nhelm upgrade my-release milvus/milvus --reset-then-reuse-values --version=4.1.24 # use the helm chart version here\n","NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION \nmy-release default 1 2022-11-21 15:41:25.51539 +0800 CST deployed milvus-3.2.18 2.1.4\n","NAME READY STATUS RESTARTS AGE\nmy-release-etcd-0 1/1 Running 0 84s\nmy-release-milvus-standalone-75c599fffc-6rwlj 1/1 Running 0 84s\nmy-release-minio-744dd9586f-qngzv 1/1 Running 0 84s\n","$ kubectl get pods my-release-milvus-proxy-6c548f787f-scspp -o=jsonpath='{$.spec.containers[0].image}'\n# milvusdb/milvus:v2.1.4\n","./migrate.sh -i my-release -s 2.1.4 -t 2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -w milvusdb/milvus:v2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -w milvusdb/milvus:v2.5.0 -d true\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -o rollback -w milvusdb/milvus:v2.1.1\n./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -o migrate -w milvusdb/milvus:v2.5.0\n"],"headingContent":"Upgrade Milvus Standalone with Helm Chart","anchorList":[{"label":"헬름 차트로 Milvus 스탠드얼론 업그레이드하기","href":"Upgrade-Milvus-Standalone-with-Helm-Chart","type":1,"isActive":false},{"label":"전제 조건","href":"Prerequisites","type":2,"isActive":false},{"label":"Milvus 버전 확인","href":"Check-the-Milvus-version","type":2,"isActive":false},{"label":"롤링 업그레이드 수행","href":"Conduct-a-rolling-upgrade","type":2,"isActive":false},{"label":"헬름을 사용하여 밀버스 업그레이드","href":"Upgrade-Milvus-using-Helm","type":2,"isActive":false},{"label":"메타데이터 마이그레이션","href":"Migrate-the-metadata","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/ko/adminGuide/upgrade_milvus_standalone-helm.md b/localization/v2.5.x/site/ko/adminGuide/upgrade_milvus_standalone-helm.md
index ec489dc4a..9eca3b1a1 100644
--- a/localization/v2.5.x/site/ko/adminGuide/upgrade_milvus_standalone-helm.md
+++ b/localization/v2.5.x/site/ko/adminGuide/upgrade_milvus_standalone-helm.md
@@ -108,10 +108,10 @@ zilliztech/milvus 4.1.1 2.3.0 Milvus is an ope
zilliztech/milvus 4.1.0 2.3.0 Milvus is an open-source vector database built ...
Milvus의 업그레이드 경로는 다음과 같이 선택할 수 있습니다:
-
- 밀버스 v2.2.3 이상 릴리스에서 v2.5.0-beta로 [롤링 업그레이드 수행](#conduct-a-rolling-upgrade).
+
- 밀버스 v2.2.3 이상 릴리스에서 v2.5.0으로 [롤링 업그레이드 수행](#conduct-a-rolling-upgrade).
Milvus를 v2.1.x에서 2.5.0으로 업그레이드하려면 실제 업그레이드 전에 메타데이터를 마이그레이션해야 합니다.
롤링 업그레이드 수행true
imageUpdateMode: rollingUpgrade # Default value, can be omitted
- image: milvusdb/milvus:v2.5.0-beta
+ image: milvusdb/milvus:v2.5.0
위의 구성 파일에서 spec.components.enableRollingUpdate 을 true 으로 설정하고 spec.components.image 을 원하는 Milvus 버전으로 설정합니다.
기본적으로 Milvus는 코디네이터에 대해 순차적으로 롤링 업그레이드를 수행하여 코디네이터 포드 이미지를 차례로 교체합니다. 업그레이드 시간을 줄이려면 spec.components.imageUpdateMode 을 all 으로 설정하여 Milvus가 모든 포드 이미지를 동시에 교체하도록 하세요.
Milvus 2.2.0부터는 메타데이터가 이전 릴리즈의 메타데이터와 호환되지 않습니다. 다음 예제 코드 조각은 Milvus 2.1.4에서 Milvus v2.5.0-beta로 업그레이드하는 경우를 가정합니다.
-
1. 메타데이터 마이그레이션을 위한 .yaml 파일 만들기
메타데이터 마이그레이션 파일을 만듭니다. 다음은 예시입니다. 설정 파일에 name, sourceVersion, targetVersion 을 지정해야 합니다. 다음 예에서는 name 을 my-release-upgrade 으로 , sourceVersion 을 v2.1.4 으로 , targetVersion 을 v2.5.0-beta 으로 설정합니다. 즉, Milvus 인스턴스가 v2.1.4에서 v2.5.0-beta로 업그레이드됩니다.
+
Milvus 2.2.0부터는 메타데이터가 이전 릴리즈의 메타데이터와 호환되지 않습니다. 다음 예제 코드 조각은 Milvus 2.1.4에서 Milvus v2.5.0으로 업그레이드하는 경우를 가정합니다.
+
1. 메타데이터 마이그레이션을 위한 .yaml 파일 만들기
메타데이터 마이그레이션 파일을 만듭니다. 다음은 예시입니다. 설정 파일에 name, sourceVersion, targetVersion 을 지정해야 합니다. 다음 예에서는 name 을 my-release-upgrade 으로 , sourceVersion 을 v2.1.4 으로 , targetVersion 을 v2.5.0 으로 설정합니다. 즉, Milvus 인스턴스가 v2.1.4에서 v2.5.0으로 업그레이드됩니다.
apiVersion: milvus.io/v1beta1
kind: MilvusUpgrade
metadata:
@@ -161,9 +161,9 @@ spec:
namespace: default
name: my-release
sourceVersion: "v2.1.4"
- targetVersion: "v2.5.0-beta"
+ targetVersion: "v2.5.0"# below are some omit default values:
- # targetImage: "milvusdb/milvus:v2.5.0-beta"
+ # targetImage: "milvusdb/milvus:v2.5.0"# toolImage: "milvusdb/meta-migration:v2.2.0"# operation: upgrade# rollbackIfFailed: true
diff --git a/localization/v2.5.x/site/ko/adminGuide/users_and_roles.json b/localization/v2.5.x/site/ko/adminGuide/users_and_roles.json
new file mode 100644
index 000000000..b7378752b
--- /dev/null
+++ b/localization/v2.5.x/site/ko/adminGuide/users_and_roles.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.create_user(user_name=\"user_1\", password=\"P@ssw0rd\")\n\n","import io.milvus.v2.client.ConnectConfig;\nimport io.milvus.v2.client.MilvusClientV2;\nimport io.milvus.v2.service.rbac.request.CreateUserReq;\n\nConnectConfig connectConfig = ConnectConfig.builder()\n .uri(\"http://localhost:19530\")\n .token(\"root:Milvus\")\n .build();\n \nMilvusClientV2 client = new MilvusClientV2(connectConfig);\n\nCreateUserReq createUserReq = CreateUserReq.builder()\n .userName(\"user_1\")\n .password(\"P@ssw0rd\")\n .build();\n \nclient.createUser(createUserReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nconst address = \"http://localhost:19530\";\nconst token = \"root:Milvus\";\nconst client = new MilvusClient({address, token});\n\nawait milvusClient.createUser({\n username: 'user_1',\n password: 'P@ssw0rd',\n });\n\n","export CLUSTER_ENDPOINT=\"http://localhost:19530\"\nexport TOKEN=\"root:Milvus\"\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/create\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"userName\": \"user_1\",\n \"password\": \"P@ssw0rd\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.update_password(\n user_name=\"user_1\",\n old_password=\"P@ssw0rd\",\n new_password=\"NewP@ssw0rd\"\n)\n\n","import io.milvus.v2.service.rbac.request.UpdatePasswordReq;\n\nUpdatePasswordReq updatePasswordReq = UpdatePasswordReq.builder()\n .userName(\"user_1\")\n .password(\"P@ssw0rd\")\n .newPassword(\"NewP@ssw0rd\")\n .build();\nclient.updatePassword(updatePasswordReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.updateUser({\n username: 'user_1',\n newPassword: 'P@ssw0rd',\n oldPassword: 'NewP@ssw0rd',\n});\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/update_password\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"newPassword\": \"P@ssw0rd!\",\n \"userName\": \"user_1\",\n \"password\": \"P@ssw0rd\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.list_users()\n\n","List resp = client.listUsers();\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.listUsers();\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","['root', 'user_1']\n\n","from pymilvus import MilvusClient\n\nclient.create_role(role_name=\"role_a\")\nimport io.milvus.v2.service.rbac.request.CreateRoleReq;\n\n","CreateRoleReq createRoleReq = CreateRoleReq.builder()\n .roleName(\"role_a\")\n .build();\n \n\n","client.createRole(createRoleReq);\nconst { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.createRole({\n roleName: 'role_a',\n});\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/create\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.list_roles()\n\n","List roles = client.listRoles();\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.listRoles(\n includeUserInfo: True\n);\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","['admin', 'role_a']\n\n"],"headingContent":"Create Users & Roles","anchorList":[{"label":"사용자 및 역할 생성","href":"Create-Users--Roles","type":1,"isActive":false},{"label":"사용자","href":"User","type":2,"isActive":false},{"label":"역할","href":"Role","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/ko/adminGuide/users_and_roles.md b/localization/v2.5.x/site/ko/adminGuide/users_and_roles.md
new file mode 100644
index 000000000..38a8ca0cc
--- /dev/null
+++ b/localization/v2.5.x/site/ko/adminGuide/users_and_roles.md
@@ -0,0 +1,258 @@
+---
+id: users_and_roles.md
+related_key: 'users, roles'
+summary: >-
+ Milvus는 RBAC을 통해 세분화된 접근 제어를 실현합니다. 먼저 사용자와 역할을 생성한 다음, 역할에 권한 또는 권한 그룹을 할당하고
+ 마지막으로 사용자에게 역할을 부여하여 액세스 제어를 관리할 수 있습니다. 이 방법은 액세스 관리의 효율성과 보안을 보장합니다. 이
+ 페이지에서는 Milvus에서 사용자 및 역할을 만드는 방법을 소개합니다.
+title: 사용자 및 역할 생성
+---
+
사용자 및 역할 생성
+
+
+
+
Milvus는 RBAC을 통해 세분화된 접근 제어를 실현합니다. 먼저 사용자와 역할을 생성한 다음, 역할에 권한 또는 권한 그룹을 할당하고 마지막으로 사용자에게 역할을 부여하여 액세스 제어를 관리할 수 있습니다. 이 방법은 액세스 관리의 효율성과 보안을 보장합니다. 이 페이지에서는 Milvus에서 사용자 및 역할을 만드는 방법을 소개합니다.
+
사용자
+
+
+
+
Milvus 인스턴스를 초기화한 후, Milvus에 처음 접속할 때 인증을 위해 루트 사용자가 자동으로 생성됩니다. 루트 사용자의 사용자 이름은 root 이고 비밀번호는 Milvus 입니다. 루트 사용자의 기본 역할은 admin 이며 모든 리소스에 대한 액세스 권한이 있습니다. 데이터 보안을 위해 루트 사용자의 자격 증명을 안전하게 보관하여 무단 액세스를 방지하세요.
+
일상적인 작업의 경우 루트 사용자를 사용하는 대신 사용자를 만드는 것이 좋습니다.
+
사용자 만들기
다음 예는 사용자 아이디 user_1 와 비밀번호 P@ssw0rd 를 사용하여 사용자를 만드는 방법을 보여줍니다. 사용자의 사용자 아이디와 비밀번호는 다음 규칙을 따라야 합니다.
+
+
사용자 아이디: 문자로 시작해야 하며 대문자 또는 소문자, 숫자, 밑줄만 포함할 수 있습니다.
+
비밀번호: 8~64자 길이여야 하며 대문자, 소문자, 숫자, 특수 문자 중 세 가지를 포함해야 합니다.
YAML 파일에서 독립 실행형 서비스의 환경 변수를 다음과 같이 몇 가지 변경해야 합니다:
특정 GPU 장치를 Milvus에 할당하려면 standalone 서비스 정의에서 deploy.resources.reservations.devices[0].devices_ids 필드를 찾아 해당 값을 원하는 GPU의 ID로 바꿉니다. NVIDIA GPU 디스플레이 드라이버에 포함된 nvidia-smi 도구를 사용하여 GPU 장치의 ID를 확인할 수 있습니다. Milvus는 여러 GPU 장치를 지원합니다.
Milvus의 새로운 기능을 알아보세요! 이 페이지에는 각 릴리스의 새로운 기능, 개선 사항, 알려진 문제 및 버그 수정 사항이 요약되어 있습니다. 이 섹션에서 v2.5.0 이후 출시된 각 버전에 대한 릴리스 노트를 확인할 수 있습니다. 이 페이지를 정기적으로 방문하여 업데이트에 대해 알아보는 것이 좋습니다.
-
v2.5.0-beta
+
v2.5.0
-
릴리스 날짜: 2024년 11월 26일
+
릴리스 날짜: 2024년 12월 23일
Milvus 버전
Python SDK 버전
Node.js SDK 버전
Java SDK 버전
-
2.5.0-beta
2.5.0
2.5.0
2.5.0
+
2.5.0
2.5.1
2.5.2
2.5.2
-
Milvus 2.5.0-beta는 벡터 검색과 대규모 데이터 관리를 다루는 사용자의 사용성, 확장성, 성능을 향상시키기 위해 상당한 발전을 가져왔습니다. 이번 릴리스에서는 용어 기반 검색, 쿼리 최적화를 위한 클러스터링 압축, 희소 및 고밀도 벡터 검색 방법에 대한 다양한 지원과 같은 강력한 새 기능이 통합되었습니다. 클러스터 관리, 인덱싱, 데이터 처리 기능이 향상되어 새로운 수준의 유연성과 사용 편의성이 도입되어 Milvus는 더욱 강력하고 사용자 친화적인 벡터 데이터베이스가 되었습니다.
+
Milvus 2.5.0은 벡터 검색과 대규모 데이터 관리를 다루는 사용자들을 위해 사용성, 확장성, 성능을 향상시키는 중요한 발전을 가져왔습니다. 이번 릴리스에서는 용어 기반 검색, 쿼리 최적화를 위한 클러스터 압축, 희소 및 고밀도 벡터 검색 방법에 대한 다양한 지원과 같은 강력한 새 기능이 통합되었습니다. 클러스터 관리, 인덱싱, 데이터 처리 기능이 향상되어 새로운 수준의 유연성과 사용 편의성이 도입되어 Milvus는 더욱 강력하고 사용자 친화적인 벡터 데이터베이스가 되었습니다.
주요 기능
전체 텍스트 검색
Milvus 2.5는 Sparse-BM25로 구현된 전체 텍스트 검색을 지원합니다! 이 기능은 특히 희귀한 단어나 전문 용어가 포함된 시나리오에서 Milvus의 강력한 시맨틱 검색 기능을 보완하는 중요한 기능입니다. 이전 버전에서 Milvus는 키워드 검색 시나리오를 지원하기 위해 스파스 벡터를 지원했습니다. 이러한 희소 벡터는 SPLADEv2/BGE-M3와 같은 신경 모델이나 BM25 알고리즘과 같은 통계 모델에 의해 Milvus 외부에서 생성되었습니다.
-
Tantivy를 기반으로 하는 Milvus 2.5는 분석기와 스파스 벡터 추출을 내장하고 있으며, 벡터를 입력으로만 받던 API를 텍스트를 직접 받을 수 있도록 확장했습니다. BM25 통계 정보는 데이터가 입력되는 대로 실시간으로 업데이트되어 사용성과 정확성이 향상되었습니다. 또한 근사 근사 이웃(ANN) 알고리즘을 기반으로 하는 희소 벡터는 표준 키워드 검색 시스템보다 더 강력한 성능을 제공합니다.
+
Tantivy를 기반으로 하는 Milvus 2.5는 분석기와 스파스 벡터 추출 기능이 내장되어 있어, 벡터를 입력으로만 받던 API를 텍스트를 직접 받을 수 있도록 확장했습니다. BM25 통계 정보는 데이터가 입력되는 대로 실시간으로 업데이트되어 사용성과 정확성이 향상되었습니다. 또한 근사 근사 이웃(ANN) 알고리즘을 기반으로 하는 희소 벡터는 표준 키워드 검색 시스템보다 더 강력한 성능을 제공합니다.
대규모 데이터와 풍부한 기능을 보다 효과적으로 지원하기 위해 Milvus의 정교한 설계에는 다양한 종속성, 수많은 노드 역할, 복잡한 데이터 구조 등이 포함되어 있습니다. 이러한 측면은 사용 및 유지 관리에 어려움을 초래할 수 있습니다.
Milvus 2.5는 빌트인 클러스터 관리 웹UI를 도입하여 Milvus의 복잡한 런타임 환경 정보를 시각화함으로써 시스템 유지 관리의 어려움을 줄여줍니다. 여기에는 데이터베이스 및 컬렉션, 세그먼트, 채널, 종속성, 노드 상태, 작업 정보, 느린 쿼리 등에 대한 세부 정보가 포함됩니다.
@@ -58,11 +58,11 @@ title: 릴리스 노트
기본값과 널 가능 속성은 Milvus에 더 큰 유연성을 제공합니다. 사용자는 컬렉션을 만들 때 값이 불확실한 필드에 이 기능을 활용할 수 있습니다. 또한 다른 데이터베이스 시스템에서 Milvus로 데이터 마이그레이션을 간소화하여 원래의 기본값 설정을 유지하면서 null 값이 포함된 데이터 세트를 처리할 수 있습니다.
Faiss 커뮤니티와의 긴밀한 협력을 통해 Faiss의 HNSW 알고리즘은 기능과 성능 모두에서 상당한 개선을 이루었습니다. 안정성과 유지보수성을 고려하여 Milvus 2.5는 HNSW에 대한 지원을 hnswlib에서 Faiss로 공식적으로 마이그레이션했습니다.
-
Milvus 2.5는 Faiss를 기반으로 다양한 시나리오의 요구 사항을 충족하기 위해 HNSW에서 여러 양자화 방법을 지원합니다: SQ(스칼라 퀀타이저), PQ(제품 퀀타이저), PRQ(제품 잔여 퀀타이저)가 그것입니다. SQ와 PQ가 더 일반적인데, SQ는 쿼리 성능과 빌드 속도가 우수하고, PQ는 동일한 압축률에서 더 나은 리콜을 제공합니다. 많은 벡터 데이터베이스는 일반적으로 SQ 양자화의 간단한 형태인 이진 양자화를 사용합니다.
+
Milvus 2.5는 Faiss를 기반으로 다양한 시나리오의 요구 사항을 충족하기 위해 HNSW에서 여러 양자화 방법을 지원합니다: SQ(스칼라 퀀타이저), PQ(제품 퀀타이저), PRQ(제품 잔여 퀀타이저)가 그것입니다. SQ와 PQ가 더 일반적으로 사용되는데, SQ는 쿼리 성능과 빌드 속도가 우수하고, PQ는 동일한 압축률에서 더 나은 리콜을 제공합니다. 많은 벡터 데이터베이스는 일반적으로 SQ 양자화의 간단한 형태인 이진 양자화를 사용합니다.
PRQ는 PQ와 AQ(애디티브 퀀타이저)의 융합입니다. PQ와 비교했을 때, 특히 높은 압축률에서 더 나은 리콜을 제공하기 위해 더 긴 빌드 시간이 필요하며, 이진 압축이라고 합니다.
클러스터링 압축(베타)
Milvus 2.5에는 대규모 컬렉션에서 검색을 가속화하고 비용을 절감하기 위해 클러스터링 압축이 도입되었습니다. 스칼라 필드를 클러스터링 키로 지정하면 데이터를 범위별로 재분배하여 저장 및 검색을 최적화할 수 있습니다. 글로벌 인덱스처럼 작동하는 이 기능은 클러스터링 메타데이터를 기반으로 쿼리 중에 데이터를 효율적으로 정리하여 스칼라 필터를 적용할 때 검색 성능을 향상시킬 수 있습니다.
Milvus 2.5에는 미리 쓰기 로깅(WAL) 서비스를 제공하는 스트리밍 노드라는 새로운 구성 요소가 도입되었습니다. 이를 통해 Milvus는 채널 읽기 및 쓰기 전후에 합의를 달성하여 새로운 특징, 기능 및 최적화를 실현할 수 있습니다. 이 기능은 Milvus 2.5에서는 기본적으로 비활성화되어 있으며 3.0 버전에서 공식적으로 제공될 예정입니다.
+
기타 기능
스트리밍 노드(베타)
Milvus 2.5에는 미리 쓰기 로깅(WAL) 서비스를 제공하는 스트리밍 노드라는 새로운 구성 요소가 도입되었습니다. 이를 통해 Milvus는 채널 읽기 및 쓰기 전후에 합의를 달성하여 새로운 특징, 기능 및 최적화를 실현할 수 있습니다. 이 기능은 Milvus 2.5에서 기본적으로 비활성화되어 있으며 3.0 버전에서 공식적으로 제공될 예정입니다.
IPv6 지원
Milvus는 이제 IPv6를 지원하여 네트워크 연결성과 호환성을 확장합니다.
CSV 일괄 가져오기
이제 Milvus는 JSON 및 Parquet 형식 외에도 CSV 형식의 데이터를 직접 대량으로 가져올 수 있습니다.
쿼리 가속화를 위한 표현식 템플릿
Milvus는 이제 표현식 템플릿을 지원하여 특히 복잡한 표현식이 있는 시나리오에서 표현식 구문 분석의 효율성을 향상시킵니다.
@@ -78,6 +78,9 @@ title: 릴리스 노트
종속성 업그레이드
ETCD 3.5.16 및 Pulsar 3.0.7 LTS로 업그레이드하여 기존 CVE를 수정하고 보안을 강화했습니다. 참고: Pulsar 3.x로의 업그레이드는 이전 2.x 버전과 호환되지 않습니다.
이미 Milvus를 배포한 사용자의 경우, 새로운 기능을 사용하려면 먼저 ETCD 및 Pulsar 구성 요소를 업그레이드해야 합니다. 자세한 내용은 Pulsar를 2.x에서 3.x로 업그레이드하기를 참조하세요.
로컬 스토리지 V2
Milvus 2.5에 새로운 로컬 파일 형식이 도입되어 스칼라 데이터의 로딩 및 쿼리 효율성이 향상되고 메모리 오버헤드가 줄어들며 향후 최적화를 위한 토대가 마련되었습니다.
-
표현식 구문 분석 최적화
반복 표현식에 대한 캐싱 구현, ANTLR 업그레이드, NOT IN 절의 성능 최적화를 통해 표현식 구문 분석이 개선되었습니다.
+
표현식 구문 분석 최적화
반복 표현식에 대한 캐싱을 구현하고, ANTLR을 업그레이드하고, NOT IN 절의 성능을 최적화하여 표현식 구문 분석이 개선되었습니다.
DDL 동시성 성능 개선
데이터 정의 언어(DDL) 작업의 동시성 성능을 최적화했습니다.
RESTful API 기능 조정
일관성을 위해 RESTful API의 기능을 다른 SDK와 정렬했습니다.
+
보안 및 구성 업데이트
보다 복잡한 환경이나 엔터프라이즈 환경에서 노드 간 통신을 보호하기 위해 TLS를 지원합니다. 자세한 내용은 보안 구성을 참조하세요.
+
압축 성능 개선
혼합 압축에서 최대 세그먼트 제한을 제거하고 이제 작은 세그먼트부터 우선순위를 지정하여 효율성이 향상되고 대규모 또는 조각화된 데이터 세트의 쿼리 속도가 빨라졌습니다.
+
점수 기반 채널 밸런싱
채널 간 부하를 동적으로 분산하는 정책을 도입하여 대규모 배포에서 리소스 활용률과 전반적인 안정성을 향상시켰습니다.
컬렉션을 특정 기간 동안 삭제해야 하는 경우 TTL(Time-To-Live)을 초 단위로 설정하는 것이 좋습니다. TTL이 초과되면 Milvus는 컬렉션의 엔티티를 삭제하고 컬렉션을 삭제합니다. 삭제는 비동기식으로 이루어지므로 삭제가 완료되기 전에도 검색 및 쿼리가 여전히 가능합니다.
+
컬렉션을 특정 기간 동안 삭제해야 하는 경우 TTL(Time-To-Live)을 초 단위로 설정하는 것이 좋습니다. TTL이 초과되면 Milvus는 컬렉션의 엔티티를 삭제합니다. 삭제는 비동기식으로 이루어지므로 삭제가 완료되기 전에도 검색과 쿼리가 여전히 가능합니다.
import io.milvus.v2.service.collection.request.AlterCollectionReq;
import java.util.HashMap;
diff --git a/localization/v2.5.x/site/ko/userGuide/schema/string.md b/localization/v2.5.x/site/ko/userGuide/schema/string.md
index 799a76f5c..e0f13cc3a 100644
--- a/localization/v2.5.x/site/ko/userGuide/schema/string.md
+++ b/localization/v2.5.x/site/ko/userGuide/schema/string.md
@@ -3,9 +3,9 @@ id: string.md
title: 문자열 필드
summary: >-
Milvus에서 VARCHAR는 문자열형 데이터를 저장하는 데 사용되는 데이터 유형으로, 가변 길이 문자열을 저장하는 데 적합합니다. 최대
- 60,535자의 단일 및 다중 바이트 문자열을 모두 저장할 수 있으며, 최대 길이는 60,535자입니다. VARCHAR 필드를 정의할 때는
- 최대 길이 매개변수 max_length도 지정해야 합니다. VARCHAR 문자열 유형은 텍스트 데이터를 저장하고 관리하는 효율적이고 유연한
- 방법을 제공하므로 다양한 길이의 문자열을 처리하는 애플리케이션에 이상적입니다.
+ 65,535자까지 단일 및 멀티바이트 문자로 문자열을 저장할 수 있습니다. VARCHAR 필드를 정의할 때는 최대 길이 매개변수
+ max_length도 지정해야 합니다. VARCHAR 문자열 유형은 텍스트 데이터를 저장하고 관리하는 효율적이고 유연한 방법을 제공하므로
+ 다양한 길이의 문자열을 처리하는 애플리케이션에 이상적입니다.
---
Milvus에서 VARCHAR 은 문자열 유형 데이터를 저장하는 데 사용되는 데이터 유형으로, 가변 길이 문자열을 저장하는 데 적합합니다. 최대 60,535자의 단일 및 다중 바이트 문자열을 모두 저장할 수 있으며, 최대 길이는 60,535자입니다. VARCHAR 필드를 정의할 때는 최대 길이 매개변수 max_length 도 지정해야 합니다. VARCHAR 문자열 유형은 텍스트 데이터를 저장하고 관리하는 효율적이고 유연한 방법을 제공하므로 다양한 길이의 문자열을 처리하는 애플리케이션에 이상적입니다.
+
Milvus에서 VARCHAR 은 문자열 유형 데이터를 저장하는 데 사용되는 데이터 유형으로, 가변 길이 문자열을 저장하는 데 적합합니다. 최대 65,535자까지 단일 및 멀티바이트 문자로 문자열을 저장할 수 있습니다. VARCHAR 필드를 정의할 때는 최대 길이 매개변수 max_length 도 지정해야 합니다. VARCHAR 문자열 유형은 텍스트 데이터를 저장하고 관리하는 효율적이고 유연한 방법을 제공하므로 다양한 길이의 문자열을 처리하는 애플리케이션에 이상적입니다.
VARCHAR 필드 추가배열 연산자
+
+
+
+
Milvus는 배열 필드를 쿼리하는 강력한 연산자를 제공하여 배열의 내용을 기반으로 엔티티를 필터링하고 검색할 수 있습니다.
+
+
배열 내의 모든 요소는 동일한 유형이어야 하며 배열 내의 중첩 구조는 일반 문자열로 취급됩니다. 따라서 배열 필드로 작업할 때는 최적의 성능을 위해 지나치게 깊은 중첩을 피하고 데이터 구조가 가능한 한 평평한지 확인하는 것이 좋습니다.
+
+
사용 가능한 ARRAY 연산자
+
+
+
+
ARRAY 연산자를 사용하면 Milvus에서 배열 필드를 세밀하게 쿼리할 수 있습니다. 이러한 연산자는 다음과 같습니다.
그러면 history_temperatures 배열의 요소가 10개 미만인 모든 엔티티가 반환됩니다.
diff --git a/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/basic-operators.json b/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/basic-operators.json
new file mode 100644
index 000000000..677dd66b3
--- /dev/null
+++ b/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/basic-operators.json
@@ -0,0 +1 @@
+{"codeList":["filter = 'status == \"active\"'\n\n","filter = 'status != \"inactive\"'\n\n","filter = 'age > 30'\n\n","filter = 'price < 100'\n\n","filter = 'rating >= 4'\n\n","filter = 'discount <= 10'\n\n","filter = 'color in [\"red\", \"green\", \"blue\"]'\n\n","filter = 'name LIKE \"Prod%\"'\n\n","filter = 'name LIKE \"%XYZ\"'\n\n","filter = 'name LIKE \"%Pro%\"'\n\n","filter = 'total == base_price + tax'\n\n","filter = 'quantity - quantity_sold > 50'\n\n","filter = 'price * quantity > 1000'\n\n","filter = 'total_price / quantity < 50'\n\n","filter = 'id % 2 == 0'\n\n","filter = 'price ** 2 > 1000'\n\n","filter = 'price > 100 AND stock > 50'\n\n","filter = 'color == \"red\" OR color == \"blue\"'\n\n","filter = 'NOT color == \"green\"'\n\n","filter = 'product[\"price\"] > 1000'\n\n","filter = 'history_temperatures[0] > 30'\n\n"],"headingContent":"Basic Operators","anchorList":[{"label":"기본 연산자","href":"Basic-Operators","type":1,"isActive":false},{"label":"비교 연산자","href":"Comparison-operators","type":2,"isActive":false},{"label":"범위 연산자","href":"Range-operators","type":2,"isActive":false},{"label":"산술 연산자","href":"Arithmetic-Operators","type":2,"isActive":false},{"label":"논리 연산자","href":"Logical-Operators","type":2,"isActive":false},{"label":"JSON 및 배열 필드에서 기본 연산자 사용에 대한 팁","href":"Tips-on-Using-Basic-Operators-with-JSON-and-ARRAY-Fields","type":2,"isActive":false},{"label":"결론","href":"Conclusion","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/basic-operators.md b/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/basic-operators.md
new file mode 100644
index 000000000..c2250523b
--- /dev/null
+++ b/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/basic-operators.md
@@ -0,0 +1,234 @@
+---
+id: basic-operators.md
+summary: >-
+ Milvus는 데이터를 효율적으로 필터링하고 쿼리하는 데 도움이 되는 다양한 기본 연산자 세트를 제공합니다. 이러한 연산자를 사용하면 스칼라
+ 필드, 숫자 계산, 논리적 조건 등을 기반으로 검색 조건을 세분화할 수 있습니다. 이러한 연산자를 사용하는 방법을 이해하는 것은 정확한
+ 쿼리를 작성하고 검색의 효율성을 극대화하는 데 매우 중요합니다.
+title: 기본 연산자
+---
+
기본 연산자
+
+
+
+
Milvus는 데이터를 효율적으로 필터링하고 쿼리하는 데 도움이 되는 다양한 기본 연산자 세트를 제공합니다. 이러한 연산자를 사용하면 스칼라 필드, 숫자 계산, 논리적 조건 등을 기반으로 검색 조건을 세분화할 수 있습니다. 이러한 연산자를 사용하는 방법을 이해하는 것은 정확한 쿼리를 작성하고 검색의 효율성을 극대화하는 데 매우 중요합니다.
+
비교 연산자
+
+
+
+
비교 연산자는 같음, 같지 않음 또는 크기에 따라 데이터를 필터링하는 데 사용됩니다. 숫자, 텍스트, 날짜 필드에 적용할 수 있습니다.
+
지원되는 비교 연산자
+
== (같음)
+
!= (같지 않음)
+
> (보다 큼)
+
< (보다 작음)
+
>= (보다 크거나 같음)
+
<= (다음보다 작거나 같음)
+
+
예 1: 같음(==)으로 필터링
status 이라는 필드가 있고 status 이 "활성"인 모든 엔터티를 찾고자 한다고 가정합니다. 같음 연산자 == 를 사용할 수 있습니다.
+
filter = 'status == "active"'
+
+
+
예 2: 같지 않음 (!=)으로 필터링하기
status 이 "비활성"이 아닌 엔터티를 찾으려는 경우.
+
filter = 'status != "inactive"'
+
+
+
예 3: Greater Than (>)으로 필터링하기
age 이 30보다 큰 모든 엔터티를 찾으려는 경우.
+
filter = 'age > 30'
+
+
+
예 4: 미만 (<)으로 필터링하기
price 이 100 미만인 엔터티를 찾으려면 다음과 같이 하세요.
+
filter = 'price < 100'
+
+
+
예 5: 보다 크거나 같음(>=)으로 필터링하기
rating 이 4보다 크거나 같은 모든 엔터티를 찾으려는 경우.
+
filter = 'rating >= 4'
+
+
+
예 6: 보다 작거나 같음(<=)으로 필터링하기
discount 이 10% 이하인 엔터티를 찾으려면.
+
filter = 'discount <= 10'
+
+
+
범위 연산자
+
+
+
+
범위 연산자는 특정 집합 또는 값 범위를 기준으로 데이터를 필터링하는 데 도움이 됩니다.
+
지원되는 범위 연산자
+
IN: 특정 집합 또는 범위 내의 값을 일치시키는 데 사용됩니다.
+
LIKE: 패턴을 일치시키는 데 사용됩니다(주로 텍스트 필드에 사용).
+
+
예 1: IN 사용하여 여러 값 일치시키기
color 이 "빨간색", "녹색" 또는 "파란색"인 모든 엔티티를 찾고자 하는 경우.
+
filter = 'color in ["red", "green", "blue"]'
+
+
+
이 방법은 값 목록에서 멤버십 여부를 확인하려는 경우에 유용합니다.
+
예 2: 패턴 일치에 LIKE 사용
LIKE 연산자는 문자열 필드에서 패턴 일치에 사용됩니다. 이 연산자는 텍스트 내에서 접두사, 접두사 또는 접미사 등 다양한 위치의 하위 문자열을 일치시킬 수 있습니다. LIKE 연산자는 % 기호를 와일드카드로 사용하며, 0을 포함하여 원하는 수의 문자를 일치시킬 수 있습니다.
+
접두사 일치(다음으로 시작)
문자열이 지정된 패턴으로 시작하는 접두사 일치를 수행하려면 패턴을 처음에 배치하고 % 을 사용하여 그 뒤에 오는 모든 문자를 일치시킬 수 있습니다. 예를 들어 name 가 "Prod"로 시작하는 모든 제품을 찾으려면.
+
filter = 'name LIKE "Prod%"'
+
+
+
이렇게 하면 "제품 A", "제품 B" 등과 같이 이름이 "Prod"로 시작하는 모든 제품이 일치합니다.
+
접미사 일치(끝으로 끝남)
문자열이 지정된 패턴으로 끝나는 접미사 일치의 경우, 패턴의 시작 부분에 % 기호를 배치합니다. 예를 들어 name 이 "XYZ"로 끝나는 모든 제품을 찾으려면.
+
filter = 'name LIKE "%XYZ"'
+
+
+
이렇게 하면 이름이 "XYZ"로 끝나는 모든 제품(예: "ProductXYZ", "SampleXYZ" 등)이 일치합니다.
+
접두사 일치(포함)
문자열의 어느 위치에나 패턴이 나타날 수 있는 접두사 일치를 수행하려면 패턴의 시작과 끝 모두에 % 기호를 배치하면 됩니다. 예를 들어 name 에 "Pro"라는 단어가 포함된 모든 제품을 찾습니다.
+
filter = 'name LIKE "%Pro%"'
+
+
+
이렇게 하면 이름에 "Pro"가 포함된 모든 제품(예: "Product", "ProLine" 또는 "SuperPro")이 일치합니다.
+
산술 연산자
+
+
+
+
산술 연산자를 사용하면 숫자 필드와 관련된 계산을 기반으로 조건을 생성할 수 있습니다.
+
지원되는 산술 연산자.
+
+ (더하기)
+
- (빼기)
+
* (곱셈)
+
/ (나누기)
+
% (모듈러스)
+
** (지수)
+
+
예 1: 더하기(+) 사용
total 가격이 base_price 과 tax 의 합계인 엔티티를 찾으려면.
+
filter = 'total == base_price + tax'
+
+
+
예 2: 빼기 사용 (-)
quantity 이 50보다 크고 quantity_sold 이 30보다 작은 엔티티를 찾으려면.
+
filter = 'quantity - quantity_sold > 50'
+
+
+
예 3: 곱하기 사용 (*)
price 가 100보다 크고 quantity 가 10보다 큰 엔터티를 찾으려면 곱하기.
+
filter = 'price * quantity > 1000'
+
+
+
예 4: 나누기 사용 (/)
total_price 를 quantity 로 나눈 값이 50보다 작은 제품을 찾으려면.
+
filter = 'total_price / quantity < 50'
+
+
+
예 5: 모듈러스 사용 (%)
id 이 짝수(즉, 2로 나눌 수 있는)인 엔티티를 찾으려면 다음과 같이 하세요.
+
filter = 'id % 2 == 0'
+
+
+
예 6: 지수 사용(**)
price 를 2의 거듭 제곱한 값이 1000보다 큰 엔터티를 찾으려면 다음과 같이 하세요.
+
filter = 'price ** 2 > 1000'
+
+
+
논리 연산자
+
+
+
+
논리 연산자는 여러 조건을 보다 복잡한 필터 표현식으로 결합하는 데 사용됩니다. 여기에는 AND, OR, NOT 등이 포함됩니다.
+
지원되는 논리 연산자
+
AND: 모두 참이어야 하는 여러 조건을 결합합니다.
+
OR: 하나 이상의 조건이 참이어야 하는 조건을 결합합니다.
+
NOT: 조건을 무효화합니다.
+
+
예 1: AND 사용하여 조건 결합하기
price 가 100보다 크고 stock 가 50보다 큰 모든 제품을 찾습니다.
+
filter = 'price > 100 AND stock > 50'
+
+
+
예 2: OR 사용하여 조건 결합하기
color 이 "빨간색" 또는 "파란색"인 모든 제품을 찾으려면.
+
filter = 'color == "red" OR color == "blue"'
+
+
+
예 3: NOT 사용하여 조건 제외하기
color 이 "녹색"이 아닌 모든 제품을 찾으려면.
+
filter = 'NOT color == "green"'
+
+
+
JSON 및 배열 필드에서 기본 연산자 사용에 대한 팁
+
+
+
+
Milvus의 기본 연산자는 다목적이며 스칼라 필드에 적용할 수 있지만, JSON 및 ARRAY 필드의 키와 인덱스에도 효과적으로 사용할 수 있습니다.
+
예를 들어 price, model, tags 과 같은 여러 개의 키가 포함된 product 필드가 있는 경우 항상 키를 직접 참조하세요.
+
filter = 'product["price"] > 1000'
+
+
+
기록된 온도 배열에서 첫 번째 온도가 특정 값을 초과하는 기록을 찾으려면 다음을 사용합니다.
+
filter = 'history_temperatures[0] > 30'
+
+
+
결론
+
+
+
+
Milvus는 데이터를 유연하게 필터링하고 쿼리할 수 있는 다양한 기본 연산자를 제공합니다. 비교, 범위, 산술 및 논리 연산자를 결합하여 강력한 필터 표현식을 만들어 검색 결과의 범위를 좁히고 필요한 데이터를 효율적으로 검색할 수 있습니다.
diff --git a/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/boolean.json b/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/boolean.json
new file mode 100644
index 000000000..bd7f4b120
--- /dev/null
+++ b/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/boolean.json
@@ -0,0 +1 @@
+{"codeList":["filter='color in [\"red\", \"green\", \"blue\"]'\n\n","filter='product[\"model\"] == \"JSN-087\" AND product[\"price\"] < 1850'\n\n","filter='history_temperatures[10] > 23'\n\n","filter = \"age > 25 AND city IN ['北京', '上海']\"\n\n","filter = \"age > {age} AND city in {city}\",\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter='json_contains(tags, \"sale\")'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\", \"discount\"]}\nfilter='json_contains_all(tags, [\"electronics\", \"sale\", \"new\"])'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter='json_contains_any(tags, [\"electronics\", \"new\", \"clearance\"])'\n\n","filter=\"ARRAY_CONTAINS(history_temperatures, 23)\"\n\n","filter=\"ARRAY_CONTAINS_ALL(history_temperatures, [23, 24])\"\n\n","filter=\"ARRAY_CONTAINS_ANY(history_temperatures, [23, 24])\"\n\n","filter=\"ARRAY_LENGTH(history_temperatures) < 10\"\n\n"],"headingContent":"Filtering Explained","anchorList":[{"label":"필터링 설명","href":"Filtering-Explained","type":1,"isActive":false},{"label":"기본 연산자","href":"Basic-operators","type":2,"isActive":false},{"label":"필터 표현식 템플릿","href":"Filter-expression-templates","type":2,"isActive":false},{"label":"데이터 유형별 연산자","href":"Data-type-specific-operators","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/boolean.md b/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/boolean.md
new file mode 100644
index 000000000..32fae85a4
--- /dev/null
+++ b/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/boolean.md
@@ -0,0 +1,144 @@
+---
+id: boolean.md
+summary: >-
+ Milvus는 데이터를 정밀하게 쿼리할 수 있는 강력한 필터링 기능을 제공합니다. 필터 표현식을 사용하면 특정 스칼라 필드를 대상으로
+ 지정하고 다양한 조건으로 검색 결과를 구체화할 수 있습니다. 이 가이드에서는 쿼리 작업에 초점을 맞춘 예제를 통해 Milvus에서 필터
+ 표현식을 사용하는 방법을 설명합니다. 검색 및 삭제 요청에도 이러한 필터를 적용할 수 있습니다.
+title: 필터링 설명
+---
+
필터링 설명
+
+
+
+
Milvus는 데이터를 정밀하게 쿼리할 수 있는 강력한 필터링 기능을 제공합니다. 필터 표현식을 사용하면 특정 스칼라 필드를 대상으로 지정하고 다양한 조건으로 검색 결과를 구체화할 수 있습니다. 이 가이드에서는 쿼리 작업에 초점을 맞춘 예제를 통해 Milvus에서 필터 표현식을 사용하는 방법을 설명합니다. 검색 및 삭제 요청에도 이러한 필터를 적용할 수 있습니다.
+
기본 연산자
+
+
+
+
Milvus는 데이터 필터링을 위한 몇 가지 기본 연산자를 지원합니다.
+
+
비교 연산자==, !=, >, <, >=, <= 를 사용하면 숫자, 텍스트 또는 날짜 필드를 기준으로 필터링할 수 있습니다.
+
범위 필터: IN 및 LIKE 은 특정 값 범위 또는 집합을 일치시키는 데 도움이 됩니다.
+
산술 연산자: +, -, *, /, %, ** 은 숫자 필드와 관련된 계산에 사용됩니다.
+
논리 연산자: AND, OR, NOT 은 여러 조건을 복잡한 표현식으로 결합합니다.
+
+
예시: 색상별 필터링
스칼라 필드 color 에서 원색(빨강, 녹색 또는 파랑)을 가진 엔티티를 찾으려면 다음 필터 표현식을 사용합니다.
+
filter='color in ["red", "green", "blue"]'
+
+
+
예시: JSON 필드 필터링
Milvus에서는 JSON 필드에서 키를 참조할 수 있습니다. 예를 들어 키가 price 및 model 인 JSON 필드 product 가 있고 특정 모델과 가격이 1,850보다 낮은 제품을 찾고자 하는 경우 다음 필터 표현식을 사용합니다.
+
filter='product["model"] == "JSN-087" AND product["price"] < 1850'
+
+
+
예시: 배열 필드 필터링
온도 기록이 포함된 배열 필드 history_temperatures 가 있고 10번째 기록 온도가 23°C를 초과하는 관측소를 찾고자 하는 경우 이 표현식을 사용합니다.
diff --git a/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/filtering-templating.json b/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/filtering-templating.json
new file mode 100644
index 000000000..c67458724
--- /dev/null
+++ b/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/filtering-templating.json
@@ -0,0 +1 @@
+{"codeList":["filter = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\n\n","expr = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\nres = client.search(\n \"hello_milvus\",\n vectors[:nq],\n filter=expr,\n limit=10,\n output_fields=[\"age\", \"city\"],\n search_params={\"metric_type\": \"COSINE\", \"params\": {\"search_list\": 100}},\n filter_params=filter_params,\n)\n\n","expr = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\nres = client.query(\n \"hello_milvus\",\n filter=expr,\n output_fields=[\"age\", \"city\"],\n filter_params=filter_params\n)\n\n","expr = \"age > {age} AND city IN {city}\"\nfilter_params = {\"age\": 25, \"city\": [\"北京\", \"上海\"]}\nres = client.delete(\n \"hello_milvus\",\n filter=expr,\n filter_params=filter_params\n)\n\n"],"headingContent":"Filter Templating","anchorList":[{"label":"필터 템플릿","href":"Filter-Templating","type":1,"isActive":false},{"label":"개요","href":"Overview","type":2,"isActive":false},{"label":"검색 작업","href":"Search-Operations","type":2,"isActive":false},{"label":"쿼리 연산","href":"Query-Operations","type":2,"isActive":false},{"label":"삭제 작업","href":"Delete-Operations","type":2,"isActive":false},{"label":"결론","href":"Conclusion","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/filtering-templating.md b/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/filtering-templating.md
new file mode 100644
index 000000000..a7318a182
--- /dev/null
+++ b/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/filtering-templating.md
@@ -0,0 +1,152 @@
+---
+id: filtering-templating.md
+summary: >-
+ Milvus에서 수많은 요소가 포함된 복잡한 필터 표현식, 특히 CJK 문자와 같은 비 ASCII 문자가 포함된 표현식은 쿼리 성능에 큰
+ 영향을 미칠 수 있습니다. 이 문제를 해결하기 위해 Milvus는 복잡한 표현식을 구문 분석하는 데 소요되는 시간을 줄여 효율성을 개선하도록
+ 설계된 필터 표현식 템플릿 메커니즘을 도입했습니다. 이 페이지에서는 검색, 쿼리 및 삭제 작업에서 필터 표현식 템플릿을 사용하는 방법에 대해
+ 설명합니다.
+title: 필터링 템플릿
+---
+
필터 템플릿
+
+
+
+
Milvus에서 수많은 요소가 포함된 복잡한 필터 표현식, 특히 CJK 문자와 같은 비 ASCII 문자가 포함된 표현식은 쿼리 성능에 큰 영향을 미칠 수 있습니다. 이 문제를 해결하기 위해 Milvus는 복잡한 표현식을 구문 분석하는 데 소요되는 시간을 줄여 효율성을 개선하도록 설계된 필터 표현식 템플릿 메커니즘을 도입했습니다. 이 페이지에서는 검색, 쿼리 및 삭제 작업에서 필터 표현식 템플릿을 사용하는 방법에 대해 설명합니다.
+
개요
+
+
+
+
필터 표현식 템플릿을 사용하면 쿼리 실행 중에 값으로 동적으로 대체할 수 있는 자리 표시자를 사용하여 필터 표현식을 만들 수 있습니다. 템플릿을 사용하면 큰 배열이나 복잡한 표현식을 필터에 직접 포함하지 않아도 되므로 구문 분석 시간이 단축되고 쿼리 성능이 향상됩니다.
+
age 과 city 이라는 두 개의 필드가 포함된 필터 표현식이 있고, 나이가 25세 이상이고 '北京'(베이징) 또는 '上海'(상하이)에 거주하는 모든 사람을 찾고자 한다고 가정해 보겠습니다. 필터 표현식에 값을 직접 포함하는 대신 템플릿을 사용할 수 있습니다.
+
filter = "age > {age} AND city IN {city}"
+filter_params = {"age": 25, "city": ["北京", "上海"]}
+
+
+
여기서 {age} 및 {city} 은 쿼리가 실행될 때 filter_params 의 실제 값으로 대체되는 자리 표시자입니다.
+
Milvus에서 필터 표현식 템플릿을 사용하면 몇 가지 주요 이점이 있습니다.
+
+
구문분석 시간 단축: 크거나 복잡한 필터 표현식을 자리 표시자로 대체함으로써 시스템에서 필터를 구문 분석하고 처리하는 데 소요되는 시간을 줄일 수 있습니다.
+
쿼리 성능 향상: 구문 분석 오버헤드가 줄어들면 쿼리 성능이 향상되어 QPS가 높아지고 응답 시간이 빨라집니다.
+
확장성: 데이터 세트가 증가하고 필터 표현식이 더 복잡해져도 템플릿을 사용하면 효율적이고 확장 가능한 성능을 유지할 수 있습니다.
+
+
검색 작업
+
+
+
+
Milvus의 검색 작업에서 filter 표현식은 필터링 조건을 정의하는 데 사용되며, filter_params 매개변수는 자리 표시자의 값을 지정하는 데 사용됩니다. filter_params 사전에는 Milvus가 필터 표현식으로 대체하는 데 사용할 동적 값이 포함되어 있습니다.
filter_params 을 사용하면 Milvus는 값의 동적 삽입을 효율적으로 처리하여 쿼리 실행 속도를 향상시킵니다.
+
삭제 작업
+
+
+
+
삭제 작업에서도 필터 표현식 템플릿을 사용할 수 있습니다. 검색 및 쿼리와 마찬가지로 filter 식은 조건을 정의하고 filter_params 은 자리 표시자에 대한 동적 값을 제공합니다.
+
expr = "age > {age} AND city IN {city}"
+filter_params = {"age": 25, "city": ["北京", "上海"]}
+res = client.delete(
+ "hello_milvus",
+ filter=expr,
+ filter_params=filter_params
+)
+
+
+
이 접근 방식은 특히 복잡한 필터 조건을 처리할 때 삭제 작업의 성능을 향상시킵니다.
+
결론
+
+
+
+
필터 표현식 템플릿은 Milvus에서 쿼리 성능을 최적화하는 데 필수적인 도구입니다. 플레이스홀더와 filter_params 사전을 사용하면 복잡한 필터 표현식을 구문 분석하는 데 소요되는 시간을 크게 줄일 수 있습니다. 이는 쿼리 실행 속도와 전반적인 성능 향상으로 이어집니다.
diff --git a/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/json-operators.json b/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/json-operators.json
new file mode 100644
index 000000000..494a5816c
--- /dev/null
+++ b/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/json-operators.json
@@ -0,0 +1 @@
+{"codeList":["# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter = 'json_contains(tags, \"sale\")'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\", \"discount\"]}\nfilter = 'json_contains_all(tags, [\"electronics\", \"sale\", \"new\"])'\n\n","# JSON data: {\"tags\": [\"electronics\", \"sale\", \"new\"]}\nfilter = 'json_contains_any(tags, [\"electronics\", \"new\", \"clearance\"])'\n\n"],"headingContent":"JSON Operators","anchorList":[{"label":"JSON 연산자","href":"JSON-Operators","type":1,"isActive":false},{"label":"사용 가능한 JSON 연산자","href":"Available-JSON-Operators","type":2,"isActive":false},{"label":"JSON_CONTAINS","href":"JSONCONTAINS","type":2,"isActive":false},{"label":"JSON_contains_all","href":"JSONCONTAINSALL","type":2,"isActive":false},{"label":"json_cotains_any","href":"JSONCOTAINSANY","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/json-operators.md b/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/json-operators.md
new file mode 100644
index 000000000..64e2fce52
--- /dev/null
+++ b/localization/v2.5.x/site/ko/userGuide/search-query-get/boolean/json-operators.md
@@ -0,0 +1,119 @@
+---
+id: json-operators.md
+summary: >-
+ Milvus는 JSON 필드 쿼리 및 필터링을 위한 고급 연산자를 지원하므로 복잡한 구조화된 데이터를 관리하는 데 적합합니다. 이러한
+ 연산자를 사용하면 JSON 문서를 매우 효과적으로 쿼리할 수 있으므로 JSON 필드 내의 특정 요소, 값 또는 조건에 따라 엔티티를 검색할
+ 수 있습니다. 이 섹션에서는 Milvus에서 JSON 전용 연산자를 사용하는 방법을 안내하고, 그 기능을 설명하기 위한 실제 예제를
+ 제공합니다.
+title: JSON 연산자
+---
+
JSON 연산자
+
+
+
+
Milvus는 JSON 필드 쿼리 및 필터링을 위한 고급 연산자를 지원하므로 복잡한 구조화된 데이터를 관리하는 데 적합합니다. 이러한 연산자를 사용하면 JSON 문서를 매우 효과적으로 쿼리할 수 있으므로 JSON 필드 내의 특정 요소, 값 또는 조건에 따라 엔티티를 검색할 수 있습니다. 이 섹션에서는 Milvus에서 JSON 전용 연산자를 사용하는 방법을 안내하고, 그 기능을 설명하기 위한 실제 예제를 제공합니다.
+
+
JSON 필드는 복잡한 중첩 구조를 처리할 수 없으며 모든 중첩 구조를 일반 문자열로 취급합니다. 따라서 JSON 필드로 작업할 때는 지나치게 깊은 중첩을 피하고 최적의 성능을 위해 데이터 구조가 가능한 한 평평한지 확인하는 것이 좋습니다.
+
+
사용 가능한 JSON 연산자
+
+
+
+
Milvus는 JSON 데이터를 필터링하고 쿼리하는 데 도움이 되는 몇 가지 강력한 JSON 연산자를 제공하며, 이러한 연산자는 다음과 같습니다.
이 경우 Milvus는 목록에 ["electronics", "new", "clearance"] 태그 중 하나 이상의 태그가 있는 모든 제품을 반환합니다. 제품에 이러한 태그 중 하나만 있는 경우에도 결과에 포함됩니다.
diff --git a/localization/v2.5.x/site/ko/userGuide/tools/milvus-webui.json b/localization/v2.5.x/site/ko/userGuide/tools/milvus-webui.json
new file mode 100644
index 000000000..86322f56d
--- /dev/null
+++ b/localization/v2.5.x/site/ko/userGuide/tools/milvus-webui.json
@@ -0,0 +1 @@
+{"codeList":[],"headingContent":"Milvus WebUI","anchorList":[{"label":"Milvus WebUI","href":"Milvus-WebUI","type":1,"isActive":false},{"label":"개요","href":"Overview","type":2,"isActive":false},{"label":"홈","href":"Home","type":2,"isActive":false},{"label":"컬렉션","href":"Collections","type":2,"isActive":false},{"label":"쿼리","href":"Query","type":2,"isActive":false},{"label":"데이터","href":"Data","type":2,"isActive":false},{"label":"작업","href":"Tasks","type":2,"isActive":false},{"label":"느린 요청","href":"Slow-requests","type":2,"isActive":false},{"label":"구성","href":"Configurations","type":2,"isActive":false},{"label":"도구","href":"Tools","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/ko/userGuide/tools/milvus-webui.md b/localization/v2.5.x/site/ko/userGuide/tools/milvus-webui.md
new file mode 100644
index 000000000..2e48add14
--- /dev/null
+++ b/localization/v2.5.x/site/ko/userGuide/tools/milvus-webui.md
@@ -0,0 +1,279 @@
+---
+id: milvus-webui.md
+summary: >-
+ Milvus 웹 UI는 Milvus를 위한 그래픽 관리 도구입니다. 간단하고 직관적인 인터페이스로 시스템 가시성을 향상시킵니다. 사용자는
+ 다음을 수행할 수 있습니다.
+title: Milvus WebUI
+---
+
Milvus WebUI
+
+
+
+
Milvus Web UI는 Milvus를 위한 그래픽 관리 도구입니다. 간단하고 직관적인 인터페이스로 시스템 관찰성을 향상시킵니다. Milvus Web UI를 사용하여 Milvus의 구성 요소 및 종속성에 대한 통계와 메트릭을 관찰하고, 데이터베이스 및 수집 세부 정보를 확인하고, 자세한 Milvus 구성을 나열할 수 있습니다.
+
개요
+
+
+
+
Milvus Web UI는 간단하고 직관적인 인터페이스로 전반적인 시스템 통합 가시성을 제공하는 기본 제공 도구라는 점에서 Birdwatcher 및 Attu와 다릅니다.
+
다음 표는 Milvus Web UI와 Birdwatcher/Attu의 기능을 비교한 것입니다:
웹 UI에서 두 가지 기본 제공 도구인 pprof와 Milvus 데이터 시각화 도구에 액세스할 수 있습니다.
+
+
홈
+
+
+
+
홈 페이지에서는 다음과 같은 정보를 확인할 수 있습니다:
+
+
+
+ Milvus 웹 UI 홈
+
+
시스템 정보: 배포 모드, 배포에 사용된 이미지 및 관련 정보를 포함한 시스템 정보를 볼 수 있습니다.
+
컴포넌트 정보: 쿼리 노드, 데이터 노드, 인덱스 노드, 코디네이터 및 프록시의 상태와 메트릭을 포함하여 Milvus의 구성 요소의 상태와 메트릭을 확인합니다.
+
연결된 클라이언트: 연결된 클라이언트와 SDK 유형 및 버전, 사용자 이름, 액세스 기록 등 해당 정보를 볼 수 있습니다.
+
시스템 종속성: 메타 저장소, 메시지 큐 및 개체 저장소의 상태 및 메트릭을 포함하여 Milvus의 종속성 상태 및 메트릭을 봅니다.
+
+
컬렉션
+
+
+
+
컬렉션 페이지에서는 현재 Milvus에 있는 데이터베이스 및 컬렉션 목록을 보고 세부 정보를 확인할 수 있습니다.
+
+
+
+ Milvus 웹 UI 컬렉션
+
+
데이터베이스: 현재 Milvus에 있는 데이터베이스 목록과 세부 정보를 확인할 수 있습니다.
+
컬렉션: 각 데이터베이스의 컬렉션 목록과 상세 정보를 확인할 수 있습니다.
+
+
쿼리
+
+
+
+
+
+
+ Milvus 웹 UI 쿼리 페이지
+
+
세그먼트: 세그먼트 목록과 세그먼트 ID, 해당 컬렉션, 상태, 크기 등의 세부 정보를 볼 수 있습니다.
+
출발지 열에서 세그먼트의 출처를 찾을 수 있습니다. 가능한 소스 표시기는 다음과 같습니다:
+
+
QN: 쿼리 노드
+
CT: QueryCoord의 현재 대상
+
NT: QueryCoord의 다음 대상
+
DIST: QueryCoord 내 분포
+
+
채널: 채널 목록과 채널 이름, 해당 컬렉션 등 채널의 세부 정보를 볼 수 있습니다.
+
출발지 열에서 세그먼트의 출처를 찾을 수 있습니다. 가능한 소스 표시기는 다음과 같습니다:
+
+
QN: 쿼리 노드
+
CT: QueryCoord의 현재 대상
+
NT: QueryCoord의 다음 대상
+
DIST: QueryCoord 내 분포
+
+
복제본: 복제본 목록과 복제본 ID, 해당 컬렉션 등 세부 정보를 볼 수 있습니다.
+
리소스 그룹: 리소스 그룹 목록과 리소스 그룹 이름, 그룹의 쿼리 노드 수, 구성 등을 포함한 세부 정보를 볼 수 있습니다.
+
+
데이터
+
+
+
+
+
+
+ Milvus 웹 UI 데이터 페이지
+
+
세그먼트: 데이터 노드/코디네이터의 세그먼트 목록과 세그먼트 ID, 해당 컬렉션, 상태, 크기 등 세부 정보를 볼 수 있습니다.
+
채널: 채널: 데이터 노드/코디네이터의 채널 목록과 채널 이름, 해당 컬렉션 등 세부 정보를 확인합니다.
+
+
작업
+
+
+
+
+
+
+ Milvus 웹 UI 작업 페이지
+
+
작업: 작업 유형, 상태 및 작업을 포함하여 Milvus에서 실행 중인 작업 목록을 볼 수 있습니다.
+
+
QueryCoord 작업: 지난 15분 동안의 밸런서, 인덱스/세그먼트/채널/리더 검사기를 포함한 모든 QueryCoord 스케줄러 작업을 봅니다.
+
압축 작업: 지난 15분 동안 데이터 코디네이터의 모든 압축 작업을 봅니다.
+
인덱스 구축 작업: 지난 30분 동안 데이터 코디네이터가 수행한 모든 인덱스 구축 작업을 볼 수 있습니다.
+
가져오기 작업: 지난 30분 동안 데이터 코디네이터가 수행한 모든 가져오기 작업을 봅니다.
+
데이터 동기화 작업: 지난 15분 동안 데이터 노드에서 발생한 모든 데이터 동기화 작업을 봅니다.
+
+
+
느린 요청
+
+
+
+
+
+
+ Milvus 웹 UI 느린 요청 페이지
+
+
느린 요청: 느린 요청은 구성에 지정된 proxy.slowQuerySpanInSeconds 값보다 지연 시간이 긴 검색 또는 쿼리입니다. 느린 요청 목록에는 지난 15분 동안의 모든 느린 요청이 표시됩니다.
+
+
구성
+
+
+
+
+
+
+ Milvus 웹 UI 구성 페이지
+
+
구성: Milvus 런타임 구성 목록과 해당 값을 볼 수 있습니다.
+
+
도구
+
+
+
+
+
pprof: Milvus 프로파일링 및 디버깅을 위한 pprof 도구에 액세스합니다.
+
Milvus 데이터 시각화 도구: Milvus의 데이터를 시각화하기 위한 Milvus 데이터 시각화 도구에 액세스합니다.
+
diff --git a/localization/v2.5.x/site/pt/adminGuide/config_jaeger_tracing.md b/localization/v2.5.x/site/pt/adminGuide/config_jaeger_tracing.md
index 51f409a0c..ed9197e18 100644
--- a/localization/v2.5.x/site/pt/adminGuide/config_jaeger_tracing.md
+++ b/localization/v2.5.x/site/pt/adminGuide/config_jaeger_tracing.md
@@ -67,7 +67,7 @@ $ kubectl create -f https://github.com/jaegertracing/jaeger-operator/releases/do
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
jaeger-operator111148s
-
2. Implantar o Jager
A maneira mais simples possível de criar uma instância do Jaeger é criando um arquivo YAML como o exemplo a seguir. Isso instalará a estratégia AllInOne padrão, que implanta a imagem all-in-one (combinando jaeger-agent, jaeger-collector, jaeger-query e Jaeger UI) em um único pod, usando o armazenamento na memória por padrão.
+
2. Implantar o Jaeger
A maneira mais simples possível de criar uma instância do Jaeger é criando um arquivo YAML como o exemplo a seguir. Isso instalará a estratégia AllInOne padrão, que implanta a imagem all-in-one (combinando jaeger-agent, jaeger-collector, jaeger-query e Jaeger UI) em um único pod, usando o armazenamento na memória por padrão.
Se você quiser armazenar traços por um longo tempo, consulte production-strategy.
apiVersion: jaegertracing.io/v1
kind: Jaeger
diff --git a/localization/v2.5.x/site/pt/adminGuide/configure-docker.json b/localization/v2.5.x/site/pt/adminGuide/configure-docker.json
index c69dd4245..e37669971 100644
--- a/localization/v2.5.x/site/pt/adminGuide/configure-docker.json
+++ b/localization/v2.5.x/site/pt/adminGuide/configure-docker.json
@@ -1 +1 @@
-{"codeList":["$ wget https://raw.githubusercontent.com/milvus-io/milvus/v2.5.0-beta/configs/milvus.yaml\n","# For Milvus standalone\n$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0-beta/milvus-standalone-docker-compose.yml -O docker-compose.yml\n","...\n standalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.2.13\n command: [\"milvus\", \"run\", \"standalone\"]\n environment:\n ETCD_ENDPOINTS: etcd:2379\n MINIO_ADDRESS: minio:9000\n volumes:\n - /local/path/to/your/milvus.yaml:/milvus/configs/milvus.yaml # Map the local path to the container path\n - ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/milvus:/var/lib/milvus\n ports:\n - \"19530:19530\"\n - \"9091:9091\"\n depends_on:\n - \"etcd\"\n - \"minio\"\n...\n","$ sudo docker compose up -d\n"],"headingContent":"Configure Milvus with Docker Compose","anchorList":[{"label":"Configurar o Milvus com o Docker Compose","href":"Configure-Milvus-with-Docker-Compose","type":1,"isActive":false},{"label":"Descarregar um ficheiro de configuração","href":"Download-a-configuration-file","type":2,"isActive":false},{"label":"Modificar o ficheiro de configuração","href":"Modify-the-configuration-file","type":2,"isActive":false},{"label":"Descarregar um ficheiro de instalação","href":"Download-an-installation-file","type":2,"isActive":false},{"label":"Modificar o ficheiro de instalação","href":"Modify-the-installation-file","type":2,"isActive":false},{"label":"Iniciar o Milvus","href":"Start-Milvus","type":2,"isActive":false},{"label":"O que se segue","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["$ wget https://raw.githubusercontent.com/milvus-io/milvus/v2.5.0/configs/milvus.yaml\n","# For Milvus standalone\n$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0/milvus-standalone-docker-compose.yml -O docker-compose.yml\n","...\n standalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.2.13\n command: [\"milvus\", \"run\", \"standalone\"]\n environment:\n ETCD_ENDPOINTS: etcd:2379\n MINIO_ADDRESS: minio:9000\n volumes:\n - /local/path/to/your/milvus.yaml:/milvus/configs/milvus.yaml # Map the local path to the container path\n - ${DOCKER_VOLUME_DIRECTORY:-.}/volumes/milvus:/var/lib/milvus\n ports:\n - \"19530:19530\"\n - \"9091:9091\"\n depends_on:\n - \"etcd\"\n - \"minio\"\n...\n","$ sudo docker compose up -d\n"],"headingContent":"Configure Milvus with Docker Compose","anchorList":[{"label":"Configurar o Milvus com o Docker Compose","href":"Configure-Milvus-with-Docker-Compose","type":1,"isActive":false},{"label":"Descarregar um ficheiro de configuração","href":"Download-a-configuration-file","type":2,"isActive":false},{"label":"Modificar o ficheiro de configuração","href":"Modify-the-configuration-file","type":2,"isActive":false},{"label":"Descarregar um ficheiro de instalação","href":"Download-an-installation-file","type":2,"isActive":false},{"label":"Modificar o ficheiro de instalação","href":"Modify-the-installation-file","type":2,"isActive":false},{"label":"Iniciar o Milvus","href":"Start-Milvus","type":2,"isActive":false},{"label":"O que se segue","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/pt/adminGuide/configure-docker.md b/localization/v2.5.x/site/pt/adminGuide/configure-docker.md
index 8b012621f..189ddc490 100644
--- a/localization/v2.5.x/site/pt/adminGuide/configure-docker.md
+++ b/localization/v2.5.x/site/pt/adminGuide/configure-docker.md
@@ -38,8 +38,8 @@ Na versão atual, todos os parâmetros entram em vigor somente após o reinício
d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"
>
-
diff --git a/localization/v2.5.x/site/pt/adminGuide/drop_users_roles.json b/localization/v2.5.x/site/pt/adminGuide/drop_users_roles.json
new file mode 100644
index 000000000..970e535d2
--- /dev/null
+++ b/localization/v2.5.x/site/pt/adminGuide/drop_users_roles.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\n# create a user\nclient.drop_user(user_name=\"user_1\")\n\n","import io.milvus.v2.client.ConnectConfig\nimport io.milvus.v2.client.MilvusClientV2\nimport io.milvus.v2.service.rbac.request.DropUserReq\n\nConnectConfig connectConfig = ConnectConfig.builder()\n .uri(\"http://localhost:19530\")\n .token(\"root:Milvus\")\n .build();\n \nMilvusClientV2 client = new MilvusClientV2(connectConfig);\n\nDropUserReq dropUserReq = DropUserReq.builder()\n .userName(\"user_1\")\n .build();\nclient.dropUser(dropUserReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nconst address = \"http://localhost:19530\";\nconst token = \"root:Milvus\";\nconst client = new MilvusClient({address, token});\n\nmilvusClient.deleteUser({\n username: 'user_1'\n})\n\n","export CLUSTER_ENDPOINT=\"http://localhost:19530\"\nexport TOKEN=\"root:Milvus\"\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/drop\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"userName\": \"user_1\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.list_users()\n\n","import io.milvus.v2.service.rbac.request.listUsersReq\n\nList resp = client.listUsers();\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nmilvusClient.listUsers()\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","['root']\n\n","from pymilvus import MilvusClient\n\nclient.drop_role(role_name=\"role_a\")\n\n","import io.milvus.v2.service.rbac.request.DropRoleReq\n\nDropRoleReq dropRoleReq = DropRoleReq.builder()\n .roleName(\"role_a\")\n .build();\nclient.dropRole(dropRoleReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nmilvusClient.dropRole({\n roleName: 'role_a',\n })\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/drop\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.list_roles()\n\n","List resp = client.listRoles();\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nmilvusClient.listRoles(\n includeUserInfo: True\n)\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","['admin']\n\n"],"headingContent":"Drop Users & Roles","anchorList":[{"label":"Eliminar utilizadores e funções","href":"Drop-Users--Roles","type":1,"isActive":false},{"label":"Eliminar um utilizador","href":"Drop-a-user","type":2,"isActive":false},{"label":"Eliminar uma função","href":"Drop-a-role","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/pt/adminGuide/drop_users_roles.md b/localization/v2.5.x/site/pt/adminGuide/drop_users_roles.md
new file mode 100644
index 000000000..187ba1e6e
--- /dev/null
+++ b/localization/v2.5.x/site/pt/adminGuide/drop_users_roles.md
@@ -0,0 +1,205 @@
+---
+id: drop_users_roles.md
+related_key: enable RBAC
+summary: >-
+ Para garantir a segurança dos dados, recomenda-se que elimine os utilizadores
+ e as funções que já não estão a ser utilizados. Este guia apresenta a forma de
+ eliminar utilizadores e funções.
+title: Eliminar utilizadores e funções
+---
+
Eliminar utilizadores e funções
+
+
+
+
Para garantir a segurança dos dados, recomenda-se que elimine os utilizadores e as funções que já não estão a ser utilizados. Este guia apresenta a forma de eliminar utilizadores e funções.
+
Eliminar um utilizador
+
+
+
+
O exemplo seguinte demonstra como eliminar o utilizador user_1.
Abaixo está um exemplo de saída. Não há role_a na lista. A operação de eliminação foi bem-sucedida.
+
['admin']
+
+
diff --git a/localization/v2.5.x/site/pt/adminGuide/grant_privileges.json b/localization/v2.5.x/site/pt/adminGuide/grant_privileges.json
new file mode 100644
index 000000000..12eae5dc7
--- /dev/null
+++ b/localization/v2.5.x/site/pt/adminGuide/grant_privileges.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.grant_privilege_v2(\n role_name=\"role_a\",\n privilege=\"Search\"\n collection_name='collection_01'\n db_name='default',\n)\n \nclient.grant_privilege_v2(\n role_name=\"role_a\",\n privilege=\"privilege_group_1\"\n collection_name='collection_01'\n db_name='default',\n)\n\nclient.grant_privilege_v2(\n role_name=\"role_a\",\n privilege=\"ClusterReadOnly\"\n collection_name='*'\n db_name='*',\n)\n","import io.milvus.v2.service.rbac.request.GrantPrivilegeReqV2\n\nclient.grantPrivilegeV2(GrantPrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"Search\")\n .collectionName(\"collection_01\")\n .dbName(\"default\")\n .build());\n\nclient.grantPrivilegeV2(GrantPrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"privilege_group_1\")\n .collectionName(\"collection_01\")\n .dbName(\"default\")\n .build());\n\nclient.grantPrivilegeV2(GrantPrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"ClusterReadOnly\")\n .collectionName(\"*\")\n .dbName(\"*\")\n .build());\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.GrantV2(context.Background(), \"role_a\", \"collection_01\", \"Search\", entity.WithOperatePrivilegeDatabase(\"default\"))\n\nclient.GrantV2(context.Background(), \"role_a\", \"collection_01\", \"privilege_group_1\", entity.WithOperatePrivilegeDatabase(\"default\"))\n\nclient.GrantV2(context.Background(), \"role_a\", \"*\", \"ClusterReadOnly\", entity.WithOperatePrivilegeDatabase(\"*\"))\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nconst address = \"http://localhost:19530\";\nconst token = \"root:Milvus\";\nconst client = new MilvusClient({address, token});\n\nawait milvusClient.grantPrivilege({\n roleName: 'role_a',\n object: 'Collection', \n objectName: 'collection_01',\n privilegeName: 'Search'\n });\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/grant_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"Search\",\n \"collectionName\": \"collection_01\",\n \"dbName\":\"default\"\n}'\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/grant_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"privilege_group_1\",\n \"collectionName\": \"collection_01\",\n \"dbName\":\"default\"\n}'\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/grant_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"ClusterReadOnly\",\n \"collectionName\": \"*\",\n \"dbName\":\"*\"\n}'\n","from pymilvus import MilvusClient\n\nclient.describe_role(role_name=\"role_a\")\n","import io.milvus.v2.service.rbac.response.DescribeRoleResp;\nimport io.milvus.v2.service.rbac.request.DescribeRoleReq\n\nDescribeRoleReq describeRoleReq = DescribeRoleReq.builder()\n .roleName(\"role_a\")\n .build();\nDescribeRoleResp resp = client.describeRole(describeRoleReq);\nList infos = resp.getGrantInfos();\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.ListRoles(context.Background())\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.describeRole({roleName: 'role_a'});\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/describe\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\"\n}'\n","{\n \"role\": \"role_a\",\n \"privileges\": [\n {\n \"collection_name\": \"collection_01\",\n \"db_name\": \"default\",\n \"role_name\": \"role_a\",\n \"privilege\": \"Search\",\n \"grantor_name\": \"root\"\n },\n \"privilege_group_1\"\n ]\n}\n","from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.revoke_privilege_v2(\n role_name=\"role_a\",\n privilege=\"Search\"\n collection_name='collection_01'\n db_name='default',\n)\n \nclient.revoke_privilege_v2(\n role_name=\"role_a\",\n privilege=\"privilege_group_1\"\n collection_name='collection_01'\n db_name='default',\n)\n\nclient.revoke_privilege_v2(\n role_name=\"role_a\",\n privilege=\"ClusterReadOnly\"\n collection_name='*'\n db_name='*',\n)\n","import io.milvus.v2.service.rbac.request.RevokePrivilegeReqV2\n\nclient.revokePrivilegeV2(RevokePrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"Search\")\n .collectionName(\"collection_01\")\n .dbName(\"default\")\n .build());\n\nclient.revokePrivilegeV2(RevokePrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"privilege_group_1\")\n .collectionName(\"collection_01\")\n .dbName(\"default\")\n .build());\n\nclient.revokePrivilegeV2(RevokePrivilegeReqV2.builder()\n .roleName(\"role_a\")\n .privilege(\"ClusterReadOnly\")\n .collectionName(\"*\")\n .dbName(\"*\")\n .build());\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.RevokeV2(context.Background(), \"role_a\", \"collection_01\", \"Search\", entity.WithOperatePrivilegeDatabase(\"default\"))\n\nclient.RevokeV2(context.Background(), \"role_a\", \"collection_01\", \"privielge_group_1\", entity.WithOperatePrivilegeDatabase(\"default\"))\n\nclient.RevokeV2(context.Background(), \"role_a\", \"*\", \"ClusterReadOnly\", entity.WithOperatePrivilegeDatabase(\"*\"))\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/revoke_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"Search\",\n \"collectionName\": \"collection_01\",\n \"dbName\":\"default\"\n}'\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/revoke_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"Search\",\n \"collectionName\": \"collection_01\",\n \"dbName\":\"default\"\n}'\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/revoke_privilege_v2\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"privilege\": \"ClusterReadOnly\",\n \"collectionName\": \"*\",\n \"dbName\":\"*\"\n}'\n"],"headingContent":"Grant Privilege or Privilege Group to Roles","anchorList":[{"label":"Conceder privilégios ou grupos de privilégios a funções","href":"Grant-Privilege-or-Privilege-Group-to-Roles","type":1,"isActive":false},{"label":"Conceder um privilégio ou um grupo de privilégios a uma função","href":"Grant-a-privilege-or-a-privilege-group-to-a-role","type":2,"isActive":false},{"label":"Descrever uma função","href":"Describe-a-role","type":2,"isActive":false},{"label":"Revogar um privilégio ou um grupo de privilégios de uma função","href":"Revoke-a-privilege-or-a-privilege-group-from-a-role","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/pt/adminGuide/grant_privileges.md b/localization/v2.5.x/site/pt/adminGuide/grant_privileges.md
new file mode 100644
index 000000000..fef8812bd
--- /dev/null
+++ b/localization/v2.5.x/site/pt/adminGuide/grant_privileges.md
@@ -0,0 +1,543 @@
+---
+id: grant_privileges.md
+related_key: enable RBAC
+summary: >-
+ Uma vez criada uma função, pode conceder privilégios à mesma. Este guia
+ apresenta a forma de conceder privilégios ou grupos de privilégios a uma
+ função.
+title: Conceder privilégios ou grupos de privilégios a funções
+---
+
Conceder privilégios ou grupos de privilégios a funções
+
+
+
+
Uma vez criada uma função, pode conceder privilégios à mesma. Este guia apresenta a forma de conceder privilégios ou grupos de privilégios a uma função.
+
Conceder um privilégio ou um grupo de privilégios a uma função
+
+
+
+
O Milvus 2.5 introduz uma nova versão da API que simplifica a operação de concessão. Já não é necessário procurar o tipo de objeto quando se concede um privilégio a uma função. Seguem-se os parâmetros e as respectivas explicações.
+
+
nome_da_função: o nome da função de destino à qual devem ser concedidos privilégios ou grupos de privilégios.
+
Recurso: O recurso de destino de um privilégio, que pode ser uma instância específica, um banco de dados ou uma coleção. A tabela a seguir explica como especificar o recurso no método client.grantV2().
Introduza `*` como o nome da base de dados e `*` como o nome da coleção.
+
+
+
Privilégio: O privilégio específico ou o grupo de privilégios que é necessário conceder a uma função. Atualmente, o Milvus disponibiliza 56 tipos de privilégios que podem ser concedidos. A tabela abaixo lista os privilégios no Milvus.
+
+
A coluna do tipo na tabela abaixo é utilizada para facilitar a pesquisa rápida de privilégios e é utilizada apenas para fins de classificação. Ao conceder privilégios, não precisa de compreender os tipos. Só precisa de introduzir os privilégios correspondentes.
O exemplo a seguir demonstra como conceder o privilégio PrivilegeSearch em collection_01 no banco de dados padrão, bem como um grupo de privilégios chamado privilege_group_1 para a função role_a.
Revogar um privilégio ou um grupo de privilégios de uma função
+
+
+
+
O exemplo a seguir demonstra como revogar o privilégio PrivilegeSearch em collection_01 no banco de dados padrão, bem como o grupo de privilégios privilege_group_1 que foram concedidos à função role_a.
diff --git a/localization/v2.5.x/site/pt/adminGuide/grant_roles.json b/localization/v2.5.x/site/pt/adminGuide/grant_roles.json
new file mode 100644
index 000000000..b6b01a0c9
--- /dev/null
+++ b/localization/v2.5.x/site/pt/adminGuide/grant_roles.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.grant_role(user_name=\"user_1\", role_name=\"role_a\")\n\n","import io.milvus.v2.client.ConnectConfig;\nimport io.milvus.v2.client.MilvusClientV2;\nimport io.milvus.v2.service.rbac.request.GrantRoleReq;\n\nString CLUSTER_ENDPOINT = \"http://localhost:19530\";\nString TOKEN = \"root:Milvus\";\n\n\nConnectConfig connectConfig = ConnectConfig.builder()\n .uri(CLUSTER_ENDPOINT)\n .token(TOKEN)\n .build();\n \nMilvusClientV2 client = new MilvusClientV2(connectConfig);\n\nGrantRoleReq grantRoleReq = GrantRoleReq.builder()\n .roleName(\"role_a\")\n .userName(\"user_1\")\n .build();\nclient.grantRole(grantRoleReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nconst address = \"http://localhost:19530\";\nconst token = \"root:Milvus\";\nconst client = new MilvusClient({address, token});\n\nmilvusClient.grantRole({\n username: 'user_1',\n roleName: 'role_a'\n })\n\n","export CLUSTER_ENDPOINT=\"http://localhost:19530\"\nexport TOKEN=\"root:Milvus\"\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/grant_role\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\",\n \"userName\": \"user_1\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.describe_user(user_name=\"user_1\")\n\n","import io.milvus.v2.service.rbac.request.DescribeUserReq;\nimport io.milvus.v2.service.rbac.response.DescribeUserResp;\n\nDescribeUserReq describeUserReq = DescribeUserReq.builder()\n .userName(\"user_1\")\n .build();\nDescribeUserResp describeUserResp = client.describeUser(describeUserReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nmilvusClient.describeUser({username: 'user_1'})\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/describe\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"userName\": \"user_1\"\n}'\n\n","{'user_name': 'user_1', 'roles': 'role_a'}\n\n","from pymilvus import MilvusClient\n\nclient.revoke_role(\n user_name='user_1',\n role_name='role_a'\n)\n\n","import io.milvus.v2.service.rbac.request.RevokeRoleReq;\n\nclient.revokeRole(RevokeRoleReq.builder()\n .userName(\"user_1\")\n .roleName(\"role_a\")\n .build());\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\n\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/revoke_role\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"userName\": \"user_1\",\n \"roleName\": \"role_a\"\n}'\n\n"],"headingContent":"Grant Roles to Users","anchorList":[{"label":"Conceder funções aos utilizadores","href":"Grant-Roles-to-Users","type":1,"isActive":false},{"label":"Atribuir uma função a um utilizador","href":"Grant-a-role-to-a-user","type":2,"isActive":false},{"label":"Descrever o utilizador","href":"Describe-user","type":2,"isActive":false},{"label":"Revogar uma função","href":"Revoke-a-role","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/pt/adminGuide/grant_roles.md b/localization/v2.5.x/site/pt/adminGuide/grant_roles.md
new file mode 100644
index 000000000..2db3e4395
--- /dev/null
+++ b/localization/v2.5.x/site/pt/adminGuide/grant_roles.md
@@ -0,0 +1,204 @@
+---
+id: grant_roles.md
+related_key: enable RBAC
+summary: >-
+ Depois de criar uma função e conceder privilégios à função, pode conceder a
+ função aos utilizadores para que estes possam aceder a recursos e executar
+ acções definidas pela função. É possível conceder várias funções a um
+ utilizador ou conceder uma função a vários utilizadores. Este guia apresenta a
+ forma de conceder funções aos utilizadores.
+title: Conceder funções aos utilizadores
+---
+
Conceder funções aos utilizadores
+
+
+
+
Depois de criar uma função e conceder privilégios à função, pode conceder a função aos utilizadores para que estes possam aceder a recursos e executar acções definidas pela função. É possível conceder várias funções a um utilizador ou conceder uma função a vários utilizadores. Este guia apresenta a forma de conceder funções aos utilizadores.
+
Ao utilizador interno root do Milvus já foi atribuída a função admin, que tem todos os privilégios. Não é necessário atribuir-lhe quaisquer outros papéis.
+
Atribuir uma função a um utilizador
+
+
+
+
O exemplo seguinte demonstra como atribuir a função role_a ao utilizador user_1.
diff --git a/localization/v2.5.x/site/pt/adminGuide/privilege_group.json b/localization/v2.5.x/site/pt/adminGuide/privilege_group.json
new file mode 100644
index 000000000..7c79868ca
--- /dev/null
+++ b/localization/v2.5.x/site/pt/adminGuide/privilege_group.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\nclient.create_privileg_group(group_name='privilege_group_1')\n\n","import io.milvus.v2.service.rbac.request.CreatePrivilegeGroupReq;\n\nclient.createPrivilegeGroup(CreatePrivilegeGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.CreatePrivilegeGroup(context.Background(), \"privilege_group_1\")\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/create\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\"\n}'\n\n","from pymilvus import MilvusClient\nclient.add_privileges_to_group(group_name='privilege_group_1', privileges=['Query', 'Search'])\n\n","import io.milvus.v2.service.rbac.request.AddPrivilegesToGroupReq;\n\nclient.addPrivilegesToGroup(AddPrivilegesToGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .privileges(Arrays.asList(\"Query\", \"Search\"))\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.AddPrivilegesToGroup(context.Background(), \"privilege_group_1\", []string{\"Query\", \"Search\"})\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/add_privileges_to_group\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\",\n \"privileges\":[\"Query\", \"Search\"]\n}'\n\n","from pymilvus import MilvusClient\nclient.remove_privileges_from_group(group_name='privilege_group_1', privileges='Search')\n\n","import io.milvus.v2.service.rbac.request.RemovePrivilegesFromGroupReq;\n\nclient.removePrivilegesFromGroup(RemovePrivilegesFromGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .privileges(Collections.singletonList(\"Search\"))\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.RemovePrivilegesFromGroup(context.Background(), \"privilege_group_1\", []string{\"Search\"})\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/remove_privileges_from_group\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\",\n \"privileges\":[\"Search\"]\n}'\n\n","from pymilvus import MilvusClient\nclient.list_privilege_groups()\n\n","import io.milvus.v2.service.rbac.PrivilegeGroup;\nimport io.milvus.v2.service.rbac.request.ListPrivilegeGroupsReq;\nimport io.milvus.v2.service.rbac.response.ListPrivilegeGroupsResp;\n\nListPrivilegeGroupsResp resp = client.listPrivilegeGroups(ListPrivilegeGroupsReq.builder()\n .build());\nList groups = resp.getPrivilegeGroups();\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.ListPrivilegeGroups(context.Background())\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","PrivilegeGroupItem: , \n\n","from pymilvus import MilvusClient\nclient.drop_privilege_group(group_name='privilege_group_1')\n\n","import io.milvus.v2.service.rbac.request.DropPrivilegeGroupReq;\n\nclient.dropPrivilegeGroup(DropPrivilegeGroupReq.builder()\n .groupName(\"privilege_group_1\")\n .build());\n\n","import \"github.com/milvus-io/milvus-sdk-go/v2/client\"\n\nclient.DropPrivilegeGroup(context.Background(), \"privilege_group_1\")\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/privilege_groups/drop\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"privilegeGroupName\":\"privilege_group_1\"\n}'\n\n"],"headingContent":"Create Privilege Group","anchorList":[{"label":"Criar um grupo de privilégios","href":"Create-Privilege-Group","type":1,"isActive":false},{"label":"Grupo de privilégios vs. privilégios","href":"Privilege-group-vs-privileges","type":2,"isActive":false},{"label":"Grupos de privilégios incorporados","href":"Built-in-privilege-groups","type":2,"isActive":false},{"label":"Procedimentos","href":"Procedures","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/pt/adminGuide/privilege_group.md b/localization/v2.5.x/site/pt/adminGuide/privilege_group.md
new file mode 100644
index 000000000..a1dd89fa4
--- /dev/null
+++ b/localization/v2.5.x/site/pt/adminGuide/privilege_group.md
@@ -0,0 +1,491 @@
+---
+id: privilege_group.md
+related_key: enable RBAC
+summary: >-
+ Para simplificar o processo de concessão de privilégios, recomenda-se que
+ combine vários privilégios num grupo de privilégios.
+title: Criar grupo de privilégios
+---
+
Criar um grupo de privilégios
+
+
+
+
Para simplificar o processo de concessão de privilégios, recomenda-se que combine vários privilégios num grupo de privilégios.
+
Grupo de privilégios vs. privilégios
+
+
+
+
Um grupo de privilégios consiste em vários privilégios.
+
+
+
+ Grupo de privilégios ilustrado
+
Como mostra a figura acima, suponha que precisa de conceder três privilégios diferentes a uma função.
+
+
Se não utilizar um grupo de privilégios, terá de conceder os privilégios três vezes.
+
Se utilizar um grupo de privilégios, só precisa de criar um grupo de privilégios e adicionar os três privilégios a este grupo de privilégios e conceder o grupo de privilégios à função A.
+
+
Ao utilizar um grupo de privilégios, pode conceder vários privilégios em bloco a uma função.
+
Grupos de privilégios incorporados
+
+
+
+
Para facilitar a utilização, o Milvus fornece um total de 9 privilégios incorporados ao nível da coleção, da base de dados e da instância: COLL_RO, COLL_RW, COLL_ADMIN, DB_RO, DB_RW, DB_Admin, Cluster_RO, Cluster_RW e Cluster_Admin.
+
+
Os três níveis de grupos de privilégios incorporados não têm uma relação em cascata. A definição de um grupo de privilégios ao nível da instância não define automaticamente as permissões para todas as bases de dados e colecções dessa instância. Os privilégios ao nível das bases de dados e das colecções têm de ser definidos manualmente.
+
+
As tabelas seguintes explicam os privilégios incluídos em cada um dos grupos de privilégios incorporados.
+
Nível da coleção
+
COLL_RO: inclui privilégios para ler os dados da coleção
+
COLL_RW: inclui privilégios para ler e escrever dados da coleção
+
COLL_ADMIN: inclui privilégios para ler e escrever dados de coleção e gerir colecções.
+
+
A tabela abaixo lista os privilégios específicos incluídos nos três grupos de privilégios incorporados ao nível da coleção.
+
**Privilege**
+
**CollectionReadOnly**
+
**CollectionReadWrite**
+
**CollectionAdmin**
+
Consulta
+
✔️
+
✔️
+
✔️
+
Pesquisa
+
✔️
+
✔️
+
✔️
+
Detalhes do índice
+
✔️
+
✔️
+
✔️
+
GetFlushState
+
✔️
+
✔️
+
✔️
+
GetLoadState
+
✔️
+
✔️
+
✔️
+
GetLoadingProgress
+
✔️
+
✔️
+
✔️
+
HasPartition
+
✔️
+
✔️
+
✔️
+
ShowPartitions
+
✔️
+
✔️
+
✔️
+
ListAliases
+
✔️
+
✔️
+
✔️
+
Descrever coleção
+
✔️
+
✔️
+
✔️
+
DescreverAlias
+
✔️
+
✔️
+
✔️
+
Obter estatísticas
+
✔️
+
✔️
+
✔️
+
Criar índice
+
❌
+
✔️
+
✔️
+
DropIndex
+
❌
+
✔️
+
✔️
+
CriarPartição
+
❌
+
✔️
+
✔️
+
DropPartition
+
❌
+
✔️
+
✔️
+
Carregar
+
❌
+
✔️
+
✔️
+
Libertar
+
❌
+
✔️
+
✔️
+
Inserir
+
❌
+
✔️
+
✔️
+
Eliminar
+
❌
+
✔️
+
✔️
+
Inserir
+
❌
+
✔️
+
✔️
+
Importar
+
❌
+
✔️
+
✔️
+
Descarga
+
❌
+
✔️
+
✔️
+
Compactação
+
❌
+
✔️
+
✔️
+
Equilíbrio de carga
+
❌
+
✔️
+
✔️
+
CriarAlias
+
❌
+
❌
+
✔️
+
SoltarAlias
+
❌
+
❌
+
✔️
+
+
Nível da base de dados
+
DB_RO: inclui privilégios para ler dados da base de dados
+
DB_RW: inclui privilégios para ler e escrever dados da base de dados
+
DB_Admin: inclui privilégios para ler e escrever dados da base de dados e gerir bases de dados.
+
+
A tabela abaixo lista os privilégios específicos incluídos nos três grupos de privilégios incorporados ao nível da base de dados.
+
**Privilege**
+
**DatabaseReadOnly**
+
**DatabaseReadWrite**
+
**DatabaseAdmin**
+
Mostrar colecções
+
✔️
+
✔️
+
✔️
+
Descrever a base de dados
+
✔️
+
✔️
+
✔️
+
CriarColeção
+
❌
+
❌
+
✔️
+
Deixar coleção
+
❌
+
❌
+
✔️
+
Alterar base de dados
+
❌
+
✔️
+
✔️
+
+
Nível do cluster
+
Cluster_RO: inclui privilégios para ler dados da instância
+
Cluster_RW: inclui privilégios para ler e escrever dados da instância
+
Cluster_Admin: inclui privilégios para ler e gravar dados da instância e gerenciar instâncias.
+
+
A tabela abaixo lista os privilégios específicos incluídos nos três grupos de privilégios incorporados no nível da instância.
+
**Privilege**
+
**ClusterReadOnly**
+
**ClusterReadWrite**
+
**ClusterAdmin**
+
ListDatabases
+
✔️
+
✔️
+
✔️
+
Renomear coleção
+
❌
+
❌
+
✔️
+
Criar Propriedade
+
❌
+
❌
+
✔️
+
ActualizarUsuário
+
❌
+
❌
+
✔️
+
DropOwnership
+
❌
+
❌
+
✔️
+
Seleção de propriedade
+
✔️
+
✔️
+
✔️
+
GerirPropriedade
+
❌
+
❌
+
✔️
+
SeleccionarUtilizador
+
✔️
+
✔️
+
✔️
+
BackupRBAC
+
❌
+
❌
+
✔️
+
RestaurarRBAC
+
❌
+
❌
+
✔️
+
CriarGrupo de Recursos
+
❌
+
❌
+
✔️
+
AbandonarGrupo de Recursos
+
❌
+
❌
+
✔️
+
ActualizarGrupos de Recursos
+
❌
+
✔️
+
✔️
+
Descrever o grupo de recursos
+
✔️
+
✔️
+
✔️
+
Listar grupos de recursos
+
✔️
+
✔️
+
✔️
+
TransferNode
+
❌
+
✔️
+
✔️
+
TransferReplica
+
❌
+
✔️
+
✔️
+
CriarBaseDeDados
+
❌
+
❌
+
✔️
+
DropDatabase
+
❌
+
❌
+
✔️
+
FlushAll
+
❌
+
✔️
+
✔️
+
CriarGrupoPrivilegiado
+
❌
+
❌
+
✔️
+
AbandonarGrupoPrivilegiado
+
❌
+
❌
+
✔️
+
ListarGruposPrivilegiados
+
❌
+
❌
+
✔️
+
OperarPrivilegeGroup
+
❌
+
❌
+
✔️
+
+
Procedimentos
+
+
+
+
Você pode criar um grupo de privilégios e, em seguida, adicionar privilégios ao grupo de privilégios.
+
Criar um grupo de privilégios
O exemplo seguinte demonstra como criar um grupo de privilégios com o nome privilege_group_1.
O exemplo a seguir demonstra como adicionar os privilégios PrivilegeBackupRBAC e PrivilegeRestoreRBAC ao grupo de privilégios privilege_group_1 que acabou de ser criado.
diff --git a/localization/v2.5.x/site/pt/adminGuide/rbac.json b/localization/v2.5.x/site/pt/adminGuide/rbac.json
index 15e3433ca..f3fea2c86 100644
--- a/localization/v2.5.x/site/pt/adminGuide/rbac.json
+++ b/localization/v2.5.x/site/pt/adminGuide/rbac.json
@@ -1 +1 @@
-{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri='http://localhost:19530', # replace with your own Milvus server address\n token='root:Milvus' # replace with your own Milvus server token\n)\n","client.create_user(\n user_name='user_1',\n password='P@ssw0rd'\n)\n","client.update_password(\n user_name='user_1',\n old_password='P@ssw0rd',\n new_password='P@ssw0rd123'\n)\n","client.list_users()\n\n# output:\n# ['root', 'user_1']\n","client.describe_user(user_name='user_1')\n\n# output:\n# {'user_name': 'user_1', 'roles': ()}\n","client.create_role(\n role_name=\"roleA\",\n)\n","client.list_roles()\n\n# output:\n# ['admin', 'public', 'roleA']\n","# grant privilege to a role\n\nclient.grant_privilege(\n role_name='roleA',\n object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName\n object_name='user_1', # value here can be * or a specific user name if object type is 'User'\n privilege='SelectUser'\n)\n","client.describe_role(\n role_name='roleA'\n)\n\n# output:\n# {'role': 'roleA',\n# 'privileges': [{'object_type': 'User',\n# 'object_name': 'user_1',\n# 'db_name': 'default',\n# 'role_name': 'roleA',\n# 'privilege': 'SelectUser',\n# 'grantor_name': 'root'}]}\n","# grant a role to a user\n\nclient.grant_role(\n user_name='user_1',\n role_name='roleA'\n)\n","client.describe_user(\n user_name='user_1'\n)\n\n# output:\n# {'user_name': 'user_1', 'roles': ('roleA')}\n","client.revoke_privilege(\n role_name='roleA',\n object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName\n object_name='user_1', # value here can be * or a specific user name if object type is 'User'\n privilege='SelectUser'\n)\n","client.revoke_role(\n user_name='user_1',\n role_name='roleA'\n)\n","client.drop_role(role_name='roleA')\n","client.drop_user(user_name='user_1')\n"],"headingContent":"Enable RBAC","anchorList":[{"label":"Ativar o RBAC","href":"Enable-RBAC","type":1,"isActive":false},{"label":"1. Iniciar um cliente Milvus para estabelecer uma ligação","href":"1-Initiate-a-Milvus-client-to-establish-a-connection","type":2,"isActive":false},{"label":"2. Criar um utilizador","href":"2-Create-a-user","type":2,"isActive":false},{"label":"3. Criar uma função","href":"3-Create-a-role","type":2,"isActive":false},{"label":"4. Conceder um privilégio a uma função","href":"4-Grant-a-privilege-to-a-role","type":2,"isActive":false},{"label":"5. Conceder uma função a um utilizador","href":"5-Grant-a-role-to-a-user","type":2,"isActive":false},{"label":"6. Revogar privilégios","href":"6-Revoke-privileges","type":2,"isActive":false},{"label":"O que se segue","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":[],"headingContent":"RBAC Explained","anchorList":[{"label":"Explicação do RBAC","href":"RBAC-Explained","type":1,"isActive":false},{"label":"Conceitos-chave do RBAC","href":"RBAC-key-concepts","type":2,"isActive":false},{"label":"Procedimentos","href":"Procedures","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/pt/adminGuide/rbac.md b/localization/v2.5.x/site/pt/adminGuide/rbac.md
index be6877e8d..8e641a524 100644
--- a/localization/v2.5.x/site/pt/adminGuide/rbac.md
+++ b/localization/v2.5.x/site/pt/adminGuide/rbac.md
@@ -1,10 +1,14 @@
---
id: rbac.md
related_key: enable RBAC
-summary: 'Saiba como gerir utilizadores, funções e privilégios.'
-title: Ativar o RBAC
+summary: >-
+ O RBAC (Role-Based Access Control) é um método de controlo de acesso baseado
+ em funções. Com o RBAC, é possível controlar com precisão as operações que os
+ utilizadores podem realizar ao nível da coleção, da base de dados e da
+ instância, aumentando a segurança dos dados.
+title: Explicação do RBAC
---
-
Ativar o RBAC
+
Explicação do RBAC
-
Ao ativar o RBAC, pode controlar o acesso a recursos Milvus específicos (por exemplo, uma coleção ou uma partição) ou permissões com base no papel e privilégios do utilizador. Atualmente, esta funcionalidade só está disponível em Python e Java.
Os trechos de código nesta página usam o novo MilvusClient (Python) para interagir com o Milvus. Novos SDKs MilvusClient para outras linguagens serão lançados em futuras actualizações.
-
-
1. Iniciar um cliente Milvus para estabelecer uma ligação
+
O RBAC (Role-Based Access Control) é um método de controlo de acesso baseado em funções. Com o RBAC, é possível controlar com precisão as operações que os utilizadores podem realizar ao nível da coleção, da base de dados e da instância, aumentando a segurança dos dados.
+
Ao contrário dos modelos tradicionais de controlo de acesso de utilizadores, o RBAC introduz o conceito de funções. No modelo RBAC, são concedidos privilégios às funções e, em seguida, essas funções são concedidas aos utilizadores. Em seguida, os utilizadores podem obter privilégios.
+
O modelo RBAC pode melhorar a eficiência da gestão do controlo de acesso. Por exemplo, se vários utilizadores necessitarem do mesmo conjunto de privilégios, não é necessário definir manualmente os privilégios para cada utilizador. Em vez disso, é possível criar uma função e atribuir a função aos utilizadores. Se pretender ajustar os privilégios desses utilizadores, basta ajustar os privilégios da função e a alteração será aplicada a todos os utilizadores com essa função.
+
Conceitos-chave do RBAC
-
Depois de ativar a autenticação do utilizador, ligue-se à sua instância Milvus utilizando token que consiste num nome de utilizador e numa palavra-passe. Por predefinição, o Milvus utiliza o utilizador root com a palavra-passe Milvus.
-
from pymilvus import MilvusClient
-
-client = MilvusClient(
- uri='http://localhost:19530', # replace with your own Milvus server address
- token='root:Milvus'# replace with your own Milvus server token
-)
-
-
2. Criar um utilizador
-
-
-
-
Crie um utilizador chamado user_1 com a palavra-passe P@ssw0rd:
O exemplo seguinte cria uma função denominada roleA.
-
client.create_role(
- role_name="roleA",
-)
-
-
Depois de criar uma função, pode:
+
+
+
+ Utilizadores, funções e privilégios
+
Existem quatro componentes principais no modelo RBAC.
-
Listar todas as funções.
+
**Recurso: **A entidade de recurso que pode ser acedida. Existem três níveis de recursos no Milvus - instância, base de dados e coleção.
+
**Privilégio: **A permissão para efetuar determinadas operações nos recursos Milvus (por exemplo, criar colecções, inserir dados, etc.).
+
**Grupo de privilégios: **Um grupo de múltiplos privilégios.
+
**Função: **Uma função é composta por duas partes: privilégios e recursos. Os privilégios definem o tipo de operações que uma função pode executar, enquanto os recursos definem os recursos de destino nos quais as operações podem ser executadas. Por exemplo, a função de administrador da base de dados pode efetuar operações de leitura, escrita e gestão em determinadas bases de dados.
+
**Utilizador: Um utilizador é alguém que utiliza o Milvus. Cada utilizador tem um ID único e é-lhe atribuída uma função ou várias funções.
O exemplo seguinte demonstra como conceder a permissão de pesquisar todas as colecções à função denominada roleA.
-
O object_type especifica o tipo de objeto, que também pode ser entendido como o tipo de recurso. Atualmente, os valores válidos incluem Coleção/Utilizador/Global, etc., em que Global significa que não existe um tipo de recurso específico. O object_name é o nome do recurso. Se o tipo de objetofor Coleção, então o nome do objeto pode ser referido a um nome de coleção específico, ou pode utilizar * para especificar todas as colecções. Seo tipo de objeto for Global, o nome do objeto só pode ser especificado como *. Consulte Utilizadores e funções para outros tipos de privilégios que pode conceder.
-
Antes de gerir os privilégios de função, certifique-se de que activou a autenticação do utilizador. Caso contrário, poderá ocorrer um erro. Para obter informações sobre como ativar a autenticação do utilizador, consulte Autenticar o acesso do utilizador.
-
# grant privilege to a role
-
-client.grant_privilege(
- role_name='roleA',
- object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName
- object_name='user_1', # value here can be * or a specific user name if object type is 'User'
- privilege='SelectUser'
-)
-
-
Depois de conceder um privilégio a uma função, pode:
-
-
Visualizar os privilégios concedidos a uma função.
Tenha cuidado ao efetuar as seguintes operações, uma vez que estas são irreversíveis.
-
-
-
Remover um privilégio de uma função. Se revogar um privilégio que não tenha sido concedido à função, ocorrerá um erro.
-
-
client.revoke_privilege(
- role_name='roleA',
- object_type='User', # value here can be Global, Collection or User, object type also depends on the API defined in privilegeName
- object_name='user_1', # value here can be * or a specific user name if object type is 'User'
- privilege='SelectUser'
-)
-
-
-
Remover um utilizador de uma função. Se revogar uma função que não tenha sido concedida ao utilizador, ocorrerá um erro.
Para obter o controlo de acesso através do RBAC, é necessário seguir os passos abaixo.
+
+
Criar um utilizador: Para além do utilizador predefinido root no Milvus, é possível criar novos utilizadores e definir palavras-passe para proteger a segurança dos dados.
+
Criar uma função: Pode criar funções personalizadas com base nas suas necessidades. As capacidades específicas de uma função são determinadas pelos seus privilégios.
+
Criar um grupo de privilégios: Combine vários privilégios num único grupo de privilégios para simplificar o processo de concessão de privilégios a uma função.
Conceder funções aos utilizadores: Conceder funções com determinados privilégios aos utilizadores para que estes possam ter os privilégios de uma função. Uma única função pode ser concedida a vários utilizadores.
+
diff --git a/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_cluster-docker.json b/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_cluster-docker.json
index 31f7c498d..da43b3258 100644
--- a/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_cluster-docker.json
+++ b/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_cluster-docker.json
@@ -1 +1 @@
-{"codeList":["...\nrootcoord:\n container_name: milvus-rootcoord\n image: milvusdb/milvus:v2.5.0-beta\n...\nproxy:\n container_name: milvus-proxy\n image: milvusdb/milvus:v2.5.0-beta\n...\nquerycoord:\n container_name: milvus-querycoord\n image: milvusdb/milvus:v2.5.0-beta \n...\nquerynode:\n container_name: milvus-querynode\n image: milvusdb/milvus:v2.5.0-beta\n...\nindexcoord:\n container_name: milvus-indexcoord\n image: milvusdb/milvus:v2.5.0-beta\n...\nindexnode:\n container_name: milvus-indexnode\n image: milvusdb/milvus:v2.5.0-beta \n...\ndatacoord:\n container_name: milvus-datacoord\n image: milvusdb/milvus:v2.5.0-beta \n...\ndatanode:\n container_name: milvus-datanode\n image: milvusdb/milvus:v2.5.0-beta\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0-beta\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvus/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","Update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Cluster with Docker Compose","anchorList":[{"label":"Atualizar o cluster do Milvus com o Docker Compose","href":"Upgrade-Milvus-Cluster-with-Docker-Compose","type":1,"isActive":false},{"label":"Atualizar o Milvus alterando a sua imagem","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrar os metadados","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"O que se segue","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["...\nrootcoord:\n container_name: milvus-rootcoord\n image: milvusdb/milvus:v2.5.0\n...\nproxy:\n container_name: milvus-proxy\n image: milvusdb/milvus:v2.5.0\n...\nquerycoord:\n container_name: milvus-querycoord\n image: milvusdb/milvus:v2.5.0 \n...\nquerynode:\n container_name: milvus-querynode\n image: milvusdb/milvus:v2.5.0\n...\nindexcoord:\n container_name: milvus-indexcoord\n image: milvusdb/milvus:v2.5.0\n...\nindexnode:\n container_name: milvus-indexnode\n image: milvusdb/milvus:v2.5.0 \n...\ndatacoord:\n container_name: milvus-datacoord\n image: milvusdb/milvus:v2.5.0 \n...\ndatanode:\n container_name: milvus-datanode\n image: milvusdb/milvus:v2.5.0\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvus/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","Update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Cluster with Docker Compose","anchorList":[{"label":"Atualizar o cluster do Milvus com o Docker Compose","href":"Upgrade-Milvus-Cluster-with-Docker-Compose","type":1,"isActive":false},{"label":"Atualizar o Milvus alterando a sua imagem","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrar os metadados","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"O que se segue","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_cluster-docker.md b/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_cluster-docker.md
index b19fe68ac..f99150e18 100644
--- a/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_cluster-docker.md
+++ b/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_cluster-docker.md
@@ -20,7 +20,7 @@ title: Atualizar o cluster do Milvus com o Docker Compose
>
Este tópico descreve como atualizar seu Milvus usando o Docker Compose.
Realizar uma atualização contínua
@@ -140,19 +140,19 @@ zilliztech/milvus 4.1.0 2.3.0 Milvus is an ope
i
Nome da instância Milvus
None
Verdadeiro
n
Espaço de nomes em que o Milvus está instalado
default
Falso
-
t
Versão alvo do Milvus
None
Verdadeiro
+
t
Versão de destino do Milvus
None
Verdadeiro
w
Nova etiqueta de imagem do Milvus
milvusdb/milvus:v2.2.3
Verdadeiro
o
Funcionamento
update
Falso
-
Depois de ter assegurado que todas as implementações na sua instância Milvus estão no seu estado normal. Pode executar o seguinte comando para atualizar a instância do Milvus para a versão 2.5.0-beta.
Depois de se ter assegurado de que todas as implementações na sua instância Milvus estão no seu estado normal. Pode executar o seguinte comando para atualizar a instância do Milvus para a versão 2.5.0.
O script codifica a ordem de atualização das implementações e não pode ser alterado.
O script utiliza kubectl patch para atualizar as implementações e kubectl rollout status para observar o seu estado.
-
O script usa kubectl patch para atualizar a etiqueta app.kubernetes.io/version das implementações para a especificada após a bandeira -t no comando.
+
O script usa kubectl patch para atualizar o rótulo app.kubernetes.io/version das implantações para aquele especificado após o sinalizador -t no comando.
Para atualizar o Milvus da v2.1.x para a 2.5.0, é necessário migrar os metadados antes da atualização efectiva.
-
Realizar uma atualização contínua
+
Conduzir uma atualização contínuaoperator upgrade milvus-
Desde a versão 2.2.3 do Milvus, é possível configurar os coordenadores do Milvus para funcionarem em modo de espera ativa e ativar a funcionalidade de atualização contínua para os mesmos, de modo a que o Milvus possa responder aos pedidos recebidos durante as actualizações do coordenador. Nas versões anteriores, os coordenadores devem ser removidos e depois criados durante uma atualização, o que pode provocar um certo tempo de inatividade do serviço.
-
Com base nas capacidades de atualização contínua fornecidas pelo Kubernetes, o operador do Milvus impõe uma atualização ordenada das implementações de acordo com as suas dependências. Além disso, o Milvus implementa um mecanismo para garantir que os seus componentes permanecem compatíveis com os que dependem deles durante a atualização, reduzindo significativamente o potencial tempo de inatividade do serviço.
+
Com base nas capacidades de atualização contínua fornecidas pelo Kubernetes, o operador do Milvus impõe uma atualização ordenada das implementações de acordo com as suas dependências. Além disso, o Milvus implementa um mecanismo para garantir que os seus componentes permanecem compatíveis com os que deles dependem durante a atualização, reduzindo significativamente o potencial tempo de inatividade do serviço.
A funcionalidade de atualização contínua está desactivada por defeito. É necessário activá-la explicitamente através de um ficheiro de configuração.
Neste ficheiro de configuração acima, defina spec.components.enableRollingUpdate para true e defina spec.components.image para a versão desejada do Milvus.
-
Por predefinição, o Milvus efectua uma atualização contínua para os coordenadores de forma ordenada, substituindo as imagens do pod do coordenador uma após a outra. Para reduzir o tempo de atualização, considere definir spec.components.imageUpdateMode para all para que o Milvus substitua todas as imagens de pod ao mesmo tempo.
+
Por predefinição, o Milvus efectua uma atualização contínua para os coordenadores de forma ordenada, substituindo as imagens do pod do coordenador uma após a outra. Para reduzir o tempo de atualização, considere definir spec.components.imageUpdateMode como all para que o Milvus substitua todas as imagens de pod ao mesmo tempo.
Você pode definir spec.components.imageUpdateMode como rollingDowngrade para que o Milvus substitua as imagens do pod coordenador por uma versão inferior.
Em casos normais, pode simplesmente atualizar o seu Milvus para a versão mais recente, alterando a sua imagem. No entanto, tenha em atenção que haverá um certo tempo de inatividade ao atualizar o Milvus desta forma.
+
Em casos normais, pode simplesmente atualizar o seu Milvus para a versão mais recente alterando a sua imagem. No entanto, tenha em atenção que haverá um certo tempo de inatividade ao atualizar o Milvus desta forma.
Crie um ficheiro de configuração da seguinte forma e guarde-o como milvusupgrade.yaml:
Desde o Milvus 2.2.0, os metadados são incompatíveis com os das versões anteriores. Os seguintes exemplos assumem uma atualização do Milvus 2.1.4 para o Milvus 2.5.0-beta.
-
1. Criar um ficheiro .yaml para migração de metadados
Crie um ficheiro de migração de metadados. Segue-se um exemplo. É necessário especificar name, sourceVersion e targetVersion no ficheiro de configuração. O exemplo seguinte define name para my-release-upgrade, sourceVersion para v2.1.4 e targetVersion para v2.5.0-beta. Isto significa que o seu cluster Milvus será atualizado da v2.1.4 para a v2.5.0-beta.
+
Desde o Milvus 2.2.0, os metadados são incompatíveis com os das versões anteriores. Os seguintes exemplos pressupõem uma atualização do Milvus 2.1.4 para o Milvus 2.5.0.
+
1. Criar um ficheiro .yaml para migração de metadados
Crie um ficheiro de migração de metadados. Segue-se um exemplo. É necessário especificar name, sourceVersion e targetVersion no ficheiro de configuração. O exemplo seguinte define name para my-release-upgrade, sourceVersion para v2.1.4 e targetVersion para v2.5.0. Isto significa que o seu cluster Milvus será atualizado da v2.1.4 para a v2.5.0.
apiVersion: milvus.io/v1beta1
kind: MilvusUpgrade
metadata:
@@ -159,9 +159,9 @@ spec:
namespace: default
name: my-release
sourceVersion: "v2.1.4"
- targetVersion: "v2.5.0-beta"
+ targetVersion: "v2.5.0"# below are some omit default values:
- # targetImage: "milvusdb/milvus:v2.5.0-beta"
+ # targetImage: "milvusdb/milvus:v2.5.0"# toolImage: "milvusdb/meta-migration:v2.2.0"# operation: upgrade# rollbackIfFailed: true
diff --git a/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_standalone-docker.json b/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_standalone-docker.json
index eb8d73368..dce10b599 100644
--- a/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_standalone-docker.json
+++ b/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_standalone-docker.json
@@ -1 +1 @@
-{"codeList":["...\nstandalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.5.0-beta\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0-beta\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvusdb/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","// Run the following only after update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Standalone with Docker Compose","anchorList":[{"label":"Atualizar o Milvus Standalone com o Docker Compose","href":"Upgrade-Milvus-Standalone-with-Docker-Compose","type":1,"isActive":false},{"label":"Atualizar o Milvus alterando sua imagem","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrar os metadados","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"O que se segue","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["...\nstandalone:\n container_name: milvus-standalone\n image: milvusdb/milvus:v2.5.0\n","docker compose down\ndocker compose up -d\n","docker stop \n","# migration.yaml\ncmd:\n # Option: run/backup/rollback\n type: run\n runWithBackup: true\nconfig:\n sourceVersion: 2.1.4 # Specify your milvus version\n targetVersion: 2.5.0\n backupFilePath: /tmp/migration.bak\nmetastore:\n type: etcd\netcd:\n endpoints:\n - milvus-etcd:2379 # Use the etcd container name\n rootPath: by-dev # The root path where data is stored in etcd\n metaSubPath: meta\n kvSubPath: kv\n","# Suppose your docker-compose run with the default milvus network,\n# and you put migration.yaml in the same directory with docker-compose.yaml.\ndocker run --rm -it --network milvus -v $(pwd)/migration.yaml:/milvus/configs/migration.yaml milvusdb/meta-migration:v2.2.0 /milvus/bin/meta-migration -config=/milvus/configs/migration.yaml\n","// Run the following only after update the milvus image tag in the docker-compose.yaml\ndocker compose down\ndocker compose up -d\n"],"headingContent":"Upgrade Milvus Standalone with Docker Compose","anchorList":[{"label":"Atualizar o Milvus Standalone com o Docker Compose","href":"Upgrade-Milvus-Standalone-with-Docker-Compose","type":1,"isActive":false},{"label":"Atualizar o Milvus alterando a sua imagem","href":"Upgrade-Milvus-by-changing-its-image","type":2,"isActive":false},{"label":"Migrar os metadados","href":"Migrate-the-metadata","type":2,"isActive":false},{"label":"O que se segue","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_standalone-docker.md b/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_standalone-docker.md
index 7279de9d7..67675db81 100644
--- a/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_standalone-docker.md
+++ b/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_standalone-docker.md
@@ -24,11 +24,11 @@ title: Atualizar o Milvus Standalone com o Docker Compose
>
Este tópico descreve como atualizar seu Milvus usando o Docker Compose.
Devido a preocupações de segurança, o Milvus actualiza o seu MinIO para RELEASE.2023-03-20T20-16-18Z com o lançamento da v2.2.5. Antes de qualquer atualização de versões anteriores do Milvus Standalone instaladas usando o Docker Compose, você deve criar uma implantação do MinIO de nó único e unidade única e migrar as configurações e o conteúdo existentes do MinIO para a nova implantação. Para obter detalhes, consulte este guia.
+
Devido a questões de segurança, o Milvus actualiza o seu MinIO para RELEASE.2023-03-20T20-16-18Z com o lançamento da v2.2.5. Antes de qualquer atualização de versões anteriores do Milvus Standalone instaladas usando o Docker Compose, você deve criar uma implantação do MinIO de nó único e unidade única e migrar as configurações e o conteúdo existentes do MinIO para a nova implantação. Para obter detalhes, consulte este guia.
-
Atualizar o Milvus alterando sua imagem
+
Atualizar o Milvus alterando a sua imagem...
standalone:
container_name: milvus-standalone
- image: milvusdb/milvus:v2.5.0-beta
+ image: milvusdb/milvus:v2.5.0
Execute os seguintes comandos para realizar a atualização.
docker compose down
@@ -83,7 +83,7 @@ cmd:
runWithBackup: true
config:
sourceVersion: 2.1.4# Specify your milvus version
- targetVersion: 2.5.0-beta
+ targetVersion: 2.5.0
backupFilePath: /tmp/migration.bak
metastore:
type: etcd
@@ -126,7 +126,7 @@ docker compose up -d
Se estiver pronto para implantar seu cluster em nuvens:
diff --git a/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_standalone-helm.json b/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_standalone-helm.json
index 657fec15e..c37ecef5b 100644
--- a/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_standalone-helm.json
+++ b/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_standalone-helm.json
@@ -1 +1 @@
-{"codeList":["$ helm repo update\n$ helm search repo zilliztech/milvus --versions\n","helm repo add zilliztech https://zilliztech.github.io/milvus-helm\nhelm repo update zilliztech\n# upgrade existing helm release\nhelm upgrade my-release zilliztech/milvus --reset-then-reuse-values\n","NAME CHART VERSION APP VERSION DESCRIPTION \nzilliztech/milvus 4.1.34 2.4.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.33 2.4.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.32 2.4.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.31 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.30 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.29 2.4.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.24 2.3.11 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.23 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.22 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.21 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.20 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.18 2.3.10 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.18 2.3.9 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.17 2.3.8 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.16 2.3.7 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.15 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.14 2.3.6 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.13 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.12 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.11 2.3.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.10 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.9 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.8 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.7 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.6 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.5 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.4 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.3 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.2 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.1 2.3.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.0 2.3.0 Milvus is an open-source vector database built ...\n","sh rollingUpdate.sh -n default -i my-release -o update -t 2.5.0-beta -w 'milvusdb/milvus:v2.5.0-beta'\n","helm repo update\nhelm upgrade my-release milvus/milvus --reset-then-reuse-values --version=4.1.24 # use the helm chart version here\n","NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION \nmy-release default 1 2022-11-21 15:41:25.51539 +0800 CST deployed milvus-3.2.18 2.1.4\n","NAME READY STATUS RESTARTS AGE\nmy-release-etcd-0 1/1 Running 0 84s\nmy-release-milvus-standalone-75c599fffc-6rwlj 1/1 Running 0 84s\nmy-release-minio-744dd9586f-qngzv 1/1 Running 0 84s\n","$ kubectl get pods my-release-milvus-proxy-6c548f787f-scspp -o=jsonpath='{$.spec.containers[0].image}'\n# milvusdb/milvus:v2.1.4\n","./migrate.sh -i my-release -s 2.1.4 -t 2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -w milvusdb/milvus:v2.5.0-beta\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -w milvusdb/milvus:v2.5.0-beta -d true\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -o rollback -w milvusdb/milvus:v2.1.1\n./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0-beta -r by-dev -o migrate -w milvusdb/milvus:v2.5.0-beta\n"],"headingContent":"Upgrade Milvus Standalone with Helm Chart","anchorList":[{"label":"Atualizar o Milvus Standalone com o Helm Chart","href":"Upgrade-Milvus-Standalone-with-Helm-Chart","type":1,"isActive":false},{"label":"Pré-requisitos","href":"Prerequisites","type":2,"isActive":false},{"label":"Verificar a versão do Milvus","href":"Check-the-Milvus-version","type":2,"isActive":false},{"label":"Realizar uma atualização contínua","href":"Conduct-a-rolling-upgrade","type":2,"isActive":false},{"label":"Atualizar o Milvus usando o Helm","href":"Upgrade-Milvus-using-Helm","type":2,"isActive":false},{"label":"Migrar os metadados","href":"Migrate-the-metadata","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["$ helm repo update\n$ helm search repo zilliztech/milvus --versions\n","helm repo add zilliztech https://zilliztech.github.io/milvus-helm\nhelm repo update zilliztech\n# upgrade existing helm release\nhelm upgrade my-release zilliztech/milvus --reset-then-reuse-values\n","NAME CHART VERSION APP VERSION DESCRIPTION \nzilliztech/milvus 4.1.34 2.4.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.33 2.4.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.32 2.4.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.31 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.30 2.4.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.29 2.4.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.24 2.3.11 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.23 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.22 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.21 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.20 2.3.10 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.18 2.3.10 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.18 2.3.9 Milvus is an open-source vector database built ... \nzilliztech/milvus 4.1.17 2.3.8 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.16 2.3.7 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.15 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.14 2.3.6 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.13 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.12 2.3.5 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.11 2.3.4 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.10 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.9 2.3.3 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.8 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.7 2.3.2 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.6 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.5 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.4 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.3 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.2 2.3.1 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.1 2.3.0 Milvus is an open-source vector database built ...\nzilliztech/milvus 4.1.0 2.3.0 Milvus is an open-source vector database built ...\n","sh rollingUpdate.sh -n default -i my-release -o update -t 2.5.0 -w 'milvusdb/milvus:v2.5.0'\n","helm repo update\nhelm upgrade my-release milvus/milvus --reset-then-reuse-values --version=4.1.24 # use the helm chart version here\n","NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION \nmy-release default 1 2022-11-21 15:41:25.51539 +0800 CST deployed milvus-3.2.18 2.1.4\n","NAME READY STATUS RESTARTS AGE\nmy-release-etcd-0 1/1 Running 0 84s\nmy-release-milvus-standalone-75c599fffc-6rwlj 1/1 Running 0 84s\nmy-release-minio-744dd9586f-qngzv 1/1 Running 0 84s\n","$ kubectl get pods my-release-milvus-proxy-6c548f787f-scspp -o=jsonpath='{$.spec.containers[0].image}'\n# milvusdb/milvus:v2.1.4\n","./migrate.sh -i my-release -s 2.1.4 -t 2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -w milvusdb/milvus:v2.5.0\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -w milvusdb/milvus:v2.5.0 -d true\n","./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -o rollback -w milvusdb/milvus:v2.1.1\n./migrate.sh -i my-release -n milvus -s 2.1.4 -t 2.5.0 -r by-dev -o migrate -w milvusdb/milvus:v2.5.0\n"],"headingContent":"Upgrade Milvus Standalone with Helm Chart","anchorList":[{"label":"Atualizar o Milvus Standalone com o Helm Chart","href":"Upgrade-Milvus-Standalone-with-Helm-Chart","type":1,"isActive":false},{"label":"Pré-requisitos","href":"Prerequisites","type":2,"isActive":false},{"label":"Verificar a versão do Milvus","href":"Check-the-Milvus-version","type":2,"isActive":false},{"label":"Realizar uma atualização contínua","href":"Conduct-a-rolling-upgrade","type":2,"isActive":false},{"label":"Atualizar o Milvus usando o Helm","href":"Upgrade-Milvus-using-Helm","type":2,"isActive":false},{"label":"Migrar os metadados","href":"Migrate-the-metadata","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_standalone-helm.md b/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_standalone-helm.md
index 8dd0f846a..559b177ad 100644
--- a/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_standalone-helm.md
+++ b/localization/v2.5.x/site/pt/adminGuide/upgrade_milvus_standalone-helm.md
@@ -66,7 +66,7 @@ title: Atualizar o Milvus Standalone com o Helm Chart
$ helm search repo zilliztech/milvus --versions
-
O repositório Milvus Helm Charts em https://milvus-io.github.io/milvus-helm/ foi arquivado e pode obter mais actualizações em https://zilliztech.github.io/milvus-helm/ da seguinte forma:
+
O repositório de Milvus Helm Charts em https://milvus-io.github.io/milvus-helm/ foi arquivado e pode obter mais actualizações em https://zilliztech.github.io/milvus-helm/ da seguinte forma:
helm repo add zilliztech https://zilliztech.github.io/milvus-helm
helm repo update zilliztech
# upgrade existing helm release
@@ -108,10 +108,10 @@ zilliztech/milvus 4.1.1 2.3.0 Milvus is an ope
zilliztech/milvus 4.1.0 2.3.0 Milvus is an open-source vector database built ...
Pode escolher o caminho de atualização para o seu Milvus da seguinte forma:
-
- [Conduzir uma atualização contínua](#conduct-a-rolling-upgrade) do Milvus v2.2.3 e versões posteriores para a v2.5.0-beta.
+
- [Conduzir uma atualização contínua](#conduct-a-rolling-upgrade) do Milvus v2.2.3 e versões posteriores para a v2.5.0.
Realizar uma atualização contínua
@@ -132,7 +132,7 @@ zilliztech/milvus 4.1.0 2.3.0 Milvus is an ope
Desde a versão 2.2.3 do Milvus, é possível configurar os coordenadores do Milvus para funcionarem em modo de espera ativa e ativar a funcionalidade de atualização contínua para os mesmos, de modo a que o Milvus possa responder aos pedidos recebidos durante as actualizações dos coordenadores. Nas versões anteriores, os coordenadores devem ser removidos e depois criados durante uma atualização, o que pode provocar um certo tempo de inatividade do serviço.
As actualizações contínuas requerem que os coordenadores trabalhem em modo de espera ativa. Pode utilizar o script que fornecemos para configurar os coordenadores para trabalharem em modo de espera ativa e iniciar a atualização contínua.
Com base nos recursos de atualização contínua fornecidos pelo Kubernetes, o script acima impõe uma atualização ordenada das implantações de acordo com suas dependências. Além disso, o Milvus implementa um mecanismo para garantir que os seus componentes permanecem compatíveis com os que dependem deles durante a atualização, reduzindo significativamente o potencial tempo de inatividade do serviço.
-
O script aplica-se apenas à atualização do Milvus instalado com o Helm. A tabela seguinte lista as flags de comando disponíveis nos scripts.
+
O script aplica-se apenas à atualização do Milvus instalado com o Helm. A tabela a seguir lista os sinalizadores de comando disponíveis nos scripts.
Parâmetros
Descrição
Valor por defeito
Necessário
@@ -140,19 +140,19 @@ zilliztech/milvus 4.1.0 2.3.0 Milvus is an ope
i
Nome da instância Milvus
None
Verdadeiro
n
Espaço de nomes em que o Milvus está instalado
default
Falso
-
t
Versão alvo do Milvus
None
Verdadeiro
+
t
Versão de destino do Milvus
None
Verdadeiro
w
Nova etiqueta de imagem do Milvus
milvusdb/milvus:v2.2.3
Verdadeiro
o
Funcionamento
update
Falso
-
Depois de se certificar de que todas as implementações na sua instância Milvus estão no seu estado normal. Você pode executar o seguinte comando para atualizar a instância do Milvus para a versão 2.5.0-beta.
Depois de se ter assegurado de que todas as implementações na sua instância Milvus estão no seu estado normal. Você pode executar o seguinte comando para atualizar a instância do Milvus para a versão 2.5.0.
O script não se aplica à instância do Milvus instalada com o RocksMQ.
O script codifica a ordem de atualização das implantações e não pode ser alterado.
-
O script usa kubectl patch para atualizar as implantações e kubectl rollout status para observar seu status.
+
O script usa kubectl patch para atualizar as implementações e kubectl rollout status para observar o seu estado.
O script usa kubectl patch para atualizar o rótulo app.kubernetes.io/version das implantações para aquele especificado após o sinalizador -t no comando.
Desde o Milvus 2.2.0, os metadados são incompatíveis com os das versões anteriores. Os exemplos a seguir pressupõem uma atualização do Milvus 2.1.4 para o Milvus 2.2.0.
-
1. Verificar a versão do Milvus
Execute $ helm list para verificar a versão da sua aplicação Milvus. Pode ver que a APP VERSION é a 2.1.4.
+
1. Verificar a versão do Milvus
Execute $ helm list para verificar a versão da sua aplicação Milvus. Pode ver que APP VERSION é 2.1.4.
Verifique a etiqueta de imagem para o pod my-release-milvus-proxy-6c548f787f-scspp. Pode ver que a versão do seu cluster Milvus é a v2.1.4.
+
3. Verificar a etiqueta de imagem
Verifique a etiqueta de imagem para o pod my-release-milvus-proxy-6c548f787f-scspp. Pode ver que a versão do seu cluster Milvus é v2.1.4.
$ kubectl get pods my-release-milvus-proxy-6c548f787f-scspp -o=jsonpath='{$.spec.containers[0].image}'# milvusdb/milvus:v2.1.4
4. Migrar os metadados
Uma grande mudança no Milvus 2.2 é a estrutura de metadados dos índices de segmento. Por conseguinte, é necessário utilizar o Helm para migrar os metadados durante a atualização do Milvus da v2.1.x para a v2.2.0. Eis um script para migrar os metadados em segurança.
-
Este script se aplica apenas ao Milvus instalado em um cluster K8s. Se ocorrer um erro durante o processo, reverta primeiro para a versão anterior com a operação de reversão.
+
Este script só se aplica ao Milvus instalado em um cluster K8s. Se ocorrer um erro durante o processo, reverta primeiro para a versão anterior com a operação de reversão.
A tabela seguinte lista as operações que pode efetuar para a meta-migração.
Para atualizar o Milvus da v2.1.x para a 2.5.0, é necessário migrar os metadados antes da atualização efectiva.
-
Realizar uma atualização contínua
+
Conduzir uma atualização contínuaoperator
upgrade milvus-
-
Desde a versão 2.2.3 do Milvus, é possível configurar os coordenadores do Milvus para funcionarem em modo de espera ativa e ativar a funcionalidade de atualização contínua para os mesmos, de modo a que o Milvus possa responder aos pedidos recebidos durante as actualizações dos coordenadores. Nas versões anteriores, os coordenadores devem ser removidos e depois criados durante uma atualização, o que pode provocar um certo tempo de inatividade do serviço.
-
Com base nas capacidades de atualização contínua fornecidas pela Kubernetes, o operador do Milvus impõe uma atualização ordenada das implementações de acordo com as suas dependências. Além disso, o Milvus implementa um mecanismo para garantir que os seus componentes permanecem compatíveis com os que deles dependem durante a atualização, reduzindo significativamente o potencial tempo de inatividade do serviço.
+
Desde a versão 2.2.3 do Milvus, é possível configurar os coordenadores do Milvus para funcionarem em modo de espera ativa e ativar a funcionalidade de atualização contínua para os mesmos, de modo a que o Milvus possa responder aos pedidos recebidos durante as actualizações do coordenador. Nas versões anteriores, os coordenadores devem ser removidos e depois criados durante uma atualização, o que pode provocar um certo tempo de inatividade do serviço.
+
Com base nas capacidades de atualização contínua fornecidas pelo Kubernetes, o operador do Milvus impõe uma atualização ordenada das implementações de acordo com as suas dependências. Além disso, o Milvus implementa um mecanismo para garantir que os seus componentes permanecem compatíveis com os que deles dependem durante a atualização, reduzindo significativamente o potencial tempo de inatividade do serviço.
A funcionalidade de atualização contínua está desactivada por defeito. É necessário activá-la explicitamente através de um ficheiro de configuração.
Neste ficheiro de configuração acima, defina spec.components.enableRollingUpdate para true e defina spec.components.image para a versão desejada do Milvus.
Por predefinição, o Milvus efectua uma atualização contínua para os coordenadores de forma ordenada, substituindo as imagens do pod do coordenador uma após a outra. Para reduzir o tempo de atualização, considere definir spec.components.imageUpdateMode como all para que o Milvus substitua todas as imagens de pod ao mesmo tempo.
Você pode definir spec.components.imageUpdateMode como rollingDowngrade para que o Milvus substitua as imagens do pod coordenador por uma versão inferior.
Desde o Milvus 2.2.0, os metadados são incompatíveis com os das versões anteriores. Os seguintes exemplos assumem uma atualização do Milvus 2.1.4 para o Milvus v2.5.0-beta.
-
1. Criar um ficheiro .yaml para migração de metadados
Crie um ficheiro de migração de metadados. Segue-se um exemplo. É necessário especificar name, sourceVersion e targetVersion no ficheiro de configuração. O exemplo seguinte define name para my-release-upgrade, sourceVersion para v2.1.4, e targetVersion para v2.5.0-beta. Isto significa que a sua instância Milvus será actualizada da v2.1.4 para a v2.5.0-beta.
+
Desde o Milvus 2.2.0, os metadados são incompatíveis com os das versões anteriores. Os seguintes exemplos pressupõem uma atualização do Milvus 2.1.4 para o Milvus v2.5.0.
+
1. Criar um ficheiro .yaml para migração de metadados
Crie um ficheiro de migração de metadados. Segue-se um exemplo. É necessário especificar name, sourceVersion e targetVersion no ficheiro de configuração. O exemplo seguinte define name para my-release-upgrade, sourceVersion para v2.1.4, e targetVersion para v2.5.0. Isto significa que a sua instância Milvus será actualizada da v2.1.4 para a v2.5.0.
apiVersion: milvus.io/v1beta1
kind: MilvusUpgrade
metadata:
@@ -161,9 +161,9 @@ spec:
namespace: default
name: my-release
sourceVersion: "v2.1.4"
- targetVersion: "v2.5.0-beta"
+ targetVersion: "v2.5.0"# below are some omit default values:
- # targetImage: "milvusdb/milvus:v2.5.0-beta"
+ # targetImage: "milvusdb/milvus:v2.5.0"# toolImage: "milvusdb/meta-migration:v2.2.0"# operation: upgrade# rollbackIfFailed: true
diff --git a/localization/v2.5.x/site/pt/adminGuide/users_and_roles.json b/localization/v2.5.x/site/pt/adminGuide/users_and_roles.json
new file mode 100644
index 000000000..3b760064b
--- /dev/null
+++ b/localization/v2.5.x/site/pt/adminGuide/users_and_roles.json
@@ -0,0 +1 @@
+{"codeList":["from pymilvus import MilvusClient\n\nclient = MilvusClient(\n uri=\"http://localhost:19530\",\n token=\"root:Milvus\"\n)\n\nclient.create_user(user_name=\"user_1\", password=\"P@ssw0rd\")\n\n","import io.milvus.v2.client.ConnectConfig;\nimport io.milvus.v2.client.MilvusClientV2;\nimport io.milvus.v2.service.rbac.request.CreateUserReq;\n\nConnectConfig connectConfig = ConnectConfig.builder()\n .uri(\"http://localhost:19530\")\n .token(\"root:Milvus\")\n .build();\n \nMilvusClientV2 client = new MilvusClientV2(connectConfig);\n\nCreateUserReq createUserReq = CreateUserReq.builder()\n .userName(\"user_1\")\n .password(\"P@ssw0rd\")\n .build();\n \nclient.createUser(createUserReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nconst address = \"http://localhost:19530\";\nconst token = \"root:Milvus\";\nconst client = new MilvusClient({address, token});\n\nawait milvusClient.createUser({\n username: 'user_1',\n password: 'P@ssw0rd',\n });\n\n","export CLUSTER_ENDPOINT=\"http://localhost:19530\"\nexport TOKEN=\"root:Milvus\"\n\ncurl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/create\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"userName\": \"user_1\",\n \"password\": \"P@ssw0rd\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.update_password(\n user_name=\"user_1\",\n old_password=\"P@ssw0rd\",\n new_password=\"NewP@ssw0rd\"\n)\n\n","import io.milvus.v2.service.rbac.request.UpdatePasswordReq;\n\nUpdatePasswordReq updatePasswordReq = UpdatePasswordReq.builder()\n .userName(\"user_1\")\n .password(\"P@ssw0rd\")\n .newPassword(\"NewP@ssw0rd\")\n .build();\nclient.updatePassword(updatePasswordReq);\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.updateUser({\n username: 'user_1',\n newPassword: 'P@ssw0rd',\n oldPassword: 'NewP@ssw0rd',\n});\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/update_password\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"newPassword\": \"P@ssw0rd!\",\n \"userName\": \"user_1\",\n \"password\": \"P@ssw0rd\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.list_users()\n\n","List resp = client.listUsers();\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.listUsers();\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/users/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","['root', 'user_1']\n\n","from pymilvus import MilvusClient\n\nclient.create_role(role_name=\"role_a\")\nimport io.milvus.v2.service.rbac.request.CreateRoleReq;\n\n","CreateRoleReq createRoleReq = CreateRoleReq.builder()\n .roleName(\"role_a\")\n .build();\n \n\n","client.createRole(createRoleReq);\nconst { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.createRole({\n roleName: 'role_a',\n});\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/create\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{\n \"roleName\": \"role_a\"\n}'\n\n","from pymilvus import MilvusClient\n\nclient.list_roles()\n\n","List roles = client.listRoles();\n\n","const { MilvusClient, DataType } = require(\"@zilliz/milvus2-sdk-node\")\n\nawait milvusClient.listRoles(\n includeUserInfo: True\n);\n\n","curl --request POST \\\n--url \"${CLUSTER_ENDPOINT}/v2/vectordb/roles/list\" \\\n--header \"Authorization: Bearer ${TOKEN}\" \\\n--header \"Content-Type: application/json\" \\\n-d '{}'\n\n","['admin', 'role_a']\n\n"],"headingContent":"Create Users & Roles","anchorList":[{"label":"Criar utilizadores e funções","href":"Create-Users--Roles","type":1,"isActive":false},{"label":"Utilizador","href":"User","type":2,"isActive":false},{"label":"Função","href":"Role","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/pt/adminGuide/users_and_roles.md b/localization/v2.5.x/site/pt/adminGuide/users_and_roles.md
new file mode 100644
index 000000000..8ad9af03c
--- /dev/null
+++ b/localization/v2.5.x/site/pt/adminGuide/users_and_roles.md
@@ -0,0 +1,261 @@
+---
+id: users_and_roles.md
+related_key: 'users, roles'
+summary: >-
+ O Milvus consegue um controlo de acesso mais refinado através do RBAC. Pode
+ começar por criar utilizadores e funções, depois atribuir privilégios ou
+ grupos de privilégios às funções e, por fim, gerir o controlo de acesso
+ através da atribuição de funções aos utilizadores. Este método garante a
+ eficiência e a segurança da gestão de acesso. Esta página apresenta a forma de
+ criar utilizadores e funções no Milvus.
+title: Criar utilizadores e funções
+---
+
Criar utilizadores e funções
+
+
+
+
O Milvus permite um controlo de acesso mais fino através do RBAC. Pode começar por criar utilizadores e funções, depois atribuir privilégios ou grupos de privilégios às funções e, por fim, gerir o controlo de acesso através da atribuição de funções aos utilizadores. Este método garante a eficiência e a segurança da gestão de acesso. Esta página apresenta a forma de criar utilizadores e funções no Milvus.
+
Utilizador
+
+
+
+
Após a inicialização de uma instância do Milvus, é gerado automaticamente um utilizador raiz para autenticação quando se liga ao Milvus pela primeira vez. O nome de utilizador do utilizador raiz é root e a palavra-passe é Milvus. A função predefinida do utilizador raiz é admin, que tem acesso a todos os recursos. Para garantir a segurança dos dados, mantenha as credenciais do utilizador raiz seguras para evitar o acesso não autorizado.
+
Para operações diárias, recomendamos a criação de utilizadores em vez de utilizar o utilizador raiz.
+
Criar um utilizador
O exemplo a seguir mostra como criar um usuário com o nome de usuário user_1 e a senha P@ssw0rd. O nome de utilizador e a palavra-passe do utilizador devem seguir estas regras.
+
+
Nome de utilizador: Deve começar com uma letra e só pode incluir letras maiúsculas ou minúsculas, números e sublinhados.
+
Palavra-passe: Deve ter entre 8 e 64 caracteres e deve incluir três das seguintes opções: letras maiúsculas, letras minúsculas, números e caracteres especiais.
Abaixo está um exemplo de saída. root é o utilizador predefinido gerado automaticamente no Milvus. user_1 é o novo utilizador que acabou de ser criado.
+
['root', 'user_1']
+
+
+
Função
+
+
+
+
O Milvus fornece uma função incorporada chamada admin, que é uma função de administrador que pode aceder a recursos em todas as instâncias e tem privilégios para todas as operações. Para uma gestão de acesso mais refinada e uma maior segurança dos dados, recomenda-se que crie funções personalizadas com base nas suas necessidades.
+
Criar uma função
O exemplo a seguir demonstra como criar uma função chamada role_a.
+
O nome da função deve seguir a seguinte regra.
+
+
Deve começar com uma letra e só pode incluir letras maiúsculas ou minúsculas, números e sublinhados."
Abaixo está um exemplo de saída. admin é a função padrão em Milvus. role_a é a nova função que acabou de ser criada.
+
['admin', 'role_a']
+
+
diff --git a/localization/v2.5.x/site/pt/getstarted/run-milvus-docker/install_standalone-docker-compose.json b/localization/v2.5.x/site/pt/getstarted/run-milvus-docker/install_standalone-docker-compose.json
index 3b4602cd8..04163e8ba 100644
--- a/localization/v2.5.x/site/pt/getstarted/run-milvus-docker/install_standalone-docker-compose.json
+++ b/localization/v2.5.x/site/pt/getstarted/run-milvus-docker/install_standalone-docker-compose.json
@@ -1 +1 @@
-{"codeList":["# Download the configuration file\n$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0-beta/milvus-standalone-docker-compose.yml -O docker-compose.yml\n\n# Start Milvus\n$ sudo docker compose up -d\n\nCreating milvus-etcd ... done\nCreating milvus-minio ... done\nCreating milvus-standalone ... done\n","$ sudo docker-compose ps\n\n Name Command State Ports\n--------------------------------------------------------------------------------------------------------------------\nmilvus-etcd etcd -advertise-client-url ... Up 2379/tcp, 2380/tcp\nmilvus-minio /usr/bin/docker-entrypoint ... Up (healthy) 9000/tcp\nmilvus-standalone /tini -- milvus run standalone Up 0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp\n","# Stop Milvus\n$ sudo docker compose down\n\n# Delete service data\n$ sudo rm -rf volumes\n"],"headingContent":"Run Milvus with Docker Compose (Linux)","anchorList":[{"label":"Executar o Milvus com o Docker Compose (Linux)","href":"Run-Milvus-with-Docker-Compose-Linux","type":1,"isActive":false},{"label":"Pré-requisitos","href":"Prerequisites","type":2,"isActive":false},{"label":"Instalar o Milvus","href":"Install-Milvus","type":2,"isActive":false},{"label":"O que se segue","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
+{"codeList":["# Download the configuration file\n$ wget https://github.com/milvus-io/milvus/releases/download/v2.5.0/milvus-standalone-docker-compose.yml -O docker-compose.yml\n\n# Start Milvus\n$ sudo docker compose up -d\n\nCreating milvus-etcd ... done\nCreating milvus-minio ... done\nCreating milvus-standalone ... done\n","$ sudo docker-compose ps\n\n Name Command State Ports\n--------------------------------------------------------------------------------------------------------------------\nmilvus-etcd etcd -advertise-client-url ... Up 2379/tcp, 2380/tcp\nmilvus-minio /usr/bin/docker-entrypoint ... Up (healthy) 9000/tcp\nmilvus-standalone /tini -- milvus run standalone Up 0.0.0.0:19530->19530/tcp, 0.0.0.0:9091->9091/tcp\n","# Stop Milvus\n$ sudo docker compose down\n\n# Delete service data\n$ sudo rm -rf volumes\n"],"headingContent":"Run Milvus with Docker Compose (Linux)","anchorList":[{"label":"Executar o Milvus com o Docker Compose (Linux)","href":"Run-Milvus-with-Docker-Compose-Linux","type":1,"isActive":false},{"label":"Pré-requisitos","href":"Prerequisites","type":2,"isActive":false},{"label":"Instalar o Milvus","href":"Install-Milvus","type":2,"isActive":false},{"label":"O que se segue","href":"Whats-next","type":2,"isActive":false}]}
\ No newline at end of file
diff --git a/localization/v2.5.x/site/pt/getstarted/run-milvus-docker/install_standalone-docker-compose.md b/localization/v2.5.x/site/pt/getstarted/run-milvus-docker/install_standalone-docker-compose.md
index e5e520159..88366bae8 100644
--- a/localization/v2.5.x/site/pt/getstarted/run-milvus-docker/install_standalone-docker-compose.md
+++ b/localization/v2.5.x/site/pt/getstarted/run-milvus-docker/install_standalone-docker-compose.md
@@ -57,7 +57,7 @@ title: Executar o Milvus com o Docker Compose (Linux)
O Milvus fornece um arquivo de configuração do Docker Compose no repositório do Milvus. Para instalar o Milvus usando o Docker Compose, basta executar