Azure Stream Analytics for Cost-Effective Ride Searching Application

Right Services for Setting Up a Ride Searching Application with Azure Stream Analytics

Question

A famous online taxi service is setting up its ride searching application with the help of Azure Stream analytics.

There have few requirements as follows.

A driver should be able to see nearby passengers who are looking for rides in the application. Data about no of cars in each circle is sent to the Azure event hub every 2 minutes for further analysis. Solution must be cost-effective. Which of the following tells about the right services to be used here?

Answers

Explanations

Click on the arrows to vote for the correct answer

A. B. C. D.

Correct Answer: A.

The first requirement says that the nearby potential customers should be identified.

This is geospatial aggregation, and Azure Stream analytics supports low-latency real-time geospatial aggregation.

Again there is windowing which tells about sending data which is collected in 2 mins timeframes.

So, function taken against a timeframe is a perfect scenario of tumbling window, making it more cost-effective than other windowing options.

Option A is correct: Since Geospatial aggregation enables drivers to find the nearby customers, and tumbling window can send the data in fixed timeframes.

Options B, C and D are incorrect:Geofencing is kind of controlling the location within a specific perimeter, and we can set up alerts when the GPS device leaves this perimeter.

Sliding window output events only for points in time when the content of the window actually changes.

To know more, please refer to the docs below:

To enable a driver to see nearby passengers looking for rides, the online taxi service needs to process incoming data about passenger locations in real-time. Azure Stream Analytics is a service that can process real-time data streams with low latency and high scalability.

To meet the requirement of analyzing the number of cars in each circle, the online taxi service can use Azure Event Hub to ingest the data every 2 minutes. Event Hub is a data streaming platform and event ingestion service that can receive and process millions of events per second.

To achieve cost-effectiveness, it's important to choose the right combination of windowing techniques and geospatial processing methods.

Windowing is a way to segment incoming data streams into smaller, manageable pieces that can be processed in real-time. Azure Stream Analytics supports two types of windowing techniques: tumbling windows and sliding windows.

Tumbling windows divide data into fixed-sized, non-overlapping time intervals. For example, if we define a tumbling window of 5 minutes, then data will be aggregated into 5-minute intervals, and each interval will contain non-overlapping data.

Sliding windows, on the other hand, divide data into fixed-sized, overlapping time intervals. For example, if we define a sliding window of 5 minutes with a sliding interval of 1 minute, then data will be aggregated into 5-minute intervals, but each interval will contain overlapping data from the previous 4 minutes.

Geospatial processing is used to analyze and process location-based data. Azure Stream Analytics supports two types of geospatial processing methods: geospatial aggregation and geofencing.

Geospatial aggregation is used to aggregate data based on geographic regions or shapes, such as circles or polygons. For example, we can group data by circles of varying sizes to analyze the number of passengers or drivers in each circle.

Geofencing is used to define geographic boundaries and trigger events when a location-based event occurs within that boundary. For example, we can set up geofencing to alert drivers when a passenger requests a ride within a certain radius.

Based on the above requirements and considerations, the right services to be used in this case are:

A. Use tumbling window and Geospatial aggregation.

Using tumbling windows with fixed intervals and non-overlapping data is a better option than sliding windows for this scenario since we don't need to aggregate overlapping data. By using geospatial aggregation, we can group data based on circles and analyze the number of passengers in each circle. This will allow drivers to see nearby passengers looking for rides within a certain radius.

Therefore, Option A is the correct answer.