Viktor
09/19/2024, 6:13 PMStefan Krawczyk
09/19/2024, 7:23 PMThierry Jean
09/20/2024, 12:56 PMParallelizable/Collect, it's not necessarily easy to do retries or limit request rates across branches.
I don't want to push you into a rabbit hole, but the tool dlt could be a good solution! It focuses specifically on "Extract and Load" (EL), it's open source, Python-first, and has a similar feel to Hamilton. You write Resource objects and then execute them in a Pipeline. It supports incremental loading for the "reliable and resumable" download you mention. They have a lot of built-in "Source" (e.g., Airtable, databases, Jira, Slack) but you can build your own REST API connector (see tutorial).
If dlt sounds interesting to you, there's a Hamilton documentation page on how to use both tools. We also have a plugin that allows you to connect dlt (EL) directly to Hamilton (T) via the to.dlt() and from.dlt() materializers!Thierry Jean
09/20/2024, 12:56 PMViktor
09/23/2024, 9:52 PMViktor
09/23/2024, 9:55 PMViktor
09/23/2024, 9:57 PM