WhizLabs had the honor of hosting a webinar with Brian H. Hough who is a Cloud and Blockchain Developer and AWS Community Builder. He has won the Global Hackathon five times and is currently the CTO of Airblock Technologies.
With his extensive experience in the industry, he set out to explain AWS databases with the help of AWS Databases use cases to young freshers and professionals. His agenda of the webinar followed:
- Overview of AWS Databases
- Brief History of Serverless Databases
- Walkthrough of 9 Types of AWS Databases
- Getting Started With Your Own App
Brian says that he is really passionate about data and databases, and he sees “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.
History of Databases in Brief
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 step, the server databases were limited to specific devices that you have to manage, you have to maintain, 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.
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 OS. This is what AWS has created, for example, a whole ecosystem behind serverless technologies – Virtual Private Cloud (VPC) 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 going to be 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.
Walk-through of 9 AWS Databases 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. Brian efficiently taught the attendees how to create a database using MySQL Workbench and gave some amazing tips for beginners. If you wish to learn more, visit xyz.com.
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 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 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 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 helps in 2-3x faster execution than the common blockchain frameworks.
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.
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 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. Brian went on to guide the attendees on how to set up a lab and implement this AWS database use case.
You can watch the recording of the webinar here!
Intrigued to know more about databases and attend such webinars?
#100DaysofCloud is now live on WhizLabs! Participate right away to be a part of the amazing cloud community that they are building. Also, get an opportunity of live interaction with the cloud masters and industry’s best professionals for great training sessions and webinars along with huge rewards for top contestants.
So what are you waiting for? Visit #100DaysOfCloud Challenge to know more and take part in the contest.