Recently we introduced and defined the concept of a Reactive Data Layer – the new standard for enterprise app integration. In this – the next in a series of discussions around RDL – we’ll talk a little more about how a reactive data layer actually works.
First off, a data layer is the functionality in your technology stack that sits between the application backend and the front-end experience layer (user interface). The data layer enables integration between your business systems and your web and mobile clients over the Internet to make your application work. In short, it rationalizes data from legacy systems and cloud applications and simplifies access for both the producers of data and the consumers of data by hiding the complexity of the underlying operations.
How are reactive data layers different?
Conventional data layers rely on request-response semantics to fetch data from back-end systems. With this approach, an app periodically polls the back-end system for data and presents the data to the user upon request. This makes it difficult to scale to meet changing demands because it is both heavy on the network and the server. This approach also commonly results in blocked operations (monopolization of key resources, such as CPU, memory, or network), which impacts the responsiveness of the app – the infamous spinning wheel – the tell-tale sign of a problem app.
By contrast, reactive data layers embrace the essential characteristics of the reactive programming model: they are scalable, resilient, responsive (non-blocking), and – of particular importance – event-driven. Event-driven systems enable loose coupling between components and subsystems, one of the prerequisites for scalability and resilience. By removing complex and strong dependencies between components, event-driven applications can be scaled with minimal impact on the existing application.
The work of filtering, synchronizing, and transforming the data is performed by the reactive data layer, which means that the producers and consumers of the data need only react to the data they receive, rather than having any awareness of the changing data model underneath. In other words, the data layer is reacting to changes as they are introduced, while at the same time insulating client applications from changes that would introduce latency, network overhead or otherwise “break” the end user experience.
What makes Push Technology’s Reactive Data Layer unique?
Every Push Reactive Data Layer has built-in capabilities unmatched by any commercial or open-source offering. These capabilities ensure that data flows smoothly in a timely manner to and from applications, devices, and networks subscribed to data on your application. A Push Reactive Data Layer exceeds the standards of the reactive programming model in terms of scalability, resilience, and responsiveness by overcoming the challenges presented by disparate back-end systems, the unknowns of the Internet, client device complexity and huge numbers of concurrent connections.
The Diffusion Intelligent Data Platform manages, optimizes, and integrates data among devices, systems, and applications. Push Technology pioneered and is the sole provider of real-time delta-data streaming™ technology that powers mission-critical business applications worldwide. Leading brands use Push Technology to fuel revenue growth, customer engagement, and business operations. The products, Diffusion® and Diffusion Cloud™, are available on-premise, in-the-cloud, or in a hybrid configuration, to fit the specific business and infrastructure requirements of the applications operating in today’s mobile obsessed, everything connected world. Learn how Push Technology can reduce infrastructure costs, and increase speed, efficiency, and reliability, of your web, mobile, and IoT application.