AWS Devops : Database

AWS DEVOPS : Cheat Sheet

Dynamo DB

  • Two important thing : partition key and sort key
  • The partition key[unique] and sort key are required values
  • The partition key is part of the table’s primary key. It is a hash value that is used to retrieve items from your table and allocate data across hosts for scalability and availability. : Hash key
  • You can use a sort key as the second part of a table’s primary key. The sort key allows you to sort or search among all items sharing the same partition key.
  • Secondary Index: Use secondary indexes to perform queries on attributes that are not part of your table’s primary key. Span all over the partition
  • Local Secondary Index : A local secondary index has the same partition key as its base table, but it has a different sort key. The total size of indexed items for any one partition key value can’t exceed 10 GB. limited to base table partition
  • Global Secondry Index : Create global secondary indexes to query attributes outside the primary key of your original table. you can enable different queries than your main table can support
  • DAX
  • Table Class : standard, standard -ia
  • Capacity: on demand or provisioned
  • Encryption: By Default, AWS KMS, 
  • TTL: Automatically delete expired items from a table.
  • Export to S3, Kinesis Data Streams
  • Dynamo DB Stream
  • To export data to Amazon S3, you must enable PITR for this table.
  • Import from S3
  • Global Table :
  • Monitor through CW
  • With point-in-time recovery, you can restore a table to any point in time during the last 35 days. [same as for rds]
  • There is no read replica in the dynamo db table
  • Keep the number of indexes to a minimum for cost
  • Transactional operations provide atomicity, consistency, isolation, and durability (ACID) guarantees only within the AWS Region where the write is made originally. Transactions are not supported across Regions in global tables.
  • Dynamo DB integrates with
    • Cognito
    • Redshift
    • Apache Hive
    • S3
  • Global tables build on the global Amazon DynamoDB footprint to provide you with a fully managed, multi-Region, and multi-active database that delivers fast, local, read and write performance for massively scaled, global applications. Global tables replicate your DynamoDB tables automatically across your choice of AWS Regions.
  • Avialbiliity : 99.99% 

DAX : DynamoDB Accelerator

  • DAX is a DynamoDB-compatible caching service that enables you to benefit from fast in-memory performance for demanding applications. 
  • A DAX cluster consists of exactly one primary node, and between zero and ten read replica nodes.
  • For read-heavy or bursty workloads, DAX provides increased throughput and potential operational cost savings by reducing the need to overprovision read capacity units. This is especially beneficial for applications that require repeated reads for individual keys.

DAX is not ideal for the following types of applications:

  • Applications that require strongly consistent reads (or that cannot tolerate eventually consistent reads).
  • Applications that do not require microsecond response times for reads, or that do not need to offload repeated read activity from underlying tables.
  • Applications that are write-intensive, or that do not perform much read activity.
  • Applications that are already using a different caching solution with DynamoDB, and are using their own client-side logic for working with that caching solution.

RDS :

  • Cross regions read replica
  • Cross-region auto-mated backup
  • Export to S3
  • Queue depth matric is good to monitor the IOPS waiting queue
  • A DB parameter group contains engine configuration values that can be applied to one or more DB instances of the same instance type, supports static and dynamic parameter groups
  • Some DB engines offer tools or optional features that simplify managing the databases and making the best use of data.
  •  
  • By using Amazon RDS Proxy, you can allow your applications to pool and share database connections to improve their ability to scale. RDS Proxy makes applications more resilient to database failures by automatically connecting to a standby DB instance while preserving application connections. 
  • AWS Lambda functions can also be good candidates for using a proxy. These functions make frequent short database connections that benefit from connection pooling offered by RDS Proxy
  • RDS Proxy is highly available and deployed over multiple Availability Zones (AZs).

RED SHIFT

  • Serverless as well as managed
  • User data is stored in one or more databases on the compute nodes. Your SQL client communicates with the leader node, which in turn coordinates running queries with the compute nodes
  • Amazon Redshift is a relational database management system (RDBMS) and is compatible with other RDBMS applications
  • Use Amazon Redshift Spectrum to query data in Amazon S3 files without having to load the data into Amazon Redshift tables
  • Join data from relational databases, such as Amazon Relational Database Service (Amazon RDS) and Amazon Aurora, or Amazon S3, with data in your Amazon Redshift database using a federated query.
  • You can deploy your applications across multiple Availability Zones in the same Region for fault tolerance and low latency
  • Audit logging can be enabled
AWS DEVOPS : Cheat Sheet

Leave a Reply

Your email address will not be published. Required fields are marked *