Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Database Sharding for ActiveRecord

Fetching latest commit…

Cannot retrieve the latest commit at this time

Failed to load latest commit information.
doc
lib
rails
spec
.gitignore
README.mkdn
Rakefile
VERSION
ar-octopus.gemspec

README.mkdn

Octopus - Easy Database Sharding for ActiveRecord

Octopus is a better way to do Database Sharding in ActiveRecord. Sharding allows multiple databases in the same rails application. While there are several projects that implement Sharding (e.g. DbCharmer, DataFabric), each project has its own limitations. The main goal of octopus project is to provide a nice and clean way of doing Database Sharding.

Feature list:

The design of the api is made to be simple as possible. Octopus is focusing in the end user, giving the power of multiple databases, but with reliable code and flexibility. Octopus is focused on Rails 3, but will be soon compatible with Rails 2.x.

Octopus supports:

  • Sharding (with multiple shards, and grouped shards).
  • Replication (Master/slave support, with multiple slaves).
  • Moving data between shards with migrations.
  • Tools to manage database configurations. (soon)

To see the complete list of features and syntax, please check out our Wiki

Wanna see sample rails applications using octopus features? please check it out: Sharding Example and Replication Example

Thanks

This project is sponsored by the Ruby Summer of Code, and my mentors Mike Perham and Amit Agarwal.

If you are writing code that smells using octopus, the EVIL Octopus is going behind you, be careful.

                                _________________
                      ___       | I'm so EVIL!  |
                   .-'   `'.    |______________ |
                  /         \   /
                  |         ;  /
                  |         | /         ___.--,
         _.._     |0) ~ (0) |    _.---'`__.-( (_.
  __.--'`_.. '.__.\    '--. \_.-' ,.--'`     `""`
 ( ,.--'`   ',__ /./;   ;, '.__.'`    __
 _`) )  .---.__.' / |   |\   \__..--""  """--.,_
`---' .'.''-._.-'`_./  /\ '.  \ _.-~~~````~~~-._`-.__.'
      | |  .' _.-' |  |  \  \  '.               `~---`
       \ \/ .'     \  \   '. '-._)
        \/ /        \  \    `=.__`~-.
        / /\         `) )    / / `"".`\
  , _.-'.'\ \        / /    ( (     / /
   `--~`   ) )    .-'.'      '.'.  | (
          (/`    ( (`          ) )  '-;
           `      '-;         (-'

Copyright

Copyright (c) 2010 Thiago Pradi, released under the MIT license.

Something went wrong with that request. Please try again.