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
}
}