다음을 통해 공유


대량 삭제 작업

'$bulk-delete'를 사용하면 FHIR 서버에서 리소스를 비동기적으로 삭제할 수 있습니다. 시스템 수준 또는 개별 리소스 종류에 대해 대량 삭제 작업을 실행할 수 있습니다.

  • 시스템 수준: 시스템 수준에서 작업을 실행하면 FHIR 서버의 모든 리소스 종류에서 FHIR 리소스를 삭제할 수 있습니다.

      DELETE  /$bulkDelete
    
  • 개별 리소스 종류: 개별 리소스 종류에서 작업을 실행하면 URL에서 지정된 리소스 종류에 대한 FHIR 리소스 매핑을 삭제할 수 있습니다.

      DELETE /<Resource Type>/$bulkDelete
    

참고 항목

대량 삭제는 주의해서 사용하는 작업입니다. 삭제 후 FHIR 서비스의 리소스는 되돌릴 수 없습니다.

대량 삭제 작업은 현재 공개 미리 보기로 제공됩니다. 자세한 내용은 고지 사항을 검토하세요.

Important

미리 보기 API 및 SDK는 서비스 수준 계약 없이 제공됩니다. 프로덕션 워크로드에는 사용하지 않는 것이 좋습니다. 일부 기능은 지원되지 않거나 기능이 제한될 수 있습니다. 자세한 내용은 Microsoft Azure 미리 보기에 대한 보충 사용 약관을 검토하세요.

헤더

대량 삭제 작업에는 두 개의 헤더 매개 변수가 필요합니다.

  • Accept: application/fhir+json
  • Prefer: respond-async

쿼리 매개 변수

쿼리 매개 변수를 사용하면 삭제하려는 원시 리소스를 필터링할 수 있습니다. 필터링을 지원하기 위해 FHIR 서비스 쿼리 매개 변수는 다음과 같습니다.

쿼리 매개 변수 기본값 설명
_hardDelete False 기록 버전을 포함한 리소스를 삭제하려면 true 값을 전달합니다.
_purgeHistory False 리소스와 연결된 기록 버전을 삭제할 수 있습니다.
FHIR 서비스 지원 검색 매개 변수 검색 조건을 지정할 수 있으며 검색 조건과 일치하는 리소스가 삭제됩니다. 예: address:contains=Meadow subject:Patient.birthdate=1987-02-20

모든 쿼리 매개 변수는 선택 사항입니다.

$bulk-delete 응답

FHIR 리소스를 대량 삭제하도록 요청하면 응답에서 폴링 엔드포인트와 같은 후속 상태 요청에 대한 엔드포인트의 절대 URL이 포함된 콘텐츠-위치 헤더를 받아야 합니다.

폴링 엔드포인트: 폴링 엔드포인트에 대한 요청은 대량 삭제 작업의 상태에 따라 네 가지 결과 중 하나입니다. 결과는 FHIR 응답의 작업 결과 내에서 제공됩니다.

  1. 진행 중인 작업: 이 결과는 작업이 진행 중임을 나타냅니다. 상태 코드 202
  2. 완료됨: 이 결과는 작업이 성공적으로 완료되었음을 나타냅니다. 완료되면 삭제된 리소스 수에 대한 정보는 개별 리소스 종류 수준에서 제공됩니다. 상태 코드 200
  3. 취소됨: 사용자가 작업을 취소하고 개별 리소스 종류 수준에서 삭제되는 리소스 수에 대한 정보를 제공합니다. 상태 코드 200
  4. 실패: 작업이 실패했습니다. 상태 코드는 오류 유형에 따라 달라집니다.

상태 요청을 결정하기 위한 샘플 요청 및 응답:

{{fhir_url}}/_operations/bulk-delete/<id>

성공적으로 완료된 삭제 작업의 샘플 응답입니다.

{
    "resourceType": "Parameters",
    "parameter": [
        {
            "name": "ResourceDeletedCount",
            "part": [
                {
                    "name": "Practitioner",
                    "valueDecimal": 10.0
                },
                {
                    "name": "Specimen",
                    "valueDecimal": 7.0
                },
                {
                    "name": "Device",
                    "valueDecimal": 3.0
                }
            ]
        }
    ]
}

다음 단계

이 문서에서는 FHIR 서비스에서 리소스를 대량 삭제하는 방법을 알아보았습니다. 지원되는 FHIR 기능에 대한 자세한 내용은 다음을 참조하세요.

FHIR®은 HL7의 등록 상표이며, HL7의 사용 허가 하에 사용됩니다.