更新數(shù)據(jù)
更新時間:
本文將介紹如何通過API新增和刪除表數(shù)據(jù)
1、添加表
用戶可通過添加表并配置oss、MaxCompute數(shù)據(jù)源將全量數(shù)據(jù)導(dǎo)入到表中:
添加表的具體步驟可參考:
添加表的流程配置完成后,等待表的狀態(tài)為“使用中”即可通過API插入數(shù)據(jù):
2、配置公網(wǎng)白名單
如果用戶的訪問環(huán)境是同個虛擬交換的VPC環(huán)境,可以忽略此步驟。
本地環(huán)境或公網(wǎng)環(huán)境請參考公網(wǎng)白名單配置。
3、推送表數(shù)據(jù)
以Python為例:
添加依賴:
pip install alibabacloud-ha3engine-vector
數(shù)據(jù)推送demo:
# -*- coding: utf-8 -*-
from alibabacloud_ha3engine_vector import models, client
from Tea.exceptions import TeaException, RetryError
Config = models.Config(
endpoint="<API域名>", # // API域名,可在實例詳情頁>API入口 查看(需要去掉http://前綴)
instance_id="<實例id>", # // 實例id,可在實例詳情頁左上角查看,例:ha-cn-i7*****605
protocol="http",
access_user_name="<用戶名>", # // 用戶名,可在實例詳情頁>API入口 查看
access_pass_word="<用戶名密碼>" # // 用戶名密碼,可在實例詳情頁>API入口 修改
)
# 初始化 引擎客戶端
ha3EngineClient = client.Client(Config)
def push():
# 文檔推送的表名稱,是實例id與表名的拼接,中間用下劃線連接
tableName = "<instance_id>_<table_name>";
try:
# 添加文檔
# 添加一篇文檔,如果文檔已經(jīng)存在會先刪除然后再添加。
# =====================================================
# 更新文檔內(nèi)容信息
add2DocumentFields = {
"id": 1, # 主鍵id,INT單值類型
"cate_id": "123", # STRING單值類型
"vector": "a\x1Db\x1Dc\x1Dd" # STRING多值類型
}
# 將文檔內(nèi)容添入 add2Document結(jié)構(gòu)
add2Document = {
"fields": add2DocumentFields,
"cmd": "add" # 新增對應(yīng)的文檔命令: add
}
optionsHeaders = {}
# 文檔推送外層結(jié)構(gòu), 可添加對文檔操作的結(jié)構(gòu)體.結(jié)構(gòu)內(nèi)支持 一個或多個文檔操作內(nèi)容.
documentArrayList = []
documentArrayList.append(add2Document)
pushDocumentsRequest = models.PushDocumentsRequest(optionsHeaders, documentArrayList)
# 文檔推送的文檔主鍵字段.
pkField = "id"
# 使用默認 運行時參數(shù)進行請求
response = ha3EngineClient.push_documents(tableName, pkField, pushDocumentsRequest)
print(response.body)
print(response.body)
except TeaException as e:
print(f"send request with TeaException : {e}")
except RetryError as e:
print(f"send request with Connection Exception : {e}")
if __name__ == "__main__":
push()
注意:
Python SDK中endpoint里需要去掉http://
dataSourceName數(shù)據(jù)源名稱為實例id_表名,如下圖所示,dataSourceName=ha-cn-zpr3dgzxg04_test_vector_api
response中返回{"status": "OK", "code": 200} 說明本次請求成功。
4、驗證數(shù)據(jù)
通過主鍵或向量在查詢測試中進行驗證:
其他SDK參考
其他語言SDK可參考查詢數(shù)據(jù)。
文檔內(nèi)容是否對您有幫助?