全部產品
Search
文件中心

:Object Storage Service

更新時間:Jun 27, 2026

開通OSS服務

image.png

  1. 開通OSS服務

  2. 控制台建立儲存空間

  3. 上傳檔案

添加OSS資料來源

  1. 進入OpenSearch控制台,在左上方切換到OpenSearch-向量檢索版,在執行個體管理頁面對應的列表中找到所屬執行個體,點擊操作欄中的管理。

  2. 配置資料來源,在配置中心>資料來源配置介面,點擊添加資料來源在彈窗中,選擇Object Storage Service,輸入資料來源名稱OSS路徑儲存空間,然後點擊校正即可。

參數說明

  • 資料來源名稱:可自訂資料來源名稱支援字母數字底線,但需要字母開頭

  • OSS路徑:訪問OSS檔案的路徑

  • 儲存空間(Bucket):OSS的Bucket名稱

說明:

  • 目錄名必須包含opensearch,否則將無法讀到資料,且不可包含 = & ?等特殊符號

  • OSS路徑來源:在建立好的Bucket名稱點擊進入後-建立目錄-選擇建立號的目錄路徑,此處樣本路徑為/opensearch_index_data/。

  • 儲存空間(Bucket) :OSS的Bucket名稱(來源:在開通的OSS服務Bucket裡使用建立好的Bucket名稱)

登入 OSS 管理主控台,在左側導覽列單擊 Bucket 列表,在搜尋方塊中輸入目標 Bucket 關鍵詞,在列表中找到對應 Bucket 並確認其名稱,將該名稱填入資料來源配置的 儲存空間 欄位。

  1. 添加索引表

    1. OSS資料來源建立好後,在配置中心>索引結構進行添加索引表。

    2. 配置索引表,索引表名稱可自訂,資料來源選擇配置好的OSS資料來源:

欄位設定中添加 pk 欄位(類型 STRING,勾選主鍵)和 embeddings 欄位(類型 FLOAT,勾選多值,分隔字元為 ^]),兩個欄位均勾選屬性欄位和搜尋結果展示,資料壓縮選擇 不壓縮,分析方式選擇 uniq。索引設定中添加 pk 索引(類型 PRIMARYKEY64,包含欄位 pk)和 vector 索引(類型 CUSTOMIZED,包含欄位 pk、embeddings)。

案例中配置了2個欄位pk、embeddings,範例資料可參考(樣本資料:oss_test.txt):

CMD=add
pk=999000
embeddings=0.00.0039257140.0098142860.0039257140.00
pk=999000
embeddings=0.00.0039257140

HA schema的資料格式可參考下方HA檔案格式。

  1. 索引重建,在營運中心>營運管理>索引重建頁面中觸發索引重建:

在彈出的索引重建對話方塊中,選擇資料來源名稱(如ha-cn-9lb3aulas01_oss_test),確認資料來源類型關聯索引表資訊,設定時間戳記,然後單擊確定

索引重建完成後,即可進行查詢測試。

HA檔案格式

檔案是建立索引的資料來源(注意:需要是utf-8的編碼),有著固定的格式,下面介紹標準的輸入格式。

  • 首先看一個完整的資料檔案standard_sample.data的內容

CMD=add^_
PK=12345321^_
url=http://www.aliyun.com/index.html^_
title=阿里雲計算有限公司^_
body=xxxxxx xxx^_
time=3123423421^_
multi_value_field=1234^]324^]342^_
bidwords=mp3^\price=35.8^Ptime=13867236221^]mp4^\price=32.8^Ptime=13867236221^_
^^
CMD=delete^_
PK=12345321^_CMD=add^_
PK=12345321^_
url=http://www.aliyun.com/index.html^_
title=阿里雲計算有限公司^_
body=xxxxxx xxx^_
time=3123423421^_
multi_value_field=1234^]324^]342^_
bidwords=mp3^\price=35.8^Ptime=13867236221^]mp4^\price=32.8^Ptime=13867236221^_
^^
CMD=delete^_
PK=12345321^_

可以看到上面的資料檔案中總共有兩個命令,分別是add、delete每個命令由多行組成,每行都是一個key-value對。 命令與命令之間用'^^\n'分隔,每一對key-value之間以'^_\n'分隔,多值之間以'^]'分隔。下面詳細介紹。

  • 檔案分隔字元定義

C++編碼

ASCII

16進位

描述

(emacs/vi)中的顯示形態

emacs中輸入方法

vi中輸入方法

"\x1F\n"

1F0A

key value分隔字元

^_(接換行)

C-q C-7

C-v C-7

"\x1E\n"

1E0A

命令分隔字元

^^(接換行)

C-q C-6

C-v C-6

"\x1D"

1D

multi value 分隔字元

^]

C-q C-5

C-v C-5

"\x1C"

1C

section weight標誌符

^\

C-q C-4

C-v C-4

"\x1D"

1D

section 分隔字元

^]

C-q C-5

C-v C-5

"\x03"

03

sub doc 欄位分隔符號

^C

C-q C-c

C-v C-c

  • 命令格式定義

    • Add command format

      add命令表示往索引中增加新的內容。

      add命令第一行必須為CMD=add,後面是該文檔的field,field順序可以與schema中fields順序一致,所有出現的field必須是fields中指定的。

CMD=add^_
PK=12345321^_
url=http://www.aliyun.com/index.html^_
title=阿里雲計算有限公司^_
body=xxxxxx xxx^_
time=3123423421^_
multi_value_field=1234^]324^]342^_
bidwords=mp3^\price=35.8^Ptime=13867236221^]mp4^\price=32.8^Ptime=13867236221^_
^^CMD=add^_
PK=12345321^_
url=http://www.aliyun.com/index.html^_
title=阿里雲計算有限公司^_
body=xxxxxx xxx^_
time=3123423421^_
multi_value_field=1234^]324^]342^_
bidwords=mp3^\price=35.8^Ptime=13867236221^]mp4^\price=32.8^Ptime=13867236221^_
^^
  • Delete command format

    delete命令表示從索引中刪除指定的內容。

    delete命令第一"行"必須為CMD=delete,接下來的"行"為index schema中定義屬性為primary key 的field,以及用於

    partition hash的field,如果兩個field相同,則只需要出現一個field。

CMD=delete^_
PK=12345321^_
^^CMD=delete^_
PK=12345321^_
^^

刪除OSS資料來源

資料來源配置頁面,找到需要刪除的資料來源,點擊刪除即可。

注意

  • 資料來源刪除後將無法恢複,請謹慎操作。

  • 如果OSS資料來源已經配置了索引表,需先刪除索引表,才能刪除該OSS資料來源。

注意事項

  • 開通的OSS服務,需要和已購買的OpenSearch服務在同一個地區

  • 向量檢索版不支援無地區屬性的OSS的bucket

  • 執行新增OSS資料來源操作時,將會自動建立一個服務關聯角色(如已經建立,則不會重複建立)AliyunServiceRoleForSearchEngine,OpenSearch使用此角色來訪問您在其他雲產品中的資源已完成相應功能。