Created
December 8, 2017 19:38
-
-
Save WillianFuks/39f0bab5c879e4ed5eaa3a5328068941 to your computer and use it in GitHub Desktop.
Worker Sample for BigQuery Export
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import utils | |
from flask import Flask, request | |
from config import config | |
from connector.gcp import GCPService | |
from scheduler import SchedulerJob | |
app = Flask(__name__) | |
gcp_service = GCPService() | |
scheduler = SchedulerJob() | |
@app.route("/export_customers", methods=['POST']) | |
def export(): | |
"""Runs a query against BigQuery and export results to a GCS bucket.""" | |
date = (None if request.form.get('date') == 'None' else | |
utils.process_url_date(request.form.get('date'))) | |
query_job_body = utils.load_query_job_body(date, | |
**config) | |
job = gcp_service.bigquery.execute_job(config['general']['project_id'], | |
query_job_body) | |
gcp_service.bigquery.poll_job(job) | |
extract_job_body = utils.load_extract_job_body(date, **config) | |
gcp_service.bigquery.execute_job(config['general']['project_id'], | |
extract_job_body) | |
return "finished" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment