Jan 11, 2016 |
Course Introduction and History of Database Systems
|
|
|
Jan 13, 2016 |
In-Memory Databases
- H. Garcia-Molina, et al., Main Memory Database Systems: An Overview, in IEEE Trans. on Knowl. and Data Eng., 1992
- S. Harizopoulos, et al., OLTP Through the Looking Glass, and What We Found There, in SIGMOD, 2008
(Optional)
- T.J. Lehman, et al., Query Processing in Main Memory Database Management Systems, in SIGMOD, 1987
(Optional)
|
|
|
Jan 18, 2016 |
Martin Luther King Day — No Class |
— |
— |
Jan 20, 2016 |
Concurrency Control I
|
|
|
Jan 25, 2016 |
Concurrency Control II — Multi-versioning
- P.-A. Larson, et al., High-Performance Concurrency Control Mechanisms for Main-Memory Databases, in VLDB, 2011
- J. Levandoski, et al., High Performance Transactions in Deuteronomy, in CIDR, 2015
(Optional)
- T. Neumann, et al., Fast Serializable Multi-Version Concurrency Control for Main-Memory Database Systems, in SIGMOD, 2015
(Optional)
- D. Schwalb, et al., Efficient Transaction Processing for Hyrise in Mixed Workload Environments, in IMDM, 2014
(Optional)
|
|
|
Jan 27, 2016 |
Concurrency Control III — Optimistic
|
|
|
Feb 01, 2016 |
Indexes I — Locking & Latching
|
|
|
Feb 03, 2016 |
Indexes II — OLTP
- J. Levandoski, et al., The Bw-Tree: A B-tree for New Hardware, in ICDE, 2013
- W. Pugh, Concurrent Maintenance of Skip Lists, in University of Maryland Tech Report, 1990
(Optional)
- V. Leis, et al., The Adaptive Radix Tree: ARTful Indexing for Main-Memory Databases, in ICDE, 2013
(Optional)
|
|
|
Feb 08, 2016 |
Indexes III — OLAP
- P.-A. Larson, et al., SQL Server Column Store Indexes, in SIGMOD, 2011
- C.Y. Chan, et al., Bitmap Index Design and Evaluation, in SIGMOD, 1998
(Optional)
- L. Sidirourgos, et al., Column Imprints: A Secondary Index Structure, in SIGMOD, 2013
(Optional)
- J. Rao, et al., Cache Conscious Indexing for Decision-Support in Main Memory, in VLDB, 1999
(Optional)
|
|
|
Feb 10, 2016 |
Storage Models & Data Layout
- I. Alagiannis, et al., H2O: A Hands-free Adaptive Store, in SIGMOD, 2014
- M. Grund, et al., HYRISE: a main memory hybrid storage engine, in VLDB, 2010
(Optional)
- D. Abadi, et al., Column-Stores vs. Row-Stores: How Different Are They, in SIGMOD, 2008
(Optional)
|
|
|
Feb 15, 2016 |
Query Execution & Scheduling
- V. Leis, et al., Morsel-Driven Parallelism: A NUMA-Aware Query Evaluation Framework for the Many-Core Age, in SIGMOD, 2014
- I. Psaroudakis, et al., Scaling Up Concurrent Main-Memory Column-Store Scans: Towards Adaptive NUMA-aware Data and Task Placement, in VLDB, 2015
(Optional)
- I. Psaroudakis, et al., Task Scheduling for Highly Concurrent Analytical and Transactional Main-Memory Workloads, in ADMS, 2013
(Optional)
- D. Porobic, et al., OLTP on Hardware Islands, in VLDB, 2012
(Optional)
|
|
|
Feb 17, 2016 |
Join Alogrithms I — Hashing
|
|
|
Feb 22, 2016 |
Join Alogrithms II — Sort-Merge
- C. Balkesen, et al., Multi-Core, Main-Memory Joins: Sort vs. Hash Revisited, in VLDB, 2013
- C. Kim, et al., Sort vs. Hash Revisited: Fast Join Implementation on Modern Multi-Core CPUs, in VLDB, 2009
(Optional)
- G. Graefe, et al., Sort vs. Hash Revisited, in TKDE, 1994
(Optional)
- M.-C. Albutiu, et al., Massively Parallel Sort-Merge Joins in Main Memory Multi-Core Database Systems, in VLDB, 2012
(Optional)
|
|
|
Feb 24, 2016 |
Logging & Recovery I — Physical Logging
- W. Zheng, et al., Fast Databases with Fast Durability and Recovery Through Multicore Parallelism, in OSDI, 2014
- R. Johnson, et al., Aether: A Scalable Approach to Logging, in VLDB, 2010
(Optional)
- T.J. Lehman, et al., A Recovery Algorithm for a High-performance Memory-resident Database System, in SIGMOD, 1987
(Optional)
|
|
|
Feb 29, 2016 |
Logging & Recovery II — Alternative Methods
- N. Malviya, et al., Rethinking Main Memory OLTP Recovery, in ICDE, 2014
- T. Cao, et al., Fast Checkpoint Recovery Algorithms for Frequently Consistent Applications, in SIGMOD, 2011
(Optional)
- J. Lee, et al., Differential Logging: A Commutative and Associative Logging Scheme for Highly Parallel Main Memory Database, in ICDE, 2001
(Optional)
- A. Goel, et al., Fast Database Restarts at Facebook, in SIGMOD, 2014
(Optional)
|
|
|
Mar 02, 2016 |
Project #3 Topics
|
|
|
Mar 07, 2016 |
Spring Break — No Class |
— |
— |
Mar 09, 2016 |
Spring Break — No Class
|
— |
— |
Mar 14, 2016 |
Student Project Proposals |
— |
— |
Mar 16, 2016 |
Database Compression
- C. Binnig, et al., Dictionary-based Order-preserving String Compression for Main Memory Column Stores, in SIGMOD, 2009
- V. Raman, et al., How to Wring a Table Dry: Entropy Compression of Relations and Querying of Compressed Relations, in VLDB, 2006
(Optional)
- D. Abadi, et al., Integrating Compression and Execution in Column-Oriented Database Systems, in SIGMOD, 2006
(Optional)
|
|
|
Mar 21, 2016 |
Query Planning I — Optimizer Implementation
- G. Graefe, The Cascades Framework for Query Optimization, in IEEE Data Engineering Bulletin, 1995
(Optional)
- M.A. Soliman, et al., Orca: A Modular Query Optimizer Architecture for Big Data, in SIGMOD, 2014
(Optional)
- R. Avnur, et al., Eddies: Continuously Adaptive Query Processing, in SIGMOD, 2000
(Optional)
|
|
|
Mar 23, 2016 |
Query Planning II — Cost Models
|
|
|
Mar 28, 2016 |
Query Compilation
- K. Krikellas, et al., Generating Code for Holistic Query Evaluation, in ICDE, 2010
- T. Neumann, Efficiently Compiling Efficient Query Plans for Modern Hardware, in VLDB, 2011
(Optional)
- C. Freedman, et al., Compilation in the Microsoft SQL Server Hekaton Engine, in IEEE Data Eng. Bull., 2011
(Optional)
- H. Pirk, et al., CPU and Cache Efficient Management of Memory-Resident Databases, in ICDE, 2013
(Optional)
|
|
|
Mar 30, 2016 |
Scan Sharing
- L. Qiao, et al., Main-memory Scan Sharing for Multi-Core CPUs, in VLDB, 2008
- M. Zukowski, et al., Cooperative Scans: Dynamic Bandwidth Sharing in a DBMS, in VLDB, 2007
(Optional)
- G. Giannikis, et al., SharedDB: Killing One Thousand Queries with One Stone, in VLDB, 2012
(Optional)
- I. Psaroudakis, et al., Sharing Data and Work Across Concurrent Analytical Queries, in VLDB, 2013
(Optional)
|
|
|
Apr 04, 2016 |
Canceled — No Class |
— |
— |
Apr 06, 2016 |
Student Project Meetings — No Class |
— |
— |
Apr 11, 2016 |
Vectorized Execution
- O. Polychroniou, et al., Rethinking SIMD Vectorization for In-Memory Databases, in SIGMOD, 2015
- Y. Li, et al., BitWeaving: Fast Scans for Main Memory Data Processing, in SIGMOD, 2013
(Optional)
- J. Sompolski, et al., Vectorization vs. Compilation in Query Execution, in DaMoN, 2011
(Optional)
|
|
|
Apr 13, 2016 |
Student Project Updates |
— |
— |
Apr 18, 2016 |
Larger-than-Memory Databases
- J. DeBrabant, et al., Anti-Caching: A New Approach to Database Management System Architecture, in VLDB, 2013
- F. Funke, et al., Compacting Transactional Data in Hybrid OLTP&OLAP Databases, in VLDB, 2012
(Optional)
- R. Stoica, et al., Enabling Efficient OS Paging for Main-Memory OLTP Databases, in DaMoN, 2013
(Optional)
- G. Graefe, et al., In-Memory Performance for Big Data, in VLDB, 2014
(Optional)
|
|
|
Apr 20, 2016 |
Non-Volatile Memory Database Systems
- J. Arulraj, et al., Let's Talk About Storage & Recovery Methods for Non-Volatile Memory Database Systems, in SIGMOD, 2015
- H. Kimura, FOEDUS: OLTP Engine for a Thousand Cores and NVRAM, in SIGMOD, 2015
(Optional)
- I. Oukid, et al., SOFORT: A Hybrid SCM-DRAM Storage Engine for Fast Data Recovery, in DaMoN, 2014
(Optional)
|
|
|
Apr 25, 2016 |
Final Review Guest Speaker: Ankur Goyal (CSD'15) - VP of Engineering @ MemSQL |
|
|
Apr 27, 2016 |
Final Exam |
— |
— |