Amazon juices DynamoDB with JSON support

Amazon's DynamoDB NoSQL document database now accepts JSON documents as database objects and offers an expanded free tier

amazon cloud photos

If there's one verity of the cloud, it's that downward pressure on cloud providers never stops. If customers don't demand cheaper, faster, better, and more feature-filled service, whatever your competition does will ensure it.

Google and Microsoft recently entertained a round of price cutting with their respective services, and now it's Amazon's turn. Rather than slash prices across the board, Amazon focused on adding value to its DynamoDB NoSQL service. There, Amazon has loaded in a new features specifically designed to appeal to NoSQL users and has modestly cut prices in the form of an expanded free tier.

Chief among those new features is a staple of the NoSQL universe: JSON document support. JSON-formatted documents can now be uploaded as DynamoDB objects as long as the document doesn't exceed 400K. (The old object limit was 64K, so that's another improvement.)

Once uploaded, the resulting object can be mapped directly to DynamoDB's native data types using AWS's SDKs for Java, .Net, Ruby, and JavaScript. The raw data from the document can be preserved and retrieved, or manipulated programmatically as data types.

Amazon has also added four new data types to DynamoDB to further enhance the use of JSON: List, Map, Boolean, and Null. The last two should be familiar to most database users, while Lists resemble JSON arrays (ordered name-value pairs) and Maps are like JSON lists (unordered name-value pairs). Functions are also included to convert certain DynamoDB types to data that can be safely encoded in JSON, such as binary data.

DynamoDB also now features scaling options, a way to make granular adjustments to the amount of read and write capacity for one's DynamoDB tables. Amazon promises it'll soon be adding online indexing for DynamoDB "to adjust your indexes to match your evolving query patterns," although there's no timeframe for when this rolls out.

Most cloud services expand their free functionality with each new round of features, and DynamoDB is no exception. The free tier for the service now lets you store "up to 25GB of data and process up to 200 million requests per month, at up to 25 read capacity units and 25 write capacity units." Amazon's opaque unit-based pricing remains one of its biggest annoyances, but the lower free tier ought to make it easier to determine likely costs for a full-blown deployment of DynamoDB.

Amazon is far from the only cloud service to offer its own quasi-proprietary NoSQL-as-a-service. Back in August, Microsoft introduced its own Azure DocumentDB service. Like DynamoDB, DocumentDB is not discernibly based on an existing product -- such as Couchbase or MongoDB -- but designed to provide many of the same features in a way that's automatically integrated with the existing offerings in its respective cloud.

DocumentDB sports a few features DynamoDB has historically lacked, such as the ability to perform SQL-like transactional operations on data. That said, some projects provide an after-the-fact version of that functionality for DynamoDB, but Microsoft is clearly eyeing how it can compete with Amazon on more than pricing, throughput, and capacity.

Copyright © 2014 IDG Communications, Inc.

How to choose a low-code development platform