Skip to main content

interloper-google-cloud

Google Cloud integration for the Interloper framework. Provides BigQuery, Cloud Storage and Google Sheets destinations and the Google Cloud connection resource.

Google Sheets

GoogleSheetsDestination writes assets into one spreadsheet, one tab per asset. It authenticates with the GoogleCloudConnection's service-account key, or with ambient credentials when the key is empty.

Setup

  1. Create the spreadsheet and copy its id from the URL (https://docs.google.com/spreadsheets/d/<id>/edit).
  2. Share it with the service account's email address (client_email in the key) as an editor. The service account sees no spreadsheet it was not shared on.

Usage

from interloper_google_cloud import GoogleCloudConnection, GoogleSheetsDestination

destination = GoogleSheetsDestination(
    connection=GoogleCloudConnection(service_account_key="..."),
    spreadsheet_id="1AbC...",
)

Layout

  • Each asset is a tab titled after its table, or {dataset}.{table} when the asset has a dataset (at most 100 characters, Sheets' limit).
  • The first row is the header, written when the tab is created from the asset's schema. Later writes are aligned to it: columns missing from the data are left empty, columns missing from the header are dropped with a warning. The header is never altered.
  • Rows carry the partition column. Replacing a partition deletes its rows, then appends the new ones; Sheets has no transactions, so the pair is not atomic.

Types

Values are written raw: numbers and booleans as is, None as an empty cell, decimals as strings, dates and datetimes as ISO 8601 strings, dicts and lists as JSON. Time partitions are matched by comparing those ISO strings, which orders chronologically, so a time-partitioned asset's partition column must be a date or a datetime (or an ISO string). On read, empty cells come back as None and rows are reconciled against the asset's schema, restoring the declared types.

Limits

Sheets caps a spreadsheet at 10 million cells, and replacing a partition reads the whole tab and rewrites it. The destination suits small reporting tables that people open in Sheets, not a warehouse.

Metadata

Release files for interloper-google-cloud 0.94.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for interloper-google-cloud 0.94.2
File Size Uploaded
interloper_google_cloud-0.94.2.tar.gz 17.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for interloper-google-cloud 0.94.2
File Interpreter ABI Platform
interloper_google_cloud-0.94.2-py3-none-any.whl Python 3 none any Details

Total release size: 39.2 kB

Release files / interloper_google_cloud-0.94.2.tar.gz

Download URL interloper_google_cloud-0.94.2.tar.gz
Size 17.3 kB
Tags Source
SHA-256 checksum
How to use checksums
c43d89bdaff90d061f217808e010a7ea5bcbfd00e20eeda944ae3f9987b2f49b
BLAKE2b-256 checksum
How to use checksums
38c5c6807cc2875e70d21a46a3fefe318c1ba2b74062d9ae4c1bb1c552a827a4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.21 {"installer":{"name":"uv","version":"0.12.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / interloper_google_cloud-0.94.2-py3-none-any.whl

Download URL interloper_google_cloud-0.94.2-py3-none-any.whl
Size 21.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2d1f8950a4d720b1f54cc520196e546b4af8417e1fa304b1a16f0952f52230ac
BLAKE2b-256 checksum
How to use checksums
c008ba7b560b3b3a4a3e1a3e42a0d96055d66c11b7a9d8c45e1282cbff129bf6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.21 {"installer":{"name":"uv","version":"0.12.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

This release

0.94.2 This release

2 release files

0.94.1

1 release file

0.93.0

2 release files

0.92.1

2 release files

0.92.0

2 release files

0.91.0

2 release files

0.90.0

2 release files

0.89.0

2 release files

0.88.0

2 release files

0.87.0

2 release files

0.86.0

2 release files

0.85.0

2 release files

0.84.1

2 release files

0.84.0

2 release files

0.83.0

2 release files

0.82.1

2 release files

0.82.0

2 release files

0.81.1

2 release files

0.79.0

2 release files

0.78.0

2 release files

0.67.0

2 release files

0.66.0

2 release files

0.65.1

2 release files

0.65.0

2 release files

0.64.1

2 release files

0.64.0

2 release files

0.63.0

2 release files

0.62.0

2 release files

0.61.0

2 release files

0.60.0

2 release files

0.59.0

2 release files

0.58.0

2 release files

0.53.1

2 release files

0.53.0

2 release files

0.52.0

2 release files

0.51.0

2 release files

0.50.1

2 release files

0.50.0

2 release files

0.49.1

2 release files

0.49.0

2 release files

0.48.0

2 release files

0.47.0

2 release files

0.46.0

2 release files

0.45.1

2 release files

0.45.0

2 release files

0.44.1

2 release files

0.44.0

2 release files

0.43.3

2 release files

0.43.2

1 release file

0.42.0

1 release file

0.41.0

2 release files

0.40.0

2 release files

0.39.0

2 release files

0.38.0

2 release files

0.37.0

2 release files

0.36.0

2 release files

0.35.0

2 release files

0.34.0

2 release files

0.33.0

2 release files

0.32.0

2 release files

0.24.1

2 release files

0.24.0

2 release files

0.23.1

2 release files

0.23.0

2 release files

0.22.0

2 release files

0.21.0

2 release files

0.20.0

2 release files

0.19.0

2 release files

0.18.0

2 release files

0.17.0

2 release files

0.16.0

2 release files

0.15.1

2 release files

0.15.0

2 release files

0.14.0

2 release files

0.13.0

2 release files

0.11.0

2 release files

0.10.1

2 release files

0.10.0

2 release files

0.9.0

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.0

2 release files

0.3.1

2 release files

0.3.0

2 release files

0.2.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page