Cloud Computing 2020
Cloud computing is Web-based processing, whereby shared resources, software, and information are provided to computers and other devices (such as smartphones) on demand over the Internet.
Cloud computing is a natural evolution of the widespread adoption of virtualization, Service-oriented architecture and utility computing. Details are abstracted from consumers, who no longer have need for expertise in, or control over, the technology infrastructure "in the cloud" that supports them.
Cloud computing describes a new supplement, consumption, and delivery model for IT services based on the Internet, and it typically involves over-the-Internet provision of dynamically scalable and often virtualized resources. It is a byproduct and consequence of the ease-of-access to remote computing sites provided by the Internet. This frequently takes the form of web-based tools or applications that users can access and use through a web browser as if it were a program installed locally on their own computer.
NIST provides a somewhat more objective and specific definition here. The term "cloud" is used as a metaphor for the Internet, based on the cloud drawing used in the past to represent the telephone network, and later to depict the Internet in computer network diagrams as an abstraction of the underlying infrastructure it represents. Typical cloud computing providers deliver common business applications online that are accessed from another Web service or software like a Web browser, while the software and data are stored on servers.
- from wiki
Pictures from http://www.bvp.com/cloud/bvp_cloudscape.html
The time for traditional dedicated server may have passed. If we are looking strictly at price points, Cloud computing may seem just a little more cost effective than renting a dedicated server. However, it's not an apples-to-apples comparison. For cloud servers, we are paying for the resources that our virtualized instance uses. With a dedicated server, we pay the same amount regardless how much that server is used.
GigaOM, Feb. 11, 2012
The intuitive conclusion that the more spiky the load, the better the economics of the AWS on-demand solution is confirmed. And similarly, the flatter or less variable the load distribution, the more self-hosting appears to make sense. And if you've got a situation that uses a lot of bandwidth, you need to look more closely at potential self-hosted savings that could be feasible with negotiated bandwidth reductions.
Daily traffic (Bits per second)
Weekly traffic (Bits per second)
Monthly traffic (Bits per second)
Yearly traffic (Bits per second)
Join Linkedin's BigData.org
Confused by the glut of new databases? Here's a map for you. GigaOM Dec. 2012
- Amazon Relational Database Service (RDS)
One of the first cloud database services, Amazon Web Services' RDSM is now one of the most complete, too. Like most AWS services, it's tied into the AWS management interface and is compatible with a large majority of AWS's countless other cloud computing services. Initially just an AWS-hosted and - managed MySQL service, RDS now lets users choose Microsoft SQL Server and Oracle Database, as well. - Clustrix Database as a Service
Database vendor Clustrix just got into the cloud game on Wednesday, but it came to play. Its service, http://www.clustrix.com/clustrix-in-the-cloud/, which runs on the Rackspace Cloud, gives users the high performance of solid-state drives, the peace of mind of single-tenant deployment, and the scalable MySQL capabilities of its flagship on-premise product. The company claims it's suitable for both OLTP and OLAP applications, and that it monitors system health across more than 2,500 metrics. - Google Cloud SQL
It's not the most feature-rich database around, but Google Cloud SQL does have its benefits. For one, it's integrated with the rest of Google's cloud services for easy interaction. And, as is Google's claim to fame in the cloud, Cloud SQL is geographically replicated for maximum availability. Currently, though, it only supports Java and Python applications, and instances are limited to 10GB in storage capacity. - Heroku Postgres
Heroku Postgres is the public-facing implementation of platform-as-a-service darling Heroku's internal PostgreSQL database. It's designed for reliability and data protection - Heroku claims 99.99 percent uptime and a design targeted to hit 99.999999999 percent data durability - and tries to bring the Heroku experience to developers that can't use its PaaS offering. One of its more interesting features is called Data Clips, which lets users send the results of a SQL query to someone else via a URL. - EnterpriseDB Postgres Plus Cloud Database
EnterpriseDB is the primary company commercializing the PostgreSQL database, and this is the cloud-based version of its flagship Postgres Plus offering. Targeting enterprise developers more than weekend hackers, Postgres Plus Cloud includes features such as high-availability clusters, high connection counts and compatibility with Oracle environments. - Microsoft SQL Database
Formerly known as SQL Azure, SQL Database is a critical component of Microsoft's new focus on hybrid cloud computing. Yes, it can operate as a standalone cloud database, but it also provides a shared user experience with Microsoft SQL Server and allows for data sharing with on-premise SQL Server databases. There's also an option for syncing between other SQL Database deployments elsewhere within a company's cloud infrastructure. - Oracle Database Cloud Service
It's not for everyone, but existing Oracle database users that want a cloud-hosted option certainly should appreciate the Oracle Database Cloud Service. After all, it claims all the features and performance of Oracle Database 11g Release 2, of which there are a lot. Pricing isn't made clear, but it's a monthly rate based on the size of your database, although there are no long-term contracts. - Rackspace Cloud Databases
The latest addition to Rackspace's line of cloud offerings, Cloud Databases is first built from its inception atop the OpenStack platform. Still in early access mode, users won't get SLAs or a host of features (such as monitoring, backups or a GUI) that are slated for the GA edition, but they will get promises of high performance and reliability thanks to the service's container-based virtualization and storage-area network-based architecture. - IBM SmartCloud Application Services
Like HP, IBM's cloud database is still very much a work in progress. Details on specific features are sparse right now, other than that the service is based on IBM's DB2 Server technology and is part of the SmartCloud Application Services (read "PaaS") offering that's currently in a pilot phase. - HP Cloud Relational Database for MySQL
What is there to say about HP Cloud Relational Database for MySQL service that the name doesn't already? For starters, it's presently in private beta, so there's still a lot of work to be done and a lot of features to be added. It's also built atop an OpenStack-based MySQL distribution, which, in theory, should make it easier to move one's database business from cloud to cloud if need be. - Xeround
Save for Amazon RDS, Xeround might be the most-popular cloud database around. It's also the most flexible in terms of where it can be deployed - the MySQL service can run atop pretty much any public cloud, including AWS, Rackspace, Joyent, Heroku ... you get the picture. Xeround claims auto-scaling as one of its primary strengths and is architecturally unique in that it's essentially a MySQL frontend atop a foundation that theoretically could support a variety of database options.
- Amazon DynamoDB
DynamoDB is AWS's managed NoSQL service based upon the original Dynamo kay-value data store the company developed years ago for its internal purposes. Designed for web or big data applications needing fast access to data and potentially having to scale in a hurry, DynamoDB is built atop an SSD architecture and scales automatically as data is added to the system. - Amazon ElastiCache
It's not technically a NoSQL service, but ElastiCache does fulfill a similar need by giving developers managed Memcached to make sure their MySQL deployments are serving user data as fast as possible. Memcached is used by many web applications, including Facebook, that are built upon disk-based relational databases but want to keep certain data in an in-memory cache. - Cloudant
Although it's based on the open source CouchDB database, Cloudant doesn't call itself a NoSQL service per se, but rather a Data Layer. Built across a collection of cloud-provider resources spanning the globe, it does offer a predictable scalable NoSQL data store, but also a built-in MapReduce analytics engine. That's one reason agribusiness giant Monsanto uses Cloudant to underpin its genomics infrastructure. - Database.com
Salesforce.com's standalone database service, Database.com, isn't exactly NoSQL, but it isn't exactly a relational database, either. What it is for sure is the same multitenant database architecture that has been underneath Salesforce.com's CRM service and Force.com platform for years. It stores a variety of data types, including of the unstructured variety, and is designed for (although not limited to) applications tying into existing Salesforce.com services. - Microsoft Windows Azure Table Storage
This is the NoSQL data store for Windows Azure, which is designed for easily querying terabytes of non-relational data. Because it's part of the overall Windows Azure Storage family, though, total database size is limited to 100TB overall (Blob, Table and Queue storage) per account. - MongoHQ/MongoLab
MongoDB is by far the most popular NoSQL database around, but it can be a bear to manage in the cloud. As a result, there are numerous hosted MongoDB services around, although MongoHQ and MongoLab are probably the most widely known. The pitch for both is simple: fast deployment, thorough monitoring and reliability you probably can't achieve yourself. Both services try to appeal to a broad range of users with both shared and dedicated offerings.My tutorial for MongoDB with PyMongo
Ph.D. / Golden Gate Ave, San Francisco / Seoul National Univ / Carnegie Mellon / UC Berkeley / DevOps / Deep Learning / Visualization