About this Course
4.3
657 ratings
140 reviews
Data analysis has replaced data acquisition as the bottleneck to evidence-based decision making --- we are drowning in it. Extracting knowledge from large, heterogeneous, and noisy datasets requires not only powerful computing resources, but the programming abstractions to use them effectively. The abstractions that emerged in the last decade blend ideas from parallel databases, distributed systems, and programming languages to create a new class of scalable data analytics platforms that form the foundation for data science at realistic scales. In this course, you will learn the landscape of relevant systems, the principles on which they rely, their tradeoffs, and how to evaluate their utility against your requirements. You will learn how practical systems were derived from the frontier of research in computer science and what systems are coming on the horizon. Cloud computing, SQL and NoSQL databases, MapReduce and the ecosystem it spawned, Spark and its contemporaries, and specialized systems for graphs and arrays will be covered. You will also learn the history and context of data science, the skills, challenges, and methodologies the term implies, and how to structure a data science project. At the end of this course, you will be able to: Learning Goals: 1. Describe common patterns, challenges, and approaches associated with data science projects, and what makes them different from projects in related fields. 2. Identify and use the programming models associated with scalable data manipulation, including relational algebra, mapreduce, and other data flow models. 3. Use database technology adapted for large-scale analytics, including the concepts driving parallel databases, parallel query processing, and in-database analytics 4. Evaluate key-value stores and NoSQL systems, describe their tradeoffs with comparable systems, the details of important examples in the space, and future trends. 5. “Think” in MapReduce to effectively write algorithms for systems including Hadoop and Spark. You will understand their limitations, design details, their relationship to databases, and their associated ecosystem of algorithms, extensions, and languages. write programs in Spark 6. Describe the landscape of specialized Big Data systems for graphs, arrays, and streams...
Stacks
Globe

100% online courses

Start instantly and learn at your own schedule.
Calendar

Flexible deadlines

Reset deadlines in accordance to your schedule.
Clock

Approx. 20 hours to complete

Suggested: 4 weeks of study, 6-8 hours/week...
Comment Dots

English

Subtitles: English...

Skills you will gain

Relational AlgebraPython ProgrammingMapreduceSQL
Stacks
Globe

100% online courses

Start instantly and learn at your own schedule.
Calendar

Flexible deadlines

Reset deadlines in accordance to your schedule.
Clock

Approx. 20 hours to complete

Suggested: 4 weeks of study, 6-8 hours/week...
Comment Dots

English

Subtitles: English...

Syllabus - What you will learn from this course

Week
1
Clock
6 hours to complete

Data Science Context and Concepts

Understand the terminology and recurring principles associated with data science, and understand the structure of data science projects and emerging methodologies to approach them. Why does this emerging field exist? How does it relate to other fields? How does this course distinguish itself? What do data science projects look like, and how should they be approached? What are some examples of data science projects? ...
Reading
22 videos (Total 125 min), 4 readings, 1 quiz
Video22 videos
Appetite Whetting: Extreme Weather2m
Appetite Whetting: Digital Humanities8m
Appetite Whetting: Bibliometrics4m
Appetite Whetting: Food, Music, Public Health5m
Appetite Whetting: Public Health cont'd, Earthquakes, Legal4m
Characterizing Data Science5m
Characterizing Data Science, cont'd5m
Distinguishing Data Science from Related Topics4m
Four Dimensions of Data Science6m
Tools vs. Abstractions7m
Desktop Scale vs. Cloud Scale5m
Hackers vs. Analysts2m
Structs vs. Stats5m
Structs vs. Stats cont'd5m
A Fourth Paradigm of Science3m
Data-Intensive Science Examples6m
Big Data and the 3 Vs5m
Big Data Definitions4m
Big Data Sources6m
Course Logistics7m
Twitter Assignment: Getting Started14m
Reading4 readings
Supplementary: Three-Course Reading List10m
Supplementary: Resources for Learning Python10m
Supplementary: Class Virtual Machine10m
Supplementary: Github Instructions10m
Week
2
Clock
5 hours to complete

Relational Databases and the Relational Algebra

Relational Databases are the workhouse of large-scale data management. Although originally motivated by problems in enterprise operations, they have proven remarkably capable for analytics as well. But most importantly, the principles underlying relational databases are universal in managing, manipulating, and analyzing data at scale. Even as the landscape of large-scale data systems has expanded dramatically in the last decade, relational models and languages have remained a unifying concept. For working with large-scale data, there is no more important programming model to learn....
Reading
24 videos (Total 122 min), 1 quiz
Video24 videos
From Data Models to Databases4m
Pre-Relational Databases5m
Motivating Relational Databases3m
Relational Databases: Key Ideas4m
Algebraic Optimization Overview6m
Relational Algebra Overview4m
Relational Algebra Operators: Union, Difference, Selection6m
Relational Algebra Operators: Projection, Cross Product4m
Relational Algebra Operators: Cross Product cont'd, Join6m
Relational Algebra Operators: Outer Join4m
Relational Algebra Operators: Theta-Join4m
From SQL to RA6m
Thinking in RA: Logical Query Plans4m
Practical SQL: Binning Timeseries5m
Practical SQL: Genomic Intervals6m
User-Defined Functions3m
Support for User-Defined Functions4m
Optimization: Physical Query Plans5m
Optimization: Choosing Physical Plans4m
Declarative Languages5m
Declarative Languages: More Examples4m
Views: Logical Data Independence5m
Indexes6m
Week
3
Clock
5 hours to complete

MapReduce and Parallel Dataflow Programming

The MapReduce programming model (as distinct from its implementations) was proposed as a simplifying abstraction for parallel manipulation of massive datasets, and remains an important concept to know when using and evaluating modern big data platforms. ...
Reading
26 videos (Total 122 min), 1 quiz
Video26 videos
A Sketch of Algorithmic Complexity5m
A Sketch of Data-Parallel Algorithms5m
"Pleasingly Parallel" Algorithms4m
More General Distributed Algorithms4m
MapReduce Abstraction4m
MapReduce Data Model3m
Map and Reduce Functions2m
MapReduce Simple Example3m
MapReduce Simple Example cont'd3m
MapReduce Example: Word Length Histogram2m
MapReduce Examples: Inverted Index, Join6m
Relational Join: Map Phase4m
Relational Join: Reduce Phase4m
Simple Social Network Analysis: Counting Friends3m
Matrix Multiply Overview5m
Matrix Multiply Illustrated4m
Shared Nothing Computing4m
MapReduce Implementation5m
MapReduce Phases6m
A Design Space for Large-Scale Data Systems4m
Parallel and Distributed Query Processing5m
Teradata Example, MR Extensions5m
RDBMS vs. MapReduce: Features6m
RDBMS vs. Hadoop: Grep5m
RDBMS vs. Hadoop: Select, Aggregate, Join3m
Week
4
Clock
3 hours to complete

NoSQL: Systems and Concepts

NoSQL systems are purely about scale rather than analytics, and are arguably less relevant for the practicing data scientist. However, they occupy an important place in many practical big data platform architectures, and data scientists need to understand their limitations and strengths to use them effectively....
Reading
36 videos (Total 166 min)
Video36 videos
NoSQL Roundup4m
Relaxing Consistency Guarantees3m
Two-Phase Commit and Consensus Protocols5m
Eventual Consistency4m
CAP Theorem4m
Types of NoSQL Systems4m
ACID, Major Impact Systems4m
Memcached: Consistent Hashing2m
Consistent Hashing, cont'd4m
DynamoDB: Vector Clocks5m
Vector Clocks, cont'd5m
CouchDB Overview4m
CouchB Views3m
BigTable Overview5m
BigTable Implementation5m
HBase, Megastore3m
Spanner5m
Spanner cont'd, Google Systems6m
MapReduce-based Systems5m
Bringing Back Joins4m
NoSQL Rebuttal4m
Almost SQL: Pig4m
Pig Architecture and Performance3m
Data Model3m
Load, Filter, Group5m
Group, Distinct, Foreach, Flatten5m
CoGroup, Join3m
Join Algorithms3m
Skew5m
Other Commands3m
Evaluation Walkthrough3m
Review6m
Context3m
Spark Examples5m
RDDs, Benefits6m
Clock
2 hours to complete

Graph Analytics

Graph-structured data are increasingly common in data science contexts due to their ubiquity in modeling the communication between entities: people (social networks), computers (Internet communication), cities and countries (transportation networks), or corporations (financial transactions). Learn the common algorithms for extracting information from graph data and how to scale them up. ...
Reading
21 videos (Total 91 min)
Video21 videos
Structural Analysis4m
Degree Histograms, Structure of the Web4m
Connectivity and Centrality4m
PageRank3m
PageRank in more Detail3m
Traversal Tasks: Spanning Trees and Circuits5m
Traversal Tasks: Maximum Flow1m
Pattern Matching6m
Querying Edge Tables4m
Relational Algebra and Datalog for Graphs4m
Querying Hybrid Graph/Relational Data3m
Graph Query Example: NSA6m
Graph Query Example: Recursion4m
Evaluation of Recursive Programs3m
Recursive Queries in MapReduce4m
The End-Game Problem3m
Representation: Edge Table, Adjacency List4m
Representation: Adjacency Matrix2m
PageRank in MapReduce5m
PageRank in Pregel5m
4.3

Top Reviews

By HAJan 11th 2016

Great course that strikes a balance between teaching general principles and concepts, and providing hands-on technical skills and practice.\n\nThe lessons are well designed and clearly conveyed.

By SLMay 28th 2016

I like the breadth of coverage of this class. Each of the exercise is a gem in that I get to learn something new also. I would highly recommend this even to experience practitioner also.

Instructor

Bill Howe

Director of Research
Scalable Data Analytics

About University of Washington

Founded in 1861, the University of Washington is one of the oldest state-supported institutions of higher education on the West Coast and is one of the preeminent research universities in the world....

About the Data Science at Scale Specialization

Learn scalable data management, evaluate big data technologies, and design effective visualizations. This Specialization covers intermediate topics in data science. You will gain hands-on experience with scalable SQL and NoSQL data management solutions, data mining algorithms, and practical statistical and machine learning concepts. You will also learn to visualize data and communicate results, and you’ll explore legal and ethical issues that arise in working with big data. In the final Capstone Project, developed in partnership with the digital internship platform Coursolve, you’ll apply your new skills to a real-world data science project....
Data Science at Scale

Frequently Asked Questions

  • Once you enroll for a Certificate, you’ll have access to all videos, quizzes, and programming assignments (if applicable). Peer review assignments can only be submitted and reviewed once your session has begun. If you choose to explore the course without purchasing, you may not be able to access certain assignments.

  • When you enroll in the course, you get access to all of the courses in the Specialization, and you earn a certificate when you complete the work. Your electronic Certificate will be added to your Accomplishments page - from there, you can print your Certificate or add it to your LinkedIn profile. If you only want to read and view the course content, you can audit the course for free.

More questions? Visit the Learner Help Center.