The AppScale Systems, Inc. platform allows developers to effortlessly deploy their App Engine application on any cloud, public or private, within 5 minutes. The company was officially formed in 2012, but started in 2008 as a project at UCSB (University of Santa Barbara, California); since then, AppScale Systems, Inc. has amassed thousands of users. The primary data store that utilized for their “Data Store API” is Apache Cassandra.
When AppScale originally launched, there were 12 interchangeable “plug and play” data stores to choose from when using the data store API; these data stores included: Cassandra, MongoDB, HBase, Redis, MySQL, PostgreSQL and the like. The data store API allows users to connect a data store to any application built on the open source app engine, whether it’s written in Java, Python, Go, PHP, etc. or deployed on EC2, CGE, Digital Ocean, or local hardware. AppScale’s mission is to create portability for Google AppEngine applications.
After further investigation of how application developers were utilizing the data store API, they found that most users of the API just wanted it to work and didn’t care too much about lower-level details, such as which data store is being used on the backend; this provoked AppScale to eliminate complexity in their API by narrowing down their data store options and choosing one default store.
Being as AppScale Systems, Inc. was primarily maintaining the data stores, they found Cassandra to be the easiest option to to get going and scale out; for example, when comparing HBase to Cassandra, it did well up until a certain size but then slowed down. Additionally, Cassandra’s fault tolerance and similarities to Google’s big table held it up in a positive light. Ultimately, AppScale Systems, Inc. chose Apache Cassandra as their main data store implementation for their data store API.
One of the primary (and most original) components of the AppScale System is Apache Cassandra; they’ve been using Cassandra since 2009, and were there for all of the early-on bugs/improvements while it was just starting out as a project coming out of Facebook.
As Raj says, “When choosing and implementing any open source software as a main component of your project, one of the most important aspects is the vibrancy and helpfulness of its accompanying community.”
One of the aspects of Apache Cassandra that really drew AppScale in, was their ability to ask questions and quickly receive help; going into an IRC room for a great number of open source projects doesn’t typically pan out, and many times you don’t receive a reply, but in Cassandra’s IRC you can almost guarantee an instant reply to your question.