Transformação de dados da fonte no Amazon Data Firehose
O Amazon Data Firehose pode invocar a função do Lambda para transformar os dados da fonte de entrada e entregar os dados transformados aos destinos. É possível habilitar a transformação de dados do Amazon Data Firehose ao criar o fluxo do Firehose.
Noções básicas sobre o fluxo de transformação de dados
Quando você habilita a transformação de dados do Firehose, ele armazena os dados recebidos em buffer. A sugestão de tamanho para armazenamento em buffer varia de 0,2 MB a 3 MB. A sugestão de tamanho para armazenamento em buffer padrão do Lambda é de 1 MB para todos os destinos, exceto o Splunk e o Snowflake. Para o Splunk e o Snowflake, a sugestão de armazenando em buffer padrão é de 256 KB. A sugestão de intervalo de armazenamento em buffer do Lambda varia entre 0 e 900 segundos. A sugestão de intervalo de armazenamento buffer padrão do Lambda é de sessenta segundos para todos os destinos, exceto o Snowflake. Para o Snowflake, a sugestão de intervalo de armazenando em buffer padrão é de 30 segundos. Para ajustar o tamanho do armazenamento em buffer, defina o parâmetro ProcessingConfiguration da API CreateDeliveryStream ou UpdateDestination com os ProcessorParameter chamados BufferSizeInMBs
e IntervalInSeconds
. Em seguida, o Firehose invoca, de modo assíncrono, a função do Lambda especificada com cada lote armazenado em buffer usando o modo de invocação síncrona do AWS Lambda. Os dados transformados são enviados do Lambda para o Firehose. Em seguida, o Firehose os envia o para o destino quando o tamanho ou o intervalo de buffer de destino especificado é atingido, o que acontecer primeiro.
Importante
O modo de invocação síncrona do Lambda tem um limite de tamanho de carga útil de 6 MB para ambas a solicitação e a resposta. Certifique-se de que o tamanho do armazenamento em buffer para envio da solicitação para a função seja menor que ou igual a 6 MB. Além disso, verifique se a resposta que sua função retorna não excede 6 MB.
Duração da invocação do Lambda
O Amazon Data Firehose oferece suporte a um tempo de invocação do Lambda de até 5 minutos. Se a função do Lambda levar mais de 5 minutos para ser concluída, você receberá o seguinte erro: O Firehose encontrou erros de tempo limite ao chamar o AWS Lambda. O tempo limite máximo da função é de 5 minutos.
Para obter informações sobre o que o Amazon Data Firehose faz se esse erro ocorrer, consulte Como lidar com falhas na transformação de dados .