Book Deep-Read · Fundamentals of Data Engineering · Chapter 6

Storage

Fundamentals of Data Engineering · Ch 6 · Storage · Reis & Housley · 2022

中文 →

What is this chapter about?

When you scroll back through orders you placed three years ago, or your company opens its sales dashboard every morning, the data behind it has to be kept somewhere first. This chapter is about where data lives and how it is laid out, so that it fits, comes back quickly, and does not cost a fortune. It is the foundation of the whole pipeline: collecting, cleaning and reporting all read from storage and write back to it.

A strange thing first

The most popular big-data storage today will not let you change a single word inside a file. Want to fix one row? You rewrite the whole file. It sounds clumsy, yet this "put the whole thing in, take the whole thing out" rule is exactly what makes it cheap and almost impossible to lose, which is why it became the standard floor of the data lake.

Why the old way is hard

How it works, intuitively

What it buys you / how to choose

Most teams now default to keeping everything in cheap object storage, in a column-oriented file format, and borrowing computing power only when they query; the most-used slice gets cached somewhere faster. One honest cost: this combination is cheap and grows without limit, but every remote read is slower than a local one, and the closer you push toward real time, the more you pay extra for speed.

Remember it in one line

Storage is not a hard drive; it is a whole set of fast-and-pricey versus slow-and-cheap choices: keep data in cheap, safe lockers, lay it out by column, borrow computing when you need it, and keep the hot stuff close at hand.

Want the three layers of storage (ingredients, systems, abstractions), how to choose between file, block and object storage, row versus columnar, warehouse versus lake versus lakehouse, why "separating compute from storage" is really a hybrid, plus evidence from BigQuery, Parquet and Iceberg? → Switch to the deep read