learn-data-pipelines-with-phoebe / Session 2 of 6
Learn Data Pipelines with Phoebe · Session 2 of 6

Where data is born: sources and the overnight pickup

Order #8412 did not start life as "data". It started as a thumb tapping "Buy" at 11:41pm, and the checkout app wrote it down as a side effect. Today we visit the farms: the four families of places where data is born, the 2am truck that collects from all of them, and the one genuinely useful question in the batch-versus-streaming debate - does your number need to be seconds fresh, or is tomorrow morning honestly fine?

🟢 Easiest No code, no jargon Anyone who reads dashboards 45 min + self-study depth
0-3 · Welcome 3-22 · Concepts 22-40 · Source inventory 40-45 · Q&A
Part 0

Why this session exists

Nobody types data into a warehouse. Data is a by-product of business happening: a customer checks out, an ad gets clicked, a partner emails a price list, Stripe settles a payment. Each of those moments gets written down by whichever system witnessed it - and those witnesses are the sources, the farms at the very start of the supply chain. If you can name your sources, you can answer the question that stumps most dashboard readers: "where does this number actually come from?"

Live - covered in session Self-study - read after ✦ Try it on your own dashboard ☕ The Daybreak case
★ What you walk out with today The four source families every company's data comes from (you will sort your own systems into them in 20 minutes), a plain-English decode of ingestion and of the tool names Fivetran and Airbyte, and a fair answer to "why isn't our dashboard real-time?" that will make your data team nod.
Remember the map Session 1 gave you six stages: source, ingest, store, transform, metrics, serve. Today we live inside the first two boxes - the farm and the truck. Everything downstream can only be as good as what gets picked up here.
Part 1 · covers the source families

The four families where data is born 7 min live

Companies feel like they have a hundred systems, but almost every source falls into one of four families: the app's own database, event streams, files, and third-party APIs. Learn the four shapes once and you can inventory any company's data landscape on one page - which is exactly what today's exercise does.

🛒App database orders, customers, subscriptions - Daybreak's checkout writes here 👆Event stream clicks, taps, page views - high volume, low ceremony 📁Files partner CSVs, spreadsheets people email around 🔌3rd-party APIs Stripe payments, ad platforms, support tools 🚚Ingest one scheduled pickup for all four families 🏬Shelf session 3's cleanup room Four different farms, one truck - by 2:15am everything sits on the same shelf.
🔍 Click to zoom - the four source families converging on one overnight pickup
LiveA walk through Daybreak's four farms4 min▶

Every source at Daybreak - and very likely at your company - is one of these:

  • The app database is where the business officially happens. When order #8412 was placed, the checkout app wrote a row: who, what, $42, 11:41pm. Orders, customers, subscriptions all live here. This is the most trusted family - the app itself would break if these records were wrong.
  • Event streams are the behavioral confetti around the business: every click, tap, page view, and abandoned cart. Enormous volume, low ceremony - a single visitor can generate hundreds of events before buying once. Great for "how do people browse?", never the place you count revenue.
  • Files are the unglamorous workhorses: the roaster emails a CSV of bean costs, a logistics partner drops a spreadsheet of delivery times. If it arrives as an attachment, it is a file source.
  • Third-party APIs are other companies' systems that hold your data: Stripe knows the payments, the ad platforms know the campaign spend, the support tool knows the complaints. You do not own these databases - you ask politely through an API, which is just a service window for software.
FamilyDaybreak exampleWhat it is good for
App databaseorders, customers, subscriptionscounting the business - revenue is born here
Event streamsite clicks, taps, cart eventsbehavior - how people browse before buying
Filesthe roaster's bean-cost CSVpartner data with no better door in
3rd-party APIsStripe, ad platforms, support toolfacts other companies hold on your behalf
Real worldThis four-way split is exactly how DataCamp's "Understanding Data Engineering" and DeepLearning.AI's source-systems course carve up the world - databases, files, streams, and external services. Different labels, same four farms. You now recognize the taxonomy the professionals use.
Self-studyThe fragile source: the human-maintained spreadsheet3 min▶

There is a fifth thing you will find in every inventory, and it deserves its own warning label: the spreadsheet a human fills in by hand. Regional targets someone updates monthly, a price list marketing "keeps current", a tab of store openings. Technically it is a file source. Practically it is the least reliable source in the building: no system witnessed the facts, a typo looks identical to a truth, columns get renamed on a whim, and the one person who understands it goes on holiday.

The point is not to mock it - sometimes a hand-kept sheet is genuinely the only home a fact has (targets and budgets are decisions, not events, so no app records them). The point is to flag it: when a dashboard number looks odd, the hand-maintained source is the first suspect, because it is the only farm with no machinery guaranteeing what got planted. Today's exercise asks you to mark yours with a warning flag.

Part 2 · covers ingestion

The overnight pickup 6 min live

Ingestion is the least mysterious word in the pipeline: it means a scheduled copy. At 2:00am, a job wakes up, visits each source, copies out what is new, and drops it on the warehouse shelf. That is the whole idea. The interesting parts are the two design choices hiding inside "copies out what is new".

LiveFull copy, incremental copy, and the pre-built truck4 min▶

Choice one: how much to haul. A full copy re-hauls the entire order history every night - simple, bulletproof, and increasingly slow as history grows. An incremental copy takes only new and changed rows since the last pickup - the design choice we spotted in session 1's 2am stop. Nearly every mature pipeline goes incremental, which quietly creates a new job: deciding what counts as "changed". That decision is invisible until the night it is wrong.

Choice two: who builds the truck. Copying data out of Stripe correctly - payments, refunds, disputes, currency quirks - is fiddly work, and thousands of companies need the exact same truck. So companies exist that sell pre-built ones:

  • Fivetran - decoded: a company selling ready-made pickup trucks for hundreds of common sources. You point it at Stripe and your warehouse; the copying, scheduling, and retrying is their problem.
  • Airbyte - decoded: the same job, with an open-source flavor teams can run and modify themselves.
Real worldThis is why nobody hand-builds a Stripe pickup anymore. In the modern data stack's standard layer map, Fivetran and Airbyte ARE the ingestion layer - the named trucks between the sources and the warehouse. When you hear those names in a meeting, the sentence being spoken is just "the truck".
Self-studyWhat happens when the farm changes shape2 min▶

One quiet danger to file away: the truck's route assumes the farm stays where it was. If Daybreak's app team renames a column, drops a field, or changes what "order status" can say, the 2am pickup may keep running and happily deliver something subtly different - or nothing at all - without anyone shouting. This is called a schema change, it starts at the source, and it is the single most common way pipelines break. Session 5 is where we watch it happen and learn how teams catch it. For now, just remember: the farm can move, and the truck will not always notice.

Part 3 · covers the freshness tradeoff

Batch vs streaming: the milk run and the conveyor belt 6 min live

"Why isn't our dashboard real-time?" is the most common question data teams field, and it has a genuinely good answer. There are two ways to run the pickup: batch, the scheduled milk run, and streaming, the always-moving conveyor belt. They are not good versus bad - they are cheap-and-calm versus expensive-and-instant.

🚚 Batch - the milk run (Daybreak's choice) 2:00am 2:00am 2:00am one big load per run, quiet roads in between - often nightly or hourly 🎢 Streaming - the conveyor belt events arrive one by one, seconds after they happen - the belt never stops Streaming is powerful and pricier - earn it with fraud checks or live ops, not a Monday dashboard.
🔍 Click to zoom - the milk run and the conveyor belt, side by side
LiveWhen the conveyor belt earns its cost4 min▶

Batch means scheduled runs - the truck departs at set times, hauls everything that accumulated, and rests. In practice that schedule is often nightly or hourly, tuned to what the business actually needs. It is simpler to build, cheaper to run, and easier to fix, because there are quiet hours between runs when nothing is moving.

Streaming means continuous - each event rides the belt within seconds of happening. That immediacy costs real money and real engineering: the belt never stops, so neither can the people responsible for it. The honest test is a single question: would a decision change if this number were seconds fresh instead of hours fresh?

  • Yes, stream it: fraud detection (a stolen card must be blocked mid-purchase, not tomorrow), live operations like delivery tracking or inventory that sells out in minutes.
  • No, batch is honestly fine: the Monday revenue dashboard. Daybreak's executives read it at 9am with coffee; whether order #8412 arrived at 2:15am or 2:15pm Sunday changes nothing they decide. Daybreak runs batch, and should.
Batch - the milk runStreaming - the conveyor belt
Freshnesshours - often nightly or hourlyseconds
Cost and effortlower - quiet hours between runshigher - the belt never stops
Fixing problemscalmer - patch, then re-run the batchharder - repairs happen on a moving belt
Earns its keep fordaily dashboards, weekly reportsfraud checks, live operations
Real worldAWS's own definition of batch processing is exactly this shape: jobs that run on a schedule, processing accumulated data in groups - with no universal law about how often. When a vendor tells you everything must be real-time, remember that the biggest cloud on earth still describes the milk run as a first-class pattern.
Self-studyHow to answer "why isn't it real-time?" kindly2 min▶

A script for the meeting where this comes up: "It could be - streaming is a real option. It costs meaningfully more to build and to keep healthy, so the question is which decision we would make differently with second-fresh numbers. If we can name one, let's take it to the data team. If we can't, the overnight batch is giving us the same decisions for a fraction of the cost." This reframes the conversation from speed as status to freshness as a purchase - and data teams will love you for it. Session 4 picks this thread up when we talk about what freshness each consumer of the pipeline actually needs.

Everyone works

Inventory your sources 🗺️ ★ 18 min · everyone works

Notebook exercise, no laptop needed. You are going to draw the left edge of your company's pipeline map - the farms. Most people have never seen their own data landscape on one page, and it takes about fifteen minutes to fix that.

List every system where business happens. Where do sales get recorded? Where do customers click? What arrives as email attachments? Which outside services hold your money, your ads, your support tickets? Brain-dump first, tidy later - aim for eight to fifteen systems.

Sort them into the four families. App database, event stream, file, or third-party API. When unsure, ask "did a system witness this, or did a human type it?" and "do we own the database, or do we ask through a service window?"

Star the ones feeding your main dashboard. Usually two to four sources carry the numbers you actually look at weekly. The stars are your dashboard's true parents.

Flag every human-maintained spreadsheet with a warning mark. Targets, price lists, hand-kept trackers. Each flag is a fragile farm - the first suspect the next time a number looks odd.

Guess each starred source's pickup schedule. Overnight batch? Hourly? Continuous? Look for "last updated" stamps on the dashboards they feed - the stamp is the truck's timetable, printed in public.

Ask the streaming question. For each starred source: would any decision change if this were seconds fresh? Write yes or no. Most honest inventories come back nearly all no - which is a finding, not a failure.

✦ If you finish early Pick your most-flagged fragile source and draft the one-line question you would ask its owner: "what happens to the dashboard if this sheet is late or wrong?" You are two sessions early to the freshness lesson, and it shows.
Before next session

Homework 📝 ◐ 20 minutes

Check yourself

Three questions before you go 🎯 ◐ 90 seconds

1 · The four families where data is born are...

The farm taxonomy: the app's own database (orders, customers), event streams (clicks and taps), files (CSVs people email), and third-party APIs (Stripe, ad platforms). Option A lists downstream stops, and option C describes pickup styles, not birthplaces.

2 · The fairest one-line summary of batch versus streaming is...

Neither is legacy and neither is sloppier - they trade money and complexity for freshness. Fraud detection earns the conveyor belt; the Monday 9am dashboard does not, which is why Daybreak runs the milk run and should.

3 · Fivetran and Airbyte are best described as...

They live in the ingest box: ready-made connectors that copy data out of Stripe, Shopify, ad platforms and hundreds more, on a schedule, so nobody hand-builds the same truck twice. Storage is the warehouse's job; display is the serve stage.

Coverage, honestly

What this session covered from the official universe

◐DeepLearning.AI Data Engineering - course 2 (Source Systems, Ingestion)source families and ingestion introduced in plain English - the technical depth stays with DLAI
✓DataCamp Understanding Data Engineering - ch 3moving data, batch vs streaming, scheduling - taught to the 80% bar for this audience
✓AWS batch-processing definitionscheduled runs on accumulated data, "often nightly or hourly" - no universal cadence claimed

Certificates, videos, and graded assessments stay with the official providers - this course teaches the working core in plain English.

Session 2 cheat sheet

Data is a by-productNobody types data into a warehouse. Business happens; systems write it down as a side effect. Those witnesses are the sources.
The four familiesApp database (orders) · event streams (clicks) · files (emailed CSVs) · third-party APIs (Stripe, ads). Every source fits one.
The fragile sourceA human-maintained spreadsheet is a source too - the least reliable kind. Flag it; it is the first suspect when numbers look odd.
Ingestion, decodedA scheduled copy. At 2am a job visits each source, copies what is new, drops it on the shelf. That is the whole idea.
Full vs incrementalRe-haul everything vs only new-and-changed rows. Incremental wins at scale, and quietly creates the "what counts as changed?" decision.
Fivetran / AirbyteCompanies selling pre-built pickup trucks for hundreds of common sources - so nobody hand-builds a Stripe pickup again.
Batch = milk runScheduled runs, often nightly or hourly. Cheaper, calmer, honestly fine for the Monday dashboard. Daybreak's choice.
Streaming = conveyor beltContinuous, seconds fresh, costs real money. Earn it with fraud detection or live ops - not with a dashboard read once a day.