The Case for Data Gateways

 Microservices influence the two-dimensional data layer. First, it requires a separate database per microservice. From a practical implementation standpoint, this can range from a stand-alone DB instance to separate schemas and logical groupings of tables. The main rule here is that only one microservice owns and touches a set of data. And all data is accessible through proprietary microservice APIs or events. The second way that a microservices architecture has influenced the data layer is the proliferation of the data warehouse. Likewise, by allowing microservices to be written in different languages, this architecture allows every microservice-based system to have a polyglot persistence layer. With this freedom, one microservice can use a relational database, another can use a document database, and the third microservice uses an in-memory key-value store.


While microservices give you all this freedom, it still comes at a cost. It turns out that operating a large number of data warehouses comes at a cost for which existing tools and practices were not prepared. In the modern digital world, storing data reliably is not enough. Data is useful when it becomes knowledge and for that it must be accessible in a manner controlled by many. AI / ML experts, data scientists, and business analysts all want to dig deep into data, but application-centric microservices and their data access models are not designed for these data-hungry demands.


API and Data Gateways Offering Similar Capabilities at Different Layers


This is where data gateways can help. A data gateway is like an API gateway, but it understands and acts on the physical data layer rather than the network layer. Here are some areas where data gateways differ from API gateways.


Abstraction


An API gateway can hide deployment endpoints and help update and restore services without affecting service consumers. Likewise, a data gateway can help extract a physical data source, its details, and help modify, migrate, and dismantle without affecting data consumers.


security


An API manager protects endpoints of resources based on HTTP methods. A mesh of services is secured based on network connections. But none of them can understand and secure the data and the way it travels through it. A data gateway, on the other hand, understands and acts on the different data sources and the data model. You can apply RBAC per row and column of data, filter, hide, and clean up individual data items as needed. This is a more detailed security model than networking or API-level security of API gateways.



Climbing


API Gateway Services can perform service discovery, load balancing, and help scale services through an orchestrator such as Kubernetes. But they can't scale the data. Data can only be scaled by replication and caching. Some datastores can replicate in cloud native environments, but not all. Specially designed tools like Debezium can capture changed data from data warehouse transaction logs and enable data replication for scale and other use cases.


A data gateway, on the other hand, can speed up access to all kinds of data sources by caching the data and providing materialized views. You can understand queries, optimize them for the capabilities of the data source, and produce the most efficient execution plan. The combination of materialized views and the flow nature of change data capture would be the latest technique for scaling data, but cloud native implementations are not yet known.


Federation


In API management, composing responses is a common technique for aggregating data from several different systems. In the data space, the same technique is called federating heterogeneous data. Heterogeneity is the degree of differentiation in various data sources, such as network protocols, query languages, query capabilities, data models, error handling, transaction semantics, etc. A data gateway can support all of these differences as a transparent and transparent data federation layer. .


Diagram first


API gateways enable the development of first-contract clients and services with specifications such as OpenAPI. Data gateways allow consumption of first schema data based on the SQL standard. An SQL schema for data modeling is the OpenAPI equivalent of APIs.


Comments

Popular posts from this blog

Outsourcing

What is Managed Wi-Fi and Why do You Need It?

Three Key Responsibilities of the IT Help Desk