I am investigating different options for storing data for my Azure cloud app. I realize that SQL-Azure is available. However, I'm interested in knowing what NoSQL options are available and more importantly which ones are the leaders in this space.
Azure Cosmos DB for NoSQL is a native non-relational service for working with the document data model. It can arbitrarily store native JSON documents with flexible schema. Data is indexed automatically and is available for query using a flavor of the SQL query language designed for JSON data.
Azure offers a choice of fully managed relational, NoSQL, and in-memory databases, spanning proprietary and open-source engines, to fit the needs of modern app developers. Infrastructure management—including scalability, availability, and security—is automated, saving you time and money.
If you're looking for alternatives to SQL Azure, look at Windows Azure Table Storage APIs and this wiki page Data Storage Offerings on the Windows Azure Platform. I've also see others run MongoDB within a worker role, though a word of caution, if you're looking for easy management and out of the box scalability without having to set it up on your own, Windows Azure Table Storage is the way to go.
I've gotten MongoDB to work in an Azure role, both as a standalone and a replica set, although replica sets are rather tricky (at least in the proof-of-concept I built) and I haven't worked out details around graceful shutdown and a few other things. I demo'd this at MongoSV last year (video here).
10gen (creators of MongoDB) have now formalized this, with a MongoDB configuration which runs as a standalone server in an Azure role. With this configuration, you could even scale to multiple instances, which would provide a "warm standby" server in case the primary server went away for any reason. You can read the documentation and grab the latest code (currently alpha) from here.
You should be able to run other NoSQL databases as well, provided you can either xcopy-deploy or run an unattended install.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With