nick_muller
04/30/2021, 8:04 AMken_payne
04/30/2021, 4:07 PMdouwe_maan
04/30/2021, 4:11 PMget_writeable_state_dict
/ parent_stream_types
trick we use here as an example: https://gitlab.com/meltano/singer-sdk/-/blob/main/singer_sdk/samples/sample_tap_gitlab/gitlab_rest_streams.py#L131-199. In your case, you would have CustomersStream
create a new partition {customer_id: X}
on AddressesStream
for each customer, and then AddressesStream
would make a request to customers/{partition['customer_id']}
to get each customer's address.
As Ken mentioned, the downside is that all of those partitions would be stored in your pipeline's state file, so one per customer. Depending on the number of customers, that may be fine, or not.aaronsteers
04/30/2021, 4:17 PMpost_process()
to manage your own additional rest call(s) to supplement the record data before passing it downstream. We don't have supported helper methods yet for those supplemental/complementary rest calls but that's an option you could consider as well.nick_muller
05/03/2021, 6:09 AM