azureQuery vs. Azure SDK for Node


One of our recent projects involved using JavaScript to access Windows Azure data and features.  When considering the overall design, we discussed client- or server-side execution models (where the “meat” of the code will execute).  In this post we hope to expose what we learned in this process to others.  Although quite a few JavaScript libraries exist for accessing parts of Azure, the two we’ll analyze here are azureQuery and Azure SDK for Node.

First, a little context about each library:

azureQueryAzure SDK
PublisherDavid Pallman – NeudesicWindows Azure – Microsoft
URLazureQueryWindows Azure Node.js Developer Center
Code URLazureQuery on CodePlexazure-sdk-for-node on GitHub
Initial ReleaseJuly, 2012September, 2011


Next, some characteristics of the libraries:

azureQueryAzure SDK
Execution LocaleClient-side (browser)Server-side (node)
Fluent (chaining) language support?YesNo
Storage Support?




*Not YetYes


*Not YetYes
Service Bus Support?^NoYes
Identity & Access Control?NoNo
* As of 9/12/12, azureQuery only provides access to Windows Azure Blob Storage^ We are not clear whether azureQuery plans to support Service Bus integration.


The table above highlights that, in its current state, azureQuery is very limited in its support of Azure features.  Actually, that’s to be expected. azureQuery was first published in late July, 2012; Azure SDK for Node was 10 months old at that point. We expect azureQuery will deliver support more areas of Azure, especially as the level of developer contribution improves (David Pallman has a full-time job, after all!).


Which should you use?

So, which of these libraries should you use for projects now?  If you’re thinking, “That’s not even the right question!” you are right!  Decisions regarding which code runs client-side or server-side has a great deal more to do with application requirements, scale expectations, data change rates, etc.

However, it is pretty clear at this point that azureQuery is still in its infancy.  If your goal is to rapidly deliver a solution using Windows Azure (beyond Blobs), then you should use Azure SDK for Node.  This decision will change as azureQuery fulfills its (assumed) mission. If solution demands client-side execution (e.g., rich visualization of changing data), then we encourage you to invest in azureQuery and contribute to its advancement.