본문 바로가기
WIKI 기술 지식 베이스

Drop processor

원문 보기 위키 갱신

출처: 문서

본문

이 문서는 OpenSearch 인제스트 파이프라인에서 drop 프로세서를 사용하는 방법을 설명해요. 대규모 또는 복잡한 데이터 세트를 다루는 경우 OpenSearch 클러스터에서 실행되는 Data Prepper drop_events 프로세서를 사용하는 것을 고려하세요. {: .note}

Drop processor

drop 프로세서는 문서를 인덱싱하지 않고 폐기하는 데 사용돼요. 특정 조건에 따라 문서가 인덱싱되는 것을 방지하는 데 유용할 수 있어요. 예를 들어, 중요한 필드가 누락되었거나 민감한 정보가 포함된 문서가 인덱싱되지 않도록 drop 프로세서를 사용할 수 있어요.

drop 프로세서는 문서를 폐기할 때 오류를 발생시키지 않으므로, 오류 메시지로 OpenSearch 로그를 복잡하게 만들지 않고 인덱싱 문제를 방지하는 데 유용해요.

구문 예제

다음은 drop 프로세서의 구문이에요.

{
  "drop": {
    "if": "ctx.foo == 'bar'"
  }
}

{% include copy.html %}

구성 매개변수

다음 표는 drop 프로세서의 필수 및 선택적 매개변수를 나열해요.

매개변수 필수 여부 설명
description 선택 사항 프로세서에 대한 간단한 설명이에요.
if 선택 사항 프로세서 실행 조건이에요.
ignore_failure 선택 사항 true로 설정하면 실패가 무시돼요. 기본값은 false예요. 자세한 내용은 파이프라인 실패 처리를 참조하세요.
on_failure 선택 사항 프로세서가 실패할 경우 실행할 프로세서 목록이에요. 자세한 내용은 파이프라인 실패 처리를 참조하세요.
tag 선택 사항 프로세서의 식별 태그예요. 디버깅 시 동일한 유형의 프로세서를 구별하는 데 유용해요.

프로세서 사용

파이프라인에서 프로세서를 사용하려면 다음 단계를 따르세요.

1단계: 파이프라인 생성

다음 쿼리는 drop-pii라는 파이프라인을 생성하며, 이 파이프라인은 개인 식별 정보(PII)가 포함된 문서가 인덱싱되지 않도록 drop 프로세서를 사용해요.

PUT /_ingest/pipeline/drop-pii
{
  "description": "Pipeline that prevents PII from being indexed",
  "processors": [
    {
      "drop": {
        "if" : "ctx.user_info.contains('password') || ctx.user_info.contains('credit card')"
      }
    }
  ]
}

{% include copy-curl.html %}

2단계(선택 사항): 파이프라인 테스트

문서를 인제스트하기 전에 파이프라인을 테스트하는 것이 좋아요. {: .tip}

파이프라인을 테스트하려면 다음 쿼리를 실행하세요.

POST _ingest/pipeline/drop-pii/_simulate
{
  "docs": [
    {
      "_index": "testindex1",
      "_id": "1",
      "_source": {
        "user_info": "Sensitive information including credit card"
      }
    }
  ]
}

{% include copy-curl.html %}

응답

다음 예제 응답은 파이프라인이 예상대로 작동하고 있음을 확인해요(문서가 폐기되었어요).

{
  "docs": [
    null
  ]
}

{% include copy-curl.html %}

3단계: 문서 인제스트

다음 쿼리는 testindex1이라는 인덱스에 문서를 인제스트해요.

PUT testindex1/_doc/1?pipeline=drop-pii
{
  "user_info": "Sensitive information including credit card"
}

{% include copy-curl.html %}

다음 응답은 ID가 1인 문서가 인덱싱되지 않았음을 확인해요.

{
  "_index": "testindex1",
  "_id": "1",
  "_version": -3,
  "result": "noop",
  "_shards": {
    "total": 0,
    "successful": 0,
    "failed": 0
  }
}

더 알아보기 (Learn more)