VERTRIEB: 1-800-867-1380

 none
Help

    Frage

  • Hello,

    I come from a SQL RDBMS background and am trying to learn as much as I can about when to use Table Storage and SQL Azure.  For my application, I've started by creating my entire database using the Entity Framework 4.1, and plan to put this all in storage table and SQL Azure .  However, I'm now looking at the various tables and trying to decide which, if any, of this data can be moved to Table Storage and which can be moved to SQL azure

    For example, my students table has First/Last/Email/Password/Phone/address/gender.  I expect a maximum of 500000 students.  The "StudentID" primary key is used in many other tables in my database such as courses, payments, wiki........  I want to know  is true if I store the student table in table storage and the reminder of my database tables in SQL Azure or I must use only one of both them (SQL Azure or storage table) to store all tables in my database.

     Can someone help me please. 

    Thanks in advance.

    Shima


    Donnerstag, 12. April 2012 18:07

Antworten

  • I'd start by telling you that when you think about Azure Table storage, forget everything you ever knew about RDBMS. :) Its intended for things that a relational storage system simply can't deal with.

    For example, you want to access students by name, you'd have one table that's structured that way. If you want to get students in a class, you may have a single table for that class with a list of all the students in it. There are no join queres and highly redudant data isn't a bad thing.

    Its a significnt shift in thinking as it does tend to go against everything we know about storing data. But when you're looking at building highly scalable systems without the infrastructure overhead that you get from trying to set up large scale on-premise systems (SANs, SQL Clusters, etc...).

    • Als Antwort markiert shimo Donnerstag, 12. April 2012 18:57
    Donnerstag, 12. April 2012 18:43
  • Blobs, unless you're using a TON of storage, will generally be cheaper then SQL Azure for pure storage. However, you will need to be aware of the transaction charges associated with deliverin the blobs (you pay per transaction for Azure Storage, but not for SQL Azure).

    Most folks will recommend a mix of the two, SQL Azure for structure relationl storage, Azure Storage Blobs for binary storage.

    BTW, when dealing with SQL Azure, be sure to also make sure you have retry and backoff strategies in place. SQL Azure is a shared resource model so just because you can take up 300 worker processes today doesn't mean you will be able to do it tomorrow. You'll want to make sure your application can handle faults and timed out connections as it comes under higher loads.

    • Als Antwort markiert shimo Freitag, 13. April 2012 07:06
    Donnerstag, 12. April 2012 20:08

Alle Antworten

  • I'd start by telling you that when you think about Azure Table storage, forget everything you ever knew about RDBMS. :) Its intended for things that a relational storage system simply can't deal with.

    For example, you want to access students by name, you'd have one table that's structured that way. If you want to get students in a class, you may have a single table for that class with a list of all the students in it. There are no join queres and highly redudant data isn't a bad thing.

    Its a significnt shift in thinking as it does tend to go against everything we know about storing data. But when you're looking at building highly scalable systems without the infrastructure overhead that you get from trying to set up large scale on-premise systems (SANs, SQL Clusters, etc...).

    • Als Antwort markiert shimo Donnerstag, 12. April 2012 18:57
    Donnerstag, 12. April 2012 18:43
  • Thanks a lot 

    In this case I should use SQL Azure for storing data but I need to know what are benefits of blobs?

    can i use SQL Azure also instead of storage table and blobs OR I should use SQL Azure for storing structured data  and Blobs for storing unstructured

    data 

    Thanks in advance


    shima mohamed

    Donnerstag, 12. April 2012 18:57
  • Blobs, unless you're using a TON of storage, will generally be cheaper then SQL Azure for pure storage. However, you will need to be aware of the transaction charges associated with deliverin the blobs (you pay per transaction for Azure Storage, but not for SQL Azure).

    Most folks will recommend a mix of the two, SQL Azure for structure relationl storage, Azure Storage Blobs for binary storage.

    BTW, when dealing with SQL Azure, be sure to also make sure you have retry and backoff strategies in place. SQL Azure is a shared resource model so just because you can take up 300 worker processes today doesn't mean you will be able to do it tomorrow. You'll want to make sure your application can handle faults and timed out connections as it comes under higher loads.

    • Als Antwort markiert shimo Freitag, 13. April 2012 07:06
    Donnerstag, 12. April 2012 20:08
  • Thanks a lot for your help

    shima mohamed

    Freitag, 13. April 2012 07:08