Which combination of components will enable the company to create a monitoring solution that will satisfy these requirements?
(Choose two.)
Use Amazon Kinesis Data Firehose to buffer events. Create an AWS Lambda function to process and transform events.
Create an Amazon Kinesis data stream to buffer events. Create an AWS Lambda function to process and transform events.
Configure an Amazon Aurora PostgreSQL DB cluster to receive events. Use Amazon QuickSight to read from the database and create near-real-time visualizations and dashboards.
Configure Amazon Elasticsearch Service (Amazon ES) to receive events. Use the Kibana endpoint deployed with Amazon ES to create near-real-time visualizations and dashboards.
Configure an Amazon Neptune DB instance to receive events. Use Amazon QuickSight to read from the database and create near-real-time visualizations and dashboards.
Explanations:
Amazon Kinesis Data Firehose provides a fully managed, scalable buffer for data ingestion, with auto-scaling, and it can directly stream to supported AWS services. AWS Lambda can process JSON data and transform it, making it ideal for handling dynamic schemas.
Although Amazon Kinesis data streams can buffer events, they require ongoing management, such as configuring shards, unlike Kinesis Data Firehose, which auto-scales and reduces operational complexity.
Aurora PostgreSQL would face similar scaling issues as on-premises PostgreSQL under heavy ingestion. Aurora PostgreSQL is not ideal for handling semi-structured data or dynamic schemas as effectively as other services.
Amazon Elasticsearch Service (Amazon ES), now OpenSearch, supports JSON data and dynamic schemas. It includes a Kibana endpoint for real-time data visualization and is suitable for scalable event data ingestion and near-real-time dashboards.
Amazon Neptune is optimized for graph data rather than semi-structured JSON or time-series event data, and it is not compatible with Kibana or real-time event visualization tools.