def main(): config_file_path = cmdline_argv[1] config = load_config_json(config_file_path, GEXPFeatureDefConfig) logger.info("Building BigQuery service...") bigquery_service = build_bigquery_service() result = [] for table_item in config.data_table_list: logger.info('GEXP table: \'' + table_item.table_name + '\'') query = build_feature_query(config, table_item.table_name) # Insert BigQuery job query_job = submit_query_async(bigquery_service, config.project_id, query) # Poll for completion of query job_id = query_job['jobReference']['jobId'] logger.info('job_id = "' + str(job_id) + '\"') poll_async_job(bigquery_service, config, job_id) query_result = download_query_result(bigquery_service, query_job) rows = unpack_rows(query_result, table_item) result.extend(rows) write_tsv(config.output_csv_path, result, FIELDNAMES)
def main(): config_file_path = cmdline_argv[1] config = load_config_json(config_file_path, MethylationFeatureDefConfig) logger.info("Building BigQuery service...") bigquery_service = build_bigquery_service() query = build_feature_query(config) # Insert BigQuery job query_job = submit_query_async(bigquery_service, config.project_id, query) # Poll for completion of query job_id = query_job['jobReference']['jobId'] logger.info('job_id = "' + str(job_id) + '\"') poll_async_job(bigquery_service, config, job_id) query_result = download_query_result(bigquery_service, query_job) rows = unpack_rows(query_result, config.feature_id_prefix) write_tsv(config.output_csv_path, rows, FIELDNAMES)
def load_config_from_path(data_type, config_json): config_class, _ = data_type_registry[data_type] config = load_config_json(config_json, config_class) return config