2

We are talking about a CRUD application with a little background processing (about 20 decisions per user per day. Not big). We are planning for about 20 million transactions a day. Most of these transactions will be small textual. About 15% will be images sized at about 1MB. Mostly READ. Number of clients could be like 500,000 to 1 million.

We are thinking of hosting it on Windows Azure. For this kind of application, what storage techniques could I use? I was thinking about Azure Tables for images, SQL Azure for other transactional data. Would making more than one database make it more scalable? I mean, if I have two entities, I could make two databases hosted on two different independent servers breaking normalization. Would that be beneficial? I am confused here don't know much about handling large data.

wirate
  • 675
  • 1
  • 8
  • 24
  • A similar question has been posted here: http://stackoverflow.com/questions/6095197/how-do-sql-azure-and-azure-table-storage-compare – Rafay Jan 27 '13 at 08:27

2 Answers2

3

Start by reading Windows Azure Storage Abstractions and their Scalability Targets. You can't really store images in Azure Tables. They are limited to 1MB per entity. You could store the images in Azure BLOB (with CDN) enabled for efficient delivery and instead of SQL, store your property data and links to the images in Azure Tables. The referenced article describes scalability and performance targets.

viperguynaz
  • 12,044
  • 4
  • 30
  • 41
  • Thanks the link was really helpful. So a kind of mix and match with blobs, tables and SQL Azure is coming to my mind. Since the transactional data is highly relational, I will be performing a lot of queries, joins etc which might be inconvenient and expensive with tables. I could separate that data between tables (data that doesn't need much processing and querying ability) and SQL (the rest) – wirate Jan 26 '13 at 16:31
0

If you are storing the image in Binary format then azure table wont be adequate because max size of a table row is 1MB (including partition key and row key).So for storing images Blob storage is best....

If the transactional data is nonRelational then you can use Azure Table... Which can scale very well than sql azure. http://msdn.microsoft.com/en-us/library/windowsazure/jj553018.aspx

NavaRajan
  • 1,850
  • 1
  • 17
  • 22