Skip to content

Google Cloud SQL

Bases: Spout

__init__(output, state, **kwargs)

Initialize the GoogleCloudSQL class.

Parameters:

Name Type Description Default
output BatchOutput

An instance of the BatchOutput class for saving the data.

required
state State

An instance of the State class for maintaining the state.

required
**kwargs Any

Additional keyword arguments.

{}

Using geniusrise to invoke via command line

genius GoogleCloudSQL rise \
    batch \
        --output_s3_bucket my_bucket \
        --output_s3_folder s3/folder \
    none \
    fetch \
        --args host=127.0.0.1 port=3306 user=root password=root database=mydb query="SELECT * FROM table" page_size=100

Using geniusrise to invoke via YAML file

version: "1"
spouts:
    my_google_cloud_sql_spout:
        name: "GoogleCloudSQL"
        method: "fetch"
        args:
            host: "127.0.0.1"
            port: 3306
            user: "root"
            password: "root"
            database: "mydb"
            query: "SELECT * FROM table"
            page_size: 100
        output:
            type: "batch"
            args:
                bucket: "my_bucket"
                s3_folder: "s3/folder"

fetch(host, port, user, password, database, query, page_size=100)

📖 Fetch data from a Google Cloud SQL database and save it in batch.

Parameters:

Name Type Description Default
host str

The Google Cloud SQL host.

required
port int

The Google Cloud SQL port.

required
user str

The Google Cloud SQL user.

required
password str

The Google Cloud SQL password.

required
database str

The Google Cloud SQL database name.

required
query str

The SQL query to execute.

required
page_size int

The number of rows to fetch per page. Defaults to 100.

100

Raises:

Type Description
Exception

If unable to connect to the Google Cloud SQL or fetch the data.