Key benefits

  1. $5 per month
  2. 99.99% SLA on monthly basis

Details about service: https://www.windowsazure.com/en-us/home/features/sql-azure/

Migration made easy: http://sqlazuremw.codeplex.com/documentation

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS
,

Protected: Questions for Azure Platform!

This post is password protected. To view it please enter your password below:

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS
, , , , , ,

After getting frustrated with the fact that Entity Framework and NHibernate does not resolve my needs, I am writing my own ORM tool to finalize one very important part of enterprise architecture.

Here are the features that are included (hope to finish by tomorrow)

  1. Mutliple entity classes (one per each)
  2. Single Data Provider Class
    1. One Interface IDataProvider
    2. One Class which inherits I[Model]DataProvider (SQL[Model]DataProvider)
      1. [Model] to be renamed by the model name provided
    3. One mocked class using moq framework (http://code.google.com/p/moq/)
  3. SQL[Model]DataProvider will also implement retry logic in case of certain cases such as
    1. Deadlock
    2. Connection Timeout etc.
    3. In a nutshell the following error codes : -1,-2,2,53,1222,1205
  4. Will obviously generate related stored procedures and utilize them :)
  5. Entities will be able to track simultaneous changes and will be able to throw exception if data changed before update!
  6. Entities will implement [DataContract] & [DataMember] so that usage in WCF will be a lot easy
  7. As you may see from here generated codes will implement Abstract Factory (Provider) design pattern and possibility of Singleton is also there.
I think all of those will give me the best ORM that I would need.
I’ve named it as SevDer ORM+ and first version will be completed by tomorrow
  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS
, , , , , , , , , , , ,

After doing enough research on both, what we’ve end up doing is; not using any ORM tool.

ORMs are designed to do rapid development for RIA (Rich Internet Applications) where performance is not a big concern.
Yes, ORM can speed up your development such as EF 4.0 or NH but they all lack one very important thing which is support for Stored Procedures for general select which shall be by default. All ORMs are focused on eliminating that and trying to optimize queries without SP.

If you ask me, SP are most useful when you use for select in general because you can really optimize the execution plan and it will be cached on SQL server. So in all subsequent calls to the database with same routine, SQL server will always know the execution plan and it will save time. [SP's execution plans are cached on SQL server.]

Therefore not using ORM is my choice.

Here are what I lose by not using ORM

  1. oData
  2. Extra quick development
  3. Default behavior of throwing exception on an update where data was already changed before the update (concurrency handling)
What I gain by not using ORM
  1. Will get the best performance
  2. My code will not have unnecessary extra code which I may not even use
  3. Will use SP’s the way they are supposed to be used
  4. Will abstract data layer in the most perfect manner
  5. Improve existing code generator to do my own ORM (no oData)
    1. All entities will be generated with DataContracts, DataMembers (necessary in WCF)
    2. Proper implementation of RETRY logic in SQL Exceptions (if you ever want to move into SQL Azure, you need to do this also)
    3. Will implement concurrency handling
As a result, I have tons of gains by not using .
Most important is achieving best performance and SP usage on selects.
I hope I’ve helped.
Please let me know if any more digging in this is required.
  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS
, , , , , , , , , , , ,

Common problem as you cannot use “aspnet_regsql.exe” tool.
Fix is also very simple, just follow instructions @ http://support.microsoft.com/kb/2006191

Once done, you are good to go, just launch your asp.net configuration utility and enjoy.
Ohh , before I forget, you can ignore the script execution warnings such as “Cannot grant, deny, or revoke permissions to sa, dbo, entity owner, information_schema, sys, or yourself.”

Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS
, , , , ,

I’ve always been big fan of using stored procedures due to the fact that you have a lot more control over your database and query plans to be cached but surprised for certain facts that EF can come very close to the level you want and in certain cases can perform much better [with data caching options of course].

Still huge fan of using stored procs to keep my DBA happy.

Want to know what others also think!

Checkout this for more details
Get Microsoft Silverlight

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS
, , , , , , ,

This is something which shall be considered for all enterprise level software companies where hosting is part of your business.

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS
, , , , , , ,