From eebba10403825aa43d8661d1992b7a3e56fa041b Mon Sep 17 00:00:00 2001 From: jemappellehc Date: Sat, 12 Apr 2025 14:47:54 +0800 Subject: [PATCH] =?UTF-8?q?[DataVec]=20=E4=BF=AE=E6=94=B9PQ=E5=AE=89?= =?UTF-8?q?=E8=A3=85=E6=B5=81=E7=A8=8B=E5=8F=8A=E5=8F=96=E5=8C=85=E6=96=B9?= =?UTF-8?q?=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- content/docs-lite/zh/docs/DataVec/PQ.md | 45 ++++++++++++++---- .../docs/DataVec/figures/datavec_enablepq.png | Bin 0 -> 3448 bytes .../zh/docs/DataVec/figures/datavec_pq.png | Bin 0 -> 10332 bytes content/zh/docs/DataVec/PQ.md | 44 +++++++++++++---- .../docs/DataVec/figures/datavec_enablepq.png | Bin 0 -> 3448 bytes .../zh/docs/DataVec/figures/datavec_pq.png | Bin 0 -> 10332 bytes 6 files changed, 69 insertions(+), 20 deletions(-) create mode 100644 content/docs-lite/zh/docs/DataVec/figures/datavec_enablepq.png create mode 100644 content/docs-lite/zh/docs/DataVec/figures/datavec_pq.png create mode 100644 content/zh/docs/DataVec/figures/datavec_enablepq.png create mode 100644 content/zh/docs/DataVec/figures/datavec_pq.png diff --git a/content/docs-lite/zh/docs/DataVec/PQ.md b/content/docs-lite/zh/docs/DataVec/PQ.md index 3f4d7b38f..d99d54a7e 100644 --- a/content/docs-lite/zh/docs/DataVec/PQ.md +++ b/content/docs-lite/zh/docs/DataVec/PQ.md @@ -14,25 +14,50 @@ >PQ不支持ustore表建立索引。 ## 安装准备 -### 获取PQ加速安装包 -- 详见[链接](https://support.huawei.com/enterprise/zh/kunpeng-computing/kunpeng-boostkit-pid-253662285/software/263761464?idAbsPath=fixnode01%7C23710424%7C251364417%7C9856629%7C253662285)获取libkvecturbo.so安装包。 -- 解压安装包获得rpm文件并安装(以boostkit-sra_recall-1.1.0.aarch64.rpm包为例),默认路径为/usr/local/sra_recall。 +### 环境要求 +PQ特性只支持ARM架构环境。 + +### 1. 容器化部署openGauss +详见[容器镜像安装](../InstallationGuide/容器镜像安装.md)。 + +### 2. 获取PQ加速安装包 +加速包默认安装路径为/usr/local/sra_recall。 +``` +wget https://kunpeng-repo.obs.cn-north-4.myhuaweicloud.com/Kunpeng%20BoostKit/Kunpeng%20BoostKit%2025.0.RC1/BoostKit-SRA_Recall-1.1.0.zip +unzip BoostKit-SRA_Recall-1.1.0.zip +``` + +### 3. 拷贝检索加速包至openGauss容器内安装 +执行语句中的CONTAINER_ID为openGauss Docker容器ID,请根据实际情况进行替换。 + ``` -rpm -ivh boostkit-sra_recall-1.1.0.aarch64.rpm +docker cp boostkit-sra_recall-1.1.0-1.aarch64.rpm CONTAINER_ID:/home/omm +docker exec -it CONTAINER_ID bash +cd /home/omm +rpm -ivf boostkit-sra_recall-1.1.0-1.aarch64.rpm ``` -### 配置环境变量 +### 4. 容器内变量配置 +在容器内修改环境配置 ``` -export DATAVEC_PQ_LIB_PATH= +cd / +vi entrypoint.sh +export DATAVEC_PQ_LIB_PATH=/usr/local/sra_recall/lib ``` +![datavec_pq.png](figures/datavec_pq.png) -- `YOUR_SO_PATH`为libkvecturbo.so所在路径 +修改数据库参数配置,添加enable_pq=on +``` +vi /var/lib/opengauss/data/postgresql.conf +``` +![datavec_enablepq.png](figures/datavec_enablepq.png) -## 环境要求 -PQ特性只支持ARM架构环境。 +重启Docker容器。 +``` +docker restart CONTAINER_ID +``` -## 安装与卸载 ### 启用PQ特性 设置GUC参数`enable_pq = on`启用PQ特性,详情请参考[DataVec向量引擎参数](../../../../zh/docs/DatabaseReference/DataVec向量引擎参数.md)。 diff --git a/content/docs-lite/zh/docs/DataVec/figures/datavec_enablepq.png b/content/docs-lite/zh/docs/DataVec/figures/datavec_enablepq.png new file mode 100644 index 0000000000000000000000000000000000000000..6e65dee7a701375b489f8005f59cc7abc056756b GIT binary patch literal 3448 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 WjE<1&9QM^9oSc->hf1JP!2bZPlmG|- literal 0 HcmV?d00001 diff --git a/content/zh/docs/DataVec/PQ.md b/content/zh/docs/DataVec/PQ.md index 48f77568d..41c0393ff 100644 --- a/content/zh/docs/DataVec/PQ.md +++ b/content/zh/docs/DataVec/PQ.md @@ -13,25 +13,49 @@ >PQ不支持ustore表建立索引。 ## 安装准备 -### 获取PQ加速安装包 -- 详见[链接](https://support.huawei.com/enterprise/zh/kunpeng-computing/kunpeng-boostkit-pid-253662285/software/263761464?idAbsPath=fixnode01%7C23710424%7C251364417%7C9856629%7C253662285)获取libkvecturbo.so安装包。 -- 解压安装包获得rpm文件并安装(以boostkit-sra_recall-1.1.0.aarch64.rpm包为例),默认路径为/usr/local/sra_recall。 +### 环境要求 +PQ特性只支持ARM架构环境。 + +### 1. 容器化部署openGauss +详见[容器镜像安装](https://docs.opengauss.org/zh/docs/latest-lite/docs/InstallationGuide/%E5%AE%B9%E5%99%A8%E9%95%9C%E5%83%8F%E5%AE%89%E8%A3%85.html)。 + +### 2. 获取PQ检索加速安装包 +加速包默认安装路径为/usr/local/sra_recall。 ``` -rpm -ivh boostkit-sra_recall-1.1.0.aarch64.rpm +wget https://kunpeng-repo.obs.cn-north-4.myhuaweicloud.com/Kunpeng%20BoostKit/Kunpeng%20BoostKit%2025.0.RC1/BoostKit-SRA_Recall-1.1.0.zip +unzip BoostKit-SRA_Recall-1.1.0.zip ``` -### 配置环境变量 +### 3. 拷贝检索加速包至openGauss容器内安装 +执行语句中的CONTAINER_ID为openGauss Docker容器ID,请根据实际情况进行替换。 + ``` -export DATAVEC_PQ_LIB_PATH= +docker cp boostkit-sra_recall-1.1.0-1.aarch64.rpm CONTAINER_ID:/home/omm +docker exec -it CONTAINER_ID bash +cd /home/omm +rpm -ivf boostkit-sra_recall-1.1.0-1.aarch64.rpm ``` -- `YOUR_SO_PATH`为libkvecturbo.so所在路径 +### 4. 容器内变量配置 +在容器内修改环境配置 +``` +cd / +vi entrypoint.sh +export DATAVEC_PQ_LIB_PATH=/usr/local/sra_recall/lib +``` +![datavec_pq.png](figures/datavec_pq.png) +修改数据库参数配置,添加enable_pq=on -## 环境要求 -PQ特性只支持ARM架构环境。 +``` +vi /var/lib/opengauss/data/postgresql.conf +``` +![datavec_enablepq.png](figures/datavec_enablepq.png) -## 安装与卸载 +重启Docker容器。 +``` +docker restart CONTAINER_ID +``` ### 启用PQ特性 设置GUC参数`enable_pq = on`启用PQ特性,详情请参考[DataVec向量引擎参数](../../../docs-lite/zh/docs/DatabaseReference/DataVec向量引擎参数.md)。 diff --git a/content/zh/docs/DataVec/figures/datavec_enablepq.png b/content/zh/docs/DataVec/figures/datavec_enablepq.png new file mode 100644 index 0000000000000000000000000000000000000000..6e65dee7a701375b489f8005f59cc7abc056756b GIT binary patch literal 3448 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 WjE<1&9QM^9oSc->hf1JP!2bZPlmG|- literal 0 HcmV?d00001 -- Gitee