AWS Database Services Fundamentals

A database is a collection of information that is organized in a way that can be easily accessed, managed, and updated. Computer databases often contain record sets or data files, which contain information about sales transactions or interactions with specific customers. Databases are important back-end systems used to store, manage, update, and analyze data for all types of applications, from small back-office systems to consumer and mobile web applications on a global scale. Most databases use structured query language (SQL) to write and query data.

Databases have evolved dramatically since their inception in the early 1960s. Navigation databases, such as the hierarchical database (which was based on a tree-like model and only allowed a one-to-many relationship), and the network database (a more flexible model that allowed multiple relationships), were the original systems used to store and manipulate data. Although simple, these early systems were inflexible. In the 1980s, relational databases became popular, followed by object-oriented databases in the 1990s. More recently, NoSQL databases emergedin response to the growth of the internet and the need for greater speed and processing of unstructured data. Today, the cloud database and separate databases are opening up new ways as to how to collect, store, manage and use the data.

According to their type, the databases can be classified as relational and non-relational databases. Relational databases became popular in the eighties, the elements of a relational database are organized as a set of tables with columns and rows. Relational database technology provides the most efficient and flexible way to access structured information. NoSQL or non-relational databases allow unstructured and semi-structured data to be stored and manipulated, unlike a relational database, which defines how all the data inserted into the database should be composed. NoSQL databases became popular as web applications became more common and complex.

The databases can also be classified according to their type of workload into operational databases (OLTP - Online Transaction Processing) or analytical databases (OLAP - Online Analytical Processing). OLTP systems are databases oriented to transaction processing. A transaction generates an atomic process (which must be validated with a commit, or invalidated with a rollback), and that may involve data insertion, modification and deletion operations. The transactional process is typical of operational databases. OLAP systems are databases oriented to analytical processing. This analysis usually involves, generally, the reading of large amounts of data to get to extract some type of useful information that is helpful for decision making, such as sales trends, consumer behavior patterns, elaboration of complex reports, etc.

AWS offers a wide variety of custom databases for your specific application use cases. Our fully managed database services include relational databases for transactional applications, non-relational databases for Internet-scale applications, a data warehouse for analytics, an in-memory database for caching and workloads in real time, and a graphs database to create applications with strongly connected data. With AWS Database Migration Service, migrating existing databases to AWS is easy and cost-effective.

AWS Databases were designed from the ground up to support the scale, performance, and availability demands of modern globally distributed applications with microservices architectures.

AWS offers 15 database engines and continues to grow, including relational and non-relational types for every application need. The types of AWS databases are described below:

Database type

Database type Description Use cases AWS service
Relational Relational databases store data with predefined schemas and relationships between them. These databases are designed to support ACID transactions, and maintain referential integrity and strong data consistency. Traditional applications, ERP, CRM, e-commerce

Amazon Aurora

Amazon RDS

Amazon Redshift

Key-value Key-value databases are optimized for common access patterns, typically to store and retrieve large volumes of data. These databases deliver quick response times, even in extreme volumes of concurrent requests. High-traffic web apps, e-commerce systems, gaming applications

Amazon DynamoDB

In-memory In-memory databases are used for applications that require real-time access to data. By storing data directly in memory, these databases deliver microsecond latency to applications for whom millisecond latency is not enough. Caching, session management, gaming leaderboards, geospatial applications

Amazon ElastiCache for Memcached

Amazon ElastiCache for Redis

Amazon MemoryDB for Redis

Document A document database is designed to store semistructured data as JSON-like documents. These databases help developers build and update applications quickly. Content management, catalogs, user profiles

Amazon DocumentDB (with MongoDB compatibility)

Wide column A wide column store is a type of NoSQL database. It uses tables, rows, and columns, but unlike a relational database, the names and format of the columns can vary from row to row in the same table. High scale industrial apps for equipment maintenance, fleet management, and route optimization

Amazon Keyspaces (for Apache Cassandra)

Graph Graph databases are for applications that need to navigate and query millions of relationships between highly connected graph datasets with millisecond latency at large scale. Fraud detection, social networking, recommendation engines

Amazon Neptune

Time series Time-series databases efficiently collect, synthesize, and derive insights from data that changes over time and with queries spanning time intervals. IoT applications, DevOps, industrial telemetry

Amazon Timestream

Ledger Systems of record, supply chain, registrations, banking transactions Systems of record, supply chain, registrations, banking transactions

Amazon QLDB

 

Strategy for selecting a database

The optimal database solution for a system varies depending on the requirements for availability, consistency, partition tolerance, latency, durability, scalability, and query capacity. Many systems use different database solutions for various subsystems and allow different features to improve performance. Selecting the wrong database features and solutions can result in lower performance efficiencies. 

When selecting a database service, consider the dimensions and choose the one that best suits each of your requirements and components of your application and architecture.

AWS Leader in Gartner's New Magic Quadrant

Industry analyst firm Gartner has published a new report, the Magic Quadrant for Cloud Database Management Systems , naming AWS as a Leader and placing AWS highest among the 16 vendors evaluated for “Ability to Execute.” This report is Gartner’s first database and analytics report exclusively evaluating cloud-based services, doubling down on their assertion in a June 2019 report that The Future of the DBMS Market is Cloud. More info here.

AWS Databases free tier

The AWS Free Tier offers users an opportunity to explore products for free, with offers including products that are always free, free for 12 months, and short-term free trials. AWS offers the widest selection of purpose-built databases, allowing you to save, grow, and innovate faster.

Build database solutions using these product offerings of the AWS Free Tier.

To obtain updated information on AWS database services, I invite you to follow their page "AWS Databases & Analytics” on Linkedin.

Later, I will delve into each of the AWS database services. I hope this information is useful !!

Share:

Follow us: