对象存储BOS

    删除数据

    概述

    删除数据即删除存储空间(Bucket)中的文件(Object),BOS 允许您执行如下删除操作:

    • 单个删除:删除某个指定的 Object。
    • 批量删除:单次请求最多删除 1000 个 Object 。
    • 自动删除:如果您需要删除的 Object 数目很多,而且删除的 Object 有一定的规律,例如定期删除某些天之前的 Object ,或者是要清空整个 Bucket,推荐使用生命周期管理来自动删 除 Object 。设置了生命周期规则之后,BOS 会根据规则自动删除到期的 Object,从而极大减少您发送删除请求的次数,提高删除效率。

    操作方式

    BOS 同时支持使用 API 与 SDK 的方式来删除,具体如下:

    示例

    下面是 Java SDK 删除 Object 的代码示例,具体如下:

    删除单个 Object:

    public void deleteObject(BosClient client, String bucketName, String objectKey) {
        // 删除Object
        client.deleteObject(bucketName, objectKey);
    }

    批量删除 Object ,可参考如下两种方法删除多个 Object :

    // 1、以Json格式的字符串
    String jsonObjectKeys = "{\"objects\": ["+"{\"key\": \"token1.h\"},"+"{\"key\": \"token2.h\"}"+"]}";
    DeleteMultipleObjectsRequest request = new DeleteMultipleObjectsRequest();
    request.setBucketName("yourBucketName");
    request.setJsonDeleteObjects(jsonObjectKeys);
    client.deleteMultipleObjects(request);
    // 2、用户只需指定指定参数即可
    List<String> objectKeys = new ArrayList<String>();
    objectKeys.add("object1");
    objectKeys.add("object2");
    DeleteMultipleObjectsRequest request = new DeleteMultipleObjectsRequest();
    request.setBucketName("yourBucketName");
    request.setObjectKeys(objectKeys);
    DeleteMultipleObjectsResponse response = client.deleteMultipleObjects(request);

    注意:

    • 支持一次请求内最多删除 1000 个 Object。 消息体(body)不超过 2M。 返回的消息体中只包含删除过程中出错的 Object 结果;如果所有 Object 都删除都成功的话,则没有消息体。
    上一篇
    获取数据元信息
    下一篇
    拷贝数据