Пример #1
0
def csvimport_table(name):
    from spendb.core import data_manager
    from spendb.etl.extract import validate_table, load_table

    package = data_manager.package(uuid.uuid4().hex)
    source = package.ingest(data_fixture(name))
    source = validate_table(source)
    rows = list(load_table(source))
    return source.meta.get('fields'), rows
Пример #2
0
def csvimport_table(name):
    from spendb.core import data_manager
    from spendb.etl.extract import validate_table, load_table

    package = data_manager.package(uuid.uuid4().hex)
    source = package.ingest(data_fixture(name))
    source = validate_table(source)
    rows = list(load_table(source))
    return source.meta.get('fields'), rows
Пример #3
0
def load(job, dataset, source_name):
    """ Load the table artifact for this dataset into the fact
    table. """
    source = Source(job.package, source_name)
    job.set_source(source)
    dataset.data = {}
    dataset.fields = source.meta.get('fields', {})
    if not len(dataset.fields):
        raise ValueError('No columns recognized in source data.')

    db.session.commit()
    dataset.fact_table.drop()
    dataset.fact_table.create()
    dataset.fact_table.load_iter(load_table(source))