What is Amazon DynamoDB?

What is Amazon DynamoDB?
(Image credit: Pixabay)

A database is the heart of any application. It’s where a web application stores all of the user information such as credit cards, phone numbers, and home addresses. It’s what an internal business dashboard uses to track all of the reporting functions that show the health of your firm. It’s how a massive e-commerce website tracks all of the product information such as product name, price, features, and SKUs (stock-peeping units). Without a database, there would be no applications -- on the web, on your phone or tablet, or on a computer.

Fortunately, a cloud database can deliver all of the benefits you might expect such as auto-scaling, high reliability, and fast performance. And, a modern database can benefit from advances in technology that make the database much faster and more efficient.

Amazon DynamoDB is a database that operates in the cloud, but it’s also one that operates more efficiently, faster, and with better security than a traditional on-premise database or even a cloud-based database that lacks the high-performance features.

To understand what it is and how it can benefit your company, it’s important to explain some database terms. Amazon DynamoDB is a key-value database, which is a way of describing how the data is stored. Unlike a traditional relational database such as SQL that assigns a descriptor to each field, a key-value database stores data in a nonrelational way using keys. This type of database using something called an “associative array” to store the records.

Because this is a more advanced form of a relational database using key values, it’s known as NoSQL which stands for Not Only SQL and means the database is meant for high performance and is enhanced by the fact that the database using key values.

While this might all sound technical, it’s an important distinction because Amazon DynamoDB is built for speed and performance; it’s intended for those with massive data throughout needs. It’s also a highly efficient way to use a database in an application, especially if the database contains millions of records. To give you an idea of what this means, Amazon DynamoDB can handle 10 trillion requests per day and at peaks of 20 million requests per second.

In practical terms, it means there are few business applications that would stress the database engine or cause issues in terms of reliability, uptime, scaling, or performance. That’s why large companies such as Lyft, Toyota, and Capital One use Amazon DynamoDB as their database engine of choice. When there are millions of concurrent users accessing a credit card database at the same time, or many millions of passengers accessing a ridesharing app, the DynamoDB database can not only keep pace but provide nearly instant results.

Benefits of Amazon DynamoDB

When your staff are free to focus on the actual application and not running the database and the supporting IT infrastructure management, it leads to better applications, services, business dashboards -- and better overall company support and service to end-users.

That’s one of the main advantages to using DynamoDB -- it is particularly efficient and fast, which helps companies that need that level of throughout and performance to meet the demands of customers. There’s no concern about “can the database keep up” because the platform can scale up or down as needed to meet dynamically changing user requests.

Amazon has called this “virtually unlimited throughout” and it means there are no bottlenecks -- in fact, the service is designed to provide a single-digit millisecond response time.

As with most Amazon cloud computing services, DynamoDB is designed to operate without direct involvement from your own staff. That means you don’t have to configure or setup the database itself, manage the related infrastructure such as the servers, networks, or online storage, and you don’t have to maintain the database. Your team doesn’t have to think about whether the data is secure, safe from hackers and data breaches -- that responsibility falls on the cloud provider. There are no requirements related to provisioning or patch the data.

The huge benefit here is that your company is free to focus on the application itself, not how the database is managed and maintained. It means you don’t have to become experts in infrastructure management, server provisioning, storage allocations, or any of the related technologies that are typically needed to make sure the data is available to apps.

An important benefit for Amazon DynamoDB specifically is that it is ready for enterprise-grade applications -- the kind that involves millions of users. In the example mentioned previously related to credit card data, as a company scales up and acquires millions of customers, there are no sudden requirements related to archiving and storing the data even as the database grows to petabyte-scale and no need to radically improve endpoint security.

John Brandon
Contributor

John Brandon has covered gadgets and cars for the past 12 years having published over 12,000 articles and tested nearly 8,000 products. He's nothing if not prolific. Before starting his writing career, he led an Information Design practice at a large consumer electronics retailer in the US. His hobbies include deep sea exploration, complaining about the weather, and engineering a vast multiverse conspiracy.