DEMO: Creating an Amazon DocumentDB Cluster
DEMO: Creating an Amazon DocumentDB Cluster
1h 2m

This is the second course in a two-part series on database fundamentals for AWS. This course explores four different AWS database services — Amazon Redshift, Amazon QLDB, Amazon DocumentDB, and Amazon Keyspaces — and the differences between them. As well as getting a theoretical understanding of these, you will also watch guided demonstrations from the AWS platform showing you how to use each database service.

If you have any feedback relating to this course, please feel free to share your thoughts with us at The first course in this two-part series covers Amazon RDS, Amazon DynamoDB, Amazon ElastiCache, and Amazon Neptune. If you're looking for more information on these AWS database services, you can find that course here.

Learning Objectives

  • Obtain a solid understanding of the following Amazon database services: Redshift, Quantum Ledger Database (QLDB), DocumentDB, and Keyspaces.
  • Create an Amazon Redshift cluster
  • Create a ledger using Amazon QLDB
  • Create an Amazon DocumentDB cluster
  • Create a keyspace and table in Amazon Keyspaces for Apache Cassandra

Intended Audience

  • Individuals responsible for designing, operating, and optimizing AWS database solutions
  • Anyone preparing to take the AWS Certified Database Specialty exam


To get the most out of this course, you should have a basic understanding of database architectures and the AWS global infrastructure. For more information on this, please see our existing blog post here. You should also have a general understanding of the principles behind different EC2 Instance families.


Hello and welcome to this lecture. We're all going to be showing you how to set up an Amazon document DB database. From the management console, we need to select Amazon DocumentDB from the Database category.

Now as you can see I don't have any clusters set up at the moment and it's very simple to get going to create one. So let me go ahead up to create and the first thing I need to do is to enter a cluster identifier. So this is just a unique cluster name so I'll just call this MyCluster. And then we can select our instance class. So we have a number or different instances down here all different sizes with different number of VCPUs and RAM quantity. I'm just gonna select the smallest. Then we can have the number of instances. Anything from one to 16. So there'll be one primary and the others will be replicas. Let's just leave that as three. 

Then we need to enter a master username and password so we just add that in now. And it gives us an estimated hourly cost for the instance size that we selected. So here we can see that it's 92 cents per hour. If we select down here show advanced settings then we have more configuration options that we can change. So we can select which VPC that we would like it in. We can select the subnet group to define which subnets the instances will be launched in. And also associate any VPC security groups for those instances as well.

If we go down to cluster options we can specify the port and if we have any parameter groups configured we can select parameter group there. Over here you can see parameter groups where you can specify a template of pre-configured options for your database as explained previously. We can look at encryption-at-rest. So we can enable encryption using a default master key, or we can select one of our pre-configured CMKs that we have with KMS. And we can see the account and KMS key ID that's being used. So we can have that enabled or disable the encryption. I'll leave that enabled and use the default master key.

If we look at the backup options we can specify retention period. Anything up to 35 days. And also the backup window as well which is the daily time range in which automated backups will be created. We can also export different logs over to Amazon CloudWatch and this will use the predefined IAM role.

For maintenance, we can specify a specific maintenance window to start at a specific day and time and duration. If you have any preference simply select no preference. Again you can add any tags that you'd like for your cluster and enable deletion protection which prevents the cluster from being accidentally deleted. Once you're happy with your configure options simply click create cluster. As we can see the status is currently creating. That will just take a couple of minutes so I'll come back when that is active.

Okay, you can now see the status is available. We have three instances. If we take a look at the cluster we can see the engine version. We have some details here on how to connect the database and we have our security group here.

If we look at configuration we can see the ARN details of the database. We can see when it was created, the cluster endpoints, and the reader endpoints, and many other relevance of configuration that we defined during the creation.

If we look at monitoring we can see some CloudWatch statistics, but as we've only just created this database, there's not enough data available, and finally any events and tags that have been detected. If we go to instances we can see the three instances that have been created for my cluster. As you can see these instances are still being created even if a cluster has been created. So that will just take a few more minutes.

I've just waited a few minutes and we can see that we now have two of the instances available and it's just creating the last one. So as you can see it's a fairly simple process and follows a lot of the previous databases that we've looked at in its general configuration set up. We created the cluster and also as part of the process, created three different instances. One as a writer which is the primary, and then two reader replicas.


Course Introduction - Amazon Redshift - DEMO: Creating an Amazon Redshift Cluster - Amazon Quantum Ledger Database (QLDB) - DEMO: Creating a Ledger using Amazon QLDB - Amazon DocumentDB (With MongoDB Compatibility) - Amazon Keyspaces (for Apache Cassandra) - DEMO: Creating a Keyspace and Table in Amazon Keyspaces (for Apache Cassandra) - Course Summary

About the Author
Learning Paths

Stuart has been working within the IT industry for two decades covering a huge range of topic areas and technologies, from data center and network infrastructure design, to cloud architecture and implementation.

To date, Stuart has created 150+ courses relating to Cloud reaching over 180,000 students, mostly within the AWS category and with a heavy focus on security and compliance.

Stuart is a member of the AWS Community Builders Program for his contributions towards AWS.

He is AWS certified and accredited in addition to being a published author covering topics across the AWS landscape.

In January 2016 Stuart was awarded ‘Expert of the Year Award 2015’ from Experts Exchange for his knowledge share within cloud services to the community.

Stuart enjoys writing about cloud technologies and you will find many of his articles within our blog pages.