[{"data":1,"prerenderedAt":70},["ShallowReactive",2],{"pattern-firehose-transformation-cdk-typescript":3},{"id":4,"title":5,"architectureURL":6,"cleanup":7,"contributors":10,"deploy":12,"description":15,"extension":16,"framework":17,"gitHub":18,"highlight":6,"introBox":24,"language":29,"level":30,"meta":31,"patternArch":32,"resources":51,"s3URL":6,"services":6,"stem":65,"testing":66,"videoId":6,"__hash__":69},"patterns\u002Fpatterns\u002Ffirehose-transformation-cdk-typescript.json","Amazon Data Firehose data transformation with AWS Lambda",null,{"text":8},[9],"\u003Ccode>cdk delete\u003C\u002Fcode>",[11],"content\u002Fcontributors\u002Fedward-schaefer.json",{"text":13},[14],"cdk deploy","Transform incoming source data and deliver the transformed data to S3.","json","AWS CDK",{"template":19},{"repoURL":20,"templateURL":21,"projectFolder":22,"templateFile":23},"https:\u002F\u002Fgithub.com\u002Faws-samples\u002Fserverless-patterns\u002Ftree\u002Fmain\u002Ffirehose-transformation-cdk-typescript","serverless-patterns\u002Ffirehose-transformation-cdk-typescript","firehose-transformation-cdk-typescript","src\u002Flib\u002Ffirehose-lambda-stack.ts",{"headline":25,"text":26},"How it works",[27,28],"This pattern demonstrates how to transform streaming data received by Amazon Data Firehose using AWS Lambda before delivering the transformed data to Amazon S3.","To transform incoming source data, Kinesis Data Firehose invokes the specified Lambda function asynchronously with each buffered batch using the AWS Lambda synchronous invocation mode. The transformed data is sent from Lambda to Kinesis Data Firehose. Kinesis Data Firehose then sends it to the destination S3 bucket when the specified destination buffering size or buffering interval is reached, whichever happens first.","TypeScript","200",{},{"icon1":33,"icon2":38,"icon3":41,"line1":45,"line2":49},{"x":34,"y":35,"service":36,"label":37},20,50,"kinesis-firehose","Amazon Kinesis Firehose",{"x":35,"y":35,"service":39,"label":40},"lambda","AWS Lambda",{"x":42,"y":35,"service":43,"label":44},80,"s3","Amazon S3",{"from":46,"to":47,"label":48},"icon1","icon2","",{"from":47,"to":50,"label":48},"icon3",{"bullets":52},[53,56,59,62],{"text":54,"link":55},"Amazon Data Firehose Data Transformation","https:\u002F\u002Fdocs.aws.amazon.com\u002Ffirehose\u002Flatest\u002Fdev\u002Fdata-transformation.html",{"text":57,"link":58},"Using AWS Lambda with Amazon Data Firehose","https:\u002F\u002Fdocs.aws.amazon.com\u002Flambda\u002Flatest\u002Fdg\u002Fservices-kinesisfirehose.html",{"text":60,"link":61},"Ingesting enriched IoT data into Amazon S3 using Amazon Data Firehose","https:\u002F\u002Faws.amazon.com\u002Fblogs\u002Fiot\u002Fingesting-enriched-iot-data-into-amazon-s3-using-amazon-kinesis-data-firehose\u002F",{"text":63,"link":64},"Capture clickstream data using AWS serverless services","https:\u002F\u002Faws.amazon.com\u002Fblogs\u002Findustries\u002Fcapture-clickstream-data-using-aws-serverless-services\u002F","patterns\u002Ffirehose-transformation-cdk-typescript",{"text":67},[68],"See the GitHub repo for detailed testing instructions.","To3BfQnS0wpsPFxA9tqQVD_QsuCyzc5_jQ8K_RNkKus",1778846885513]