Which solution meets these requirements?
Create an Amazon RDS DB instance with synchronous replication to three nodes in three Availability Zones.
Create an Amazon RDS MySQL DB instance with Multi-AZ functionality enabled to synchronously replicate the data.
Create an Amazon RDS MySQL DB instance and then create a read replica in a separate AWS Region that synchronously replicates the data.
Create an Amazon EC2 instance with a MySQL engine installed that triggers an AWS Lambda function to synchronously replicate the data to an Amazon RDS MySQL DB instance.
Explanations:
While creating an Amazon RDS DB instance with synchronous replication to three nodes in three Availability Zones is a robust solution, Amazon RDS does not support custom synchronous replication configurations directly by users. Multi-AZ deployments in RDS use synchronous replication but do not involve creating additional nodes manually.
Enabling Multi-AZ functionality in Amazon RDS for MySQL ensures that data is synchronously replicated to a standby instance in a different Availability Zone. This setup provides high availability and durability, significantly reducing the risk of data loss during outages.
While creating a read replica in a separate AWS Region can enhance availability and disaster recovery, read replicas are not synchronously replicated; they use asynchronous replication. Therefore, this option does not meet the requirement to minimize data loss.
Setting up an EC2 instance with a MySQL engine and using an AWS Lambda function for replication would require complex custom configurations and does not guarantee synchronous replication to an RDS instance. This option lacks the inherent reliability and managed service benefits that come with using RDS directly.