Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 6338589
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 24, 20262026-05-24T19:28:34+00:00 2026-05-24T19:28:34+00:00

I am evaluating the use of Azure Table Storage for an application I am

  • 0

I am evaluating the use of Azure Table Storage for an application I am building, and I would like to get some advice on…

  1. whether or not this is a good idea for the application, or
  2. if I should stick with SQL, and
  3. if I do go with ATS, what would be a good approach to the design of the storage.

The application is a task-management web application, targeted to individual users. It is really a very simple application. It has the following entities…

  • Account (each user has an account.)
  • Task (users create tasks, obviously.)
  • TaskList (users can organize their tasks into lists.)
  • Folder (users can organize their lists into folders.)
  • Tag (users can assign tags to tasks.)

There are a few features / requirements that we will also be building which I need to account for…

  • We eventually will provide features for different accounts to share lists with each other.
  • Users need to be able to filter their tasks in a variety of ways. For example…
    • Tasks for a specific list
    • Tasks for a specific list which are tagged with “A” and “B”
    • Tasks that are due tomorrow.
    • Tasks that are tagged “A” across all lists.
    • Tasks that I have shared.
    • Tasks that contain “hello” in the note for the task.
    • Etc.
  • Our application is AJAX-heavy with updates occurring for very small changes to a task. So, there is a lot of small requests and updates going on. For example…
    • Inline editing
    • Click to complete
    • Change due date
    • Etc…

Because of the heavy CRUD work, and the fact that we really have a list of simple entities, it would be feasible to go with ATS. But, I am concerned about the transaction cost for updates, and also whether or not the querying / filtering I described could be supported effectively.

We imagine numbers starting small (~hundreds of accounts, ~hundreds or thousands of tasks per account), but we obviously hope to grow our accounts.

If we do go with ATS, would it be better to have…

  • One table per entity (Accounts, Tasks, TaskLists, etc.)
  • Sets of tables per customer (JohnDoe_Tasks, JohnDoe_TaskLists, etc.)
  • Other thoughts?

I know this is a long post, but if anyone has any thoughts or ideas on the direction, I would greatly appreciate it!

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-05-24T19:28:34+00:00Added an answer on May 24, 2026 at 7:28 pm

    Azure Table Storage is well suited to a task application. As long as you setup your partition keys and row keys well, you can expect fast and consistent performance with a huge number of simultaneous users.

    For task sharing, ATS provides optimistic concurrency to support multiple users accessing the same data in parallel. You can use optimistic concurrency to warn users when more than one account is editing the same data at the same time, and prevent them from accidentally overwriting each-other’s changes.

    As to the costs, you can estimate your transaction costs based on the number of accounts, and how active you expect those accounts to be. So, if you expect 300 accounts, and each account makes 100 edits a day, you’ll have 30K transactions a day, which (at $.01 per 10K transactions) will cost about $.03 a day, or a little less than $1 a month. Even if this estimate is off by 10X, the transaction cost per month is still less than a hamburger at a decent restaurant.

    For the design, the main aspect to think about is how to key your tables. Before designing your application for ATS, I’d recommend reading the ATS white paper, particularly the section on partitioning. One reasonable design for the application would be to use one table per entity type (Accounts, Tasks, etc), then partition by the account name, and use some unique feature of the tasks for the row key. For both key types, be sure to consider the implications on future queries. For example, by grouping entities that are likely to be updated together into the same partition, you can use Entity Group Transactions to update up to 100 entities in a single transaction — this not only increases speed, but saves on transaction costs as well. For another implication of your keys, if users will tend to be looking at a single folder at a time, you could use the row key to store the folder (e.g. rowkey=”folder;unique task id”), and have very efficient queries on a folder at a time.

    Overall, ATS will support your task application well, and allow it to scale to a huge number of users. I think the main question is, do you need cloud magnitude of scaling? If you do, ATS is a great solution; if you don’t, you may find that adjusting to a new paradigm costs more time in design and implementation than the benefits you receive.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I am evaluating an algorithm, and would like to use artificial data. The algorithm
Am currently evaluating the best RIA technologies to use for building a new e-commerce
I am a beginner in GAE and still evaluating if I should use this
I am currently evaluating JMS and I don't get what I could use it
We're evaluating MySQL and PostgreSQL for building our indic language(using utf-8 encoding) web application
I've installed trial version of MonoTouch, and I'm evaluating it for use. This strange
I am evaluating Rich Internet application solutions to use in next project. I have
I am really new to iPhone dev. I am evaluating whether to use Monotouch
I'm evaluating the use of Python for a new project and ran through some
I am evaluating whether to use SmartGWT, and have no prior experience with it.

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.