Exemplo n.º 1
0
def populate_tables(data_source, data_sink, **kwargs):
    """Create the DB and load it with the default pbeast data"""
    try:
        with db.transaction(): 
            data = data_source()

            params = copy.copy(kwargs)
            params['stime'] = params['lumi'].stime
            params['etime'] = params['lumi'].etime
            del params['lumi']

            params.update(data.get_properties())
            resp = get_pbeast_data.get(**params)

            resp_json = json.loads(resp)
            resp_array = data.parse_input(resp_json)

            try:
                insert_rows = data.transform(resp_array)
                for ir in insert_rows:
                    ir['run_lumi'] = kwargs['lumi']
                    data_sink.insert(ir).execute()
            except IntegrityError:
                logging.debug("Duplicated row, skippin'")

    except Exception as e:
        print(e)
Exemplo n.º 2
0
 def get_data(self, *args, **kwargs):
     logging.info("Retrieving data points from PBeast")
     try:
         self.pbeast_data = json.loads(get_pbeast_data.get(**self.parsed_params))
     except Exception as e: