Live data from Hacker News

Using an ETL framework vs. writing yet another ETL script

airbyte.io

71–77 of 77 posts

Re: Using an ETL framework vs. writing yet another ETL script

#71

I am just an amateur, but gosh I love doing ETL. There's something about the specification of the data you're supposed to be getting, and then the harsh reality of the filthy trash you will actually be fed, and making something that can carefully examine each of the assumptions in the spec to test for how it won't go right, making tests for things that will, you are told, "never happen" (only to get an email from you…

This is awesome. Brought a nice chuckle to my quiet morning.

Re: Using an ETL framework vs. writing yet another ETL script

#72

Airbyte Engineer here. I think some of the points made here about ETL scripts being just 'ETL scripts' are very relevant. Definitely been on the other side of the table arguing for a quick 3-hour script. Having written plenty of ETL scripts - in Java with Hadoop/Spark, Python with Airflow and pure Bash - that later morphed into tech debt monsters, I think many people underestimate how quickly these can quickly snowba…

I think it is great stuff you are building, especially for data integration of external sources that don’t offers webhooks or other pub/sub integration options. But is Airbyte really Open Source? I’m not questioning the reasons for moving to a source available license due to how AWS treated open source, but I think it is a bit of false marketing of Airbyte referring to it as open source. Sure, some pieces are MIT but the core is Elastic License 2.0 from what I can see. https://airbyte.io/blog/a-new-license-to-future-proof-the-co...

Re: Using an ETL framework vs. writing yet another ETL script

#74

Airbyte Engineer here. I think some of the points made here about ETL scripts being just 'ETL scripts' are very relevant. Definitely been on the other side of the table arguing for a quick 3-hour script. Having written plenty of ETL scripts - in Java with Hadoop/Spark, Python with Airflow and pure Bash - that later morphed into tech debt monsters, I think many people underestimate how quickly these can quickly snowba…

Where do you stand between airflow and dataflow?

Airflow is a general orchestration tool that fit into the Python stack extremely well. It wasn't build to scale though, so once you want to run something more than once a second, you are going to be jumping through hoops.

My experience with Dataflow is 1.5 years old, so things might have changed, but I felt it more to be a unified, simplified Hadoop/Spark framework. It unifies the batch/streaming concepts but is still pretty low-level.

Within ELT, or ETL, Airflow/Dataflow can fulfills all 3 components.

Airbyte focuses just on EL (though we have basic T functionality around normalisation). Our intention is to leave T to the warehouse, since warehouses like Redshift/Snowflake/BigQuery are extremely powerful these days, and tools like DBT, give the users more more flexibility to recombine and consume the raw data than a specialised ELT pipeline.

In summary, I would say Airbyte is a specialised subset of Airflow/Dataflow, and it's possible to use Airbyte with either tools, though I'd guide someone towards DBT.

Re: Using an ETL framework vs. writing yet another ETL script

#75

Airbyte Engineer here. I think some of the points made here about ETL scripts being just 'ETL scripts' are very relevant. Definitely been on the other side of the table arguing for a quick 3-hour script. Having written plenty of ETL scripts - in Java with Hadoop/Spark, Python with Airflow and pure Bash - that later morphed into tech debt monsters, I think many people underestimate how quickly these can quickly snowba…

"Definitely been on the other side of the table arguing for a quick 3-hour script." But that's probably the time it took to write it, right? 80% of the cost of software is in maintenance, so there's another 12 hours worth of maintenance left to account for. If you know you're going to spend 15 hours on it, then you might as well use a system you know will cost less to extend or scale over time. "We've been very caref…

Great points!

"If you know you're going to spend 15 hours on it, then you might as well use a system you know will cost less to extend or scale over time."

I wish younger me realised that earlier :)

"And maybe even a canned CI/CD pipeline in a container so they can start iterating on it immediately."

Definitely! Although a good number of users are surprisingly happy with their Airbyte instances on a single node.

We do have a Kubernetes offering for those looking to scale Airbyte beyond a single node. We also have Kustomise/Helm deploys for this, though I'll be the first to admit that the Helm charts are mostly community-maintained and can be improved. This is one of our (my) top priorities going into the next Quarter.

Re: Using an ETL framework vs. writing yet another ETL script

#76
post #22
post #10

I gave up on all these frameworks and just use Cron and Make and Python

Do you use some kind of library to help with transformations? If you have some volume using plain python can become a bottleneck no? Any tips in this area would be appreciated.

Airbyte engineer here. We use Dbt to normalise the delivered data at the final destination warehouse.

If it's not a destination warehouse, how transformations are handled depends on the connector implementation.

Re: Using an ETL framework vs. writing yet another ETL script

#77

I am tasked with standardizing ETL in a small org, airbyte is on my list to evaluate. As I write this there are 64 comments in the thread and only a single comment mentions actual experience using airbyte. Any other actual insights using the tool? What about Airflow downsides mentioned in the article? Thx!

Hi, I'd encourage you to join our slack and ask around! The community is friendly and there are plenty of users that can give you feedback based on your specific situation. https://airbytehq.slack.com/join/shared_invite/zt-ylm7owy8-h...
Post reply on HN