One of the client projects that I've been working on is a mobile app for first responders. As emergencies come into a 911 dispatch center, push notifications are sent to the mobile devices of first responders. The app provides everything that the responders need to get to and prepare for the emergency (maps, information about the buildings involved, and so on).
I originally developed a prototype of the system and wrapped it up in early November. For the prototype, I used Airtable as the backend database. With Airtable's ease-of-use and custom API, I was able to focus on the app without having to spend a lot of time and energy on the database and API.
Moving to Production - And to Amazon Aurora
This week, I started development of the production version of the system. One of the first tasks is to move the system's backend database from Airtable to an enterprise-class platform.
For that, we've chosen Amazon's Aurora. Aurora is a MySQL-compatible, relational database engine designed specifically for the cloud. It's a relatively new offering from Amazon, and it's one of several database engines that are now available through Amazon RDS (Relational Database Service).
We chose Aurora for several reasons:
• High performance, MySQL-compatible database built for the cloud.
• Up to 5 times the throughput, and 10 times the capacity, standard MySQL.
• Less than 1/10 the cost of other commercial databases.
• 6-way replication across three availability zones.
• Scales to 5,000 concurrent sessions and 15 low-latency read replicas.
• 64TB of auto-scaling storage.
Pricing for a db.r3.large Aurora instance (the entry-level configuration) is $0.29 / hour. If you commit to a 1-year term for a db.r3.large reserved instance, the pricing drops to around $0.19 / hour (a savings of 34%). Pricing improves based on the length of the commitment that you make and any upfront payment that you make.
Amazon has made implementing Aurora extremely easy. I was able to spin up a new Aurora instance this evening in less than 10 minutes.
Integrating with Aurora has been easy as well. I repurposed some PHP code that I had worked on a few months ago, and was to get a text Web app to hit the Aurora database in no time at all. I was also able to easily connect to the database via a Xojo-based desktop app. From a development standpoint, Aurora is just another MySQL database server.
If you're looking for an affordable, enterprise-class, relational database engine - and one that is in the cloud - then be sure to check out Aurora.