RubyGems Navigation menu

ocean-dynamo 0.4.3

OceanDynamo

OceanDynamo is a massively scalable Amazon DynamoDB near drop-in replacement for ActiveRecord.

As one important use case for OceanDynamo is to facilitate the conversion of SQL databases to no-SQL DynamoDB databases, it is important that the syntax and semantics of OceanDynamo are as close as possible to those of ActiveRecord. This includes callbacks, exceptions and method chaining semantics. OceanDynamo follows this pattern closely and is of course based on ActiveModel.

The attribute and persistence layer of OceanDynamo is modeled on that of ActiveRecord: there’s save, save!, create, update, update!, update_attributes, find_each, destroy_all, delete_all and all the other methods you’re used to. The design goal is always to implement as much of the ActiveRecord interface as possible, without compromising scalability. This makes the task of switching from SQL to no-SQL much easier.

Thanks to its structural similarity to ActiveRecord, OceanDynamo works with FactoryGirl. To facilitate testing, future versions will keep track of and delete instances after tests.

OceanDynamo uses primary indices to retrieve related table items, which means it will scale without limits.

See also Ocean, a Rails framework for creating highly scalable SOAs in the cloud, in which ocean-dynamo is used as a central component: wiki.oceanframework.net

Gemfile:
=

installation:
=

Versions:

  1. 1.9.1 October 12, 2018 (51 ko)
  2. 1.9.0 October 12, 2018 (51 ko)
  3. 1.8.2 October 09, 2018 (51 ko)
  4. 1.8.1 September 02, 2018 (51 ko)
  5. 1.8.0 September 02, 2018 (51 ko)
  6. 0.4.3 September 30, 2013 (35 ko)
Voir toutes les versions (90)

Dépendances de Runtime (3):

activemodel ~> 4.0
activesupport ~> 4.0
aws-sdk ~> 1.0

Dépendances de Development (6):

fake_dynamo ~> 0.1.3
rails ~> 4.0
simplecov >= 0
sqlite3 >= 0

Propriétaires:

Auteurs:

  • Peter Bengtson

Total de contrôle SHA 256:

=

Total de téléchargements 229 313

Pour cette version 2 620

Version publiée:

License:

MIT

Version de Ruby requise: >= 2.0.0

Liens: