Commit Graph

122 Commits (master)

Author SHA1 Message Date
Abhinav Sarkar c5e7fd0683
Bumps up doctest version for running tests on stackage latest nightly. 2016-04-20 13:20:17 +05:30
Abhinav Sarkar 15c549a6e8 Adds version option to the executable. 2016-03-25 01:59:01 +05:30
Abhinav Sarkar c819578006 Bumps up aeson version to build on stackage nightly releases. 2016-03-25 01:16:39 +05:30
Abhinav Sarkar c517b50e96 Fixes git clone instruction. 2016-03-25 00:54:04 +05:30
Abhinav Sarkar ade5c388d8 Adds a smart constructor for Env for better type safety.
- Env is now created through a smart constructor which does
  validations.
2016-02-05 16:17:57 +05:30
Abhinav Sarkar b58e022b0e Merge pull request #1 from quintype/hssqlppp
Use hssqlppp as the SQL generator
2016-02-03 17:50:32 +05:30
Abhinav Sarkar 0f4970d587 Changes FactColumn to use GADTs for better type safety. 2016-02-03 17:15:59 +05:30
Abhinav Sarkar 8c3c4d801d Moves to stackage lts-5. 2016-01-27 01:09:07 +05:30
Abhinav Sarkar 04be3b69f1 Adds more doctests.
- Found and fixed a bug regarding column names of FKs to existing dimension tables
  (from DimId fact columns).
2016-01-26 01:34:09 +05:30
Abhinav Sarkar 68bf32a673 Adds doctests for factTablePopulateSQL and validate* functions. 2016-01-25 22:27:38 +05:30
Abhinav Sarkar 46e5e43856 Changes fact populatation generator to use hssqlppp internally. 2016-01-25 22:13:47 +05:30
Abhinav Sarkar d33dcbe33c Merge branch 'master' into hssqlppp 2016-01-19 01:07:25 +05:30
Abhinav Sarkar 3b7603b311 Fixes dim time population select clause.
- Dim time fact column population had a bug where the time id was being rounded
  instead of being floored. This fixes it.
2016-01-19 01:05:20 +05:30
Abhinav Sarkar 6d86392946 Merge branch 'master' into hssqlppp 2016-01-15 14:43:11 +05:30
Abhinav Sarkar aede5d6fc6 Fixes the dim time where clause interval queries.
- Changes the interval queries on dim time columns from <= ? and > ? to < ? and >= ?.
  This is more convinient for specifying where clause datetime values.
2016-01-14 16:18:53 +05:30
Abhinav Sarkar 064524f298 Adds stackage lts-4 in build jobs. 2016-01-07 03:08:37 +05:30
Abhinav Sarkar 5b35b03a1a Adds an option to choose if fact tables are persistent. 2016-01-07 03:01:50 +05:30
Abhinav Sarkar 4a7682320b Adds max and min fact column types. 2016-01-07 02:41:32 +05:30
Abhinav Sarkar 089ce59f20 Changes in dimension table column indexes generation.
- Indexes for dimension table columns are generated only if there
  are more than one non-PK columns.
2016-01-07 02:39:46 +05:30
Abhinav Sarkar 6ce2d56252 Adds support for tenant id fact column for multi-tenant databse designs. 2016-01-07 02:38:41 +05:30
Abhinav Sarkar 0d5e1ff29f Adds indexes on dimension table columns in SQL. 2016-01-06 19:00:27 +05:30
Abhinav Sarkar 6a107aaf8d Changes dimension populatation generator to use hssqlppp internally. 2016-01-04 01:32:36 +05:30
Abhinav Sarkar 4fe1006d0c Makes tests run only on ghc 7.10.
- doctest is unable to resolve cabal macros on ghc 7.8 so disabling
  tests on ghc 7.8.
2016-01-02 02:59:24 +05:30
Abhinav Sarkar 2be336ba41 Changes travis config to run tests 2016-01-01 21:02:10 +05:30
Abhinav Sarkar c021ffb845 Adds doctests. 2016-01-01 20:57:54 +05:30
Abhinav Sarkar 28ff8a99fb Changes Create generator to use hssqlppp internally. 2016-01-01 17:15:22 +05:30
Abhinav Sarkar e2ecfc0b9b Adds a dependency on hssqlppp. 2016-01-01 14:31:46 +05:30
Abhinav Sarkar 4e4d13b94f Adds support for generated table suffixes and time where clause on source table in full refresh mode. 2015-12-30 19:57:38 +05:30
Abhinav Sarkar 644acc7ee9 Moves out foreign key id coalesce value as a setting. 2015-12-30 12:34:35 +05:30
Abhinav Sarkar dc4b260ff6 Refactoring. 2015-12-30 12:21:41 +05:30
Abhinav Sarkar f00f158578 Changes dependency version limits for building in stackage nightly. 2015-12-30 00:36:53 +05:30
Abhinav Sarkar b030df010b Adds travis build status image 2015-12-30 00:33:09 +05:30
Abhinav Sarkar 3958b00b87 Adds travis CI integration. 2015-12-30 00:19:57 +05:30
Abhinav Sarkar 601eed9a3c Changes count distinct algo to use a specialized int log2 function. 2015-12-29 18:22:01 +05:30
Abhinav Sarkar 2d5a49f53e Refactoring: Breaks Ringo.Generator into small modules. 2015-12-29 17:11:15 +05:30
Abhinav Sarkar 87a787ba8f Moves type default value validations to run only on DimVal and NoDimId fact column.
Instead of running on all columns.
2015-12-29 16:24:40 +05:30
Abhinav Sarkar d758dc3310 Changes dimension table population query for coalesce changes.
- Replaces "IS NOT DISTICNT FROM" with "="
- Adds not-all-columns-null check for full refresh.
2015-12-29 16:22:58 +05:30
Abhinav Sarkar aeed16570e Makes NoDimId columns in extracted fact tables not nullable. 2015-12-29 16:21:52 +05:30
Abhinav Sarkar 8f27bdf33c Fixes swapped dimension and fact json file names. 2015-12-29 15:19:55 +05:30
Abhinav Sarkar ad14698ab0 Refactoring. 2015-12-29 15:19:17 +05:30
Abhinav Sarkar bcd210e7a5 Moves SQL type defaults to input json from code. 2015-12-28 22:06:44 +05:30
Abhinav Sarkar 8a530618e4 Fixes incremental SQL for coaleasce changes. 2015-12-28 18:43:49 +05:30
Abhinav Sarkar 3978f33cd0 Adds coalescing to default values for fact table columns.
- Removes FKs from fact tables
- Some coercions in SQL for faster processing
2015-12-28 18:09:02 +05:30
Abhinav Sarkar b994955399 Adds coalescing to default values for dimension table columns. 2015-12-24 17:42:47 +05:30
Abhinav Sarkar ff4ca5e235 Adds sql generation for count distinct fact columns population. 2015-12-22 19:46:37 +05:30
Abhinav Sarkar 2dcbe4efd7 Adds source column to count and count distinct fact columns.
Also removes CountDistinctColumSuffix setting.
2015-12-21 22:19:54 +05:30
Abhinav Sarkar d1e1eb7676 Adds output json generation.
- JSON files are generated for the following:
 - list of fact tables generated
 - list of dimension tables generated
 - dependencies between the fact, dimension and source tables
2015-12-21 15:30:23 +05:30
Abhinav Sarkar 7d64ffcde4 Adds incremental refresh sql generation for fact tables. 2015-12-20 18:25:14 +05:30
Abhinav Sarkar 7dc6db944f Adds incremental refresh sql generation for dimension tables.
- Adds partial unique indexes for tables to handle null columns.
- Adds validation for time column in fact tables.
2015-12-19 11:55:08 +05:30
Abhinav Sarkar e46d3684cd Fixes a typo. 2015-12-18 17:35:26 +05:30