

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# Amazon Data Firehose에서 소스 데이터 변환
<a name="data-transformation"></a>

Amazon Data Firehose는 Lambda 함수를 호출해 수신되는 소스 데이터를 변환하고, 변환된 데이터를 대상으로 전송할 수 있습니다. Firehose 스트림을 생성할 때 Amazon Data Firehose 데이터 변환을 활성화할 수 있습니다.

## 데이터 변환 흐름 이해
<a name="data-transformation-flow"></a>

Firehose 데이터 변환을 활성화하면 Firehose는 수신 데이터를 버퍼링합니다. 버퍼링 사이즈 힌트 범위는 0.2MB\$13MB입니다. 기본 Lambda 버퍼링 크기 힌트는 Splunk 및 Snowflake를 제외한 모든 대상에 대해 1MB입니다. Splunk 및 Snowflake의 경우 기본 버퍼링 힌트는 256KB입니다. Lambda 버퍼링 간격 힌트 범위는 0\$1900초입니다. 기본 Lambda 버퍼링 간격 힌트는 Snowflake를 제외한 모든 대상에 대해 60초입니다. Snowflake의 경우 기본 버퍼링 힌트 간격은 30초입니다. 버퍼링 크기를 조정하려면 [CreateDeliveryStream](https://docs.aws.amazon.com/firehose/latest/APIReference/API_CreateDeliveryStream.html) 또는 [UpdateDestination](https://docs.aws.amazon.com/firehose/latest/APIReference/API_UpdateDestination.html) API의 [ProcessingConfiguration](https://docs.aws.amazon.com/firehose/latest/APIReference/API_ProcessingConfiguration.html) 파라미터를 `BufferSizeInMBs` 및 `IntervalInSeconds`라는 [ProcessorParameter](https://docs.aws.amazon.com/firehose/latest/APIReference/API_ProcessorParameter.html)로 설정합니다. 그런 다음 Firehose는 AWS Lambda 동기식 호출 모드를 사용하여 버퍼링된 각 배치와 동기식으로 지정된 Lambda 함수를 호출합니다. 변환된 데이터는 Lambda로부터 Firehose로 전송됩니다. 이후 지정된 대상 버퍼링 크기 또는 버퍼링 간격 중 먼저 발생하는 값에 도달하면, Firehose가 이를 대상으로 전송합니다.

**중요**  
Lambda 동기식 호출 모드는 요청 및 응답 모두 페이로드 크기 제한이 6MB입니다. 함수로 요청을 전송하기 위한 버퍼링 크기가 6MB 이하인지 확인해야 합니다. 또한 함수에서 반환하는 응답이 6MB를 초과하지 않는지 확인합니다.

## Lambda 간접 호출 기간
<a name="data-transformation-execution-duration"></a>

Amazon Data Firehose는 Lambda 호출 시간을 최대 5분까지 지원합니다. Lambda 함수를 완료하는 데 5분 이상 걸리는 경우 다음 오류가 발생합니다. Firehose가 AWS Lambda를 호출할 때 시간 초과 오류가 발생했습니다. 지원되는 함수 제한 시간은 최대 5분입니다.

이러한 오류가 발생하는 경우 Amazon Data Firehose의 작동에 대한 자세한 내용은 [데이터 변환 실패 처리](data-transformation-failure-handling.md) 섹션을 참조하세요.