Archive for the ‘How To’ Category


Comparing Cloud Infrastructure Options for Running NoSQL Workloads

Friday, April 11th, 2014 by

A walk through in-memory, general compute, and mass storage options for Cassandra, MongoDB, Riak, and HBase workloads

I recently had the pleasure of attending Cassandra Tech Day in San Jose, a developer-focused event where people were learning about various options for deploying Cassandra clusters. As it turns out, there was a lot of buzz surrounding the new in-memory option for Cassandra and the use cases for it. This interest got me thinking about how to map the options customers have for running Big Data across clouds.

For a specific workload, NoSQL customers may want to have the following:

1. Access to mass storage servers for files and objects (not to be confused with block storage). Instead, we’re talking on-demand access to terabytes of raw spinning disk volumes for running a large storage array (think storage hub for Hadoop/HBase, Cassandra, or MongoDB).

2. Access to High RAM options for running in-memory with the fastest possible response times—the same times you’d need when running the in-memory version of Cassandra or even running Riak or Redis in-memory.

3. Access to high-performance SSDs to run balanced workloads. Think about what happens after you run a batch operation. If you’re relating information back to a product schema, you may want to push that data into something like PostgrSQL, SQL, or even MySQL and have access to block storage.

4. Access to general-purpose instances for dev and test or for workloads that don’t have specific performance SLAs. This ability is particularly important when you’re trialing and evaluating a variety of applications. GoGrid’s customer’s, for example, leverage our 1-Button Deploy™ technology to quickly spin up dev clusters of common NoSQL solutions from MongoDB to Cassandra, Riak, and HBase.

(more…) «Comparing Cloud Infrastructure Options for Running NoSQL Workloads»

How to Easily Deploy MongoDB in the Cloud

Monday, February 3rd, 2014 by

GoGrid has just released it’s 1-Button Deploy™ of MongoDB, available to all customers in the US-West-1 data center. This technology makes it easy to deploy either a development or production MongoDB replica set on GoGrid’s high-performance infrastructure. GoGrid’s 1-Button Deploy™ technology combines the capabilities of one of the leading NoSQL databases with our expertise in building high-performance Cloud Servers.

MongoDB is a scalable, high-performance, open source, structured storage system. MongoDB provides JSON-style document-oriented storage with full index support, sharding, sophisticated replication, and compatibility with the MapReduce paradigm. MongoDB focuses on flexibility, power, speed, and ease of use. GoGrid’s 1-Button Deploy™ of MongoDB takes advantage of our SSD Cloud Servers while making it easy to deploy a fully configured replica set.

Why GoGrid Cloud Servers?

SSD Cloud Servers have several high-performance characteristics. They all come with attached SSD storage and large available RAM for the high I/O uses common to MongoDB. MongoDB will attempt to place its working set in memory, so the ability to deploy servers with large available RAM is important. Plus, whenever MongoDB has to write to disk, SSDs provide for a more graceful transition from memory to disk. SSD Cloud Servers use a redundant 10-Gbps public and private network to ensure you have the maximum bandwidth to transfer your data. You can use can GoGrid’s 1-Button Deploy™ to provision either a 3-server development replica set or a 5-server production replica set with Firewall Service enabled.

Development Environments

The smallest recommended size for a development replica set is 3 servers. Although it’s possible to run MongoDB on a single server, you won’t be able to test failover or how a replica set behaves in production. You’ll most likely have a small working set so you won’t need as much RAM, but will still benefit from SSD storage and a fast network.

(more…) «How to Easily Deploy MongoDB in the Cloud»

How to Deploy a Riak Cluster in 5 Minutes on GoGrid

Friday, January 31st, 2014 by

The first big challenge to overcome with any new NoSQL database deployment is figuring out how to deploy the cluster in an environment that lets you scale as needed within a single data center and even across multiple data centers. To save cash, many customers make the mistake of trialing the product on cheap hardware with limited RAM across clusters that are inadequate for the application.

We think there’s a better way to run your evaluation. At GoGrid, we’ve made it possible to deploy a 5-node Riak cluster on beefy, high-performance machines with the click of a button. Check out the specs we’re providing as an orchestrated deployment using our 1-Button Deploy™ technology:

  • 5 nodes
  • 16 GB RAM per node
  • 16 cores per node
  • 640 GB storage per node
  • 10-Gbps network
  • 40-Gbps private network connectivity to additional Block Storage volumes (as needed)

Once the first cluster is deployed, you can point-and-click to add more nodes as you need them. Geek out for a moment on what you can do with this technology: You can run a user/session store for your application, use it to target and serve advertising, perform MapReduce operations, or any number of other things with just a few clicks of the mouse. And you can do it all in 4 easy steps.

Step 1: Login to GoGrid

To get started, login to your GoGrid account at to access the management console. If you don’t yet have an account, go ahead and create one: visit and click the Get Started button in the upper right-hand corner of the screen.

Step 2: Add New Infrastructure

(more…) «How to Deploy a Riak Cluster in 5 Minutes on GoGrid»

How To Successfully Implement a Big Data Project in 8 Steps

Monday, October 28th, 2013 by

There are countless ways to incorporate Big Data to improve your company’s operations. But the hard truth is that there’s no one-size-fits-all approach when it comes to Big Data. Beyond understanding your infrastructure requirements, you still need to create an implementation plan to understand what each Big Data project will mean to your organization. At a minimum, that plan should include the following 8 steps.


Step 1: Gain executive-level sponsorship

Big Data projects need to be proposed and fleshed out. They take time to scope, and without executive sponsorship and a dedicated project team, there’s a good chance they’ll fail.

Step 2: Augment rather than re-build

Start with your existing data warehouse. Your challenge is to identify and prioritize additional data sources and then determine the right hub-and-spoke technology. At this stage, you’ll want to get approval to evaluate a few options until you settle on the appropriate technology for your needs. (more…) «How To Successfully Implement a Big Data Project in 8 Steps»

How to Build Highly Available Applications with Cloud Infrastructure

Tuesday, July 30th, 2013 by

Every technology company starts with a great idea. And in the early stages of application design, the decisions you make can have a long-term impact. These design decisions are critical and can make or break both the product and the company. At GoGrid, we’ve helped a lot of customers architect applications for the cloud and along the way we’ve learned a thing or two about the decisions you need to make. Here are 3 key questions to help you get started.


1. Traditional data center or cloud infrastructure (IaaS)?

One of the first and most important decisions is whether to go with a traditional data center or architect in the cloud by leveraging an infrastructure-as-a-service (IaaS) provider. Although a traditional data center provides absolute control over hardware and the software, there’s a significant downside to maintaining the hardware. These costs can be significant, but if you move to the cloud, you can avoid them completely. The GoGrid, Amazon Web Services, and Microsoft clouds are all maintained by professionals, allowing you to focus on your application rather than the hardware. By going with an IaaS provider, you also gain application flexibility that lets you scale resources up and down as needed. And we can all agree that in most cases, scaling an application horizontally is preferable to scaling vertically. This option is especially important when your application reaches global proportions and you require specialized features like global load balancing to ensure minimal application latency or even support for regional application variations (think multiple languages for global applications).

2. Where does multi-tenancy reside?

In most cases, you’ll also need to make a decision about where multi-tenancy resides. If you were to architect in a traditional data center, you might take a shortcut and decide to put each customer on a separate machine. However, doing so would be a mistake for a few reasons. First, applications no longer run on a single box that’s scaled up, which means isolating users to individual machines no longer makes much sense. What’s worse, that approach would create a management nightmare by requiring you to monitor thousands of machines as your application scales users. Plus, this type of architecture locks you into a particular vendor or service provider, and you probably don’t want that. So where should multi-tenancy reside? The answer is easy: It should reside in the application layer above the virtual machine or server layer. By architecting multi-tenancy into the application layer, you’re free from lock-in and able to scale resources as needed, avoiding costly over-provisioning. You’ve also allowed customers to scale beyond the resource constraints of a single server. Equally important, this approach lets you architect failover scenarios that ensure high availability and consistency even if the underlying platform has an issue.

(more…) «How to Build Highly Available Applications with Cloud Infrastructure»