Пример #1
0
    def setUp(self):
        self.registry = MeasureRegistry()

        data_dir = os.path.join(os.path.dirname(__file__), 'data')

        people = (PandasMeasureProvider(
            name='people',
            data=os.path.join(data_dir, 'people.csv')).provides_identifier(
                'person', expr='id', role='primary').provides_identifier(
                    'geography', expr='id_country',
                    role='foreign').provides_dimension(
                        'name').provides_measure('age'))
        self.registry.register(people)

        transactions = (PandasMeasureProvider(
            name='transactions',
            data=os.path.join(
                data_dir, 'transactions.csv')).provides_identifier(
                    'transaction', expr='id',
                    role='primary').provides_identifier(
                        'person:buyer', expr='id_buyer',
                        role='foreign').provides_identifier(
                            'person:seller', expr='id_seller',
                            role='foreign').provides_measure('value'))
        self.registry.register(transactions)

        self.registry.show()
Пример #2
0
    def setUp(self):
        self.registry = MetaMeasureProvider()

        data_dir = os.path.join(os.path.dirname(__file__), 'data')

        people = (
            PandasMeasureProvider(
                name='people',
                data=os.path.join(data_dir, 'people.csv')
            )
            .add_identifier('person', expr='id', role='primary')
            .add_dimension('name')
            .add_measure('age')
            .add_partition('ds')
        )
        self.registry.register(people)

        people2 = (
            PandasMeasureProvider(
                name='people2',
                data=os.path.join(data_dir, 'people.csv')
            )
            .add_identifier('person', expr='id', role='unique')
            .add_identifier('geography', expr='id_geography', role='foreign')
            .add_partition('ds')
        )
        self.registry.register(people2)

        geographies = (
            PandasMeasureProvider(
                name='geographies',
                data=os.path.join(data_dir, 'geographies.csv')
            )
            .add_identifier('geography', expr='id_geography', role='primary')
            .add_dimension('name')
            .add_measure('population')
            .add_partition('ds')

        )
        self.registry.register(geographies)

        transactions = (
            PandasMeasureProvider(
                name='transactions',
                data=os.path.join(data_dir, 'transactions.csv')
            )
            .add_identifier('transaction', expr='id', role='primary')
            .add_identifier('person:buyer', expr='id_buyer', role='foreign')
            .add_identifier('person:seller', expr='id_seller', role='foreign')
            .add_measure('value')
            .add_partition('ds', requires_constraint=True)
        )
        self.registry.register(transactions)