Federated and Scalable DaaS with GraphQL
In the previous chapter, we discussed how to publish ingested data in a format that is platform- and language-agnostic using the REST API. We also learned how to design and develop a Data as a Service (DaaS) layer using the REST API, as well as how to containerize and deploy the application on AWS ECS. Then, we learned what an API management system is and how it can help monitor and manage APIs more efficiently. Finally, we learned how to create an API management layer on top of our REST DaaS application using Amazon API Gateway.
In this chapter, we will learn how to implement DaaS using GraphQL instead of REST. To do so, we will learn what GraphQL is, and why and when it should be used. We will explore the benefits and shortcomings that GraphQL has concerning REST while discussing the various architectural patterns available for GraphQL-based solutions. Finally, we will learn about the power of federation in the GraphQL layer. By the end...