DT5: Warehouse foundations

Lesson 5 of 5 · reading 15–25 minutes; practice and project time is on the module page

Access, governance and personal data

🎯You'll be able to

Classify data by sensitivity, give each group of people the access they need, keep personal data out of places it doesn't need to be, and know the main duties under India's data protection law.

🏠The everyday picture

In a hospital, the receptionist sees appointment times, the doctor sees the medical record, and the accountant sees the bill. Nobody sees everything just because it's all in one building.

📘What it really is

📝A worked example

Input: in the solution, list every column in the marts schema with select table_name, column_name from information_schema.columns where table_schema = 'marts'.

Expected output: no full_name, phone or email. Customers appear only as a 64-character customer_key, with signup_month (not the exact date) and the area. The starter's dim_customers has all three personal columns and an unsalted MD5 of the phone number as its "anonymous" key.

🌍Where it's used

📝Case scenario

A food-delivery company gave every analyst read access to a table of customer addresses and phone numbers "for convenience". A shared query result with 2,000 phone numbers was pasted into a public channel. Removing personal columns from marts, and limiting the customer table to the support team, would have made the shared result harmless.

🖱️Try it

Classify every column in SabziSathi's raw/customers.csv (public, internal, personal). Then write which roles should read the customer export, the clean layer and the marts. Success: no analyst role needs the customer export.

⚠️Common mistakes

🛠️For your project

Project 2 test 3 checks no mart column or value holds personal data, and Project 3 test 6 checks the dashboard.

✅Quick check

What's the strongest protection for personal data in a warehouse?

Show the answer

Not copying it where it isn't needed.

Name two duties under India's DPDP Act.

Show the answer

For example: collect only what's needed for a stated purpose, keep it secure, report breaches, and let people correct or erase it.

← PreviousQueries that read less
ProLearners Assist