public
Description: ActiveWarehouse for Rails - Implement data warehouses with Rails
Homepage: http://activewarehouse.rubyforge.org/
Clone URL: git://github.com/aeden/activewarehouse.git
name age message
file .autotest Tue Nov 18 09:30:48 -0800 2008 moved spec to old_spec, added .autotest config [aeden]
file .gitignore Tue Nov 25 07:19:18 -0800 2008 make dimension_relationships private, go throug... [aeden]
file CHANGELOG Thu Nov 20 12:30:49 -0800 2008 Initial commit [mghaught]
file CONTRIBUTORS Thu Nov 20 12:30:49 -0800 2008 Initial commit [mghaught]
file HOW_TO_RELEASE Thu Nov 20 12:30:49 -0800 2008 Initial commit [mghaught]
file LICENSE Thu Nov 20 12:30:49 -0800 2008 Initial commit [mghaught]
file README Tue Nov 18 10:39:54 -0800 2008 change to basic readme [aeden]
file Rakefile Tue Nov 18 09:30:48 -0800 2008 moved spec to old_spec, added .autotest config [aeden]
file Rakefile.rb Tue Nov 18 09:30:48 -0800 2008 moved spec to old_spec, added .autotest config [aeden]
file TODO Thu Nov 20 12:30:49 -0800 2008 Initial commit [mghaught]
file activewarehouse.gemspec Thu Nov 20 12:30:49 -0800 2008 Initial commit [mghaught]
directory db/ Thu Nov 20 12:30:49 -0800 2008 Initial commit [mghaught]
directory doc/ Thu Nov 20 12:30:49 -0800 2008 Initial commit [mghaught]
directory generators/ Thu Nov 20 12:30:49 -0800 2008 Initial commit [mghaught]
file init.rb Thu Nov 20 12:30:49 -0800 2008 Initial commit [mghaught]
file install.rb Thu Nov 20 12:30:49 -0800 2008 Initial commit [mghaught]
directory lib/ Tue Nov 25 07:19:18 -0800 2008 make dimension_relationships private, go throug... [aeden]
directory old_spec/ Thu Nov 20 12:30:49 -0800 2008 Initial commit [mghaught]
directory old_test/ Tue Nov 18 08:10:01 -0800 2008 moved tests to old_test - start from ground zero [aeden]
directory tasks/ Thu Nov 20 12:30:49 -0800 2008 Initial commit [mghaught]
directory test/ Tue Nov 25 07:25:06 -0800 2008 one small test [aeden]
README
== ActiveWarehouse

The ActiveWarehouse library provides classes and functions which help with
building Data Warehouses using Rails. It can be installed either as a plugin
or as a Gem.

To install as a plugin just use:

  script/plugin install --force git://github.com/aeden/activewarehouse.git

== Generators

ActiveWarehouse comes with several generators

  script/generate fact Sales
  script/generate fact sales
 
    Creates a SalesFact class and a sales_facts table.
 
  script/generate dimension Region
  script/generate dimension region
   
    Creates a RegionDimension class and a region_dimension table.
 
  script/generate cube RegionalSales
  script/generate cube regional_sales
 
    Creates a RegionalSalesCube class.
   
  script/generate bridge CustomerHierarchy
  script/generate bridge customer_hierarchy
   
    Creates a CustomerHierarchyBridge class.
   
  script/generate dimension_view OrderDate Date
  script/generate dimension_view order_date date
  
    Creates an OrderDateDimension class which is represented by a view on top
    of the DateDimension.
   
The rules for naming are as follows:

Facts:
  Fact classes and tables follow the typical Rails rules: classes are singular
  and tables are pluralized. 
  Both the class and table name are suffixed by "_fact".
Dimensions:
  Dimension classes and tables are both singular. 
  Both the class name and the table name are suffixed by "_dimension".
Cube:
  Cube class is singular. If a cube table is created it will also be singular.
Bridge:
  Bridge classes and tables are both singular.
  Both the class name and the table name are suffixed by "_bridge".
Dimension View:
  Dimension View classes are singular. The underlying data structure is a view
  on top of an existing dimension.
  Both the class name and the view name are suffixed by "_dimension"
  
== ETL

The ActiveWarehouse plugin does not directly handle Extract-Transform-Load
processes, however the ActiveWarehouse ETL gem (installed separately) can help.
To install it use:

  gem install activewarehouse-etl

Once again you should run this command as root or using sudo.
  
You can also get the latest from github:

  git clone git://github.com/aeden/activewarehouse-etl.git

This will create an activewarehouse-etl directory. You can then go into that
directory and run 'rake install' to install the edge version.

More information on the ETL process can be found at
http://activewarehouse.rubyforge.org/etl