Exemplo n.º 1
0
 def update_type(self, cursor):
     self.trendstore.clear_timestamp(self.timestamp)(cursor)
     names = ["cntr"]
     types = ["bigint"]
     self.trendstore.check_column_types(names, types)(cursor)
     partition = self.trendstore.partition(self.timestamp)
     modified = self.datasource.tzinfo.localize(datetime.datetime.now())
     store_copy_from(cursor, partition.table(), self.large_datapackage,
                     modified)
Exemplo n.º 2
0
def store_datapackage(cursor, trendstore, datapackage, modified):
    data_types = extract_data_types(datapackage.rows)

    partition = trendstore.partition(datapackage.timestamp)
    partition.create(cursor)
    partition.check_columns_exist(datapackage.trend_names, data_types)(cursor)

    store_copy_from(cursor, partition.table(), datapackage, modified)

    return partition
Exemplo n.º 3
0
    def load(self, cursor):
        entitytype = name_to_entitytype(cursor, "materialize_dummytype001")
        self.datasource = name_to_datasource(cursor,
                                             "materialize_src_normal001")
        view_datasource = name_to_datasource(cursor, "vmaterialize_normal001")
        granularity = create_granularity('900')

        self.timestamp = self.datasource.tzinfo.localize(
            datetime.datetime(2013, 8, 26, 22, 0, 0))
        trend_names = ["cntr"]
        rows_small = [
            (1234, (55,)),
            (1235, (56,))]

        self.small_datapackage = DataPackage(granularity, self.timestamp,
                                             trend_names, rows_small)

        rows_large = [
            (1234, (55243444334,)),
            (1235, (56242343242,))]

        self.large_datapackage = DataPackage(granularity, self.timestamp,
                                             trend_names, rows_large)

        self.trendstore = TrendStore(self.datasource, entitytype, granularity,
                                     86400, 'table')
        self.trendstore.create(cursor)
        partition = self.trendstore.partition(self.timestamp)
        partition.create(cursor)
        self.trendstore.check_columns_exist(trend_names, ["smallint"])(cursor)
        modified = self.datasource.tzinfo.localize(datetime.datetime.now())
        store_copy_from(cursor, partition.table(), self.small_datapackage,
                        modified)
        mark_modified(cursor, partition.table(), self.timestamp, modified)

        view_trendstore = TrendStore(view_datasource, entitytype, granularity,
                                     0, 'view').create(cursor)
        sql = (
            "SELECT "
            "entity_id, "
            "timestamp, "
            'cntr FROM {}').format(self.trendstore.base_table().render())
        self.view = View(view_trendstore, sql).define(cursor).create(cursor)