DATA2001 · Data Science, Big Data and Data Variety
Data Science, Big Data and Data Variety
DATA2001 Data Science, Big Data and Data Variety is the University of Sydney's second-year, 6-credit-point unit (dual-coded with the advanced stream DATA2901) that teaches you to ingest, combine and analyse data across every major data model. The first half builds the database and analysis foundations — conceptual design with the Entity-Relationship model, the relational model and SQL in PostgreSQL, data analysis in Python with Pandas and NumPy, and the storage-aware ideas (memory hierarchy, indexing, partitioning) that make analytics scale. The second half is a tour of data variety: web scraping, web APIs and NoSQL (JSON/XML), geospatial data, time-series and health data, text (NLP) and image processing — the unit's core message being that different data models demand different tooling. Assessment is continuous and cumulative: a weekly revision quiz (5%), an Early Feedback Task (2%), an 8% SQL Challenge on Ed, a 15% pen-and-paper midterm covering Weeks 4-8, a 20% group assignment, and a 50% final exam in the formal examination period that covers all unit content (Weeks 1-13). The exact duration, section structure and open/closed-book status of the final are not published in the unit materials, so confirm them on Canvas and the unit outline. Because the final is half the mark and spans everything, steady weekly work — not a STUVAC scramble — protects both your understanding and your Weighted Average Mark (WAM).
What DATA2001 covers
DATA2001 is a 6-credit-point, second-year USyd unit that builds from database foundations (ER modelling, SQL, Python) into scalable analytics and then a tour of data variety — web, spatial, time-series, text and image data. Assessment stacks continuous checks (weekly quizzes, an early feedback task, an 8% SQL Challenge and a 20% group assignment) onto a 15% midterm and a 50% final exam covering the whole unit, so the chapters below follow the teaching weeks and point you to what each assessment tests.
How DATA2001 is assessed
| Component | Weight | Format |
|---|---|---|
| Weekly revision quiz | 5% | Canvas MCQ quiz, weeks 2-12, 0.5 mark per week, one attempt; Week X covers Week X-1 |
| Early Feedback Task (EFT) | 2% | Week 3, 15-min Canvas MCQ quiz in tutorial time, covers weeks 1-2 |
| SQL Challenge | 8% | Weeks 6/7 (test Week 7), 1-hour Ed 'write SQL' task in tutorial time; last submission marked |
| Midterm quiz | 15% | Week 9, 50-min pen-and-paper (MCQs + short answer) in lecture time, covers weeks 4-8 |
| Group Assignment | 20% | Released Week 7, due Week 11; PDF report + Jupyter notebook + tutor conversation; group of 3-4, mark contribution-scaled (demo mandatory for any marks) |
| Final Exam | 50% | Formal examination period; covers all unit content; duration/structure/open-closed confirm on Canvas / the unit outline |
SQL analysis: average mark per country with a two-part HAVING
- +1Write the query. Join on the key, group by the grouping attribute, and put the two group-level tests in HAVING (not WHERE, because they filter groups after aggregation): SELECT s.country, AVG(e.mark) FROM Student s JOIN Enrolled e ON s.sid = e.sid GROUP BY s.country HAVING COUNT(*) > 1 AND AVG(e.mark) > 65.
- +1Evaluate FROM/JOIN then GROUP BY: the join pairs each student with their mark, and grouping by country gives three groups — AU {70, 80}, NZ {60, 50}, SG {90}.
- +1Compute the per-group aggregates the HAVING needs: AU has COUNT = 2, AVG = (70 + 80) ÷ 2 = 75; NZ has COUNT = 2, AVG = (60 + 50) ÷ 2 = 55; SG has COUNT = 1, AVG = 90.
- +1Apply HAVING COUNT(*) > 1: AU and NZ pass (2 each), SG is dropped (only 1 student). Then apply AVG(mark) > 65 to the survivors: AU (75) passes, NZ (55) is dropped.
- +1SELECT the surviving groups: only AU remains, with an average mark of 75. Both HAVING conditions must hold, so SG fails on the count and NZ fails on the average.
Key terms
- Entity-Relationship (ER) model
- A graphical conceptual-design notation (Peter Chen, 1976) that captures information requirements as entity sets (rectangles), attributes (ellipses; double for multi-valued) and relationships (diamonds), with the primary key underlined. It says nothing about physical storage and later maps to a relational schema.
- Primary key vs candidate key
- A candidate key is a minimal set of attributes that uniquely identifies each row (no proper subset still identifies it); a table may have several. The primary key is the one candidate key chosen as the identifier — it is underlined in an ER diagram, must be unique, and automatically disallows NULLs.
- Declarative query (SQL)
- SQL describes WHAT data you want, not HOW to fetch it. A SELECT-FROM-WHERE query is evaluated conceptually as FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY, and the result is itself a table that may contain duplicate rows unless you use DISTINCT.
- Index
- A separate pointer data structure that lets the database find rows without scanning the whole table (like a book's index). A clustered index stores rows in key order (one per table); a non-clustered index keeps key+pointer while the table stays put (many allowed); a covering index holds every column a query needs, so no table lookup is required.
- Semi-structured data
- Self-describing, schema-flexible formats such as HTML, XML and JSON — tags or key-value pairs carry the structure with each record, unlike a strict relational table with fixed columns. PostgreSQL stores flexible/optional fields in a JSONB column and queries it with -> (returns JSON) and ->> (returns text).
- TF-IDF
- A term-weighting scheme for text: TF-IDF(t, d) = TF(t, d) × IDF(t), where TF = freq(t, d) ÷ (words in d) is local frequency and IDF = log(N ÷ n_t) is corpus rarity (N documents, n_t containing t). A term scores high when it is frequent in one document yet rare across the corpus.
DATA2001 FAQ
Is DATA2001 hard?
It is broad rather than deeply mathematical. The unit spans a lot of tools — ER modelling, SQL in PostgreSQL, Pandas and NumPy, web scraping, APIs, and then a fast tour of spatial, time-series, text and image data — so the real challenge is keeping many small skills and vocabularies straight rather than any single hard idea. The quantitative parts (summary statistics, TF-IDF, z-scores, cost intuition for indexing) are light and use standard formulas. Because assessment is continuous — weekly quizzes, an 8% SQL Challenge, a 15% midterm and a 20% group assignment all feed into the 50% final — students who write SQL and clean data hands-on each week, rather than cramming through STUVAC, tend to find it manageable. Steady work also protects your Weighted Average Mark (WAM). It assumes prior Python (from DATA1002 or an equivalent), so brush that up early.
Can AI help me with DATA2001?
Yes, as a step-by-step study aid. Sia is an AI tutor built to mirror how DATA2001 is actually taught and assessed at the University of Sydney: it can walk you through an ER-to-relational mapping, a SELECT-JOIN-GROUP BY-HAVING query, a Pandas cleaning pipeline, an indexing decision, a bounding-box spatial query or a TF-IDF calculation one line at a time, and it checks your reasoning as you go. Bring your own tutorial or past-exam question and ask Sia to explain each step. It does not do graded assessment for you — not the SQL Challenge, the midterm, the group assignment or the final exam — and the University of Sydney academic-integrity policy still applies. Use it to understand the method, not to produce work you submit.
Where can I find past exam papers / practice for DATA2001?
Start on Canvas, where the unit posts revision material, the weekly quizzes and any released practice, and search the University of Sydney Library's past-exam-paper collection for the unit. Your tutorial sheets and the Ed Lessons (SQL, NumPy, Python) are the closest match to the SQL Challenge and the short-answer style of the midterm and final. This guide also includes a re-authored practice set that mirrors the exam's shape — SQL analysis, ER modelling, Pandas/stats, indexing, spatial and data-variety questions — with fresh numbers, and you can ask Sia to generate extra practice in the same style and explain each step. Treat any third-party 'model answers' with caution and confirm what is officially provided on Canvas.
What are the DATA2001 assessment rules and is there a hurdle?
the assessment table lists a weekly revision quiz (5%), an Early Feedback Task (2%), an 8% SQL Challenge, a 15% midterm, a 20% group assignment and a 50% final exam covering all content — summing to 100%. No component is stated as a pass/hurdle requirement in the unit materials, so do not assume one; confirm the current rules on Canvas and the unit outline. The group assignment is contribution-scaled and requires a short tutor demo for any marks (a scaler, not a whole-unit hurdle). Late work is penalised (roughly 5% of available marks per day in the source materials) — check the exact late policy, the final-exam duration and its open/closed-book status on your Canvas Assessments page.
Do I need to know Python and PostgreSQL before starting?
You need prior Python — DATA2001 assumes procedural programming from DATA1002 (or DATA1902/INFO1110/an equivalent) and moves quickly into Pandas, NumPy and the psycopg2 DB-API. You do not need SQL or databases beforehand; the unit teaches the relational model, SQL and PostgreSQL (via pgAdmin) from the ground up in Weeks 2-3, which is why the 8% SQL Challenge sits in Week 7. Install and connect to PostgreSQL early via Canvas instructions so the SQL Challenge and the group assignment's database ingestion do not catch you out. If any tool feels rusty, ask Sia to drill the basics with worked examples before the graded tasks.
How to study for the exam
Treat DATA2001 as a stack of hands-on skills, not a reading unit, and rehearse each on real data every week rather than cramming through STUVAC. For the foundations half (Weeks 1-5), draw an ER diagram and map it to relational tables, then write SELECT-JOIN-GROUP BY-HAVING queries in PostgreSQL until the six-step clause evaluation order (FROM → WHERE → GROUP BY → HAVING → SELECT → ORDER BY) is automatic — this is exactly what the 8% SQL Challenge tests under time pressure. Drill the Pandas/NumPy cleaning-and-statistics workflow (load a CSV, drop duplicates and NAs, compute mean/median/variance with the right sample-vs-population divisor) and be able to justify an index choice (clustered vs non-clustered vs covering) and a partitioning plan. For the data-variety half (Weeks 6-12), build a one-line mental model per model: HTML/DOM scraping, REST-API-to-JSON-to-JSONB, PostGIS bounding-box and ::geography distance, point-vs-sequence time-series storage, the TF-IDF text pipeline, and image thresholding. The midterm (Week 9) covers Weeks 4-8, so consolidate those first; the 50% final covers everything, so leave time to revisit the ER/SQL foundations too. When a step won't click, ask Sia to explain that single step a different way and set you a fresh practice question in the same style — it teaches the method and checks your reasoning, and it never substitutes for your own graded work. Confirm the exam date, room, duration and open/closed-book status on Canvas and the University of Sydney exam timetable; the final sits in the Semester 1, 2027 formal examination period (around June 2027).
Your AI Data Science tutor for DATA2001
Stuck on a hard DATA2001 question? Sia is AskSia’s AI Data Science tutor — ask any DATA2001 Data Science, Big Data and Data Variety question and get a clear, step-by-step explanation grounded in how the course is actually taught and assessed. Read this whole study guide free, then take your hardest questions to Sia.