From 90ddb259664f568e25bcb448a7f017ce9c4ee258 Mon Sep 17 00:00:00 2001 From: Bo Lu Date: Tue, 5 Dec 2023 19:12:30 +1100 Subject: [PATCH] docs: add pushdown support docs --- docs/airtable.md | 4 ++++ docs/bigquery.md | 4 ++++ docs/clickhouse.md | 4 ++++ docs/firebase.md | 4 ++++ docs/logflare.md | 4 ++++ docs/s3.md | 4 ++++ docs/stripe.md | 14 ++++++++++++++ 7 files changed, 38 insertions(+) diff --git a/docs/airtable.md b/docs/airtable.md index 4ee9a645..9c033230 100644 --- a/docs/airtable.md +++ b/docs/airtable.md @@ -87,6 +87,10 @@ The full list of foreign table options are below: - `table_id` - Airtable table ID, required. - `view_id` - Airtable view ID, optional. +## Query Pushdown Support + +This FDW doesn't support query pushdown. + ## Examples Some examples on how to use Airtable foreign tables. diff --git a/docs/bigquery.md b/docs/bigquery.md index 0f4b43f3..0b54e69b 100644 --- a/docs/bigquery.md +++ b/docs/bigquery.md @@ -129,6 +129,10 @@ The full list of foreign table options are below: - `timeout` - Query request timeout in milliseconds, optional. Default is '30000' (30 seconds). - `rowid_column` - Primary key column name, optional for data scan, required for data modify +## Query Pushdown Support + +This FDW supports `where`, `order by` and `limit` clause pushdown. + ## Inserting Rows & the Streaming Buffer This foreign data wrapper uses BigQuery’s `insertAll` API method to create a `streamingBuffer` with an associated partition time. **Within that partition time, the data cannot be updated, deleted, or fully exported**. Only after the time has elapsed (up to 90 minutes according to [BigQuery’s documentation](https://cloud.google.com/bigquery/docs/streaming-data-into-bigquery)); can you perform operations. diff --git a/docs/clickhouse.md b/docs/clickhouse.md index 6d189152..8e4b85f8 100644 --- a/docs/clickhouse.md +++ b/docs/clickhouse.md @@ -133,6 +133,10 @@ The full list of foreign table options are below: - `rowid_column` - Primary key column name, optional for data scan, required for data modify +## Query Pushdown Support + +This FDW supports `where`, `order by` and `limit` clause pushdown, as well as parametrized view (see above). + ## Examples Some examples on how to use ClickHouse foreign tables. diff --git a/docs/firebase.md b/docs/firebase.md index 97c4cb5e..8f5c8264 100644 --- a/docs/firebase.md +++ b/docs/firebase.md @@ -106,6 +106,10 @@ The full list of foreign table options are below: - `firestore/my-collection` - `firestore/my-collection/my-document/another-collection` +## Query Pushdown Support + +This FDW doesn't support query pushdown. + ## Examples Some examples on how to use Firebase foreign tables. diff --git a/docs/logflare.md b/docs/logflare.md index ec7061f3..55686db3 100644 --- a/docs/logflare.md +++ b/docs/logflare.md @@ -92,6 +92,10 @@ The full list of foreign table options are below: - `endpoint` - Logflare endpoint UUID or name, required. +## Query Pushdown Support + +This FDW doesn't support query pushdown. + ## Examples Some examples on how to use Logflare foreign tables. diff --git a/docs/s3.md b/docs/s3.md index 2b1208a3..0b9d2271 100644 --- a/docs/s3.md +++ b/docs/s3.md @@ -140,6 +140,10 @@ The full list of foreign table options are below: - `has_header` - If the CSV file has header, optional. `true` or `false`, default is `false` - `compress` - Compression algorithm, optional. One of `gzip`, `bzip2`, `xz`, `zlib`, default is no compression +## Query Pushdown Support + +This FDW doesn't support query pushdown. + ## Examples Some examples on how to use S3 foreign tables. diff --git a/docs/stripe.md b/docs/stripe.md index 6f27edd1..a2460923 100644 --- a/docs/stripe.md +++ b/docs/stripe.md @@ -766,6 +766,20 @@ While any column is allowed in a where clause, it is most efficient to filter by - id - destination +## Query Pushdown Support + +This FDW supports `where` clause pushdown. You can specify a filter in `where` clause and it will be passed to Stripe API call. + +For example, this query + +```sql +select * from stripe.customers where id = 'cus_xxx'; +``` + +will be translated Stripe API call: `https://api.stripe.com/v1/customers/cus_xxx`. + +For supported filter columns for each object, please check out foreign table documents above. + ## Examples Some examples on how to use Stripe foreign tables.