
Answer-first summary for fast verification
Answer: Azure Databricks
## Detailed Explanation ### Requirements Analysis The question specifies three key requirements: 1. **Streaming data processing** from Apache Kafka source 2. **Output to Azure Data Lake Storage Gen2** 3. **Java programming language support** for the development team ### Evaluation of Options **D. Azure Databricks** - **✓ OPTIMAL CHOICE** - **Apache Spark Integration**: Azure Databricks provides a fully managed Apache Spark platform, which has excellent Kafka integration through Spark Structured Streaming - **Java Support**: Full Java SDK and API support for stream processing, allowing developers to write streaming jobs in Java - **Kafka Connectivity**: Direct Kafka connector for reading streaming data from Kafka topics - **ADLS Gen2 Integration**: Native support for writing processed data to Azure Data Lake Storage Gen2 - **Streaming Capabilities**: Supports stateful aggregations, windowing operations, and complex event processing - **Enterprise Features**: Provides monitoring, scaling, and enterprise-grade security features **A. Azure Event Hubs** - **✗ NOT SUITABLE** - Primarily an event ingestion service, not a stream processing engine - While it can receive events, it doesn't provide native stream processing capabilities - Limited to basic event routing and doesn't support complex aggregations **B. Azure Data Factory** - **✗ NOT SUITABLE** - Primarily an ETL/ELT orchestration service for batch processing - Limited streaming capabilities and not designed for real-time stream processing - Poor fit for continuous aggregation of streaming data from Kafka **C. Azure Stream Analytics** - **✗ NOT SUITABLE** - Uses SQL-like query language for stream processing, not Java - Limited Java integration and doesn't leverage the team's Java proficiency - While it can process streaming data, it doesn't align with the Java development requirement ### Why Azure Databricks is the Best Choice Azure Databricks with Apache Spark Structured Streaming provides: - **Java-native development** using Spark's Java APIs - **Robust Kafka integration** for reading streaming data - **Powerful aggregation capabilities** with windowing and state management - **Seamless ADLS Gen2 integration** for output storage - **Enterprise reliability** with managed infrastructure and monitoring This combination ensures the development team can leverage their Java expertise while building a robust, scalable streaming solution that meets all specified requirements.
Author: LeetQuiz Editorial Team
Ultimate access to all questions.
No comments yet.
You are designing a solution to aggregate streaming data from an Apache Kafka source and write the results to Azure Data Lake Storage Gen2. The development team that will implement the stream processing solution is proficient in Java.
Which Azure service should you recommend for processing the streaming data?
A
Azure Event Hubs
B
Azure Data Factory
C
Azure Stream Analytics
D
Azure Databricks