Thursday, July 19, 2018

AWS for Developers and Application Architects - Part 3 - AWS Proprietary Databases


I am going to start couple of blogs to cover AWS(Amazon Web Services) concepts from developer point of view. Here is part 3, Refer Part 2 here. More to come

In my previous blog I mentioned about AWS DB offerings. Here I'm going to introduce Amazon's own Databases


Amazon Aurora
Aurora is fully managed by Amazon Relational Database Service (RDS), which automates time-consuming administration tasks like hardware provisioning, database setup, patching, and backup. Aurora is a MySQL and PostgreSQL compatible relational database.

Aurora is up to five times faster than standard MySQL databases and three times faster than standard PostgreSQL database

Aurora automatically and continuously monitors and backs up your database to Amazon S3, enabling granular point-in-time recovery. You can monitor database performance using Amazon CloudWatchEnhanced Monitoring, or Performance Insights.

Your existing databases can be migrated to Aurora, with the help of Amazon provided tools and options.  AWS Database Migration Service (DMS) is useful to accelerate your migration from the most common commercial databases.

Recently AWS has added backtrack feature for Aurora, marketing it as 'The undo button for your database'


Amazon DynamoDB
DynamoDB is fully managed nonrelational serverless database that automatically scales throughput up or down, and continuously backs up your data for protection. DynamoDB gives your globally distributed applications fast access to local data by replicating tables across multiple AWS Regions.

Use case include serverless web application, 
mobile, gaming, ad tech, IoT, and many other applications that need low-latency data access.

Amazon SimpleDB

SimpleDB is NoSQL offering from AWS. 
SimpleDB's costing is also very low. However, design can impact your costing e.g. Data transferred between Amazon SimpleDB and other Amazon Web Services within the same Region is free of charge. Otherwise you will be charged.

Behind the scenes, Amazon SimpleDB creates and manages multiple geographically distributed replicas of your data automatically to enable high availability and data durability.

Tuesday, July 17, 2018

AWS for Developers and Application Archiects - Part 2 - AWS Databases


I am going to start couple of blogs to cover AWS(Amazon Web Services) concepts from developer point of view. Here is part 2, Refer Part 1 here. More to come

Amazon Databases is important part and this concept is useful to every user of AWS Cloud. 

Use Case: Managed popular Relational database i.e. Platform as a Service

If you want to have Relational Database with minimal administration, you can choose AWS RDS offering. Currently AWS offers six popular database engines Amazon Aurora, PostgreSQL, MySQL, MariaDB, Oracle, and Microsoft SQL Server

Use Case: Scalable No-SQL Database
Amazon DynamoDB is best suited for this use case 

Use Case: Smaller No-SQL Database

Amazon SimpleDB, a fully managed service that provides a schema less database, reliability

Use Case: Self Managed Databases
This is an open world where one can use AMIs of EC2 and EBS and get full control over instances. Benefit of this is that you have full controls and some host(say Windows OS) features are also available in DB (say in Sql Server) which otherwise disable in DBaaS. major cons would be that you have to procure license of Database company(though Amazon offers to buy from AWS as well, but you have to pay)


AWS S3 storage is also used for Data Storage and is very useful feature of AWS offerings. However, I'm planning to write about it in detail in Storage blog.