Follow Datanami:
August 22, 2014

Microsoft Blends NoSQL with Relational DB in the Cloud

Microsoft yesterday unveiled Azure DocumentDB, a new cloud-hosted databases that adds elements of a relational database, such as SQL-like queries and transactional processing, into a document-oriented NoSQL database. The software giant also added HBase support to its hosted Hadoop solution and revealed a preview of Azure Search.

The flexible schemas and distributed scalability of NoSQL databases have garnered them plenty of action lately, particularly when it comes to running large Websites and mobile applications. Document-oriented databases, such as those offered by MongoDB and Couchbase, have headlined the NoSQL assault on more rigid relational databases offered by Oracle, Microsoft, and IBM.

“However, while NoSQL technologies address some document database needs, we’ve been hearing feedback that customers want a way to bridge document database functionality with the transactional capabilities of relational databases,” writes Microsoft Ranga Rengarajan, Microsoft’s corporate VP of Data Platform, Cloud & Enterprise, on the tech giant’s SQL Server Blog.

Azure DocumentDB is Microsoft’s answer to that feedback. “It’s a NoSQL document database-as-a-service that provides the benefits of a NoSQL document database but also adds the query processing and transaction semantics common to relational database systems,” he writes.

DocumentDB offers native support for JSON documents, while simultaneously allowing queries written in the SQL syntax to run over those JSON stores. It supports programming libraries for .NET, Node.js, JavaScript, and Python, which Microsoft will be contributing to the open source community.

According to Microsoft, DocumentDB’s SQL language “provides a formal programming model for rich queries over JSON documents.” These SQL-like queries can run over JSON data without requiring the developer to specify the schema or create a secondary index, as would normally be required in a traditional relational database. If it’s true, it’s sort of like having your cake and eating it too.

Support for strong consistency is a requirement for transaction processing, but the lack of strong consistency in NoSQL databases has long been considered an acceptable trade-off for the flexibility offered by these databases. But according to Microsoft, DocumentDB can deliver the strong consistency needed to support real-world transactional workloads.

microsoft_azureDocumentDB users can “tune and trade off consistency through well-defined levels—strong, bounded-staleness, session, and eventual—to suit application scenarios and performance needs instead of facing the challenge of choosing between the two extremes of strong and eventual consistency,” Microsoft says on its DocumentDB preview page.

The new database as a service is currently available only as a preview. Pricing starts at $22.50 per month for a single Capacity Unit (CU), which gets the customer 10GB of SSD-backed storage and a certain capacity of Request Units (RUs) required to process writes, reads, queries, and execution of stored procedures.

While it’s currently offered as a preview, DocumentDB has been in production for some Microsoft consumer applications, such as its OneNote service, which is used by millions of users. It’s also being used by Additive Labs, a Hong Kong-based Microsoft partner that builds cloud solutions.

In other NoSQL news, Microsoft announced that it’s added support for HBase to Azure HDInsight, the hosted Hadoop offering that it develops with help from Hortonworks. HBase is a NoSQL key-value store that runs atop HDFS, and adding that to the HDInsight service offering will open up new use cases for analyzing operational data. For example, HDInsight customers can use HBase to store data from websites or sensor or telemetry data, and use other Hadoop applications (MapReduce, Hive, etc.) to analyze that data.

The final piece of Microsoft’s Azure User Experience (AUX) update is the introduction of Azure Search, a new enterprise search application. It can be difficult to install and roll out an enterprise search application, Microsoft says, so it decided to simplify the process with a shrink-wrapped service.

Microsoft says Azure Search will allow customers to “integrate complete search experiences into applications” by leveraging a “simple API.” The service lets developers create and tune multiple indexes and increase or decrease capacity (measured in queries per second) and as search loads change.

It’s been a busy summer for Microsoft’s Azure and big data teams. In June, the software giant unveiled a hosted machine learning environment, called Azure Machine Learning, that provides an easy-to-use, drag-and-drop client interface, called ML Studio, atop proven algorithms developed by the company’s Research, Xbox, and Bing arms. The service, which can access HDFS data stored in HDInsight, is still in preview mode.

Related Items:

Microsoft Spins Up a Machine Learning Cloud

Can Microsoft Become the McDonald’s of Hadoop?

Microsoft’s SQL Server 2014 Adds In-Memory, Updates Columnar