Curriculum: Databases

1. A brief history of DBMS

a. Data models
b. Query languages
c. Kinds of DBMS: relational, object-oriented, semi-structured, XML, Multi-dimensional, ...
d. Distributed architectures: distributed, federated, multi-DBMSs, P2P DBMSs
e. Major commercial/open-source DBMSs

2. Performance Benchmarking

a. Components: hardware platform, data structures, algebraic optimizer, SQL parser
b. Measures: throughput, response time, availability; speedup, scaleup, sizeup.
c. Relational benchmarks: Wisconsin, AS3AP, TPC-*, ...
d. XML benchmarks: XMark, XPathMark, XBench, ...

3. Basic database techniques

b. Query execution
c. Column-store architectures (MonetDB)
d. XML query processing

4. Advanced database techniques

a. Parallel and Distributed Database
b. Spatial and Geographic Databases