Engine Yard Platform

Data Stores, Caches & Search

Relational Database: MySQL

MySQL is the database of choice for Engine Yard developers (with PostgreSQL providing a common alternative). Currently in Version 5, MySQL is now a proven relational data store running millions of production websites.

In-Memory Cache: memcached

Memcached is the most popular in-memory cache. It allows applications to cache temporary values in memory, alleviating database and filesystem load. Memcached is a simple, non-persistent, key-value store that can be distributed across an unlimited number of servers.

Text Search: Sphinx

Sphinx is a high-speed indexing engine compatible with MySQL and PostgreSQL. It provides high scalability, distributed searching and a wealth of text-search features. It powers the text search behind high volume sites such as craigslist.org. Sphinx scales both vertically to multiple threads and horizontally across multiple instances. ThinkingSphinx is the most commonly used Ruby library for accessing Sphinx.

Non-Relational Data Stores

Applications are increasingly leveraging non-relational data stores for the storage and retrieval of data that does not have a relational model. The most popular emerging family of non-relational data stores is Tokyo Cabinet. Tokyo Cabinet is a family of data stores that offer optimizations for specific data storage and retrieval.

Experimental Stores

Other stores that are under evaluation for inclusion in the Engine Yard AppCloud include Redis for persistent caching.