Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Rails + Oracle: worth hassle? [closed]

Is it architecturally sound to use Rails and Oracle? My concern is that Oracle would be too "heavy and hi-end" for Rails. Any thoughts? Thanks.

like image 406
Valentin V Avatar asked Dec 03 '08 14:12

Valentin V


1 Answers

The database needs of Rails more or less boil down to tables, indices and CRUD.

Anything that provides those ought to be able to serve as the back-end to a Rails app, and Oracle certainly does those parts somewhere among the bloat vast range of features it provides. If you can use ActiveRecord migrations then you shouldn't need to worry too much about platform-specific aspects anyway.

The oracle-adapter for ActiveRecord (which needs to be downloaded separately and placed in activerecord\lib\active_record\connection_adapters, btw) makes use of Oracle-specific elements where appropriate, the main one I can think of being the use of sequences for id generation.

The Oracle query optimiser is very smart, probably rather better for complex multi-table queries than, say, MySQL.

If you're looking at Oracle as a back-end for an externally-hosted site, then I'd be sceptical on cost grounds, as well as the reservation already stated about availability. But I suspect that the question relates more to what's already available in-house, in which case I'd say it's about as "good" a solution as you can get.

I'm developing intranet applications on Rails/Oracle, using OracleXE locally for development, deploying to some "big iron" machine (it's someone else's job to care for it, I don't even know what OS it's running) for production.

EDIT: It's worth looking at the activerecord-oracle_enhanced-adapter (it's a gem) as a replacement for the built-in oracle adapter, if only for the improved handling of date/datetime values (Oracle only has one column type for both: DATE). It's probably saved me from a breakdown...

like image 69
Mike Woodhouse Avatar answered Sep 29 '22 19:09

Mike Woodhouse