MongoDB Moves to the Head of the NoSQL Line
MongoDB is a popular choice for apps that use a Windows Azure back end.
It's a good time to be a NoSQL vendor. Especially if your product is the hottest one in the space, as is the case with New York- and Palo Alto-based 10gen (it has dual headquarters).
10gen owns MongoDB, and chances are if you're considering a database to host unstructured data, MongoDB is high on your list. Experts say it's the leading so-called NoSQL database and the key commercial sponsor of the open-source repository. 10gen is clearly on a roll.
The company points to big commercial adopters including Cisco, Craigslist, Disney, eBay, Forbes, Foursquare, Goldman Sachs, Intuit, LexisNexis, Met Life, MTV, Salesforce.com, Shutterfly and Telefonica.
Likewise, 10gen has lined up partnerships with key IT vendors and cloud providers. In addition to Microsoft, other partners include Amazon Web Services, Red Hat and SoftLayer, the company IBM earlier this month agreed to acquire for $2 billion. IBM itself announced a partnership with 10gen earlier this month to collaborate on building mobile enterprise apps. ObjectRocket, a database as a service provider recently acquired by Rackspace, announced a partnership with 10gen on Friday.
In a sign of the times, 10gen recently settled in its new headquarters in the old New York Times building, which is also occupied by Yahoo. I spent a few hours Friday at 10gen's road show, which it calls MongoDB Days in New York. The event drew more than 1,000 attendees that took part in a wide variety of business-oriented and technical tracks.
Naturally, while attending the crowded gathering, I gravitated to the one session on how to build MongoDB apps running on Microsoft's Windows Azure. Leading the presentation was David Makogon, a cloud evangelist and architect at Microsoft, who works primarily with ISVs.
While only about two dozen people attended the Windows Azure session, Makogon said it's a popular platform among Windows Azure users and ISVs. Makogon said he gets more inquiries from partners and his support team about MongoDB than anything else.
Now that Windows Azure Infrastructure Services is available, MongoDB is easier to deploy, Makogon said. With the PaaS version of Windows Azure, IT had fewer controls, which while suitable for those who don't want to have to address lower-level infrastructure, it's limiting for others do prefer or need that control.
PaaS has worker roles, which is basically Windows Server without IIS running. "It runs fantastic, however, the problem I have with it is I'm imitating a replica set," he explained. "With Worker Role instances, you can't choose which one to shut down. For instance, if you want to specifically shut down the primary node, you can take it offline but you can't exactly choose that one to scale. Let's say you scaled to five instances and want to scale back to three, you can't specify which instances you want to let go. So when it comes to low-level management of your replica set, that's where the worker role tends to fall short, just because you can't map it to the exact server."
With Windows Azure Infrastructure Services, IT has full control, he added. "Say I want this virtual machine to be shut down," he said. "My general recommendation is if you're getting into replica sets or shards, especially because there's no scaffolding available today, virtual machines [Windows Azure Infrastructure Services] are the way to go."
Indeed while MongoDB is popular, as I reported from the Visual Studio Live! conference in May in Chicago, there's no shortage of NoSQL databases, depending on your requirements. One popular alternative is Cassandra, as are CouchDB, Neo4j, RavenDB and even table storage offered in Windows Azure.
In a brief interview following his keynote address, 10gen CEO Max Schireson told me the company is seeing numerous MongoDB deployments on Windows Azure but noted despite the addition of IaaS, the cloud service still needs to evolve.
"We're seeing a lot on Windows and some of it moving to Azure," he said. "I think it will take a few more Azure iterations for more of the workloads to move there but if there's one thing people know is Microsoft will keep working on it and as it grows and matures people will move more of their workloads there."
Asked how Windows Azure needs to mature, Shireson said, "I think some of it will be newer hardware and when solid stte drive technology shows up in Azure, it will boost it. And as Azure and Windows Server continue to come together it will be a big boost."
About the Author
Jeffrey Schwartz is editor of Redmond magazine and also covers cloud computing for Virtualization Review's Cloud Report. In addition, he writes the Channeling the Cloud column for Redmond Channel Partner. Follow him on Twitter @JeffreySchwartz.