dbname
02/17/2025, 8:20 PMAndy Carter
02/18/2025, 9:25 AM<http://meltano.to|meltano.yml
>to define primary keys.
I suspect most developers of taps are working with a specific target in mind - I know I am guilty of this and just tend to test with target-jsonl and target-postgres as postgres is what I use in production. The issue becomes even more tricky when json flattening is involved.
Perhaps some good practice around testing would help. It's relatively simple to spin up local postgres in docker, but I would have no idea how to test my taps with bigquery/snowflake as I don't have those services provisioned.Edgar Ramírez (Arch.dev)
02/18/2025, 6:17 PMSome examples of changes are column naming notationIf you're a tap developer, I think something like #2631 might help. Rather than having the target try to normalize column names or fail, nudge the tap developer into doing that upstream.
and selection of primary keys.This is a bit tougher, but I think target-postgres handles missing primary keys by doing append-only. Is that not the case?
Andy Carter
02/18/2025, 11:02 PMEdgar Ramírez (Arch.dev)
02/18/2025, 11:03 PMAndy Carter
02/18/2025, 11:07 PMmeltano.yml
🙂Dave Musambi
02/19/2025, 9:46 PMMartin PREJEAN
02/20/2025, 3:14 PMplugins:
extractors:
- name: tap-googleads
variant: singer-io
pip_url: git+<https://github.com/singer-io/tap-google-ads.git>
use_cached_catalog: false
select:
# CAMPAIGN INFORMATIONS
- campaign_performance_report.customer_id
- campaign_performance_report.customer_descriptive_name
- campaign_performance_report.campaign_id
- campaign_performance_report.campaign_name
etc.
select_filter:
# Same columns
i checked the tap.properties.json
and all my fields are marked as "available" while when i do a meltano select
, only the fields I have in my yml are marked as selected.
so when i do this meltano run tap-googleads-2 target-postgres --full-refresh --refresh-catalog --no-install
, all columns are used when creating the destination table, while i just want the columns I selected using the meltano select
command.
What should i do to only have the columns i specified inside my yml config ?Edgar Ramírez (Arch.dev)
02/20/2025, 7:08 PMMartin PREJEAN
02/20/2025, 9:34 PMAndy Carter
02/21/2025, 9:09 AMMartin PREJEAN
02/21/2025, 11:08 AMAndy Carter
02/21/2025, 1:59 PMAndy Carter
02/21/2025, 2:00 PMEdgar Ramírez (Arch.dev)
02/21/2025, 4:31 PMMaybe i can help or is it on the way ?Matatika's is the main one at the moment, but like Andy mentioned it's missing a few things.
dbname
02/27/2025, 2:50 PMEdgar Ramírez (Arch.dev)
02/27/2025, 6:17 PMdbname
02/27/2025, 7:59 PMReuben (Matatika)
03/04/2025, 12:09 PMPat Nadolny (Arch)
03/05/2025, 8:19 PMI started exploring the Airbyte variant but have run into an RPC error when doing catalog discoveryI've used both variants. I have also seen the Airbyte RPC error and I've noticed that its way slower and requires more requests, I'm not sure if its actually getting more data or what. The matatika variant worked great and ran fast but the stream coverage is lower as mentioned so it depends what you need. Adding the custom_queries config to the matatika variant like the airbyte variant has would be nice https://hub.meltano.com/extractors/tap-googleads--airbyte/#airbyte_config-custom_queries-setting. Then users can define their own streams if they dont exist yet
Reuben (Matatika)
03/07/2025, 2:34 PMI think this pr resolved the PK issues on googleads: https://github.com/Matatika/tap-googleads/pull/69/filesNew release: https://github.com/Matatika/tap-googleads/releases/tag/v0.9.0
Andy Carter
03/17/2025, 1:50 PMReuben (Matatika)
03/17/2025, 2:04 PMAndy Carter
03/17/2025, 3:21 PM