Show HN: Data Engineering Book – An open source, community-driven guide
235 points by xx123122 2 days ago | 27 comments
Hi HN! I'm currently a Master's student at USTC (University of Science and Technology of China). I've been diving deep into Data Engineering, especially in the context of Large Language Models (LLMs).

The Problem: I found that learning resources for modern data engineering are often fragmented and scattered across hundreds of medium articles or disjointed tutorials. It's hard to piece everything together into a coherent system.

The Solution: I decided to open-source my learning notes and build them into a structured book. My goal is to help developers fast-track their learning curve.

Key Features:

LLM-Centric: Focuses on data pipelines specifically designed for LLM training and RAG systems.

Scenario-Based: Instead of just listing tools, I compare different methods/architectures based on specific business scenarios (e.g., "When to use Vector DB vs. Keyword Search").

Hands-on Projects: Includes full code for real-world implementations, not just "Hello World" examples.

This is a work in progress, and I'm treating it as "Book-as-Code". I would love to hear your feedback on the roadmap or any "anti-patterns" I might have included!

Check it out:

Online: https://datascale-ai.github.io/data_engineering_book/

GitHub: https://github.com/datascale-ai/data_engineering_book


fudged71 6 hours ago
Thank you so much for this book! I'm finding the translation is very high quality.

I am a complete novice in training LLMs, and have been trying to train a novel architecture for Python code generation, using Apple Silicon.

I've been a bit frustrated to be honest that the data tools don't seem to have any focus on code, their modalities are generic text and images. And for synthetic data generation I would love to use EBNF-constrained outputs but SGlang is not available on MacOS. So I feel a bit stuck, downloading a large corpus of Python code, running into APFS issues, sharding, custom classifying, custom cleaning, custom mixing, etc. Maybe I've missed a tool but I'm surprised there aren't pre-tagged, pre-categorized, pre-filtered datasets for code where I can just tune the curriculum/filters to input into training.

reply
hliyan 18 hours ago
I'm not sure whether this is an artefact of translation, but things like this don't inspire confidence:

> The "Modern Data Stack" (MDS) is a hot concept in data engineering in recent years, referring to a cloud-native, modular, decoupled combination of data infrastructure

https://github.com/datascale-ai/data_engineering_book/blob/m...

Later parts are better and more to the point though: https://github.com/datascale-ai/data_engineering_book/blob/m...

Edit: perhaps I judged to early. The RAG sections isn't bad either: https://github.com/datascale-ai/data_engineering_book/blob/m...

reply
xx123122 15 hours ago
Appreciate the honest feedback.
reply
esafak 20 hours ago
I'd have titled the submission 'Data Engineering for LLMs...' as it is focused on that.
reply
xx123122 14 hours ago
That's a great point. I completely agree—'Data Engineering for LLMs' is much more accurate given the content.I'll pass this feedback on to the project lead immediately. Thanks for the suggestion.
reply
dotancohen 10 hours ago
Project lead? The post gives the impression that you are a student open sourcing your learning notes.
reply
gtowey 7 hours ago
No, I think it gives the impression that the author is using an LLM without much supervision to not only write the submitted content, but to reply to posts here.
reply
baalimago 12 hours ago
> "Data is the new oil, but only if you know how to refine it."

Oil[0] is fairly useless without being refined as well. Perhaps: "Data is the new oil, you need to refine it"?

[0]: https://en.wikipedia.org/wiki/Petroleum

reply
osamabinladen 19 hours ago
this is great and i bookmarked it so i can read it later. i’m just curious though, was the readme written by chatgpt? i can’t tell if im paranoid thinking everything is written by chatgpt
reply
xx123122 14 hours ago
Yes, you are right. We are a team from China and used GPT to help with the English translation. We didn't realize it came across as 'fake warmth.' We appreciate the feedback and will work on making the tone more neutral and concise.
reply
nimonian 15 hours ago
I think it was. It's a wall of information, lots of summary tables, fake warmth, and has that LLM smell to it. I'd be very surprised if this wasn't generated text.

Whether it's GPT or not, it needs rewriting.

reply
joshuaissac 2 days ago
reply
dang 2 days ago
Oh thanks! I've switched the top URL to that now. Submitted URL was https://github.com/datascale-ai/data_engineering_book.

I hope xx123122 won't mind my mentioning that they emailed us about this post, which originally got caught in a spam filter. I invited them to post a comment giving the background to the project but they probably haven't seen my reply yet. Hopefully soon, given that the post struck a chord!

Edit: they did, and I've moved that post to the toptext.

reply
xx123122 14 hours ago
Huge thanks, dang! I really appreciate you rescuing the post from the filter and switching the URL to the English version.And thanks for pinning the context comment; it helps a lot since the project is quite extensive. We're thrilled it struck a chord.
reply
xx123122 14 hours ago
Thanks for sharing the direct link! Much appreciated.
reply
13pixels 9 hours ago
The 'Vector DB vs Keyword Search' section caught my eye. In your testing for RAG pipelines, where do you draw the line?

We've found keyword search (BM25) often beats semantic search for specific entity names/IDs, while vectors win on concepts. Do you cover hybrid search patterns/re-ranking in the book? That seems to be where most production systems end up.

reply
eshaham78 5 hours ago
Great question. In our production experience, the hybrid approach (BM25 + vector) typically wins for most use cases around 70/30 split favoring keyword for exact matches. The key insight is that reranking becomes critical - without it, you're just concatenating results and hoping. We typically use cross-encoder rerankers (like Cohere or custom fine-tuned models) to score the combined results. The break-even point for pure semantic search is usually when queries are abstract concept-heavy, not entity-specific.
reply
xx123122 8 hours ago
Thanks for the insight.We definitely plan to cover these patterns in future updates. Please excuse a slight delay as our team is currently celebrating the Chinese New Year. We'll be back to shipping code right after the holidays.OWO
reply
guillem_lefait 23 hours ago
The figures in the different chapters are in english (it's not the case for the image in README_en.md).
reply
xx123122 19 hours ago
Thanks for the heads-up! We noticed that discrepancy as well and have just updated the README_en.md with the correct English diagram. It should be displaying correctly now.
reply
alexott 16 hours ago
Parquet alone is not for modern data engineering. Delta, Iceberg should be in the list
reply
xx123122 14 hours ago
Thanks for the feedback! I've flagged this for the team member working on that section.We are taking a short break for the Chinese New Year, so updates might be a bit slower than usual.QAQ

Thanks for understanding, and Happy New Year!

reply
xx123122 20 hours ago
[dead]
reply
dvrp 23 hours ago
If you are interested in (2026-)internet scale data engineering challenges (e.g. 10-100s of petabyte processing) challenges and pre-training/mid-training/post-training scale challenges, please send me an email to d+data@krea.ai !
reply
rafavargascom 2 days ago
谢谢

How is possible a Chinese publication gets to the top in HN?

reply
xx123122 19 hours ago
Thanks for the support! We believe that code and engineering challenges are universal languages.

We are pleasantly surprised by the warm reception. We know the project (and our English localization) is still a Work in Progress, but we are committed to improving it to meet the high standards of the HN community. We'll keep shipping updates!

reply
heliumtera 11 hours ago
Just sprinkle a little llm on top and it gets there in no time
reply
rafavargascom 2 days ago
Nevermind.
reply
MUSTANG303 17 hours ago
[dead]
reply