Cloud computing has gone from a technology limited to big billion-dollar corporations to one that is accessible to anyone. Most developers probably have forgotten about an EC2 instance running an AWS occasionally because, at the end of the day, it might only be 10$ a month to keep a Linux box going.
This accessibility provides an opportunity for small and medium-size businesses that want to have access to the same level of technology as larger corporations have for a fraction of the cost.
These technologies can help your business scale and take advantage of technologies that used to require multiple system admins and developers to set up. Now all you need to do is access a management console, click a few buttons and you’re there.
Alright, it’s not that simple.
If it were, then everybody would be doing it.
But the first step is knowing what is possible.
So the purpose of this article is to cover some basic concepts that you as a business owner should understand so you know what you can do.
VPC Private Cloud
Let’s start with a very important concept, that is a private cloud or sometimes referred to as a virtual private cloud or VPC. This allows your team the ability to set up a virtual network that is only accessible to team members with the correct authorization set up(sometimes this is set up using AWS Workspace, VPNs, etc).
This enables your company to have its network. Instead of having to set up your server and plugging in all your computers into it using ethernet you can just set up your network. This is great because it can allow you to keep a lot of sensitive information away from the internet(or at least a few more layers away). It used to be that companies needed to hire a system admin, set up servers and hundreds of capable to put together their network.
Serverless
Perhaps you have heard this term thrown around as the new hot buzz word. They use a serverless infrastructure.
How does that even work? How can you have no actual infrastructure and still have code function?
Well, its because serverless does not refer to there being any server involved at all, just that there isn’t a designated to a specific server. Instead, the cloud service provider is only responsible for executing the code. Where it executes is essentially up to the provider.
This allows the cloud service providers the ability to reduce their costs and thus pass on their cost-savings to you, the customer. This has proved very effective at reducing costs when compared to using other services like EC2.
Virtualization
To start this explantation out, virtualization does not always need to be cloud-based. Virtualization has been popular for a while. Essentially, what virtualization lets you do is put multiple environments one piece of hardware. This could be multiple virtual servers, virtual desktops, etc.
For example, virtual desktops, AWS offers something called AWS Workspace. This is essentially a computer you can remote into and use.
Why is this helpful?
Deployment Of Resources
As the world continues to push for more remote work, having to get a laptop that is ready to be used by new employees set up and sent to your employees is not only logistically time-consuming, it is also a security risk.
Instead, you can spin up virtual desktops that your new employees can use that day.
Reduce Costs
As a company grows, it can be difficult to keep track of how many laptops you own and when you need to buy more. This causes many companies to over-buy laptops and often loose track of their resources. The other option is to develop a resource tracking system that often requires a few employees to manage and monitor. All of this can end up costing the company thousands of extra dollars a year.
Managing Your Network
Going back to the concept of a VPC idea. When you are already utilizing a cloud-based network, having virtual desktops, for example, makes it easy to manage your network. Often much of the rest of your servers, in this case, are technically also virtual. So when it comes to managing the ins and outs of IP addresses and which computers can access your network, having a virtual network simplifies a lot of that.
There are usually just a few settings to configure and your workspace can access the rest of your VPC while external users can’t
Vendor Lock-In
Icons made by Eucalyp from www.flaticon.com
Vendor Lock-In is a very important subject that all small and medium-size businesses need to understand because it can impact them financially down the line. The one dark-side to your business becoming reliant on any technology, cloud or otherwise, is Vendor Lock-In.
This is not so much a technical term as it is a general concept. It refers to a point where a company becomes dependent on a vendor for a crucial part of that companies business, and the company can’t switch to a different vendor due to the high switching cost.
For example, let’s say you develop your entire application on AWS. Then you find out you could be paying less by switching to Google’s cloud.
Great!
But what is the cost to switch? If you need to hire a developer just to switch your software, reconnect APIs, and switch all your infrastructure, this might be too expensive for your company to take on all in one shot. Even if down the line it might be cheaper.
This is why it is called Vendor Lock-In.
The cost of switching right now might be too high, even if it saves you money in the long-run. Sometimes, some cloud providers will even put in sneaky clauses in your contract with them that if you quit using their service you still have to pay some ridiculous amount of ending your service early.
So be careful what you pick early on.
Elastic Computing
In cloud computing, there is a concept referred to as elasticity. This refers to the ability of a system to adapt to workloads by both decreasing and increasing the resources as needed.
The ability to have a system that can adapt is one of the reasons cloud service providers exist in the first place. It’s not just about the hardware but it’s about the software that is managing the hardware. Having software that can quickly scale resources to manage incoming web-traffic or database transactions allows customers to pay for only what they use.
An example of this is AWS’s EC2. This stands for Elastic Computing 2. This allows you as a user
Cloud Migration
If your business is larger or just utilizes a large number of cloud services, then you might eventually require to migrate from one cloud provider to another. Why your company might do this is because perhaps you could save an impactful amount of money by switching or you might need some of the technical abilities from the other cloud.
If your company is small, then this will probably range from 20k -40k but if you’re much larger then this could easily be above 100k–200k. This depends on what types of services are being migrated. For example, having to rewrite code due to migration will be very expensive whereas just changing where you store your back-ups will be slightly less expensive.
How About A Few Basic Services?
Amazon’s Simple Storage Service (Amazon S3)
Amazon’s Simple Storage Service (Amazon S3) is a cloud storage service comes that allows you to interface with your stored objects using REST and SOAP.
S3 provides access to a storage system that is fast, reliable, scalable, and inexpensive data storage infrastructure. Several client types, big or small, can make use of its services to storing and protecting data for different use cases.
Amazon S3 offers an object (which are essentially files) storage service with features for integrating data, easy-to-use management and everything else cloud often offers. It can essentially act as a type of file server that can manage your companies content for your websites like videos and photos or be used to develop a data layer for your analytics.
BigQuery
BigQuery is a serverless enterprise-level data warehouse built by Google using BigTable.
This application can execute complex queries in a matter of seconds on what used to be unmanageable amounts of data.
BigQuery supports SQL format and offers accessibility via command-line tools as well as a web user interface. It is a scalable service which allows user to focus on analysis instead of handling the infrastructure.
I enjoy the online web UI that BigQuery has. No need to set up any connectors or download any third-party tools to interact with the data.
AWS Beanstalk
Have you ever wished you could just hit deploy and see your website online without too much configuration? With the service AWS Beanstalk, you can easily deploy your web applications developed in Java, Python, .NET, PHP. and several other languages without having to spend too much time configuring servers.
The Elastic Beanstalk service is used to deploy and scale applications using servers such as Apache, Nginx, and IIS. To use this service, you just have to upload the code on AWS, and all of the deployment processes — such as autoscaling, application monitoring, and capacity provisioning and balancing — are handled automatically by beanstalk.
It’s Time To Start Your Cloud Journey!
With those basic terms out of the way, our team hopes you have a good baseline for cloud computing vocabulary. There are still plenty of nuances, but having a good base understanding should help you as you are looking to make key decisions.
If you would like to read more about data science, cloud computing and technology, check out the articles below!
Data Engineering 101: Writing Your First Pipeline
5 Great Libraries To Manage Big Data
What Are The Different Kinds Of Cloud Computing
4 Simple Python Ideas To Automate Your Workflow
4 Must Have Skills For Data Scientists
SQL Best Practices — Designing An ETL Video