Database

Storage volume (General Purpose SSD (gp2)), Storage amount (30 GB per month), Nodes (1), Instance Type (db.m4.xlarge 8vcpu + 16Gb RAM), Utilization (On-Demand only) (100 %Utilized/Month), Deployment Option (Multi-AZ), Pricing Model (OnDemand)

PostgreSQL

7,719 USD / y 

SQL Server + license

22,716 USD / y

Oracle + license

16,944 USD / y

RDS price comparison 

  • Oracle seems to be somewhat more "powerful" with some nifty features that SQL Server hasn't quite caught up with yet.

  • Oracle has a much better procedural language. T-SQL feels only half finished compared to PL/SQL.
  • Oracle has a better, more predictable and more well-documented concurrency model.
  • Oracle's documentation is superior in most ways.
  • If you use Oracle you also have to buy TOAD, but the included Manegement Studio will do for SQL Server.
  • Oracle has more cool but hardly necessary features like extensible indexing.
  • SQL Server is MUCH easier to work with, and has much better integration with microsoft products (if you're doing .NET development that is).

  • SQL Server has a much better optimizer. When I used Oracle, I had to hint every query to make sure that it didn't take forever to finish, SQL Server just works. Might have been that the server was badly configured, though, which takes us to the next point
  • SQL server is a lot easier to work with. You need dedicated DBAs to administer Oracle, but pretty much any bozo can keep SQL server running.
  • SQL server integrates better with .NET (like the devil Linq2SQL)
  • PostgresSQL is opensource and free

  • PostgresSQL provides fewer transactions per second than Oracle

  • No license is required and no quick support

  • PostgreSQL is used by businesses of all sizes, though it is more popular with smaller businesses due to its open-source nature

How many databases per RDS instance?

  • RDS for Oracle: 1 database per instance; no limit on number of schemas per database imposed by software
  • RDS for SQL Server: Up to 100 databases per instance see here: Amazon RDS for SQL Server User Guide
  • RDS for PostgreSQL: No limit imposed by software

How many DB instances can I run with Amazon RDS?

By default, customers are allowed to have up to a total of 40 Amazon RDS DB instances. Of those 40, up to 10 can be Oracle or SQL Server DB instances under the "License Included" model. All 40 can be used for Amazon Aurora, MySQL, MariaDB, PostgreSQL, and Oracle under the "BYOL" model.
 

If your application requires more DB instances, you can request additional DB instances via this request form.

Using Single RDS over multiple RDS instances per application

  1. Cheaper
  2. Same hardware for different applications
  3. All apps will be affected in case of RDS downtime / IOPS limit hit
  4. Security constraints: no physical isolation of data
  5. The additional complexity of the network/infrastructure configuration
  6. All applications will share the same DB configuration: replication, backup, multy-az etc. and its not always needed

How to share one RDS instance with multiple apps

  1. Put a database to a private subnet
  2. Setup inbound rules for the DB subnet to allow access from a list of allowed apps subnets
  3. Setup RDS monitoring

deck

By Vladimir Vyshko

deck

  • 417