AWS Database Blog

Validating database objects after migration using AWS SCT and AWS DMS

Database migration can be a complicated task. It presents all the challenges of changing your software platform, understanding source data complexity, data loss checks, thoroughly testing existing functionality, comparing application performance, and validating your data. AWS provides several tools and services that provide a pre-migration checklist and migration assessments. You can use the AWS Schema […]

Read More

Using SPARQL explain to understand query execution in Amazon Neptune

Customers continue to want greater visibility and control over the services they use within AWS. When it comes to our database services, customer requests typically revolve around providing greater insights into the query optimization and processing within a given database. Database developers and administrators are mostly already familiar with the idea and use of database […]

Read More

Reducing Aurora PostgreSQL storage I/O costs

Cost reduction is one of the biggest drivers for many IT departments to explore migration of on-premises workloads to the cloud. This post shares experiences in cost management, with a focus on Amazon Aurora PostgreSQL tuning. History I recently had the privilege of leading the implementation of our Auto Telematics Application in AWS. To provide […]

Read More

IAM role-based authentication to Amazon Aurora from serverless applications

Storing user names and passwords directly in applications is not a best practice. Saving credentials as plaintext should never occur in a secure application. As a solution, AWS Identity and Access Management (IAM) policies can assign permissions that determine who is allowed to manage Amazon Aurora resources. For example, you can use IAM to determine […]

Read More

Building an AWS CloudFormation custom resource to manage Amazon RDS point-in-time recovery

Amazon RDS makes it easy to set up, operate, and scale a relational database in the cloud. It provides cost-efficient and resizable capacity while automating time-consuming administration tasks such as hardware provisioning, database setup, patching, and backups. It frees you to focus on your business logic and application features, leaving the heavy lifting to AWS. […]

Read More

Optimizing and tuning queries in Amazon RDS PostgreSQL based on native and external tools

PostgreSQL is one of the most popular open-source relational database systems. The product of more than 30 years of development work, PostgreSQL has proven to be a highly reliable and robust database that can handle a large number of complicated data workloads. PostgreSQL is considered to be the primary open-source database choice when migrating from […]

Read More

Making coordinated changes to multiple items with Amazon DynamoDB transactions

The use of NoSQL databases has increased significantly in recent years as more and more organizations see NoSQL databases as solutions that free them from the constraints of a relational database management system (RDBMS). While the flexibility, agility, and performance of NoSQL databases are the main benefits triggering the shift towards them, the popularity of […]

Read More

Amazon Neptune now supports TinkerPop 3.4 features

Amazon Neptune now supports the Apache TinkerPop 3.4.1 release. In this post, you will find examples of new features in the Gremlin query and traversal language such as text predicates, changes to valueMap, nested repeat steps, named repeat steps, non-numerical comparisons, and changes to the order step. It is worth pointing out that TinkerPop 3.4 […]

Read More

Analyzing the impact of Python version on Amazon DynamoDB scan performance

Amazon DynamoDB is a NoSQL database that allows for a flexible schema. This means that items in the same table may differ from each other in terms of what attributes are present for each item. In an earlier AWS Blog post, we looked at the performance impact of attribute counts per item. Recently, when helping […]

Read More

Simulating Amazon DynamoDB unique constraints using transactions

Most relational database systems—and some non-relational database systems—have a construct known as a unique key or a unique constraint. This feature ensures that all values in a column or field are unique across rows. For example, if you have a User table, you might have a UUID as a primary key that uniquely identifies each […]

Read More