This project demonstrates a simple Java-based AWS Lambda function that processes a CSV file from S3 and stores the data in DynamoDB.
- Create an S3 bucket and upload your CSV file.
- Create a DynamoDB table with the appropriate schema. Name it
YourDynamoDBTableNameor modify the Lambda code accordingly. - Create an IAM role for the Lambda function with permissions to access S3 and DynamoDB. Use the provided
iam_policy.jsonfile for the necessary permissions. - Deploy the Lambda function using the AWS CLI:
- Package your code with Maven:
mvn clean package - Deploy the package using AWS CLI:
aws lambda create-function --function-name csvProcessor --runtime java11 --role [Role ARN] --handler com.example.lambda.LambdaCSVProcessor::handleRequest --zip-file fileb://target/csv-processor-1.0-SNAPSHOT-jar-with-dependencies.jar
- Package your code with Maven:
- Configure the Lambda function to trigger on new file uploads in the S3 bucket. This can be done via the AWS Management Console or AWS CLI.
Note: Replace [Role ARN] with the ARN of the IAM role you created.