Study guide
Technical reference and lesson notes
Purpose of This Lesson
AWS offers several analytics and data-integration services beyond the better-known options such as Amazon Redshift, Amazon Athena, Amazon Kinesis, and AWS Glue. SAP-C02 scenarios may test these services at a high level, especially when selecting a service for time-series data, data marketplaces, data lakes, ETL workflows, or Apache Kafka workloads.
This guide focuses on the purpose, distinguishing characteristics, and architecture decisions for:
- Amazon Timestream
- AWS Data Exchange
- AWS Data Pipeline
- Data lakes versus data warehouses
- AWS Lake Formation
- Amazon Managed Streaming for Apache Kafka (Amazon MSK)
Key Concepts
Amazon Timestream
Amazon Timestream is a serverless, purpose-built time-series database for IoT, operational monitoring, and other workloads that record measurements over time.
Important characteristics include:
- Designed for time-series data such as telemetry, metrics, and sensor readings.
- Automatically scales as data volume and request traffic change.
- Keeps recent data in a memory-oriented tier for fast access.
- Moves older data to a cost-optimized storage tier according to configurable retention policies.
- Avoids the operational overhead of provisioning and managing relational database infrastructure.
- Is generally a better fit than a relational database when the workload consists primarily of high-volume time-series events.
A typical use case is collecting device temperature, application metrics, or industrial sensor readings and querying those readings by time range, device, or measurement type.
AWS Data Exchange
AWS Data Exchange is a marketplace for discovering, subscribing to, and consuming third-party or provider-published datasets. Datasets can be made available publicly or privately.
Supported data forms include:
- Data files
- Data tables
- Data APIs
Data Exchange can integrate with data lakes, analytics platforms, applications, and machine learning workflows. Subscribers can also automate the export of new or updated datasets to Amazon S3.
The service is useful when an organization needs external data such as financial information, geospatial data, market research, public-sector datasets, or industry benchmarks without building a separate procurement and distribution process.
Relevant AWS integrations and controls include:
- AWS IAM-based access control
- Encryption in transit and at rest
- AWS SDK and API integration
- Export to Amazon S3
- Querying data tables with AWS Data Exchange for Amazon Redshift
Data Exchange provides access to data; it is not itself a general-purpose data lake, data warehouse, or ETL engine.
AWS Data Pipeline
AWS Data Pipeline is a managed service for scheduling and moving data between data sources, compute services, and storage services. It supports ETL-style workflows:
- Extract data from a source.
- Transform or process the data.
- Load the result into a target system.
Sources may include AWS services and on-premises systems. Possible targets include Amazon S3, Amazon RDS, Amazon DynamoDB, Amazon Redshift, and Amazon EMR.
For example, a batch workflow could:
- Receive clickstream logs in Amazon S3.
- Run a transformation activity using Amazon EMR and Hive.
- Write transformed files back to S3.
- Copy the prepared data into Amazon Redshift for warehouse reporting.
AWS Data Pipeline should be recognized as a legacy AWS data-movement and workflow service. For new architectures, evaluate current alternatives such as AWS Glue, AWS Step Functions, Amazon MWAA, or direct service integrations based on the workflow requirements and current AWS service availability.
Data Lakes Versus Data Warehouses
A data lake is a centralized repository for storing structured, semi-structured, and unstructured data at scale. Data is commonly stored in its original form, allowing teams to decide how to interpret and transform it later.
A data warehouse is an analytical database containing structured, curated data that has been modeled for consistent reporting and fast business queries.
The most important distinction is schema timing:
- Data warehouse: schema-on-write. Data is modeled and validated before it is loaded or queried.
- Data lake: schema-on-read. Data can be stored in raw or lightly processed form, with structure applied when it is consumed.
| Characteristic | Data warehouse | Data lake |
|---|---|---|
| Typical data | Structured relational data | Structured, semi-structured, and unstructured data |
| Schema | Defined before use | Applied during analysis |
| Data quality | Curated and governed | May include raw and curated data |
| Primary users | Business analysts and reporting teams | Data scientists, developers, and analysts |
| Common workloads | BI, dashboards, batch reporting | Machine learning, discovery, predictive analytics, and large-scale processing |
| AWS example | Amazon Redshift | Amazon S3 with AWS Lake Formation |
The choice is not always exclusive. A data lake may be the durable landing and exploration layer, while a data warehouse provides curated data marts and predictable reporting performance.
AWS Lake Formation
AWS Lake Formation simplifies the creation, ingestion, cataloging, governance, and security of data lakes built on Amazon S3. It builds on capabilities associated with AWS Glue and integrates with AWS analytics services.
Core capabilities include:
- Collecting data from databases and object storage.
- Registering and organizing data in an S3-based data lake.
- Discovering, cleaning, and classifying data.
- Applying fine-grained permissions at the database, table, column, row, and cell levels where supported by the consuming integration.
- Providing governed access to services such as Amazon Athena, Amazon Redshift, Amazon EMR, Apache Spark, and Amazon QuickSight.
Lake Formation is primarily a governance and data-lake management layer. It does not replace Amazon S3 as the underlying durable storage system, Amazon Redshift as a data warehouse, or Amazon Athena as a serverless SQL query service.
Amazon MSK
Amazon Managed Streaming for Apache Kafka (Amazon MSK) is a fully managed service for running Apache Kafka clusters in AWS. It is designed for real-time ingestion, event streaming, and stream processing.
Amazon MSK manages much of the Kafka infrastructure, including cluster provisioning, configuration, and maintenance. It also manages the associated Apache ZooKeeper or supported Kafka metadata infrastructure according to the selected MSK deployment mode and version.
Security and connectivity features include:
- VPC-based network isolation.
- IAM authorization for supported Kafka control-plane and client access patterns.
- Encryption at rest.
- TLS encryption in transit.
- TLS certificate authentication.
- SASL/SCRAM authentication using credentials stored in AWS Secrets Manager.
Amazon MSK is a strong choice when the organization requires Apache Kafka compatibility, Kafka APIs, or migration of existing Kafka producers and consumers. Amazon Kinesis Data Streams may be simpler when an AWS-native streaming service is preferred and Kafka compatibility is not required.
Exam-Relevant Takeaways
- Choose Amazon Timestream for serverless, scalable time-series data such as IoT telemetry and operational metrics.
- Timestream uses configurable retention behavior to keep recent data in a fast tier and older data in a lower-cost tier.
- Choose AWS Data Exchange when the requirement is to discover, subscribe to, govern, and consume third-party datasets.
- Recognize AWS Data Pipeline as a managed ETL and data-movement service, but consider whether the scenario points to newer services for a new implementation.
- A data lake commonly stores raw data in Amazon S3 and applies schema during analysis.
- A data warehouse stores curated, structured data modeled for reporting and BI.
- AWS Lake Formation adds cataloging, governance, and fine-grained access control to an S3-based data lake.
- Amazon MSK is managed Apache Kafka, not simply a generic stream-ingestion service.
- Choose MSK when Kafka protocol compatibility, Kafka ecosystem integration, or migration from existing Kafka clusters matters.
- Choose Kinesis when the requirement is primarily AWS-native streaming without Kafka-specific compatibility needs.
Architecture Decision Guide
| Requirement | Best-fit service or pattern | Why |
|---|---|---|
| Store and query device readings or operational metrics over time | Amazon Timestream | Purpose-built, serverless time-series storage with tiered retention |
| Acquire external commercial or public datasets | AWS Data Exchange | Marketplace and subscription model for third-party data |
| Schedule a legacy-style AWS ETL and transfer workflow | AWS Data Pipeline | Managed extraction, transformation, and loading; validate current service suitability |
| Store raw structured and unstructured data at large scale | Amazon S3 data lake | Durable, scalable object storage with schema-on-read patterns |
| Govern, catalog, and secure an S3 data lake | AWS Lake Formation | Centralized data-lake permissions and governance |
| Run managed Apache Kafka applications | Amazon MSK | Kafka-compatible managed clusters and security integrations |
| Build a curated relational analytics warehouse | Amazon Redshift | Structured warehouse storage and analytical SQL workloads |
| Query S3 data interactively with SQL | Amazon Athena | Serverless querying, commonly used with data-lake data |
Common Exam Traps
- Confusing Timestream with DynamoDB: DynamoDB is a general-purpose NoSQL database; Timestream is specialized for time-series measurements and retention-based historical data.
- Confusing a data lake with a data warehouse: A lake generally accepts data in its original form, while a warehouse emphasizes curated schemas and predictable reporting.
- Treating Lake Formation as storage: Lake Formation governs and organizes a data lake; Amazon S3 usually provides the underlying storage.
- Choosing Redshift for raw, heterogeneous data ingestion: Redshift is optimized for curated analytical data, whereas S3-based data lakes are more flexible for raw data.
- Choosing MSK merely because the workload is real time: Real-time ingestion alone does not require Kafka. Select MSK when Kafka compatibility or its ecosystem is a requirement.
- Assuming Data Exchange is an analytics engine: Data Exchange supplies and distributes datasets. Other services perform storage, transformation, querying, visualization, or machine learning.
- Ignoring service currency for Data Pipeline: A question describing a new AWS architecture may favor AWS Glue or another current orchestration option rather than a legacy Data Pipeline design.
- Overlooking Kafka security requirements: MSK scenarios may require VPC isolation, TLS, IAM, certificate authentication, or SASL/SCRAM with Secrets Manager.
Real-World Engineer Notes
- Separate the landing, governance, and consumption layers of an analytics architecture. For example, S3 can hold raw data, Lake Formation can govern it, and Athena, Redshift, EMR, or QuickSight can consume it.
- Define retention policies deliberately for Timestream. Keeping all data in the fastest tier can increase cost, while moving data too aggressively may affect query latency for historical investigations.
- Treat raw data in a lake as an asset that still needs ownership, classification, lineage, quality checks, and access controls. A data lake without governance can become difficult to search and trust.
- For MSK, plan for network placement, broker capacity, partition strategy, replication, client authentication, and monitoring. Managed Kafka reduces infrastructure work but does not eliminate Kafka operational decisions.
- When integrating external datasets, use Data Exchange subscriptions and S3 exports to create repeatable ingestion processes rather than manually downloading files.
- For new ETL designs, compare AWS Glue, Step Functions, Amazon MWAA, Lambda, and managed streaming services instead of defaulting to a legacy orchestration product.
Quick Reference Summary
- Timestream: Serverless time-series database for IoT and operational metrics.
- Data Exchange: Marketplace for subscribing to and consuming third-party datasets.
- Data Pipeline: Managed ETL and data-transfer workflows; legacy service considerations apply.
- Data lake: Flexible, large-scale repository commonly backed by Amazon S3; schema-on-read.
- Data warehouse: Curated analytical store, such as Amazon Redshift; schema-on-write.
- Lake Formation: Data-lake cataloging, governance, and fine-grained access control.
- MSK: Managed Apache Kafka for real-time streaming and Kafka-compatible applications.
Flashcards
- Q: What type of data is Amazon Timestream designed to store?
A: Time-series data such as IoT telemetry, application metrics, and operational measurements.
- Q: How does Timestream control storage cost for older time-series data?
A: It can move historical data from a fast memory-oriented tier to a lower-cost storage tier according to retention policies.
- Q: What is AWS Data Exchange used for?
A: Discovering, subscribing to, governing, and consuming datasets from external providers.
- Q: Which AWS service can receive automated exports of Data Exchange datasets?
A: Amazon S3.
- Q: What is the difference between schema-on-write and schema-on-read?
A: Schema-on-write defines and validates structure before storage or use; schema-on-read applies structure when the data is queried or analyzed.
- Q: What is the usual storage foundation for an AWS data lake?
A: Amazon S3.
- Q: What problem does AWS Lake Formation solve?
A: It helps build, catalog, govern, and secure data lakes, including fine-grained data access controls.
- Q: Does Lake Formation replace Amazon S3?
A: No. Lake Formation governs the data lake, while S3 commonly provides the underlying object storage.
- Q: What is Amazon MSK?
A: A fully managed service for running Apache Kafka clusters and Kafka applications in AWS.
- Q: When is MSK preferable to Kinesis Data Streams?
A: When Kafka APIs, existing Kafka applications, Kafka ecosystem tools, or Kafka migration compatibility is required.
- Q: Name two authentication approaches supported by MSK.
A: TLS certificate authentication and SASL/SCRAM authentication using AWS Secrets Manager; supported IAM authorization is another option.
- Q: What is the primary role of AWS Data Pipeline?
A: Scheduling and managing data extraction, transformation, and loading between data sources and AWS destinations.
Practice Questions
Question 1
A company collects billions of temperature and humidity measurements from industrial sensors. Recent readings must be queried quickly, while older readings should automatically move to a lower-cost tier. The company does not want to manage database servers.
Which service best meets the requirement?
A. Amazon RDS for PostgreSQL
B. Amazon Timestream
C. Amazon Redshift
D. Amazon DynamoDB
Correct answer: B. Amazon Timestream
Explanation: Timestream is a serverless time-series database designed for IoT and operational measurements. It supports automatic scaling and retention-based movement between fast and cost-optimized storage tiers.
Question 2
A research organization wants to subscribe to datasets provided by several external vendors. New versions of subscribed datasets should be automatically delivered to an Amazon S3 bucket for use by analytics and machine learning pipelines.
Which AWS service should the architect recommend?
A. AWS Data Exchange
B. AWS Lake Formation
C. Amazon Kinesis Data Streams
D. Amazon EMR
Correct answer: A. AWS Data Exchange
Explanation: Data Exchange provides a marketplace and subscription mechanism for third-party datasets and can export new or updated data to S3.
Question 3
An enterprise stores raw application logs, CSV files, JSON events, and machine learning datasets in Amazon S3. Multiple teams need governed access, and security administrators must restrict access to selected columns and rows for some datasets.
Which service most directly addresses the governance requirement?
A. Amazon Redshift
B. AWS Lake Formation
C. Amazon Timestream
D. AWS Data Exchange
Correct answer: B. AWS Lake Formation
Explanation: Lake Formation provides data-lake cataloging and fine-grained governance for S3-based data lakes. Athena, Redshift, EMR, and other services can consume the governed data.
Question 4
A company is migrating an existing Apache Kafka deployment to AWS. Its applications depend on Kafka APIs and Kafka ecosystem tooling. The company wants AWS to manage cluster provisioning, configuration, and maintenance while retaining Kafka compatibility.
Which service is the best fit?
A. Amazon MSK
B. Amazon Kinesis Data Firehose
C. Amazon Timestream
D. AWS Data Pipeline
Correct answer: A. Amazon MSK
Explanation: Amazon MSK is a managed Apache Kafka service designed for Kafka-compatible applications and workloads. Kinesis Data Firehose is a delivery service, not a managed Kafka cluster platform.
Question 5
A team needs a new batch ETL workflow that extracts data from multiple sources, transforms it, and loads curated files into Amazon S3. The architecture should use current AWS services and minimize infrastructure management.
Which option should the architect evaluate first?
A. AWS Glue
B. Amazon MSK
C. Amazon Timestream
D. AWS Data Exchange
Correct answer: A. AWS Glue
Explanation: AWS Glue is a current managed data-integration and ETL option for many new batch workflows. AWS Data Pipeline is associated with legacy data-movement patterns, while MSK and Timestream address different workload types.