Designing storage for efficient querying
In order to design for efficient querying, we will have to understand the different querying technologies that are available in Azure. Even though this chapter is primarily focused on storage technologies, a small diversion into the world of querying will help us understand the process of designing for efficient querying better. There are two types of querying services available: SQL-based ones such as Azure SQL, Synapse Serverless/Dedicated Pools (previously known as SQL Warehouse), and big data analytical engines such as Spark and Hive. Let's explore the important design techniques for both these groups of query engines.
We can broadly group the techniques available for efficient querying into the following three layers: