def get_fact_table(cube_name): return engine.get_table('fact_' + cube_name)
import logging from sqlalchemy.types import BigInteger from regenesis.core import app, engine log = logging.getLogger(__name__) cube_table = engine.get_table('cube') statistic_table = engine.get_table('statistic') dimension_table = engine.get_table('dimension') value_table = engine.get_table('value') reference_table = engine.get_table('reference') def get_fact_table(cube_name): return engine.get_table('fact_' + cube_name) def load_cube(cube, update=False): if cube_table.find_one(name=cube.name) and not update: return engine.begin() cube_table.upsert(cube.to_row(), ['name']) statistic_table.upsert(cube.metadata.get('statistic'), ['name']) for dimension in list(cube.dimensions.values()): dimension_table.upsert(dimension.to_row(), ['name']) for value in dimension.values:
import logging from sqlalchemy.types import BigInteger from regenesis.core import app, engine log = logging.getLogger(__name__) cube_table = engine.get_table('cube') statistic_table = engine.get_table('statistic') dimension_table = engine.get_table('dimension') value_table = engine.get_table('value') reference_table = engine.get_table('reference') def get_fact_table(cube_name): return engine.get_table('fact_' + cube_name) def load_cube(cube, update=False): if cube_table.find_one(name=cube.name) and not update: return engine.begin() cube_table.upsert(cube.to_row(), ['name']) statistic_table.upsert(cube.metadata.get('statistic'), ['name']) for dimension in cube.dimensions.values(): dimension_table.upsert(dimension.to_row(), ['name']) for value in dimension.values: