👨‍💻💭 The 9 AWS Serverless Databases ALL App Developers & Software Engineers Should Know About

 

Welcome to the Tech Stack Playbook!

Here's all you need to know about the 9 different AWS Databases and their use cases that EVERY app developer and software engineer should know about 👨‍💻💭

Last week on Friday, I was invited by WhizLabs to give a webinar on "AWS Databases Demystified With Their Use Cases" in the launch of their #100DaysOfCloud. In episode 6 of the Tech Stack Playbook podcast, I'm covering an in-depth overview of the 9 AWS serverless databases developers should know about, architecture diagrams of how they work, how they can be used in production, and 2 live demos of DynamoDB and RDS.

Here’s a glance at what you’ll learn in this episode:

00:00 Webinar Primer
06:18 Overview of a Database
07:37 Brief history of serverless Databases
09:36 Walkthrough of 9 AWS Databases and their use cases + how to get started with your own apps
30:48 How to set up a DynamoDB table and query your data
36:02 How to spin up an RDS instance in a VPC and manage/update this database with MySQL Workbench
1:03:12 Q&A + Quiz Time!
1:18:19 Conclusion

Code with me on YouTube:

Listen on Spotify:

The Tech Stack:

Let’s review the tech stack that we’ll be using for the project:

RDS
DynamoDB
Elasticache
Neptune
Redshift
Quantum Ledger Database (QLDB)
Managed Blockchain
DocumentDB
Keyspaces

Python: used to write our serverless Lambda function in AWS when connecting to RDS to update our database

MySQL Workbench: a GUI to connect to RDS using MySQL

The Blog Content:

Brief History of Serverless Databases

I see data as the energy flowing through a home while databases are the electrical grid system.

So specifically, data can be the users’ information that could be a username, a password, song, title, author, anything. You can create role-based permissions and share certain types of data with specific groups. Data is the mechanism powering user interactions. The databases define what the users can do in their accounts and in other accounts within the system. And then, data can also determine the rules supporting your software system, and this can be back-end logic.

This can explain how the system shares data with users, how they get recommendations, for example on a platform like Netflix. See how you get recommendations for the movies you watch! So when we think about front-end and back-end data, now everything is moving towards full-stack.

This trend has been visible all throughout the history of databases, as you will see here:

1D: Physical Databases

The history of databases goes way back to the abacus. That’s a physical database where the limitation was that you’re limited to the data that the system itself can process.

2D: Server Databases

In the next data dimension, we see that server databases are limited to specific devices that you have to manage, you have to maintain, and you have to patch it to provide updates. There’s a lot of effort that has to be put into it, so it is cost-intensive, requires skilled professionals at both hardware and software, and can take time away from the important development work you probably need to be doing.

3D: Serverless Databases

This is when we move towards a three-dimensional space of serverless databases. Here, the users can scale their own databases from an operating system and an internet connection. This is the ecosystem AWS has created for developers, for example, a whole ecosystem behind serverless technologies – such as, Virtual Private Cloud (VPC) and Elastic Cloud Compute (EC2).

Now you are able to compute network servers, but you don’t have to manage them because they’re managed by other large facilities, managing a ton of different technologies and servers that you’re using every day. So AWS databases can help you manage and permit your own servers, you can now borrow compute from someone else.

4D: Data-driven Development

The future is moving rapidly towards prioritizing data-driven development, where it’ll not just be enough to make an app or software, but you will also have to create a data model and manage the data amongst your users.

Artificial intelligence and machine learning technologies like AWS' SageMaker, DeepComposer, and more provide next generation capacities to turn data into predictive engines. This allows software to anticipate patterns, predict risks or irregularities, and "see" into the future based on the data flowing into the system.

A Walkthrough of 9 AWS Databases & Their Use Cases

Relational Database Service (RDS)

Relational Database Service (RDS) is quick to create the framework for a relational AWS database, using a number of different engines. The available DB engines are Aurora from Amazon, PostgreSQL, MySQL, MariaDB, Oracle, and SQL Server. They’re extremely cost-efficient and highly scalable while maintaining top security. So they allow you to offload read traffic, create and connect to the database within seconds. You can run RDS with a VPC, serverless. In the lab at the end of the video, I'll show you how to create a database using MySQL Workbench and show what you can use it for to update the database and connect to it.

DynamoDB

DynamoDB is one of the most popular AWS database use cases that is a really fast, flexible, no SQL database. It lets you use a primary key to index items and have unique identifiers for all the elements in the database. It offers high performance and availability with single-digit latency. Top companies like Lyft, Airbnb, Capital One, Samsung, and Toyota use this AWS database. DynamoDB is accurately designed for application developers who can scale up and down based on their need to create interactive websites, mobile apps, microservices, etc.

Elasticache

Elasticache is used for deploying and scaling in-memory data stores. This can happen serverless, using caching rather than just normal, non-performant loading. Caching is really helpful for improving performance and response time – operations happening under a millisecond. As an AWS database use case, it offers fully managed Redis and Memcached. As this AWS database is an in-memory data store, it provides low latency and high elasticity for companies like Airbnb, Tinder, or The Pokemon Company.

Neptune

Neptune is a fully managed service for graph databases. Graph databases are interrelations between users and the data that users generate for our system. This AWS database simply offers the potential to map how users interact, work together, or maybe share information amongst each other. This building of knowledge graphs and identity graphs is very similar to the operating model of Netflix. Let’s say that you’re watching a lot of documentaries, maybe about history, then you’re going to be recommended more documentaries about history, because other people who also watch historical documentaries, might like this specific segment. So using this AWS database use case, you can also create something like identity graphs and start doing pattern detection. Apache Tinkerpop and Gremlin are two services that can work with Neptune, and help you build a graph database architecture.

Redshift

Redshift is a relational database management system that is lightning fast and can optimize data at a high scale. With this AWB database, you can implement data encryption and compression as well. Redshift leverages three times better price-performance with high-end AWS designed-hardware. With the help of AWS Nitro Systems, data compression can be accelerated. It is the most widely used cloud data warehouse for combining exabytes of semi-structured and structured data.

Quantum Ledger Database (QLDB)

One of the most important AWS databases, QLDB is a fully managed serverless database. It has the potential to automatically scale up to support the user’s demands. As per your own terms, you can also monitor the metrics. It uses PartiQL, a SQL-compatible query language that provides 2-3x faster execution than the common blockchain frameworks.

Managed Blockchain

In a managed blockchain, data is stored in a fully managed ledger database but it is not centralized and is distributed among the series of nodes. Hyperledger Fabric or Ethereum makes it easier to join public networks or create and manage private networks. Adding new nodes and members is very easy with this AWS database, while it is highly scalable and secure. The security of transactions is maintained through traceability across the blockchain network as it stores changelogs for the entire history of events.

DocumentDB

If you’re interested in leveraging MongoDB for high scalability and availability, then DocumentDB is a great AWS database use case for that. It uses JSON-like data to process millions of requests per second and offers 15 low latency read replicas over three availability zones, within seconds or minutes. And you can scale up very quickly and also have very high availability, up to 99.99%. For instance, you have a MongoDB shell setup and it connects to the DocumentDB cluster with a few instances that are happening within a virtual private cloud. And they’re all happening within an AWS region. This is highly professional and will allow you to leverage MongoDB services, right within AWS.

Keyspaces

Keyspaces is a serverless database with Apache Cassandra, which is a distributed, wide-column store, no SQL database management system. This AWS database offers a management system for huge amounts of data with no single point of failure. So you never have to worry about servers anymore, or provisioning or patching, that you are usually concerned with while managing servers in-house. Now you can build apps with low latency that can process data incredibly fast. And you can run Cassandra app codes right from AWS, which is almost like a talk-to-type skill.

Subscribe to the Tech Stack Playbook™️ for more content:

Let me know if you found this post helpful! And if you haven't yet, make sure to check out these free resources below:

Listen on Spotify:

Links

Let’s Connect Online:

Learn How to Code:

  • 🌴 Team Treehouse — get a FREE MONTH with my affiliate referral code: http://referrals.trhou.se/brianhough2

  • 👨‍💻 Codecademy — get a FREE MONTH of a Pro membership with my affiliate referral code: http://ssqt.co/mQgVi7z

  • ☁️ BitDegree — get 60% OFF of their AWS bootcamp program with affiliate referral code ‘BRIAN60’: https://www.bitdegree.org/aws-training/enterprise

 

Hey There!

BHH-Professional-Tech.jpg

I’m Brian — a brand strategist, software engineer, and the creator of the Tech Stack Playbook — your guide to apps, software, and tech (but in a fun way I promise)!

Let’s get social:

👨‍💻💭 The 9 AWS Serverless Databases ALL App Developers & Software Engineers Should Know About

Here's all you need to know about the 9 different AWS Databases and their use cases that EVERY app developer and software engineer should know about 👨‍💻💭 Read to learn more…

👨‍💻 Let’s Build a Tic Tac Toe Game with Next.js, Serverless & AWS!

Let’s Build a Tic Tac Toe Game with Next.js, Serverless & AWS! Who doesn’t love a good game of tic tac toe? Have you ever wanted to create your own digital version? Well now’s your chance…

👨‍💻 Learn How to Code, Get Started in Tech, and Enter the Matrix

Welcome to The Tech Stack Playbook — your guide to apps, software, and tech (but in a fun way I promise!) I'm especially excited to kick off this first episode because this channel is inspired by so…

 

Thanks for reading!

 

Want to Build a Standout Audience Online?

Looking for the top secret strategies to social media growth, scaling your personal and business brands, and your sales globally?

JOIN THE NEXT FREE TRAINING BELOW

REGISTER HERE

Want to Launch Apps on the Web with the AWS Ecosystem?

Certifications are one of the first steps to full stack development. Snag my FREE playbook on the needed skills for the AWS Cloud Practitioner exam.

10 STEPS TO LAUNCH HIGH TECH APPS

DOWNLOAD NOW
 

Tags:

Previous
Previous

How to Get Started with Low-Code / No-Code with Wilián Iralzabal (Zabal Media)

Next
Next

String Theory, Consciousness, and the Gate of Choice with Pejman (PJ) Ghadimi (@icreatemillionaires) — Tech Stack Playbook