JohanSwanepoel - Fotolia
Microsoft has entered the fray of next-generation cloud database services amid a broader push to extend Azure to more types of workloads and locations.
Arguably the biggest cloud service launched this week at the Microsoft Build developer conference, Microsoft Azure Cosmos DB is a fully managed NoSQL cloud database service that scales throughput and storage horizontally across Azure's global regions. The service targets next-generation applications, such as mobile apps or workloads that rely heavily on internet of things (IoT) and artificial intelligence -- and it's Microsoft's response to the other major public cloud entries into this space: Amazon Aurora and Google Cloud Spanner.
These database services aren't intended for the lift-and-shift approach to public cloud, but rather for newer applications, with massive horizontal scale demands, and end users' increased need to connect with customers across the planet. Many companies won't need these types of products, but clearly there is demand even among traditional enterprises to better utilize the public cloud. And vendors, such as Microsoft and Google, productize internal tools that solve their own issues with global scale.
Cosmos DB is the latest example of how the cloud is reshaping the database market, said Tony Baer, an analyst at Ovum, based in London.
"With the cloud principles of elasticity, cheap storage and the ability to replicate across multiple zones built in, it means you can take another look at what are the accepted principles of how you build a database," he said. "You can basically rip up the rulebook and start over."
The write-optimized Cosmos DB offers single-digit millisecond latency and guarantees consistency and high availability through service-level agreements. Customers can add or remove regions with a single click and replicate data wherever users are, hundreds of millions of requests per second with a single API call. Customers only pay for storage and throughput used, and they can add or remove regions with a single click.
There's no schema or index management, and Cosmos DB is intended to support nearly any data model, including graph, key-value and document models at launch. It also offers five consistency models from which to pick: strong, eventual, bounded staleness, session and consistent prefix.
Each vendor's next-generation database has its pros and cons, and Cloud Spanner is considered ahead of the curve by some in terms of consistency -- especially since it follows the de facto standard with a relational database model. Still, while nonrelational databases tend to compromise consistency and structure, Cosmos DB is the latest vendor effort to overcome those limitations.
"We're starting to see use cases like Cosmos DB that claim they support ACID compliance [atomicity, consistency, isolation and durability] and strong consistency," said Adam Ronthal, a research director at Gartner. "It expands the type of use cases you can consider these things for with the new programming paradigm and new APIs in ways that are more developer-friendly."
Cosmos DB, which was borne out of DocumentDB and is generally available, will likely be a good fit for things that rely on graph data to determine how nodes and objects are interrelated, such as social networks, Ronthal said. The cloud database service likely won't be a good fit for financial transactions or analytics, but it could serve as a solid operational database, Baer said. Nonetheless, Microsoft appears to cast a wide net through this globalized approach that offers many ways to configure it and tune for consistency.
Cosmos DB wasn't the only database news from Microsoft this week. Azure Database Migration Service, currently in limited preview, automates the assessment, schema conversions and data transfer of on-premises databases to Azure. It can be used for SQL Server, Oracle and MySQL databases and targets SQL Database, Azure SQL Database Managed Instance or Microsoft SQL Server in an Azure VM.
Two other managed database services rolled out this week, Azure Database for MySQL and Azure Database for PostgreSQL, are largely attempting to catch up to competitors, but also reiterate Microsoft's shift to embrace open source. Both MySQL and PostgreSQL are popular open source database choices, but the PostgreSQL support is the closest thing to Oracle databases. Amazon Web Services added similar capabilities last year, and Oracle responded with a price hike to run its databases on AWS and Azure, as it tries to get more customers for its refactored public cloud.
Nonetheless, Ronthal expressed skepticism whether such migration services address the three main aspects of moving one database to another: schema conversions, data migrations and application conversions.
"Most data migration from Amazon, and now with what Microsoft has announced, are really only good at going after the first two in any meaningful way," Ronthal said. "You still have a fair amount of work to do to rewrite it and get it to work with the new platform."
Extending IoT and serverless with Azure
Microsoft also rolled out a number of other services to bolster Azure and blur the lines between its public cloud and broader set of services. Among them was Azure IoT Edge, which extends some of the public cloud capacities directly to IoT devices, with code written in Azure then extended to edge devices. It also integrates with Azure Machine Learning, Azure Stream Analytics, Azure Functions, Azure IoT Hub and Microsoft Cognitive Service.
Capabilities around Azure Functions, which was rolled out at the conference last year, were extended this week, too. Among the updates, Azure Functions was extended to Visual Studio 2017 and Azure Functions Runtime, which is another means to use the service on premises.
Trevor Jones is a news writer with SearchCloudComputing and SearchAWS. Contact him at email@example.com.
Is Microsoft Azure right for your enterprise?
Azure beefs up cloud monitoring tools
Five tips to manage your Azure public cloud