Data Store

Image from https://www.pexels.com/@tiger-lily/
Image from https://www.pexels.com/@tiger-lily/

Cloud providers offer different storage options catering to different needs. In this blog, we look at 3 data storage options provided by Azure. They offer the following

  1. Storage with Query Engine (Relational)
  2. Storage with Query Engine (Non-SQL)
  3. Storage without/limited query support

1. Storage with Query Engine (Relational)

This is a cloud-based database service where the data is organized in rows and columns, and the schema for every table is well-defined. Azure SQL Server offers different deployment options.
  1. SQL Server on Azure VM (IaaS)
  2. Azure SQL Database (PaaS)
  3. Azure SQL Managed Instance (PaaS)
I shall not attempt to dig deep into these options because many online resources are available. We choose this service because
  1. The data model is relational and well-defined
  2. high availability
  3. SQL supports
  4. Fast response time
These are the cost considerations
  1. Deployment model
    1. Single Database deployed to an Azure VM
    2. Elastic Pool of databases, 
    3. Managed Instance (fully-managed SQL Database instance)
  2. Service tier
    1. General Purpose
    2. Business Critical
  3. Computing model
    1. Dedicated resources
    2. Serverless (bill based on usage)
  4. Computing power (number of vCores)
  5. Storage space
    1. data in GB per month
    2. with or without backup options

2. Storage with Query Engine (Non-SQL)

Azure ComosDB offers different data models such as JSON and Graph (Network). We can use SQL for JSON data models and Gremlin on Graph. We choose this service because
  1. The data model is non-relational
  2. high availability
  3. SQL for JSON and Gremlin on Graph
  4. Fast response time

On the billing aspect, we are paying for storage and request units (RUs). There is a calculator for cost estimation.


3. Storage without/limited query support

Azure Blob Storage is a good option when we just want to store data and retrieve them without much query support. For instance, we store computation results, data for machine learning, temporary data, and configuration data in blob storage. Essentially, we are just paying for storage space.

Data is organized in blob containers and blob blocks. A storage account can contain an unlimited number of containers, and a container can store an unlimited number of blobs.

Azure Blob Storage is a good choice for big data solutions, because of its high availability, and low cost. Among other things, it provides hot, cool, and archive storage tiers for different use cases.


Conclusion

Depending on our business needs, we choose the appropriate data store. In this manner, we reduce costs for our cloud solutions and get the most out of these storage options.



Comments

Popular posts from this blog

OpenAI: Functions Feature in 2023-07-01-preview API version

Storing embedding in Azure Database for PostgreSQL

Happy New Year, 2024 from DALL-E