数据集相关
更新时间:2025-08-11
获取数据集列表
使用以下代码可以查询数据集列表
Java
1DescribeDatasetsRequest request = new DescribeDatasetsRequest();
2try {
3 // 方式1:传统调用方式
4 System.out.println("--- 方式1:传统调用方式 ---");
5 DescribeDatasetsResponse response = client.dataset().describeDatasets(request);
6 System.out.println("数据集总数: " + (response.getDatasets() != null ? response.getDatasets().size() : 0));
7
8 // 打印完整的JSON响应
9 System.out.println("\n=== API返回的JSON数据 ===");
10 String jsonResponse = JsonUtils.toJsonString(response);
11 System.out.println(jsonResponse);
12} catch (BceClientException e) {
13 System.out.println("API调用失败: " + e.getMessage());
14}
注意:
- 根据接口文档填写具体的访问参数,相关接口文档详见 API参考/数据集相关接口/获取数据集列表
获取数据集详情
使用以下代码可以查询数据集详情
Java
1DescribeDatasetRequest request = new DescribeDatasetRequest();
2// 设置必选参数
3request.setDatasetId(System.getenv("DATASET_ID")); // 数据集ID
4
5try {
6 // 方式1:传统调用方式(向后兼容)
7 System.out.println("--- 方式1:传统调用方式 ---");
8 DescribeDatasetResponse response = client.dataset().describeDataset(request);
9 System.out.println("数据集ID: " + response.getId());
10 System.out.println("数据集名称: " + response.getName());
11 System.out.println("存储类型: " + response.getStorageType());
12 System.out.println("存储实例: " + response.getStorageInstance());
13 System.out.println("导入格式: " + response.getImportFormat());
14 System.out.println("描述: " + response.getDescription());
15 System.out.println("所有者: " + response.getOwner());
16 System.out.println("所有者名称: " + response.getOwnerName());
17 System.out.println("可见范围: " + response.getVisibilityScope());
18 System.out.println("权限: " + response.getPermission());
19 System.out.println("最新版本ID: " + response.getLatestVersionId());
20 System.out.println("最新版本号: " + response.getLatestVersion());
21 System.out.println("创建时间: " + response.getCreatedAt());
22 System.out.println("更新时间: " + response.getUpdatedAt());
23
24 // 打印最新版本信息
25 if (response.getLatestVersionEntry() != null) {
26 DescribeDatasetResponse.DatasetVersionEntry latestVersionEntry = response.getLatestVersionEntry();
27 System.out.println("\n=== 最新版本信息 ===");
28 System.out.println("版本ID: " + latestVersionEntry.getId());
29 System.out.println("版本号: " + latestVersionEntry.getVersion());
30 System.out.println("版本描述: " + latestVersionEntry.getDescription());
31 System.out.println("存储路径: " + latestVersionEntry.getStoragePath());
32 System.out.println("挂载路径: " + latestVersionEntry.getMountPath());
33 System.out.println("创建用户: " + latestVersionEntry.getCreateUser());
34 System.out.println("创建用户名: " + latestVersionEntry.getCreateUserName());
35 System.out.println("版本创建时间: " + latestVersionEntry.getCreatedAt());
36 System.out.println("版本更新时间: " + latestVersionEntry.getUpdatedAt());
37 }
38
39 // 打印用户权限列表
40 if (response.getVisibilityUser() != null && !response.getVisibilityUser().isEmpty()) {
41 System.out.println("\n=== 用户权限列表 ===");
42 for (DescribeDatasetResponse.PermissionEntry user : response.getVisibilityUser()) {
43 System.out.println("用户ID: " + user.getId() + ", 用户名: " + user.getName() + ", 权限: " + user.getPermission());
44 }
45 }
46
47 // 打印用户组权限列表
48 if (response.getVisibilityGroup() != null && !response.getVisibilityGroup().isEmpty()) {
49 System.out.println("\n=== 用户组权限列表 ===");
50 for (DescribeDatasetResponse.PermissionEntry group : response.getVisibilityGroup()) {
51 System.out.println("用户组ID: " + group.getId() + ", 用户组名: " + group.getName() + ", 权限: " + group.getPermission());
52 }
53 }
54
55 // 打印完整的JSON响应
56 System.out.println("\n=== API返回的JSON数据 ===");
57 String jsonResponse = JsonUtils.toJsonString(response);
58 System.out.println(jsonResponse);
59} catch (BceClientException e) {
60 System.out.println("API调用失败: " + e.getMessage());
61}
注意:
- 根据接口文档填写具体的访问参数,相关接口文档详见 API参考/数据集相关接口/获取数据集详情
创建数据集
Java
1CreateDatasetRequest request = new CreateDatasetRequest();
2
3// 设置必选参数
4request.setName("test-dataset-11111"); // 数据集名称
5request.setStorageType("BOS"); // 存储类型:PFS 或 BOS
6request.setStorageInstance("bucket1"); // 存储实例ID
7request.setImportFormat("FOLDER"); // 导入格式:FILE 或 FOLDER
8request.setVisibilityScope("USER_GROUP"); // 可见范围:ALL_PEOPLE、ONLY_OWNER、USER_GROUP
9
10// 设置可选参数
11request.setDescription("test dataset"); // 数据集描述
12request.setOwner("xxx"); // 修改为实际的owner id(可选)
13
14// 设置用户权限列表(可选)
15List<CreateDatasetRequest.PermissionEntry> visibilityUser = new ArrayList<>();
16CreateDatasetRequest.PermissionEntry user1 = new CreateDatasetRequest.PermissionEntry();
17user1.setId("xxxxx"); // 修改为实际的user id
18user1.setName("lisi");
19user1.setPermission("r"); // 只读权限
20visibilityUser.add(user1);
21
22CreateDatasetRequest.PermissionEntry user2 = new CreateDatasetRequest.PermissionEntry();
23user2.setId("xxxxx"); // 修改为实际的user id
24user2.setName("wangwu");
25user2.setPermission("rw"); // 读写权限
26visibilityUser.add(user2);
27
28request.setVisibilityUser(visibilityUser);
29
30// 设置用户组权限列表(可选)
31List<CreateDatasetRequest.PermissionEntry> visibilityGroup = new ArrayList<>();
32CreateDatasetRequest.PermissionEntry group1 = new CreateDatasetRequest.PermissionEntry();
33group1.setId("group1");
34group1.setName("开发组");
35group1.setPermission("r");
36visibilityGroup.add(group1);
37
38request.setVisibilityGroup(visibilityGroup);
39
40// 设置初始版本信息(必选)
41CreateDatasetRequest.DatasetVersionEntry initVersionEntry = new CreateDatasetRequest.DatasetVersionEntry();
42initVersionEntry.setDescription("dataset first version");
43initVersionEntry.setStoragePath("/path/to/dir");
44initVersionEntry.setMountPath("/mnt/datasets/test1");
45request.setInitVersionEntry(initVersionEntry);
46
47try {
48 System.out.println("=== 开始创建数据集 ===");
49 System.out.println("数据集名称: " + request.getName());
50 System.out.println("存储类型: " + request.getStorageType());
51 System.out.println("存储实例: " + request.getStorageInstance());
52 System.out.println("导入格式: " + request.getImportFormat());
53 System.out.println("可见范围: " + request.getVisibilityScope());
54 System.out.println("描述: " + request.getDescription());
55
56 // 方式1:传统调用方式(向后兼容)
57 System.out.println("\n--- 方式1:传统调用方式 ---");
58 CreateDatasetResponse response = client.dataset().createDataset(request);
59 System.out.println("数据集创建成功!");
60 System.out.println("数据集ID: " + response.getId());
61 System.out.println("Request ID: " + response.getMetadata().getBceRequestId());
62
63 // 打印完整的JSON响应
64 System.out.println("\n=== API返回的JSON数据 ===");
65 String jsonResponse = JsonUtils.toJsonString(response);
66 System.out.println(jsonResponse);
67
68 System.out.println("\n=== 创建的数据集信息 ===");
69 System.out.println("数据集ID: " + response.getId());
70 System.out.println("数据集名称: " + request.getName());
71 System.out.println("存储类型: " + request.getStorageType());
72 System.out.println("存储实例: " + request.getStorageInstance());
73 System.out.println("导入格式: " + request.getImportFormat());
74 System.out.println("可见范围: " + request.getVisibilityScope());
75 System.out.println("描述: " + request.getDescription());
76 System.out.println("初始版本描述: " + initVersionEntry.getDescription());
77 System.out.println("存储路径: " + initVersionEntry.getStoragePath());
78 System.out.println("挂载路径: " + initVersionEntry.getMountPath());
79
80} catch (BceClientException e) {
81 System.out.println("API调用失败: " + e.getMessage());
82}
注意:
- 根据接口文档填写具体的访问参数,相关接口文档详见 API参考/数据集相关接口/创建数据集
修改数据集
Java
1ModifyDatasetRequest request = new ModifyDatasetRequest();
2
3// 设置必选参数
4request.setDatasetId(System.getenv("DATASET_ID")); // 数据集ID
5
6// 设置可选参数(根据需要修改)
7request.setName("my-dataset-1"); // 数据集名称
8request.setDescription("my dataset test modify"); // 数据集描述
9request.setVisibilityScope("ALL_PEOPLE"); // 可见范围:ALL_PEOPLE、ONLY_OWNER、USER_GROUP
10
11// 设置用户权限列表(可选)
12List<ModifyDatasetRequest.PermissionEntry> visibilityUser = new ArrayList<>();
13ModifyDatasetRequest.PermissionEntry user1 = new ModifyDatasetRequest.PermissionEntry();
14user1.setId("xxxxx");
15user1.setName("lisi");
16user1.setPermission("r"); // 只读权限
17visibilityUser.add(user1);
18
19ModifyDatasetRequest.PermissionEntry user2 = new ModifyDatasetRequest.PermissionEntry();
20user2.setId("xxxxx");
21user2.setName("wangwu");
22user2.setPermission("rw"); // 读写权限
23visibilityUser.add(user2);
24
25// request.setVisibilityUser(visibilityUser);
26
27// 设置用户组权限列表(可选)
28List<ModifyDatasetRequest.PermissionEntry> visibilityGroup = new ArrayList<>();
29ModifyDatasetRequest.PermissionEntry group1 = new ModifyDatasetRequest.PermissionEntry();
30group1.setId("group1");
31group1.setName("开发组");
32group1.setPermission("r");
33visibilityGroup.add(group1);
34
35// request.setVisibilityGroup(visibilityGroup);
36
37try {
38 System.out.println("=== 开始修改数据集 ===");
39 System.out.println("数据集ID: " + request.getDatasetId());
40 System.out.println("新名称: " + request.getName());
41 System.out.println("新描述: " + request.getDescription());
42 System.out.println("新可见范围: " + request.getVisibilityScope());
43
44 // 方式1:传统调用方式(向后兼容)
45 System.out.println("\n--- 方式1:传统调用方式 ---");
46 ModifyDatasetResponse response = client.dataset().modifyDataset(request);
47 System.out.println("数据集修改成功!");
48 System.out.println("Request ID: " + response.getMetadata().getBceRequestId());
49
50 // 打印完整的JSON响应
51 System.out.println("\n=== API返回的JSON数据 ===");
52 String jsonResponse = JsonUtils.toJsonString(response);
53 System.out.println(jsonResponse);
54
55 System.out.println("\n=== 修改的数据集信息 ===");
56 System.out.println("数据集ID: " + request.getDatasetId());
57 System.out.println("数据集名称: " + request.getName());
58 System.out.println("数据集描述: " + request.getDescription());
59 System.out.println("可见范围: " + request.getVisibilityScope());
60
61 if (request.getVisibilityUser() != null && !request.getVisibilityUser().isEmpty()) {
62 System.out.println("用户权限列表:");
63 for (ModifyDatasetRequest.PermissionEntry user : request.getVisibilityUser()) {
64 System.out.println(" - 用户ID: " + user.getId() + ", 用户名: " + user.getName() + ", 权限: " + user.getPermission());
65 }
66 }
67
68 if (request.getVisibilityGroup() != null && !request.getVisibilityGroup().isEmpty()) {
69 System.out.println("用户组权限列表:");
70 for (ModifyDatasetRequest.PermissionEntry group : request.getVisibilityGroup()) {
71 System.out.println(" - 用户组ID: " + group.getId() + ", 用户组名: " + group.getName() + ", 权限: " + group.getPermission());
72 }
73 }
74
75} catch (BceClientException e) {
76 System.out.println("API调用失败: " + e.getMessage());
77}
注意:
- 根据接口文档填写具体的访问参数,相关接口文档详见 API参考/数据集相关接口/修改数据集
删除数据集
Java
1DeleteDatasetRequest request = new DeleteDatasetRequest();
2// 设置必选参数
3request.setDatasetId(System.getenv("DATASET_ID")); // 数据集ID
4
5try {
6 System.out.println("=== 开始删除数据集 ===");
7 System.out.println("数据集ID: " + request.getDatasetId());
8
9 // 方式1:传统调用方式(向后兼容)
10 System.out.println("\n--- 方式1:传统调用方式 ---");
11 DeleteDatasetResponse response = client.dataset().deleteDataset(request);
12 System.out.println("数据集删除成功!");
13 System.out.println("Request ID: " + response.getMetadata().getBceRequestId());
14
15 // 打印完整的JSON响应
16 System.out.println("\n=== API返回的JSON数据 ===");
17 String jsonResponse = JsonUtils.toJsonString(response);
18 System.out.println(jsonResponse);
19
20 System.out.println("\n=== 注意事项 ===");
21 System.out.println("删除操作是不可逆的,数据集及其所有版本将被永久删除。");
22 System.out.println("请确保您要删除的数据集不再被使用。");
23
24} catch (BceClientException e) {
25 System.out.println("API调用失败: " + e.getMessage());
26}
注意:
- 根据接口文档填写具体的访问参数,相关接口文档详见 API参考/数据集相关接口/删除数据集
获取数据集版本列表
Java
1DescribeDatasetVersionsRequest request = new DescribeDatasetVersionsRequest();
2// 设置必选参数
3request.setDatasetId(System.getenv("DATASET_ID")); // 数据集ID
4// 设置可选参数
5request.setPageNumber(1); // 第1页
6request.setPageSize(10); // 每页10条
7
8try {
9 // 方式1:传统调用方式(向后兼容)
10 System.out.println("--- 方式1:传统调用方式 ---");
11 DescribeDatasetVersionsResponse response = client.dataset().describeDatasetVersions(request);
12 System.out.println("数据集版本总数: " + response.getTotalCount());
13 System.out.println("当前页版本数量: " + (response.getVersions() != null ? response.getVersions().size() : 0));
14
15 // 打印版本列表
16 if (response.getVersions() != null && !response.getVersions().isEmpty()) {
17 System.out.println("\n=== 数据集版本列表 ===");
18 for (int i = 0; i < response.getVersions().size(); i++) {
19 DescribeDatasetVersionsResponse.DatasetVersionEntry version = response.getVersions().get(i);
20 System.out.println("\n--- 版本 " + (i + 1) + " ---");
21 System.out.println("版本ID: " + version.getId());
22 System.out.println("版本号: " + version.getVersion());
23 System.out.println("版本描述: " + version.getDescription());
24 System.out.println("存储路径: " + version.getStoragePath());
25 System.out.println("挂载路径: " + version.getMountPath());
26 System.out.println("创建用户: " + version.getCreateUser());
27 System.out.println("创建用户名: " + version.getCreateUserName());
28 System.out.println("创建时间: " + version.getCreatedAt());
29 System.out.println("更新时间: " + version.getUpdatedAt());
30 }
31 } else {
32 System.out.println("\n=== 数据集版本列表 ===");
33 System.out.println("暂无版本数据");
34 }
35
36 // 打印完整的JSON响应
37 System.out.println("\n=== API返回的JSON数据 ===");
38 String jsonResponse = JsonUtils.toJsonString(response);
39 System.out.println(jsonResponse);
40} catch (BceClientException e) {
41 System.out.println("API调用失败: " + e.getMessage());
42}
注意:
- 根据接口文档填写具体的访问参数,相关接口文档详见 API参考/数据集相关接口/获取数据集版本列表
获取数据集版本详情
Java
1DescribeDatasetVersionRequest request = new DescribeDatasetVersionRequest();
2// 设置必选参数
3request.setDatasetId(System.getenv("DATASET_ID")); // 数据集ID
4request.setVersionId(System.getenv("DATASET_VERSION_ID")); // 数据集版本ID
5
6try {
7 // 方式1:传统调用方式(向后兼容)
8 System.out.println("--- 方式1:传统调用方式 ---");
9 DescribeDatasetVersionResponse response = client.dataset().describeDatasetVersion(request);
10 System.out.println("数据集ID: " + response.getId());
11
12 System.out.println("数据集名称: " + response.getName());
13 System.out.println("存储类型: " + response.getStorageType());
14 System.out.println("存储实例: " + response.getStorageInstance());
15 System.out.println("导入格式: " + response.getImportFormat());
16 System.out.println("描述: " + response.getDescription());
17 System.out.println("所有者: " + response.getOwner());
18 System.out.println("所有者名称: " + response.getOwnerName());
19 System.out.println("可见范围: " + response.getVisibilityScope());
20 System.out.println("权限: " + response.getPermission());
21 System.out.println("创建时间: " + response.getCreatedAt());
22 System.out.println("更新时间: " + response.getUpdatedAt());
23
24 // 打印版本信息
25 if (response.getVersionEntry() != null) {
26 DescribeDatasetVersionResponse.DatasetVersionEntry versionEntry = response.getVersionEntry();
27 System.out.println("\n=== 版本信息 ===");
28 System.out.println("版本ID: " + versionEntry.getId());
29 System.out.println("版本号: " + versionEntry.getVersion());
30 System.out.println("版本描述: " + versionEntry.getDescription());
31 System.out.println("存储路径: " + versionEntry.getStoragePath());
32 System.out.println("挂载路径: " + versionEntry.getMountPath());
33 System.out.println("创建用户: " + versionEntry.getCreateUser());
34 System.out.println("创建用户名: " + versionEntry.getCreateUserName());
35 System.out.println("版本创建时间: " + versionEntry.getCreatedAt());
36 System.out.println("版本更新时间: " + versionEntry.getUpdatedAt());
37 }
38
39 // 打印用户权限列表
40 if (response.getVisibilityUser() != null && !response.getVisibilityUser().isEmpty()) {
41 System.out.println("\n=== 用户权限列表 ===");
42 for (DescribeDatasetVersionResponse.PermissionEntry user : response.getVisibilityUser()) {
43 System.out.println("用户ID: " + user.getId() + ", 用户名: " + user.getName() + ", 权限: " + user.getPermission());
44 }
45 }
46
47 // 打印用户组权限列表
48 if (response.getVisibilityGroup() != null && !response.getVisibilityGroup().isEmpty()) {
49 System.out.println("\n=== 用户组权限列表 ===");
50 for (DescribeDatasetVersionResponse.PermissionEntry group : response.getVisibilityGroup()) {
51 System.out.println("用户组ID: " + group.getId() + ", 用户组名: " + group.getName() + ", 权限: " + group.getPermission());
52 }
53 }
54
55 // 打印完整的JSON响应
56 System.out.println("\n=== API返回的JSON数据 ===");
57 String jsonResponse = JsonUtils.toJsonString(response);
58 System.out.println(jsonResponse);
59} catch (BceClientException e) {
60 System.out.println("API调用失败: " + e.getMessage());
61}
注意:
- 根据接口文档填写具体的访问参数,相关接口文档详见 API参考/数据集相关接口/获取数据集版本详情
创建数据集版本
Java
1CreateDatasetVersionRequest request = new CreateDatasetVersionRequest();
2
3// 设置必选参数
4request.setDatasetId(System.getenv("DATASET_ID")); // 数据集ID
5request.setStoragePath("/path/to/version2"); // 存储路径
6request.setMountPath("/mnt/datasets/my-dataset-1/v2"); // 默认挂载路径
7
8// 设置可选参数
9request.setDescription("new version"); // 版本描述
10
11try {
12 System.out.println("=== 开始创建数据集版本 ===");
13 System.out.println("数据集ID: " + request.getDatasetId());
14 System.out.println("版本描述: " + request.getDescription());
15 System.out.println("存储路径: " + request.getStoragePath());
16 System.out.println("挂载路径: " + request.getMountPath());
17
18 // 方式1:传统调用方式(向后兼容)
19 System.out.println("\n--- 方式1:传统调用方式 ---");
20 CreateDatasetVersionResponse response = client.dataset().createDatasetVersion(request);
21 System.out.println("数据集版本创建成功!");
22 System.out.println("版本ID: " + response.getId());
23 System.out.println("Request ID: " + response.getMetadata().getBceRequestId());
24
25 // 打印完整的JSON响应
26 System.out.println("\n=== API返回的JSON数据 ===");
27 String jsonResponse = JsonUtils.toJsonString(response);
28 System.out.println(jsonResponse);
29
30 System.out.println("\n=== 创建的数据集版本信息 ===");
31 System.out.println("数据集ID: " + request.getDatasetId());
32 System.out.println("版本ID: " + response.getId());
33 System.out.println("版本描述: " + request.getDescription());
34 System.out.println("存储路径: " + request.getStoragePath());
35 System.out.println("挂载路径: " + request.getMountPath());
36
37 System.out.println("\n=== 注意事项 ===");
38 System.out.println("新创建的版本将成为数据集的最新版本。");
39 System.out.println("请确保存储路径中的数据已经准备好。");
40 System.out.println("挂载路径将在使用数据集时生效。");
41
42} catch (BceClientException e) {
43 System.out.println("API调用失败: " + e.getMessage());
44}
注意:
- 根据接口文档填写具体的访问参数,相关接口文档详见 API参考/数据集相关接口/创建数据集版本
删除数据集版本
Java
1// 创建请求对象
2DeleteDatasetVersionRequest request = new DeleteDatasetVersionRequest();
3
4// 设置必选参数
5String datasetId = System.getenv("DATASET_ID"); // 数据集ID - 请替换为实际的数据集ID
6String versionId = System.getenv("DATASET_VERSION_ID"); // 数据集版本ID - 请替换为实际的版本ID
7
8request.setDatasetId(datasetId);
9request.setVersionId(versionId);
10
11try {
12 System.out.println("=== 开始删除数据集版本 ===");
13 System.out.println("数据集ID: " + request.getDatasetId());
14 System.out.println("版本ID: " + request.getVersionId());
15 System.out.println();
16
17 // 确认删除操作
18 System.out.println("警告:此操作将永久删除指定的数据集版本!");
19 System.out.println("请确认您要删除的版本信息是否正确。");
20 System.out.println();
21
22 // 方式1:传统调用方式(向后兼容)
23 System.out.println("--- 方式1:传统调用方式 ---");
24 DeleteDatasetVersionResponse response = client.dataset().deleteDatasetVersion(request);
25 System.out.println("数据集版本删除成功!");
26 System.out.println("Request ID: " + response.getMetadata().getBceRequestId());
27
28 // 打印完整的JSON响应
29 System.out.println("\n=== API返回的JSON数据 ===");
30 String jsonResponse = JsonUtils.toJsonString(response);
31 System.out.println(jsonResponse);
32
33 System.out.println("\n=== 操作完成 ===");
34 System.out.println("数据集版本删除操作已成功完成");
35 System.out.println("删除的版本信息:");
36 System.out.println(" - 数据集ID: " + datasetId);
37 System.out.println(" - 版本ID: " + versionId);
38 System.out.println(" - 请求ID: " + response.getMetadata().getBceRequestId());
39
40} catch (BceClientException e) {
41 System.err.println("API调用失败: " + e.getMessage());
42 System.err.println();
43 System.err.println("可能的原因:");
44 System.err.println("1. 访问密钥无效或权限不足");
45 System.err.println("2. 数据集ID或版本ID不存在");
46 System.err.println("3. 网络连接问题");
47 System.err.println("4. 服务端点不可用");
48 System.err.println();
49 System.err.println("建议的解决方案:");
50 System.err.println("1. 检查环境变量设置是否正确");
51 System.err.println("2. 验证数据集ID和版本ID是否存在");
52 System.err.println("3. 确认网络连接正常");
53 System.err.println("4. 检查账户权限是否足够");
54} catch (Exception e) {
55 System.err.println("程序执行异常: " + e.getMessage());
56 e.printStackTrace();
57}
注意:
- 根据接口文档填写具体的访问参数,相关接口文档详见 API参考/数据集相关接口/删除数据集版本