What is our primary use case?
The primary use case is when you have to host your application on the Amazon cloud and your application uses database. Amazon RDS supports the following database engines: Amazon Aurora, PostgreSQL, MySQL, MariaDB, Oracle Database, and SQL Server database. Amazon provides AWS Database Migration Service to migrate your existing databases to the Amazon cloud. It automates many aspects of database management viz hardware provisioning, database set up, database patching, and backups, which frees your database administrator to focus on important tasks. It also saves on the DB licencing costs.
How has it helped my organization?
It makes it easy to administer the database. It helps to scale your database by providing Read Replicas, which reduce transaction time. It is highly available and durable which helps in disaster recovery and management.
It is also secure. You can build your own VPC and host the database inside it, which will produce robust security. You still need to follow the principles of security as highlighted by Amazon.
What is most valuable?
Most useful is its availability to support multiple databases, such as Aurora, MySQL, Oracle, SQL Server, MariaDB, and PostgresSQL. Your application can use multiple databases as required. Combine that with the Automated CI/CD tools, this makes it easy to implement the microservices architecture, which is the need of the hour for web based applications. The capability provided by the RDS to automate a portion of the RDBMS tasks, such as backups and performance tunings for multiple database engines, helps to save on DBA time and cost.
What needs improvement?
The Amazon RDS engine could provide features for additional databases, such as Db2. It could also provide support for other databases, such as NoSQL databases, DynamoDB, and Apache Cassandra. They could all stay under one hood.
Another improvement that Amazon could do is to market their product so that more customers can use it. With Microsoft having its own cloud Azure hosting SQL Server databases and Oracle coming up with its own cloud, there appears to be more competition. As more customers move to Amazon cloud, it will increase the utilization of the RDS, then more customers will be able to harness the power of Amazon Relational Database Service (RDS).
For how long have I used the solution?
I have been using this solution since 2015 on my consulting projects with a variety of clients.
What do I think about the stability of the solution?
This Solution is very stable, as many customers have witnessed. Responsibility to set up the Amazon VPC, servers, and RDS does take work. This requires a solid AWS (infrastructure): Administrators and networking team. They need to work with the AWS team, following the stringent security guidelines that will help to build stability for the solution.
What do I think about the scalability of the solution?
Amazon Web Services is built for scalability. RDS is designed with scalability in mind.
How are customer service and technical support?
It is available. You need to negotiate and engage their services.
Which solution did I use previously and why did I switch?
Earlier, we were using traditional on-prem databases. The need to switch to Amazon RDS has been due to a variety of factors. One such factor is the need to move the existing applications in our data center with variable demand utilization and pre-installed servers and databases to applications migrated to Amazon Web Services cloud. Along with migrating applications on servers, we also need to migrate databases. With the added power of supporting multiple database engines as well as automating many functions of DBAs and releasing the DBAs to focus on essential tasks, this has made it easier to switch to Amazon RDS.
How was the initial setup?
The initial setup will be complex. You and your team need to understand the complexities of setting up IAM, security groups, AMIs, VPCs, autoscaling/loadbalancing, and RDS, then plan for multiple availability zones for disaster and recovery. You also need to set up an infrastructure admin and infrastructure support team who will work closely with the AWS team. You do not want your entire development to get involved with setting up the infrastructure. Your administrators and infrastructure team need to set it up, then guide the development team on how to utilize the infrastructure.
What about the implementation team?
The initial vendor team could help to set up the infrastructure, team organization, etc. Then, your in-house team can carry out the administration and support work as well as the day-to-day tasks, such as providing access, helping developers make changes, uploading to the infrastructure, performing the migration, deployment, etc. The vendor team needs to have certified, experienced consultants to set up the infrastructure.
Work with Amazon Pre-Sales team and have them present their products to your organization. They will help you to arrive at building a business case, PoCs, SLAs, contracts, etc. You will also need to set up a product support team along with the migration, deployment, and core AWS Infrastructure Administrator teams who will be essential to the success of the project.
What was our ROI?
This is where the product stands apart. You do not need to set up thousands of servers, hundreds of database, and hundreds of DBAs. You need to set up a minimal infrastructure. There is no need to pay upfront the cost of an entire data center. It is pay as-you-go. Therefore, you realize the benefits and scale up/down as needed. Amazon will provide the required capacity. This will help you to realize the ROI quickly, which helps you to keep on growing.
This has helped reduce the cost at the same time increasing the agility of the organization. Some thing which would have costed millions of dollars and nine DBAs could easily be replaced by Amazon RDS.
What's my experience with pricing, setup cost, and licensing?
By using a combination of Reserve Instances and On-Demand pricing, you can reduce the cost.
Which other solutions did I evaluate?
The main reason to migrate to the cloud comes from moving the underutilized. Variable demand applications moving to the cloud benefit from a cost savings as well as when they move from data center maintenance to building the core business capabilities. The application migration and database migration to AWS also provides an added advantage.
What other advice do I have?
For new/existing customers building new products, such as Ola, Uber, or Swiggy, instead of building their own data center first and launching the product which involves massive costs, AWS offers a better quality solution if they are unsure about whether their product will succeed in the market. They can build the product, start making money, and utilize the pay-as-you-go model. Then, they can scale the product depending on demand utilization. That appears to be the best business case for Amazon Web Services.
Which deployment model are you using for this solution?
If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?
Amazon Web Services (AWS)