DomainData 表示被 Kuscia 管理的数据。请参考 DomainData。 您可以从 这里 找到对应的 protobuf 文件。
Data Mesh API 提供了从 Domain 侧的管理 DomainData 的能力,详细 API 请参考 Data Mesh。
方法名 | 请求类型 | 响应类型 | 描述 |
---|---|---|---|
CreateDomainData | CreateDomainDataRequest | CreateDomainDataResponse | 创建数据对象 |
UpdateDomainData | UpdateDomainDataRequest | UpdateDomainDataResponse | 更新数据对象 |
DeleteDomainData | DeleteDomainDataRequest | DeleteDomainDataResponse | 删除数据对象 |
QueryDomainData | QueryDomainDataRequest | QueryDomainDataResponse | 查询数据对象 |
BatchQueryDomainData | BatchQueryDomainDataRequest | BatchQueryDomainDataResponse | 批量查询数据对象 |
ListDomainData | ListDomainDataRequest | ListDomainDataResponse | 列出数据对象 |
{#create-domain-data}
/api/v1/domaindata/create
{#create-domain-data-request}
字段 | 类型 | 选填 | 描述 |
---|---|---|---|
header | RequestHeader | 可选 | 自定义请求内容 |
domaindata_id | string | 可选 | 数据对象 ID,满足 RFC 1123 标签名规则要求 |
name | string | 必填 | 名称 |
type | string | 必填 | 类型,如[table,model,rule,report],大小写敏感 |
relative_uri | string | 必填 | 相对数据源所在位置的路径,参考 DomainData 概念 |
domain_id | string | 必填 | 节点 ID |
datasource_id | string | 可选 | 数据源 ID,不填写则使用默认数据源,参考 DomainData 概念 |
attributes | map<string,string> | 可选 | 自定义属性,用作用户或应用算法组件为数据对象添加扩展信息,参考 DomainData 概念 |
partition | Partition | 可选 | 暂不支持 |
columns | DataColumn array | 必填 | 列信息 |
{#create-domain-data-response}
字段 | 类型 | 描述 |
---|---|---|
status | Status | 状态信息 |
data | CreateDomainDataResponseData | |
data.domaindata_id | string | 数据对象 ID |
发起请求:
# Execute example in container
export CTR_CERTS_ROOT=/home/kuscia/var/certs
curl -k -X POST 'https://localhost:8082/api/v1/domaindata/create' \
--header "Token: $(cat ${CTR_CERTS_ROOT}/token)" \
--header 'Content-Type: application/json' \
--cert ${CTR_CERTS_ROOT}/kusciaapi-server.crt \
--key ${CTR_CERTS_ROOT}/kusciaapi-server.key \
--cacert ${CTR_CERTS_ROOT}/ca.crt \
-d '{
"domain_id": "alice",
"domaindata_id": "alice-001",
"datasource_id": "test-alice-datasource-id",
"name": "alice001",
"type": "table",
"relative_uri": "alice.csv",
"columns": [
{
"name": "id1",
"type": "str",
"comment": ""
},
{
"name": "marital_single",
"type": "float",
"comment": ""
}
]
}'
请求响应成功结果:
{
"status": {
"code": 0,
"message": "success",
"details": []
},
"data": {
"domaindata_id": "alice-001"
}
}
{#update-domain-data}
/api/v1/domaindata/update
字段 | 类型 | 选填 | 描述 |
---|---|---|---|
header | RequestHeader | 可选 | 自定义请求内容 |
domaindata_id | string | 必填 | 数据对象 ID |
name | string | 必填 | 名称 |
type | string | 必填 | 类型,[table,model,rule,report,unknown],大小写敏感 |
relative_uri | string | 必填 | 相对数据源所在位置的路径,参考 DomainData 概念 |
domain_id | string | 必填 | 节点 ID |
datasource_id | string | 可选 | 数据源 ID,不填写则使用默认数据源,参考 DomainData 概念 |
attributes | map<string,string> | 可选 | 自定义属性,用作用户或应用算法组件为数据对象添加扩展信息,参考 DomainData 概念 |
partition | Partition | 可选 | 暂不支持 |
columns | DataColumn[] | 必填 | 列信息 |
字段 | 类型 | 描述 |
---|---|---|
status | Status | 状态信息 |
发起请求:
# Execute example in container
export CTR_CERTS_ROOT=/home/kuscia/var/certs
curl -k -X POST 'https://localhost:8082/api/v1/domaindata/update' \
--header "Token: $(cat ${CTR_CERTS_ROOT}/token)" \
--header 'Content-Type: application/json' \
--cert ${CTR_CERTS_ROOT}/kusciaapi-server.crt \
--key ${CTR_CERTS_ROOT}/kusciaapi-server.key \
--cacert ${CTR_CERTS_ROOT}/ca.crt \
-d '{
"domain_id": "alice",
"domaindata_id": "alice-001",
"datasource_id": "test-alice-datasource-id",
"name": "alice0010",
"type": "table",
"relative_uri": "alice.csv",
"columns": [
{
"name": "id1",
"type": "str",
"comment": ""
},
{
"name": "marital_single",
"type": "float",
"comment": ""
}
]
}'
请求响应成功结果:
{
"status": {
"code": 0,
"message": "success",
"details": []
}
}
{#delete-domain-data}
/api/v1/domaindata/delete
字段 | 类型 | 选填 | 描述 |
---|---|---|---|
header | RequestHeader | 可选 | 自定义请求内容 |
domain_id | string | 必填 | 节点 ID |
domaindata_id | string | 必填 | 数据对象 ID |
字段 | 类型 | 描述 |
---|---|---|
status | Status | 状态信息 |
发起请求:
# Execute example in container
export CTR_CERTS_ROOT=/home/kuscia/var/certs
curl -k -X POST 'https://localhost:8082/api/v1/domaindata/delete' \
--header "Token: $(cat ${CTR_CERTS_ROOT}/token)" \
--header 'Content-Type: application/json' \
--cert ${CTR_CERTS_ROOT}/kusciaapi-server.crt \
--key ${CTR_CERTS_ROOT}/kusciaapi-server.key \
--cacert ${CTR_CERTS_ROOT}/ca.crt \
-d '{
"domain_id": "alice",
"domaindata_id": "alice-001"
}'
请求响应成功结果:
{
"status": {
"code": 0,
"message": "success",
"details": []
}
}
{#query-domain-data}
/api/v1/domaindata/query
字段 | 类型 | 选填 | 描述 |
---|---|---|---|
header | RequestHeader | 可选 | 自定义请求内容 |
data | QueryDomainDataRequestData | 必填 | 查询内容 |
字段 | 类型 | 描述 |
---|---|---|
status | Status | 状态信息 |
data | DomainData |
发起请求:
# Execute example in container
export CTR_CERTS_ROOT=/home/kuscia/var/certs
curl -k -X POST 'https://localhost:8082/api/v1/domaindata/query' \
--header "Token: $(cat ${CTR_CERTS_ROOT}/token)" \
--header 'Content-Type: application/json' \
--cert ${CTR_CERTS_ROOT}/kusciaapi-server.crt \
--key ${CTR_CERTS_ROOT}/kusciaapi-server.key \
--cacert ${CTR_CERTS_ROOT}/ca.crt \
-d '{
"data": {
"domain_id": "alice",
"domaindata_id": "alice-001"
}
}'
请求响应成功结果:
{
"status": {
"code": 0,
"message": "success",
"details": []
},
"data": {
"domaindata_id": "alice-001",
"name": "alice001",
"type": "table",
"relative_uri": "alice.csv",
"domain_id": "alice",
"datasource_id": "test-alice-datasource-id",
"attributes": {},
"partition": null,
"columns": [
{
"name": "id1",
"type": "str",
"comment": "",
"not_nullable": false
},
{
"name": "marital_single",
"type": "float",
"comment": "",
"not_nullable": false
}
],
"vendor": "manual",
"status": "Available",
"author": "alice",
"file_format": "CSV"
}
}
请求响应异常结果:
{
"status": {
"code": 11506,
"message": "domaindatas.kuscia.secretflow \"default-data-source\" not found",
"details": []
},
"data": null
}
{#batch-query-domain-data}
/api/v1/domaindata/batchQuery
字段 | 类型 | 选填 | 描述 |
---|---|---|---|
header | RequestHeader | 可选 | 自定义请求内容 |
data | QueryDomainDataRequestData[] | 必填 | 查询内容 |
字段 | 类型 | 描述 |
---|---|---|
status | Status | 状态信息 |
data | DomainDataList |
发起请求:
# Execute example in container
export CTR_CERTS_ROOT=/home/kuscia/var/certs
curl -k -X POST 'https://localhost:8082/api/v1/domaindata/batchQuery' \
--header "Token: $(cat ${CTR_CERTS_ROOT}/token)" \
--header 'Content-Type: application/json' \
--cert ${CTR_CERTS_ROOT}/kusciaapi-server.crt \
--key ${CTR_CERTS_ROOT}/kusciaapi-server.key \
--cacert ${CTR_CERTS_ROOT}/ca.crt \
-d '{
"data": [
{
"domain_id": "alice",
"domaindata_id": "alice-001"
},
{
"domain_id": "alice",
"domaindata_id": "alice-table"
}
]
}'
请求响应成功结果:
{
"status": {
"code": 0,
"message": "success",
"details": []
},
"data": {
"domaindata_list": [
{
"domaindata_id": "alice-001",
"name": "alice001",
"type": "table",
"relative_uri": "alice.csv",
"domain_id": "alice",
"datasource_id": "test-alice-datasource-id",
"attributes": {},
"partition": null,
"columns": [
{
"name": "id1",
"type": "str",
"comment": "",
"not_nullable": false
},
{
"name": "marital_single",
"type": "float",
"comment": "",
"not_nullable": false
}
],
"vendor": "manual",
"status": "Available",
"author": "alice",
"file_format": "CSV"
}
]
}
}
{#list-domain-data}
/api/v1/domaindata/list
字段 | 类型 | 选填 | 描述 |
---|---|---|---|
header | RequestHeader | 可选 | 自定义请求内容 |
data | ListDomainDataRequestData | 必填 | 查询请求 |
字段 | 类型 | 描述 |
---|---|---|
status | Status | 状态信息 |
data | DomainDataList |
发起请求:
# Execute example in container
export CTR_CERTS_ROOT=/home/kuscia/var/certs
curl -k -X POST 'https://localhost:8082/api/v1/domaindata/list' \
--header "Token: $(cat ${CTR_CERTS_ROOT}/token)" \
--header 'Content-Type: application/json' \
--cert ${CTR_CERTS_ROOT}/kusciaapi-server.crt \
--key ${CTR_CERTS_ROOT}/kusciaapi-server.key \
--cacert ${CTR_CERTS_ROOT}/ca.crt \
-d '{
"data": {
"domain_id": "alice",
"domaindata_type": "table",
"domaindata_vendor": "manual"
}
}'
请求响应成功结果:
{
"status": {
"code": 0,
"message": "success",
"details": []
},
"data": {
"domaindata_list": [
{
"domaindata_id": "alice-table",
"name": "alice.csv",
"type": "table",
"relative_uri": "alice.csv",
"domain_id": "alice",
"datasource_id": "default-data-source",
"attributes": {
"description": "alice demo data"
},
"partition": null,
"columns": [
{
"name": "id1",
"type": "str",
"comment": "",
"not_nullable": false
},
{
"name": "marital_single",
"type": "float",
"comment": "",
"not_nullable": false
}
],
"vendor": "manual",
"status": "Available",
"author": "alice",
"file_format": "UNKNOWN"
}
]
}
}
{#query-domain-data-request-data}
字段 | 类型 | 选填 | 描述 |
---|---|---|---|
domain_id | string | 必填 | 节点 ID |
domaindata_id | string | 必填 | 数据对象 ID |
{#list-domain-data-request-data}
字段 | 类型 | 选填 | 描述 |
---|---|---|---|
domain_id | string | 必填 | 节点 ID |
domaindata_type | string | 可选 | 类型 |
domaindata_vendor | string | 可选 | 来源 |
{#domain-data-list}
字段 | 类型 | 描述 |
---|---|---|
domaindata_list | DomainData[] | 数据对象列表 |
{#domain-data-entity}
字段 | 类型 | 描述 |
---|---|---|
domaindata_id | string | 数据对象 ID |
name | string | 名称 |
type | string | 类型,[table,model,rule,report,unknown],大小写敏感 |
relative_uri | string | 相对数据源所在位置的路径,参考 DomainData 概念 |
domain_id | string | 节点 ID |
datasource_id | string | 数据源 ID,参考 DomainData 概念 |
attributes | map<string,string> | 自定义属性,用作用户或应用算法组件为数据对象添加扩展信息,参考 DomainData 概念 |
partition | Partition | 暂不支持 |
columns | DataColumn[] | 列信息 |
vendor | string | 来源,用于批量查询接口筛选数据对象,参考 ListDomainDataRequestData 和 DomainData 概念 |
author | string | 表示 DomainData 的所属者的节点 ID ,用来标识这个 DomainData 是由哪个节点创建的 |
{#partition}
字段 | 类型 | 选填 | 描述 |
---|---|---|---|
type | string | 必填 | 类型 |
fields | DataColumn[] | 必填 | 列信息 |
{#data-column}
字段 | 类型 | 选填 | 描述 |
---|---|---|---|
name | string | 必填 | 列名称 |
type | string | 必填 | 类型,当前版本由应用算法组件定义和消费,参考 DomainData 概念 |
comment | string | 可选 | 列注释 |