Hello, I am just curious what the options are for small footprint databases. I understand SQLite is available, are there others in production use as well? I'd appreciate any recommendations etc. Firebird? SQLite seems pretty good but remote access goes out the window because it is a server-less design if I understand things correctly. Also, is it possible to skinny down the ruby and required gems/libraries distribution? Is there a lite version of Ruby on Rails? We have multiple deployment scenarios and it would be advantageous to have a small footprint distribution. Thanks for the help, Rick
on 2009-01-23 16:07
on 2009-01-23 16:18
Hi, There are some networking solutions for sqlite http://www.sqlite.org/cvstrac/wiki?p=SqliteNetwork You could always design a front end for it in rails :-) you can trim your rails app of some of the parts of rails it doesn't need. Thats all set in the environment.rb file. # Skip frameworks you're not going to use. To use Rails without a database # you must remove the Active Record framework. # config.frameworks -= [ :active_record, :active_resource, :action_mailer ] Rob On Jan 24, 1:07 am, Rick F. <firstname.lastname@example.org>
on 2009-01-23 16:51
How small are we talking? Are you thinking about an embedded device? If so, then sqlite is perfect. Remote data access to anything stored in SQLite would require going through an API based on Rails probably, but not too bad. MySQL can be configured to run on a farily small memory footprint well, and FireBird would also be acceptable. To keep the memory footprint down on a low-usage app, you could always run a single production instance of Mongrel on port 80, or use Nginx and / or Lighttpd to proxy requests to a mongrel cluster for higher usage patterns. Do you have a particular goal for memory usage? Also, don't forget Ruby Enterprise Edition On Jan 23, 9:07 am, Rick F. <email@example.com>
on 2009-01-23 18:12
Thanks Rob and Alex, > How small are we talking? Are you thinking about an embedded device? Essentially yes, embedded to a very thin client. I was curious if the community had any information regarding lite versions of Ruby, the database and Ruby on rails and their associated libraries. It is memory usage issue coupled with installation size as well. The approaches vary from being able to have a minimalistic install and memory consumption size on the embedded devices to using a central site to remote access the lite DB. My goal at this point is to assess my options. > If so, then sqlite is perfect. Remote data access to anything stored > in SQLite would require going through an API based on Rails probably, > but not too bad. I have considered writing a simple API as well. However, the Ruby installation is quite large. Is there a known subset of libraries etc that can be removed for minimal Ruby/ROR support. I realize other libraries would need to be determined that are necessary. Thanks again.