heartin's blog

Amazon Relational Database Service (RDS) Overview

Amazon Relational Database Service (Amazon RDS) is a managed relational database service with a choice of six popular database engines, namely, Amazon Aurora, PostgreSQL, MySQL, MariaDB, Oracle, and Microsoft SQL Server. Amazon RDS is available on several database instance types - optimized for memory, performance or I/O.

Security Groups and EC2

A security group acts as a virtual firewall that controls the traffic for one or more instances. When you launch an instance, you associate one or more security groups with the instance. To decide whether to allow traffic to reach an instance, AWS evaluate all the rules from all the security groups that are associated with the instance.

Security groups are not just limited to EC2, but can be used with other services such as RDS.

 

DynamoDB Stream Records and Stream Operations

A DynamoDB stream contains information about both the previous value and the changed value of the item (as applicable). The stream also includes the change type (INSERT, REMOVE, and MODIFY) and the primary key for the item that changed.

Each stream record represents a single data modification in the DynamoDB table to which the stream belongs. Each stream record is assigned a sequence number, reflecting the order in which the record was published to the stream.

DynamoDB Streams Overview

DynamoDB Streams provides a time-ordered sequence of item-level changes made to data in a table in the last 24 hours.

You can access a stream with a simple API call and update other data stores or take actions based on the changes made to your table.

Developers could also use DynamoDB Streams to keep data warehousing tools, such as Redshift, in sync for real-time analytics.

 

EC2 Instance Type Families

EC2 instances belong to different  instance types families and understanding them will help you chose the right instance for your use case. AWS currently have below categories and instance types.

  1. General Purpose -  T2, M5, M4, M3

  2. Compute Optimized - C5, C4, C3

  3. Memory Optimized - X1e, X1, R4, R3

  4. Accelerated Computing / Graphics - P3, P2, G3, F1

  5. Storage Optimized - H1, I3, D2

 

EC2 instance type descriptions

  1. T2

Amazon EC2 Overview

Amazon Elastic Compute Cloud (EC2) instances are virtual computers on cloud, on which you can install and run applications. 

EC2 has very flexible pricing policies. We can launch servers with applications when needed without upfront commitments, thus eliminating the need to invest in hardware up front and reducing need to forecast. There are also options to reserve servers and get discounts and guarantee.

Authenticating DynamoDB Using Web Identity Providers

Using AssumeRoleWithWebIdentity API you can authenticate users using web identity providers such as Amazon, Google, Facebook or any other open-id compatible identity provider.

 

Following steps need to be completed first:

  1. Go to IAM

  2. Click on Create New Role

  3. Select Role for identity provider access

  4. Select grant access to identity providers

DynamoDB Throughput Provisioning Examples

Throughput and Pricing Example 1 (from Amazon docs)

Your application needs to perform 5 million writes and 5 million eventually consistent reads per day on a DynamoDB table, while storing 8 GB of data. Items are no larger than 1 KB in size. 

Pricing: $0.47 per WCU per month, At $0.09 per RCU per month, $0.25 per GB per month.

Write Capacity Units (WCUs)

= 5 million writes per day

= 57.9 writes per second.

1 WCU can handle 1 write per second, so you need 58 WCUs.

At $0.47 per WCU per month, 58 WCUs costs $27.26 per month.

DynamoDB Throughput Provisioning

DynamoDB throughput provisioning might look bit difficult to understand and hence adding examples.

 

Throughput Provisioning - Basic Concepts

Provisioned Throughput (Write)

  • One write capacity unit (WCU) provides up to one write per second

  • Enough for 2.5 million writes per month               

  • Price as low as  $0.47 per WCU

DynamoDB Pricing Concepts

Pay only for the resources you provision.

You do not allocate memory, CPU, and other system resources. Instead you specify the target utilization rate and minimum to maximum capacity that you want for your table.

DynamoDB handles the provisioning of resources to achieve your target utilization of read and write capacity, and also auto scales your capacity based on usage. 

Optionally, you can directly specify read and write capacity if you prefer to manually manage table throughput.

Pages

Learn Serverless from Serverless Programming Cookbook

Contact

Please first use the contact form or facebook page messaging to connect.

Offline Contact
We currently connect locally for discussions and sessions at Bangalore, India. Please follow us on our facebook page for details.
WhatsApp (Primary): (+91) 7411174113
Phone (Escalations): (+91) 7411174114

Business newsletter

Complete the form below, and we'll send you an e-mail every now and again with all the latest news.

About

CloudMaterials is my blog to share notes and learning materials on Cloud and Data Analytics. My current focus is on Microsoft Azure and Amazon Web Services (AWS).

I like to write and I try to document what I learn to share with others. I believe that knowledge is useless unless you share it; the more you share, the more you learn.

Recent comments

Photo Stream