airflow/contrib/operators/mysql_to_gcs.py
def _convert_types(schema, col_type_dict, row):
        """
        Takes a value from MySQLdb, and converts it to a value that's safe for
        JSON/Google cloud storage/BigQuery. Dates are converted to UTC seconds.
        Decimals are converted to floats. Binary type fields are encoded with base64,
        as imported BYTES data must be base64-encoded according to Bigquery SQL
        date type documentation: https://cloud.google.com/bigquery/data-types
        """
        converted_row = []
        for col_name, col_val in zip(schema, row):
            if type(col_val) in (datetime, date):
                col_val = time.mktime(col_val.timetuple())
            elif isinstance(col_val, Decimal):
                col_val = float(col_val)
            elif col_type_dict.get(col_name) == "BYTES":
                col_val = base64.standard_b64encode(col_val).decode('ascii')
            else:
                col_val = col_val
            converted_row.append(col_val)
        return converted_row
def _convert_types(schema, col_type_dict, row):
        """
        Takes a value from MySQLdb, and converts it to a value that's safe for
        JSON/Google cloud storage/BigQuery. Dates are converted to UTC seconds.
        Decimals are converted to floats. Binary type fields are encoded with base64,
        as imported BYTES data must be base64-encoded according to Bigquery SQL
        date type documentation: https://cloud.google.com/bigquery/data-types
        """
        converted_row = []
        for col_name, col_val in zip(schema, row):
            if type(col_val) in (datetime, date):
                col_val = time.mktime(col_val.timetuple())
            elif isinstance(col_val, Decimal):
                col_val = float(col_val)
            elif col_type_dict.get(col_name) == "BYTES":
                col_val = base64.standard_b64encode(col_val).decode('ascii')
            else:
                col_val = col_val
            converted_row.append(col_val)
        return converted_row
def _convert_types ( schema , col_type_dict , row ) : converted_row = [ ] for col_name , col_val in zip ( schema , row ) : if type ( col_val ) in ( datetime , date ) : col_val = time . mktime ( col_val . timetuple ( ) ) elif isinstance ( col_val , Decimal ) : col_val = float ( col_val ) elif col_type_dict . get ( col_name ) == "BYTES" : col_val = base64 . standard_b64encode ( col_val ) . decode ( 'ascii' ) else : col_val = col_val converted_row . append ( col_val ) return converted_row
Takes a value from MySQLdb, and converts it to a value that's safe for
        JSON/Google cloud storage/BigQuery. Dates are converted to UTC seconds.
        Decimals are converted to floats. Binary type fields are encoded with base64,
        as imported BYTES data must be base64-encoded according to Bigquery SQL
        date type documentation: https://cloud.google.com/bigquery/data-types
Takes a value from MySQLdb and converts it to a value that s safe for JSON / Google cloud storage / BigQuery . Dates are converted to UTC seconds . Decimals are converted to floats . Binary type fields are encoded with base64 as imported BYTES data must be base64 - encoded according to Bigquery SQL date type documentation : https : // cloud . google . com / bigquery / data - types