

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用删除资源类型 `$bulk-delete`
<a name="reference-fhir-operations-bulk-delete"></a>

AWS HealthLake 支持该`$bulk-delete`操作，允许删除数据存储中特定类型的所有资源。当您需要执行以下操作时，此操作特别有用：
+ 进行季节性审计和清理
+ 大规模管理数据生命周期
+ 移除特定的资源类型
+ 遵守数据保留政策

## 用法
<a name="bulk-delete-usage"></a>

可以使用 POST 方法调用该`$bulk-delete`操作：

```
POST [base]/[ResourceType]/$bulk-delete?isHardDelete=false&deleteAuditEvent=true
```

## 参数
<a name="bulk-delete-parameters"></a>


| 参数 | Type | 必需 | 默认值 | 说明 | 
| --- | --- | --- | --- | --- | 
| isHardDelete | 布尔值 | 否 | false | 如果为 true，则从存储中永久删除资源 | 
| deleteAuditEvent | 布尔值 | 否 | true | 如果为 true，则删除关联的审计事件 | 
| \$1since | 字符串 | 否 | 数据存储创建时间 | 输入后，选择开始截止时间，根据资源的上次修改时间来查找资源。不能与开头或结尾一起使用 | 
| start | 字符串 | 否 | 数据存储创建时间 | 输入后，根据资源的上次修改时间选择查找资源的截止时间。可以与 end 一起使用 | 
| end | 字符串 | 否 | Job 提交时间 | 输入后，选择结束截止时间，根据资源的上次修改时间来查找资源 | 

## 示例
<a name="bulk-delete-examples"></a>

**请求示例**  


```
POST [base]/Observation/$bulk-delete?isHardDelete=false
```

**响应示例**  


```
{
      "jobId": "jobId",
      "jobStatus": "SUBMITTED"
    }
```

## 作业状态
<a name="bulk-delete-job-status"></a>

要检查批量删除任务的状态，请执行以下操作：

```
GET [base]/$bulk-delete/[jobId]
```

该操作返回任务状态信息：

```
{
      "datastoreId": "datastoreId",
      "jobId": "jobId",
      "status": "COMPLETED",
      "submittedTime": "2025-10-09T15:09:51.336Z"
    }
```

## 行为
<a name="bulk-delete-behavior"></a>

该`$bulk-delete`操作：

1. 异步处理以处理大量资源

1. 维护 ACID 事务以保证数据完整性

1. 提供任务状态跟踪，包括资源删除次数

1. 支持软删除和硬删除模式

1. 包括删除活动的全面审核记录

1. 允许有选择地删除历史版本和审计事件

## 审核日志
<a name="bulk-delete-audit-logging"></a>

`$bulk-delete`操作记录为 “开始” FHIRBulk DeleteJob 和 “描述” FHIRBulkDeleteJob ，其中包含详细的操作信息。

## 限制
<a name="bulk-delete-limitations"></a>
+ 如果设置`isHardDelete`为 true，则硬删除的资源将不会出现在搜索结果或`_history`查询中。
+ 通过此操作删除的资源在处理过程中可能暂时无法访问
+ 存储计量仅针对历史版本进行调整- deleteVersionHistory =false 不会调整数据存储存储