2
votes

Our team is working on a project that may need to use Azure table storage in addition to Azure blobs and message queues. One concern of using another kind of storage provider (table storage in this case) is the impact on our overall service stability. The calculation is like this: 99.99% * 99.99% > 99.99% * 99.99% * 99.99%. But my impression is that the 99.99% SLA provided by Azure storage actually covers ALL three types of storage (table, queue and blob) already. So by using table storage, we are not actually introducing another 99.99% factor. I could not even find a separate table storage only SLA. So the calculation should be 99.99% = 99.99% (since 99.99% already covers all storage types).

Plus, I think the whole reason that Azure provides all three types of storage is to allow us to pick whatever storage types that works the best for the problem. So why limit ourselves when the overall impacts on serviceability is so small?

Could some Azure experts answer this question? I know this is not exactly a programming question but it has huge impact on our design.

Thanks.

1

1 Answers

1
votes

If I recall correctly, the underlying infrastructure is the same for all three. So I don't think you're introducing a new set of possible hardware failures. Of course there is some software difference between the three services, but it's actually a surprisingly thin layer. For further research, you may want to check out this blog post on the storage architecture. And if you're really interested, they presented an in-depth paper at SIGOPS about the architecture.

My personal experience (sample size = 1) has been that Tables is a little less reliable than Blobs or Queues, but I think that's just because we use Tables much more heavily than the other two options.