Skip to main content
본 한국어 번역은 사용자 편의를 위해 제공되는 기계 번역입니다. 영어 버전과 한국어 버전이 서로 어긋나는 경우에는 언제나 영어 버전이 우선합니다.

오브젝트 삭제 방법

기여자

StorageGRID는 클라이언트 요청에 직접 응답하거나 S3 버킷 라이프사이클의 만료 또는 ILM 정책 요구사항으로 인해 자동으로 오브젝트를 삭제할 수 있습니다. 개체를 삭제할 수 있는 다양한 방법과 StorageGRID에서 삭제 요청을 처리하는 방법을 이해하면 개체를 보다 효율적으로 관리할 수 있습니다.

StorageGRID는 다음 두 가지 방법 중 하나를 사용하여 오브젝트를 삭제할 수 있습니다.

  • 동기 삭제: StorageGRID가 클라이언트 삭제 요청을 받으면 모든 개체 복사본이 즉시 제거됩니다. 복제본이 제거된 후 성공적으로 삭제되었다는 메시지가 클라이언트에 표시됩니다.

  • 객체가 삭제 대기열에 저장됨: StorageGRID에서 삭제 요청을 수신하면 객체가 삭제 대기열에 추가되고 삭제 성공 사실을 즉시 클라이언트에 알립니다. 개체 복사본은 나중에 백그라운드 ILM 처리에 의해 제거됩니다.

오브젝트를 삭제할 때 StorageGRID는 삭제 성능을 최적화하고 잠재적인 삭제 백로그를 최소화하며 공간을 가장 빠르게 확보하는 방법을 사용합니다.

이 표에는 StorageGRID에서 각 방법을 사용하는 경우가 요약되어 있습니다.

삭제 수행 방법 사용 시

오브젝트는 삭제 대기열에 추가됩니다

다음 조건 중 * 어느 * 가 참일 경우:

  • 자동 개체 삭제는 다음 이벤트 중 하나에 의해 트리거되었습니다.

    • S3 버킷에 대한 라이프사이클 구성의 만료 날짜 또는 일 수에 도달했습니다.

    • ILM 규칙에 지정된 마지막 기간이 경과됩니다.

  • 참고: * S3 오브젝트 잠금이 활성화된 버킷의 오브젝트는 법적 보류 중이거나 보존 기한이 지정되었지만 아직 충족되지 않은 경우 삭제할 수 없습니다.

  • S3 클라이언트가 삭제를 요청하는데 다음 조건 중 하나 이상이 참입니다.

    • 예를 들어, 개체 위치를 일시적으로 사용할 수 없기 때문에 복사본을 30초 이내에 삭제할 수 없습니다.

    • 백그라운드 삭제 대기열은 유휴 상태입니다.

객체가 즉시 제거됩니다(동기식 삭제).

S3 클라이언트가 삭제 요청을 하고 다음 조건 중 * 모든 * 가 충족되는 경우:

  • 모든 사본은 30초 이내에 제거할 수 있습니다.

  • 백그라운드 삭제 대기열에는 처리할 객체가 포함됩니다.

S3 클라이언트가 삭제 요청을 하면 StorageGRID는 삭제 큐에 개체를 추가하는 것으로 시작합니다. 그런 다음 동기식 삭제 수행 으로 전환됩니다. 백그라운드 삭제 큐에 처리할 개체가 있는지 확인함으로써 StorageGRID는 특히 동시 접속 수가 적은 클라이언트의 경우 삭제 작업을 보다 효율적으로 처리할 수 있으며 클라이언트 삭제 백로그를 방지할 수 있습니다.

객체를 삭제하는 데 필요한 시간입니다

StorageGRID에서 객체를 삭제하는 방법은 시스템이 수행하는 방식에 영향을 미칠 수 있습니다.

  • StorageGRID가 동기 삭제를 수행할 때 결과를 클라이언트에 반환하는 데 StorageGRID가 최대 30초가 걸릴 수 있습니다. 즉, StorageGRID에서 삭제할 개체를 큐에 대기할 때보다 복사본이 실제로 더 빠르게 제거되더라도 삭제가 더 느리게 진행되는 것처럼 보일 수 있습니다.

  • 대량 삭제 중에 삭제 성능을 면밀히 모니터링하는 경우 특정 수의 개체를 삭제한 후 삭제 속도가 느린 것으로 보일 수 있습니다. 이 변경은 StorageGRID가 삭제를 위해 오브젝트 큐잉에서 동기식 삭제 수행으로 변경될 때 발생합니다. 삭제 속도가 명백히 감소하는 것은 오브젝트 복사본이 더 느리게 제거된다는 의미가 아닙니다. 반면, 공간은 평균적으로 더 빠르게 확보되고 있음을 나타냅니다.

많은 수의 개체를 삭제하는 경우 우선 순위가 공간을 빠르게 확보하는 것이라면 클라이언트 요청을 사용하여 ILM 또는 다른 방법을 사용하여 개체를 삭제하지 않고 개체를 삭제하는 것이 좋습니다. 일반적으로 StorageGRID에서는 동기 삭제를 사용할 수 있으므로 클라이언트에서 삭제할 때 공간이 더 빠르게 확보됩니다.

개체를 삭제한 후 공간을 확보하는 데 필요한 시간은 다음과 같은 여러 요소에 따라 달라집니다.

  • 오브젝트 복사본이 동기식으로 제거되는지, 아니면 나중에 제거를 위해 대기하는지(클라이언트 삭제 요청) 여부를 나타냅니다.

  • 클라이언트 삭제 및 기타 방법 모두에 대해 개체 복사본이 제거용으로 대기될 때 그리드 내의 개체 수 또는 그리드 리소스의 사용 가능성 등의 기타 요소

S3 버전 오브젝트 삭제 방법

S3 버킷에 대해 버전 관리가 활성화된 경우 StorageGRID는 삭제 요청에 응답할 때 Amazon S3 동작을 따릅니다. 이러한 요청이 S3 클라이언트에서 온 것인지, S3 버킷 라이프사이클의 만료 또는 ILM 정책 요구사항이 있는지 여부에 관계없이 이 동작을 따릅니다.

오브젝트 버전이 지정된 경우 오브젝트 삭제 요청은 오브젝트의 현재 버전을 삭제하지 않고 공간을 확보하지 않습니다. 대신 개체 삭제 요청은 개체의 현재 버전으로 0바이트 삭제 마커를 만들어서 이전 버전의 개체를 "비최신"으로 만듭니다. 개체 삭제 표식은 현재 버전이고 현재 버전이 아닌 경우 만료된 개체 삭제 표식이 됩니다.

개체가 제거되지 않았더라도 StorageGRID 는 개체의 현재 버전을 더 이상 사용할 수 없는 것처럼 동작합니다. 해당 개체에 대한 요청은 404 NotFound 를 반환합니다. 그러나 현재 개체 데이터가 제거되지 않았으므로 개체의 현재 버전이 아닌 버전을 지정하는 요청은 성공할 수 있습니다.

버전 지정된 개체를 삭제할 때 공간을 확보하거나 삭제 표식을 제거하려면 다음 중 하나를 사용합니다.

  • * S3 클라이언트 요청 *: S3 오브젝트 삭제 요청에서 객체 버전 ID를 (`DELETE /object?versionId=ID`지정합니다.) 이 요청은 지정된 버전의 오브젝트 복사본만 제거합니다(다른 버전은 계속 공간을 소모함).

  • * 버킷 수명 주기 * : 버킷 수명 주기 NoncurrentVersionExpiration 구성에 작업을 사용합니다. 지정된 NoncurrentDays 수가 충족되면 StorageGRID에서 현재 버전이 아닌 개체 버전의 모든 복사본을 영구적으로 제거합니다. 이러한 개체 버전은 복구할 수 없습니다.

    `NewerNoncurrentVersions`버킷 수명 주기 구성의 작업은 버전 S3 버킷에 보존되는 비최신 버전 수를 지정합니다. 지정된 것보다 더 많은 비최신 버전이 있으면 `NewerNoncurrentVersions` StorageGRID는 NoncurrentDays 값이 경과되었을 때 이전 버전을 제거합니다.  `NewerNoncurrentVersions`임계값은 ILM에서 제공하는 수명주기 규칙을 재정의합니다. 즉, ILM이 삭제를 요청할 경우 임계값 내에 버전이 있는 현재 개체가 `NewerNoncurrentVersions` 보존됩니다.

    만료된 개체 삭제 표식을 제거하려면 Expiration,, Days 또는 Date 태그 중 하나와 함께 작업을 ExpiredObjectDeleteMarker 사용합니다.

  • * ILM *"활성 정책의 클론을 생성합니다": 새 정책에 두 가지 ILM 규칙을 추가합니다.

    • 첫 번째 규칙: "비현재 시간"을 참조 시간으로 사용하여 객체의 현재 버전과 일치시킵니다. 에서 "ILM 규칙 생성 마법사의 1단계(세부 정보 입력""버전 관리가 활성화된 S3 버킷의 이전 개체 버전에만 이 규칙을 적용하시겠습니까?"라는 질문에 대해 * 예 * 를 선택합니다.

    • 두 번째 규칙: * Ingest Time * 을 사용하여 현재 버전과 일치시킵니다. "비현재 시간" 규칙은 * Ingest Time * 규칙 위의 정책에 나타나야 합니다.

      만료된 오브젝트 삭제 마커를 제거하려면 * Ingest Time * 규칙을 사용하여 현재 삭제 마커와 일치시킵니다. 삭제 표시자는 * 시간 간격 * / * 일 * 이 경과하고 현재 삭제 작성기가 만료되었을 때만 제거됩니다(최신 버전이 아님).

  • * 버킷에서 오브젝트 삭제 *: "모든 개체 버전을 삭제합니다"버킷에서 삭제 마커를 포함하여 테넌트 관리자를 사용합니다.

버전이 지정된 개체가 삭제되면 StorageGRID는 개체의 현재 버전으로 0바이트 삭제 표식을 만듭니다. 버전이 지정된 버킷을 삭제하려면 먼저 모든 오브젝트 및 삭제 마커를 제거해야 합니다.

  • StorageGRID 11.7 이하 버전에서 생성된 삭제 표식은 S3 클라이언트 요청을 통해서만 제거할 수 있으며, ILM, 버킷 라이프사이클 규칙에 의해 제거되거나 버킷 작업의 오브젝트 삭제 에 의해 제거되지 않습니다.

  • StorageGRID 11.8 이상에서 생성된 버킷의 삭제 마커는 ILM, 버킷 라이프사이클 규칙, 버킷 작업의 오브젝트 삭제 또는 명시적 S3 클라이언트 삭제로 제거할 수 있습니다.