Data-platform decisions are usually made before every requirement is known. Teams know the broad workload, expected users, and business goals, but future scale, query patterns, integration volume, consistency needs, and governance pressure are still changing. That makes architecture less like selecting the “best database” and more like managing uncertainty.
The current AZ-305 exam includes data storage design because Azure offers several strong platforms with different strengths. The architect’s job is to match data model, access pattern, consistency, performance, operations, recovery, and cost to the workload rather than defaulting to the service the team already knows.
The best decision process starts by separating hard constraints from preferences, then choosing the most reversible option that meets the hard constraints without creating unnecessary operational complexity.
Start with the data model and access pattern
Relational workloads benefit from structured schemas, transactions, joins, and constraints. Document or key-value workloads may prioritize flexible schema and scale. Analytical platforms optimize large scans and aggregation rather than row-by-row transactions. Search platforms optimize indexing and relevance. Object stores hold files and large semi-structured datasets economically.
Most production systems eventually use more than one model. The mistake is not polyglot persistence itself; it is adding stores without clear ownership and data boundaries. Every additional platform creates integration, consistency, backup, monitoring, and skill requirements.
An architect should therefore ask what operations dominate: transactional writes, point reads, range queries, full-text search, event ingestion, historical analytics, or large-file processing. The answer narrows the design before any product comparison begins.
Consistency requirements can disqualify attractive options
Some workloads require strong transactional consistency across related updates. Others can tolerate eventual consistency in exchange for distribution and scale. Many systems contain both types of data.
The important step is to connect consistency to business behavior. If two financial records must never diverge, that is a hard constraint. If a product recommendation can lag by a few seconds, a different model may be acceptable. Saying “we need strong consistency” without naming the business invariant often over-constrains the architecture.
This is why a familiar relational choice such as Azure SQL Database can be excellent for one workload and unnecessary for another. The service is not the decision criterion; the transaction and query model is.
Scale has more than one dimension
Architects should distinguish data volume, request rate, concurrency, geographic distribution, latency, ingest rate, and analytical scan size. A system with ten terabytes of mostly cold data has different pressure from a system with 100 gigabytes receiving hundreds of thousands of low-latency requests.
Growth assumptions should also be tested. Teams often design for an imagined future scale while ignoring present complexity. A platform that handles theoretical global scale may impose operational or development overhead that is not justified for a regional line-of-business system.
The safer question is what scale is plausible within the period before the architecture can reasonably be revisited. Reversibility should influence how aggressively the team optimizes for distant growth.
Cosmos DB is powerful when distribution is a requirement, not a fashion
Azure Cosmos DB can fit globally distributed, low-latency, nonrelational workloads, but its strengths should be tied to real needs. Partition design, request-unit economics, consistency choices, and data-model decisions affect both performance and cost.
A workload that needs flexible documents and predictable global distribution may benefit significantly. A modest internal transactional system with rich relational joins may be simpler on a relational platform.
The internal Azure Cosmos DB can help with platform mechanics; architecture judgment begins with whether the workload’s access and distribution model actually rewards those mechanics.
Analytics platforms should be chosen around the operating workflow
Analytical systems combine storage, ingestion, transformation, semantic models, notebooks, SQL, BI, governance, and increasingly machine learning. Teams sometimes choose an analytics platform based on one impressive capability while underestimating the daily workflow required to ingest, govern, and serve data.
Microsoft Fabric can provide an integrated analytics experience across several functions. Azure Databricks can be attractive for engineering-heavy lakehouse and Spark workloads. Azure SQL and other services may still be appropriate for smaller analytical needs. The right question is how the platform fits the team’s data lifecycle, skill set, security model, and consumption patterns.
Microsoft Fabric and Power BI foundations are useful when the architecture is moving toward an integrated analytics estate, but that integration should solve an actual coordination problem.
Operational ownership can outweigh theoretical capability
A platform that fits the data perfectly can still be a poor organizational choice if nobody can operate it safely. Backup, monitoring, performance tuning, schema evolution, access control, incident response, and cost management all require expertise.
Managed services reduce some operational burden but do not eliminate ownership. Teams still need to understand service limits, scaling behavior, maintenance, quotas, network dependencies, and recovery. The amount of platform responsibility should match the team’s maturity.
This is especially important when the organization already has strong operational patterns around one data technology. The cost of introducing a new platform includes training, support, runbooks, and the possibility that rare failures become difficult to diagnose.
Security and governance can change the preferred architecture
Data classification, residency, private connectivity, encryption, auditing, row or column security, key management, and identity integration may disqualify an otherwise attractive choice. Analytical convenience does not override regulatory boundaries.
Governance also affects data duplication. Creating a new platform may require copying data, which introduces lineage, retention, access, and synchronization responsibilities. A design that appears simple at the service level can create a complicated data estate.
Architects should include governance flows in the decision model: who can read, who can write, where copies exist, how they are discovered, and how policy changes propagate.
Choose for migration and exit as well as day-one fit
No platform choice is perfectly reversible, but some decisions create stronger lock-in than others. Proprietary APIs, stored procedures, specialized partition models, custom ingestion code, and service-specific security patterns can increase migration cost.
That does not make them wrong. The value may justify the coupling. The architect should simply make the trade explicit. A strategic platform can deserve deep integration; an uncertain pilot may deserve a more portable design.
The broader Microsoft data ecosystem gives teams many viable paths, which makes exit thinking more important rather than less. Abundance of options is not the same as effortless migration between them.
A decision matrix should capture uncertainty, not hide it
A useful evaluation separates confirmed requirements from assumptions. Confirmed items might include data residency, maximum acceptable latency, transaction semantics, or required integrations. Assumptions might include three-year data growth, future AI use, or expected geographic expansion.
Scorecards can help, but they should show sensitivity. If one uncertain assumption changes, does the preferred platform change? If yes, the decision may need a pilot, benchmark, or architecture that preserves an exit path.
For the Azure Solutions Architect Expert mindset, the goal is not to announce a universal winner. It is to explain which facts drive the choice, which uncertainties remain, and why the chosen platform is appropriate for the workload as it is actually expected to behave.
Query flexibility is another decision factor that teams often discover late. A storage model optimized for known access patterns can become awkward when product teams later need ad hoc analysis, secondary indexes, full-text search, or new relationship queries. The architect should ask how likely the query model is to evolve and what that evolution costs on each platform.
Schema evolution deserves similar attention. Strong schemas protect invariants and improve data quality, but they can slow changes when upstream producers evolve rapidly. Schemaless models absorb variation more easily but shift validation responsibility into application logic and governance. Neither direction is inherently more agile; agility depends on where the organization wants to manage change.
Integration volume can also alter the choice. A database may be excellent for the application itself but a poor center for dozens of event-driven consumers. In those cases, change-data capture, event streams, lake storage, or separate analytical copies can protect the operational store from becoming an accidental integration bus.
Cost should be modeled from the dominant unit of work. Some services charge mainly for provisioned capacity, some for operations or throughput, some for storage and data movement, and some combine several dimensions. A cheap development environment can produce a surprising production bill when request rates, replication, backups, or analytical scans increase.
The strongest proof is often a small benchmark built around representative operations. Measure latency, throughput, cost, failure behavior, operational steps, and developer complexity using realistic data sizes. Benchmarks do not eliminate uncertainty, but they replace abstract preference with evidence where the decision is most sensitive.
The decision should also specify a review trigger. If data volume, geographic distribution, write rate, analytics demand, or governance needs cross a defined threshold, the team should revisit the platform choice. Architecture becomes safer when the organization knows what evidence would justify changing direction instead of defending the original decision forever.
Documentation should capture the rejected options too. Recording why a relational, document, lakehouse, or analytical design was not chosen helps future teams understand the original constraints. Without that context, later engineers may repeat the same evaluation or misinterpret an intentional trade-off as an oversight.