CS 591 A1

Data Systems Architectures


Class at a glance

Class: Tu/Th 12:30-1:45pm, MCS B23
Instructor: Manos Athanassoulis 

Teaching Assistant: Subhadeep Sarkar 
(Office Hours: MCS 283, M/W 2-3pm)

Office: MCS 279
OH: Tu 2-3pm/Th 2:30-3:30pm

Discussion on Piazza

Announcements

  • 2019/1/25: More details about the projects are available in the project page.
  • 2019/1/23: Slides for Class 1 are available. We will be posting slides as soon as possible after class.
  • 2019/1/22: Register for presentations!
  • 2019/1/20: The schedule is populated with the papers to discuss.
  • 2019/1/17: Syllabus is now online.
  • 2018/5/11: Website is up. Stay tuned for more!
  • 2018/5/11: Class starts on 1/22.


Class Milestones - Important Dates

  • February 4th, last day to add (any) class
  • February 8th, select a project
  • February 22nd, come up with a proposal (which you have discussed in OH)
  • March 8th, submit your mid-way project report
  • April 28th, submit your final project report/code

Also, before each class submit your paper review!



Class Schedule

Here you can find the tentative schedule of the class (which might change as the semester progresses).

Class : Introduction to Data Systems and CS591

In this class we will discuss the basics of data systems and the goals and structure of the course.

Readings

Class : Data Systems Architectures Essentials – Part 1

In this class we discuss the fundamental components that comprise a database system. We will see the commonalities and the differences of the main database system architectures and we will discuss why we have several different ones.

Readings

Class : Data Systems Architectures Essentials – Part 2

In this class we continue discussing data systems architectures and the basics for modern systems including relational, graph systems, and key-value stores.

Readings

Class : Class Project Overview

In this class the students will be introduced to the class semester project.

Readings

Class : Storage Layouts: Row-Stores vs. Column-Stores

Readings

Class : Storage Layouts: Adaptive & Hybrid Layouts

Readings

Class : New Hardware: Data Systems for Flash

Readings

Class : New Hardware: Data Systems for Multi-Core

Readings

Class : Indexing A: Updateable Bitmaps

Readings

Class : Indexing B: Access Path Selection

Readings

Class : Modern Storage Engines: Log-Structured Merge Trees

Readings

Research Talk : Scaling Write-Intensive Key-Value Stores

Visiting lecture from Niv Dayan, Harvard University

Bio: Niv Dayan is a postdoc at the Data Systems Lab at Harvard. He holds a PhD from the IT University of Copenhagen. Niv works at the intersection of systems and theory for designing efficient data storage, and in his current work he identifies and maps the fundamentally best scalability trade-offs for key-value stores.

Class : Modern Storage Engines: HTAP Systems

Readings

Class : Indexing C: Data Skipping

Readings

Class : Indexing D: Adaptive Indexing

Readings

Research Talk : Storage & Indexing for Data Series (*tentative title)

Visiting lecture from Kostas Zoumpatianos, Harvard University

Research Talk : Introduction to Time-Series Data Mining

Visiting lecture from John Paparrizos, University of Chicago

Class : In-Situ Data Processing: Efficiently Accessing Raw Data Files

Readings

Class : Scientific Databases: Multi-dimensional Data Management

Readings

Class : Distributed Databases: Global Distributed Systems

Readings

Class : Map/Reduce: Data Management at Scale

Readings

Class : Data Systems for ML: Data Processing Primitives for ML

Readings

Class : ML for Data Systems: Automatic Data System Design

Readings

Class : Indexing E: Learned Indexes

Readings

Class : Indexing F: The Periodic Table of Access Methods

Readings

Class : Project Presentations A

Class : Project Presentations B