My Database is in the Cloud

This week I dove deep into cloud hosted MySQL databases. For our project, we decided we wanted to use a MySQL database and I thought it would be as simple as setting up one hosted by OSU. After searching through the tools available to us, I found that this wasn’t readily available. So, I looked to the clouds for an answer! That’s Google, Amazon, and Azure clouds I mean.

All three popular cloud service options have free options for you to use, though they come in different packages. Each option has an always free tier, but none of these include their MySQL database option. Luckily for us, each offered a free trial period that we could use! One of my team members had some experience with Google Cloud Services, so we went with that. Below I will lay out the details of each though so you can make the best decision for you! (Hint: I don’t think Google is the best choice for a trial period).

First we will start with Google Cloud Platform! Google Cloud Platform is used for a whole array of Data Science needs, from Data Lakes to setting up Machine Learning compute instances! The way Google works is you pay for a compute or storage instance based on your amount of usage. Their free trial period offers user $300 in credits to use for 90 days. So setting up a small machine for a MySQL database will easily give you 90 days of database access if you only have a few connections. Currently we are 5 days in and have used $2.56 of our allotted credits. This will get us through the class, but we will need to move our database elsewhere if we want to keep our web app up. The major draw to GCP MySQL database is that you get to pick your size. The more performance/storage you need, the quicker you will use up your allotted credits though.

A far better option for a school project seems to be Amazon Web Services. Their Relational Database Service (RDS) is free tier eligible. While it is capped at 20GB of storage, you get to use its services for 12 months! This is long enough after capstone that you can show off your project in full working order while you apply for positions. You can follow this documentation to easily set up your database with AWS: https://aws.amazon.com/getting-started/hands-on/create-mysql-db/.

The final option that I investigated was Azure. Azure is Microsoft’s cloud service and it’s offers are very similar to what AWS offers. Due to the fact that our team is using Azure to host our web app, I wanted to see if we could keep it all on the same platform. The only issue that kept me from pursuing Azure was the lack of clear documentation. While Microsoft has been amazing with documentation over the years, Azure was not as easily understood at a glance for me. This might just be due to the content community usually making tutorials for Google/Amazon.

No matter what option you choose, setting up a cloud based MySQL server is a great exercise! Knowing some database management skills is critical to landing a great position in the web development world! If you need more convincing to set up your own database, give this great post by Derek Sivers a read: https://sive.rs/dbt

As always, thank you for reading!

Print Friendly, PDF & Email

Leave a Reply

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