Event-Driven
Architecture

GigaSpaces incorporates Event Driven Architecture (EDA) throughout its platform, side-by-side with API-driven functionality. Event-driven data integration pipelines are the foundation that powers the real-time enterprise with consistent, up-to-date data. Consumption of that data by operational and digital applications is supported both by request (via API calls) or using push notifications.

Data integration pipelines enabled by GigaSpaces may run either in stream or batch mode. Stream-based pipelines are triggered either by data change at the system of record (usually implemented using a CDC utility) or by the arrival of an event on a message bus on which the pipeline listens. Batch-based pipelines are triggered by a scheduled event, indicative of the elapsed time by which that data should be refreshed. The choice of which trigger type to apply is dependent on the nature of the specific data; for example, user transactions are considered as fast-changing data and hence will normally be streamed in, while account data is considered to be slowly changing, and hence may be refreshed once a day.

Events may be applied also within the pipeline, to trigger data enrichment processes. For example, profiling customers based on their last 30-days activity may be triggered once a day and may apply both in stream and batch-based pipelines. However, when real-time enrichment is required, such as anomaly detection in a time series, it will likely be applicable for stream-based pipelines and be triggered by data events.

architecture diagram

Once integrated and enriched data is safely written to a Space, it may be consumed for use by operational and digital applications. This operation may occur per request using API calls, or by listening to data events. In the former case, the application is proactive. In the latter, the application is reactive to changes in the data, which could also be combined with business logic.

Here’s an example: a retailer wants to approach customers whose birthday occurs in the upcoming week with special offers. Using APIs, the application will need to periodically query for customers who match that criterion. The processing of that information will likely continue as an offline batch job, although the result will be a push notification through a digital channel such as SMS, email, or the mobile app.

Using events, the application will be automatically triggered for every customer who matches the criterion as soon as the indicative data is updated in Space. The execution will be event-based all the way through, ending with the notification through the digital channel.

The underlying methods with which events are supported for the various use cases are polling and notifications. In the examples above, we can see the implementation of these protocols for different use cases. For example, data enrichment is easily implemented using polling, while notifications are more suitable for pushing events out to digital applications.

To assist application developers implementing event-driven logic, GigaSpaces offers a low-code Service Creator. Using the Service Creator, the developer may apply both query (API) and event-based logic, incorporated into a single service.

InfoWant to learn more?

|

Download our smart DIH brochure

Download Now