Reuben (Matatika)
10/21/2024, 1:12 PMBATCH support for tap-bigquery to significantly improve performance for large volumes of data. Give it a read if you are interested in why/how we did it! 😉
https://medium.com/@rfrankel_8960/incredible-bigquery-extract-performance-3432b9cd83fe
Here is an example Meltano project that uses this tap: https://github.com/Matatika/example-ga4-exportvisch
10/21/2024, 1:36 PMReuben (Matatika)
10/21/2024, 1:46 PMHolly Evans
10/21/2024, 2:25 PMaaron_phethean
10/21/2024, 2:36 PMReuben (Matatika)
10/21/2024, 2:39 PMfor the snowflake half, was it the existing MeltanoLabs/target-snowflake?Yep, since that variant supports
BATCH messages.
You said the BigQuery exports went to a GCS bucket, did you refactor the target to work with a storage integration vs. how it currently `put`s files to an internal snowflake stage?No, there was no change to
target-snowflake. I guess that in theory is the next performance optimisation that could be made here... 🤔Reuben (Matatika)
10/21/2024, 2:41 PMReuben (Matatika)
10/21/2024, 2:44 PMHolly Evans
10/21/2024, 3:13 PMgcs://... manifests since i've found that put :file_uri '@~/target-snowflake/{sync_id}' only takes local files. when i tried batch messages with s3://... it errored with something like "put only accepts local files"Reuben (Matatika)
10/21/2024, 3:16 PMfile:// in the BATCH message.
If target-snowflake supported GCS/other storage integrations as you were saying, then this download would not be necessary - though then the requirement of the target supporting BATCH messages expands to BATCH + GCS storage integration support.
https://docs.snowflake.com/en/user-guide/data-load-s3
https://docs.snowflake.com/en/user-guide/data-load-gcsHolly Evans
10/21/2024, 3:20 PM