Cloud storage

By Martin McBride, 2017-03-17
Tags: hard drive ssd network storage file server cloud computing
Categories: memory and storage storage

Cloud storage is remote storage which is accessed over the Internet.

The remote storage is often located in a data centre, a specially constructed building housing a large set of computers with a very fast connection to the internet. However, small companies sometimes create their own cloud storage based on a single PC. You can even use a device such as a Raspberry Pi as a small cloud server.

Examples of cloud storage

Some well known examples of cloud storage are Google Drive, Dropbox and OneDrive. Services like this allow you to store files in the cloud. They often offer a certain amount of storage for free, but with a monthly charge for more space.

There are several ways to transfer files to or from cloud servers:

  • Web interface - simply dragging files into an uploads page in the browser.
  • Folder sync - drag files into a particular local folder on your computer, they will then be copied to the cloud in the background.
  • Cloud drive - a virtual disk on your computer which saves data to cloud storage.
  • FTP - files are transferred using FTP software (such as Filezilla) or by shell scripts. This is less user friendly, but offers more flexibility and control if you want to perform transfers automatically.

Some cloud services are specifically aimed at data backup. They usually have special software, installed on your computer, which automatically copies changes to the cloud as you work. This means that you never have to remember to make backups, and if your disk ever fails you will be able to recover almost all your work, even files you only edited a few minutes before disaster struck.

There are also cloud services aimed at businesses which offer higher levels of security and reliability, for example by storing copies of your data in different data centres is different parts of the world.

Advantages

The main uses of cloud storage are:

  • Backing data up.
  • Remote access, so that you can access your data away from your PC.
  • Sharing, so that other people can access your data.

Generally, cloud storage is fairly cheap, easy to set up, and doesn't require much maintenance.

For backing up data, cloud storage has the advantage that the data is stored off-site. This means it is safe against anything that could happen to your computer at home or in an office - disk failure, accidental deletion of files, natural disaster, theft etc.

Any data stored in the cloud can be accessed remotely, provided you know the username and password to log in.

Many services allow for sharing data. It is possible to set up different folders which are either public (anyone can access the data), private (only you can access the data), or shared (specific users can access the data).

Disadvantages

There are a few potential disadvantages of cloud storage:

  • Reliability - the company operating the cloud storage might lose data, or even go out of business, so you could lose access to the files you have stored. A solution is to also keep copies of the files yourself, and maybe to store copies of your most important files with more than one provider.
  • Privacy - data stored online can potentially be read by others, if they hack the cloud service, or discover your password. A solution to this is to encrypt your data.
  • Data cannot be accessed without an internet connection.
  • Cost - cloud storage is quite a cheap way to obtain a few Terabytes (TB) of storage. For very large amounts of storage (hundreds of TB), tape drives can still be a lot cheaper.

Cloud computing

Cloud computing takes cloud storage one stage further. Both the data and the application live in the cloud.

An example of that is Gmail (Google mail). In that case, your emails are stored in the cloud. But when you want to access your emails, you don't use an email client (such as Thunderbird), you access your emails in your browser.

The Gmail client is software which is downloaded and runs in a web page on your browser:

Gmail

The Gmail software then communicates with the server to send and retrieve emails.

There are many examples of cloud computing:

  • Google Docs and similar sites let you create and edit text documents, spreadsheets and presentations.
  • Trello and similar sites let you create and collaborate on plans and to-do list for shared projects.
  • Github and similar sites let you collaborate on shared software projects, keeping track of code changes.
  • Flickr and similar sites let you upload, edit and arrange photographs into albums.

Cloud computing has all the advantages of cloud storage (off-site storage, accessible from anywhere, and the possibility of sharing resources), but with additional features:

  • No need to install software.
  • You always have the latest version of the software.
  • The software works in the same way on any computer.
  • Sharing also allows for collaboration on the same code or documents.

Cloud computing has a few disadvantages:

  • You might not be able to store or backup your work, you are completely reliant on the cloud software to keep your work safe.
  • If you have no connection, you might not be able to access or edit your documents off-line.
  • On some services, you might be giving up rights to your work by sharing it online.

See also

Sign up to the Creative Coding Newletter

Join my newsletter to receive occasional emails when new content is added, using the form below:

Popular tags

555 timer abstract data type abstraction addition algorithm and gate array ascii ascii85 base32 base64 battery binary binary encoding binary search bit block cipher block padding byte canvas colour coming soon computer music condition cryptographic attacks cryptography decomposition decryption deduplication dictionary attack encryption file server flash memory hard drive hashing hexadecimal hmac html image insertion sort ip address key derivation lamp linear search list mac mac address mesh network message authentication code music nand gate network storage none nor gate not gate op-amp or gate pixel private key python quantisation queue raid ram relational operator resources rgb rom search sort sound synthesis ssd star network supercollider svg switch symmetric encryption truth table turtle graphics yenc