First, a little context about each library:
|Publisher||David Pallman – Neudesic||Windows Azure – Microsoft|
|URL||azureQuery||Windows Azure Node.js Developer Center|
|Code URL||azureQuery on CodePlex||azure-sdk-for-node on GitHub|
|Initial Release||July, 2012||September, 2011|
Next, some characteristics of the libraries:
|Execution Locale||Client-side (browser)||Server-side (node)|
|Fluent (chaining) language support?||Yes||No|
|Service Bus Support?||^No||Yes|
|Identity & Access Control?||No||No|
|* 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.