Google Professional Data Engineer Question 268
Select 3Google Cloud PlatformYou are designing a data processing system on Google Cloud to handle real-time streaming data. It is critical that the system remains operational even in the event of individual component failures and can recover from such failures automatically. Which of the following design choices will help you ensure fault tolerance and effective restart management?
- A
Use Cloud Pub/Sub for message ingestion and enable message retention.
- B
Implement a Cloud Dataflow pipeline with checkpointing enabled.
- C
Deploy the system on a single Compute Engine instance to reduce complexity.
- D
Use regional managed instance groups for auto-healing in Compute Engine.
- E
Rely on unmanaged instance groups for greater control over restarts.
Show answer and explanation
Correct answers: A, B, D
Explanation
Designing a fault-tolerant system on Google Cloud requires leveraging services and features that ensure high availability and automated recovery. Cloud Pub/Sub ensures reliable message ingestion with retention and delivery guarantees. Cloud Dataflow’s checkpointing allows pipelines to recover seamlessly from failures. Regional managed instance groups in Compute Engine automatically handle failures by recreating instances, making them highly suitable for fault-tolerant architectures. Avoiding single points of failure and unmanaged instance groups further enhances system resilience.
- A. Correct.
Cloud Pub/Sub provides message retention and delivery guarantees, ensuring that messages are not lost even if subscribers or components temporarily fail.
- B. Correct.
Cloud Dataflow supports checkpointing, which helps the pipeline recover from failures by resuming processing from the last successful checkpoint rather than starting over.
- C. Incorrect.
Using a single Compute Engine instance introduces a single point of failure, which contradicts the goal of fault tolerance.
- D. Correct.
Regional managed instance groups in Compute Engine support auto-healing, which automatically recreates failed instances to maintain system availability.
- E. Incorrect.
Unmanaged instance groups do not provide features like auto-healing or load balancing, making them less suitable for fault-tolerant designs.