locked
Azure Table vs Azure SQL Table. Is it cost savings or performance? RRS feed

  • Question

  • Hi,

    I realize this is a somewhat of a subjective question but what is the primary benefit of Azure tables? Is it cost savings or performance?

    We're building a public web app that uses social logins and we need to store user data somewhere that would allow us to look up a user logging in with their Facebook or Google account and we need to pull up their internal UserId.

    From what I'm gathering, an Azure table is the best place to store this. What I want to know is why? Is it performance which is hugely important for us or is it cost savings which of course is hugely important -- but not at the expense of performance.

    Though, this is slightly off topic but definitely related to my original question:

    What I'm struggling with is that if we store user data in an Azure storage, we still need to store user's ID in our SQL server database as well because we do enforce referential integrity. So this idea of storing the same data in two places is a bit confusing for me.


    Thanks, Sam


    • Edited by imsam67 Wednesday, April 2, 2014 4:38 AM
    Wednesday, April 2, 2014 4:36 AM

Answers

  • Hi Sam,

    We could compared SQL azure table with Azure table storage:

    Windows Azure SQL Database is a relational database service that extends core SQL Server capabilities to the cloud. Using SQL Database, you can provision and deploy relational database solutions in the cloud. The benefits include managed infrastructure, high availability, scalability, a familiar development model, and data access frameworks and tools -- similar to that found in the traditional SQL Server environment. SQL Database also offers features that enable migration, export, and ongoing synchronization of on-premises SQL Server databases with Windows Azure SQL databases (through SQL Data Sync).

    Windows Azure Table Storage is a fault-tolerant, ISO 27001 certified NoSQL key-value store. Windows Azure Table Storage can be useful for applications that must store large amounts of nonrelational data, and need additional structure for that data. Tables offer key-based access to unschematized data at a low cost for applications with simplified data-access patterns. While Windows Azure Table Storage stores structured data without schemas, it does not provide any way to represent relationships between the data.

    If your data have multiple table relationships, I suggest you use SQL Azure. There is a excellent document about their compared and contrasted, I suggest you refer to it .(http://msdn.microsoft.com/en-us/library/jj553018 ).About their cost, you could refer to this reply (http://stackoverflow.com/a/10258310 ).Hope it helps.

    Regards,

    Will


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    Wednesday, April 2, 2014 1:46 PM
  • I've moved a couple of relational database now over to tables, and I have to say, it works well - but you will have to plan things a bit ahead.

    Dealing with referential integrity wasn't a problem, although I have to admit that I was pretty nervous about it at first.  About the only thing I miss from time to time are indexing for tables that have a lot of queries that span all the fields, and free-text-searching abilities.

    Azure tables seem to be instant for my uses - I haven't seen the normal start up lag as I have from SQL during the first-query, and I've never seen any downtime.  (My SQL Azure server has had some lag from time-to-time which bothers my app.)  The cost savings for tables is well worth it.  I have table containers with > 10000 records, and data access is still instant.

    Once I wrapped my head around thinking about "how I retrieve the data" rather than my previous focus of creating schema, or as I call it - "How do I store the data?" things went very well and development went quickly.

    Maybe outline a bit of your data or situation, and we can help further with suggestions?


    Darin R.

    Wednesday, April 2, 2014 8:16 PM

All replies

  • Hi Sam,

    We could compared SQL azure table with Azure table storage:

    Windows Azure SQL Database is a relational database service that extends core SQL Server capabilities to the cloud. Using SQL Database, you can provision and deploy relational database solutions in the cloud. The benefits include managed infrastructure, high availability, scalability, a familiar development model, and data access frameworks and tools -- similar to that found in the traditional SQL Server environment. SQL Database also offers features that enable migration, export, and ongoing synchronization of on-premises SQL Server databases with Windows Azure SQL databases (through SQL Data Sync).

    Windows Azure Table Storage is a fault-tolerant, ISO 27001 certified NoSQL key-value store. Windows Azure Table Storage can be useful for applications that must store large amounts of nonrelational data, and need additional structure for that data. Tables offer key-based access to unschematized data at a low cost for applications with simplified data-access patterns. While Windows Azure Table Storage stores structured data without schemas, it does not provide any way to represent relationships between the data.

    If your data have multiple table relationships, I suggest you use SQL Azure. There is a excellent document about their compared and contrasted, I suggest you refer to it .(http://msdn.microsoft.com/en-us/library/jj553018 ).About their cost, you could refer to this reply (http://stackoverflow.com/a/10258310 ).Hope it helps.

    Regards,

    Will


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    Wednesday, April 2, 2014 1:46 PM
  • I've moved a couple of relational database now over to tables, and I have to say, it works well - but you will have to plan things a bit ahead.

    Dealing with referential integrity wasn't a problem, although I have to admit that I was pretty nervous about it at first.  About the only thing I miss from time to time are indexing for tables that have a lot of queries that span all the fields, and free-text-searching abilities.

    Azure tables seem to be instant for my uses - I haven't seen the normal start up lag as I have from SQL during the first-query, and I've never seen any downtime.  (My SQL Azure server has had some lag from time-to-time which bothers my app.)  The cost savings for tables is well worth it.  I have table containers with > 10000 records, and data access is still instant.

    Once I wrapped my head around thinking about "how I retrieve the data" rather than my previous focus of creating schema, or as I call it - "How do I store the data?" things went very well and development went quickly.

    Maybe outline a bit of your data or situation, and we can help further with suggestions?


    Darin R.

    Wednesday, April 2, 2014 8:16 PM