☁️ What is cloud computing?#
Cloud computing is compute and storage as a service. The term “cloud computing” is typically used to refer to commercial cloud service providers (CSPs) such as Amazon Web Services (AWS), Google Cloud Platform (GCP), and Microsoft Azure (Azure). These cloud service providers all offer a wide range of computing services, only a few of which we will cover today, via a pay-as-you-go payment structure.
image src: https://aws.amazon.com/compliance/data-center/data-centers/
Cloud computing is the on-demand delivery of IT resources over the Internet with pay-as-you-go pricing. Instead of buying, owning, and maintaining physical data centers and servers, you can access technology services, such as computing power, storage, and databases, on an as-needed basis from a cloud provider like Amazon Web Services (AWS). (source)
This tutorial will focus on AWS services and terminology, as AWS is the cloud service provider used for NASA’s Earthdata Cloud (more on that later). But Google Cloud and Microsoft Azure offer the same services. If you’re interested, you can read more about the history of AWS on Wikipedia.
🏋️ Exercise: How many CPUs and how much memory does your laptop have? And how does that compare with CryoCloud?
If you have your laptop available, open the terminal app and use the appropriate commands to determine CPU and memory.
Operating System (OS) |
CPU command |
Memory Command |
---|---|---|
MacOS |
|
|
Linux (cryocloud) |
|
|
Windows |
https://www.top-password.com/blog/find-number-of-cores-in-your-cpu-on-windows-10/ |
Now do the same but on hub.cryointhecloud.com.
Tip: When logged into cryocloud, you can click the icon on the far-right toolbar.
🤔 What did you notice?
It’s possible you found that your machine has more CPU and/or memory than cryocloud!
On CryoCloud, you may have also noticed different numbers for available memory from what you see at the bottom of the jupyterhub interface, where you might see something like Mem: 455.30 / 3798.00 MB
.
🤔 So why do we want to use the cloud instead of our personal computers?#
Because cryocloud has all the dependencies you need.
Because cryocloud is “close” to the data (more on this later).
Because you can leverage more resources (storage, compute, memory) in the cloud.
Having the dependencies, data, and runtime environment in the cloud can simplify reproducible science.
Takeaways
The cloud allows you to access many computing and storage services over the internet. Most cloud services are offered via a “pay as you go” model.
Hubs like CryoCloud provide a virtual environment which simplifies reproducible science. You should use them whenever you can!