如何通过Java SDK获取Doc

本文介绍如何通过Java SDK,根据id或id列表获取Collection中已存在的Doc。


说明

如果指定id不存在,则该id对应的Doc为空。

前提条件

接口定义

Java示例:

swift 复制代码
// class DashVectorCollection

// 同步接口
public Response<Map<String, Doc>> fetch(FetchDocRequest fetchDocRequest);

// 异步接口
public ListenableFuture<Response<Map<String, Doc>>> fetchAsync(FetchDocRequest fetchDocRequest);

使用示例

说明

  1. 需要使用您的api-key替换示例中的YOUR_API_KEY、您的Cluster Endpoint替换示例中的YOUR_CLUSTER_ENDPOINT,代码才能正常运行。
  2. 本示例需要参考新建Collection-使用示例提前创建好名称为quickstart的Collection,并参考插入Doc提前插入部分数据。

Java示例:

java 复制代码
import com.aliyun.dashvector.DashVectorClient;
import com.aliyun.dashvector.DashVectorCollection;
import com.aliyun.dashvector.common.DashVectorException;
import com.aliyun.dashvector.models.Doc;
import com.aliyun.dashvector.models.requests.FetchDocRequest;
import com.aliyun.dashvector.models.responses.Response;

import java.util.Map;

public class Main {
    public static void main(String[] args) throws DashVectorException {
        DashVectorClient client = new DashVectorClient("YOUR_API_KEY", "YOUR_CLUSTER_ENDPOINT");
        DashVectorCollection collection = client.get("quickstart");

        // 构建 FetchDocRequest
        FetchDocRequest request = FetchDocRequest.builder()
            .id("1")
            .build();

        // 发送获取Doc请求
        Response<Map<String, Doc>> response = collection.fetch(request);

        System.out.println(response);
        // example output:
        // {
        //     "code":0,
        //     "message":"Success",
        //     "requestId":"489c5cda-3ffc-4171-b6e0-1837b932962b",
        //     "output":{
        //         "1":{
        //             "id":"1",
        //             "vector":{"value":[0.1,0.2,0.3,0.4]},
        //             "fields":{
        //                 "name":"zhangsan",
        //                 "age":20,
        //                 "weight":100.0,
        //                 "anykey1":"String",
        //                 "anykey2":1,
        //                 "anykey3":true,
        //                 "anykey4":3.1415926
        //             },
        //             "score":0
        //         }
        //     }
        // }
    }
}

入参描述

通过FetchDocRequestBuilder构造FetchDocRequest对象,其可用方法如下表所示:

方法 必填 默认值 描述
ids(List ids) - 文档主键列表
id(String id) -
partition(String partition) default 分区名称
build() - - 构造FetchDocRequest对象
相关推荐
有想法的py工程师17 小时前
PostgreSQL 分区表排序优化:Append Sort 优化为 Merge Append
大数据·数据库·postgresql
IT_陈寒18 小时前
为什么我的Vite热更新老是重新加载整个页面?
前端·人工智能·后端
safestar201218 小时前
ES批量写入性能调优:BulkProcessor 参数详解与实战案例
java·大数据·运维·jenkins
还在忙碌的吴小二18 小时前
Harness 最佳实践:Java Spring Boot 项目落地 OpenSpec + Claude Code
java·开发语言·spring boot·后端·spring
三分恶19 小时前
支付江湖路—第一章:支付溯源——从贝壳到比特
后端
weixin_1562415757619 小时前
基于YOLOv8深度学习花卉识别系统摄像头实时图片文件夹多图片等另有其他的识别系统可二开
大数据·人工智能·python·深度学习·yolo
科技与数码19 小时前
互联网保险迎来新篇章,元保方锐分享行业发展前沿洞察
大数据·人工智能
汽车仪器仪表相关领域19 小时前
NHFID-1000型非甲烷总烃分析仪:技术破局,重构固定污染源监测新体验
java·大数据·网络·人工智能·单元测试·可用性测试·安全性测试
武子康19 小时前
大数据-264 实时数仓-MySQL Binlog配置详解:从原理到实践|数据恢复与主从复制实战
大数据·hadoop·后端
倾颜19 小时前
接入 MCP,不一定要先平台化:一次 AI Runtime 的实战取舍
前端·后端·mcp