[TRANSLATION] translate 15445.md

This commit is contained in:
smxm 2022-10-31 20:14:32 +08:00 committed by GitHub
parent 01304508cc
commit bb2e9f9c9e
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -0,0 +1,38 @@
# CMU 15-445: Database Systems
## Descriptions
- Offered by: CMU
- Prerequisites: C++, data structures, algorithms
- Programming Languages: C++
- Difficulty: 🌟🌟🌟🌟
- Class Hour: 100 hours
As an introductory course of database at CMU, this course is taught by Andy Pavlo, a great expert in the field of database. 15-445 will teach you the basic topics of database systems from the bottom up: storage architectures, indexing, query processing, and concurrency control. The highlight of this course is that CMU db has developed a relational database management system for the Introduction: [Bustub](https://github.com/cmu-db/bustub). And you are required to modify this database to implement the functions mentioned above. Moreover, as a small and medium-size projects written in C++, bustub covers program construction, code specification, unit testing, etc., and can be an excellent open source project to study.
## Resources
- Course Website: [Fall2019](https://15445.courses.cs.cmu.edu/fall2019/schedule.html), [Fall2020](https://15445.courses.cs.cmu.edu/fall2020/schedule.html), [Fall2021]((https://15445.courses.cs.cmu.edu/fall2021/schedule.html)
- Assignments: refer to the course website
- Textbook: Database System Concepts
- Assignments: 4 Projects
In Fall 2019, the second Project is to implement a hash table, and the fourth Project is to implement Logging, Recovery, and Checkpoints in your database system.
In Fall 2020, the second Project is to implement B+Tree dynamic index structure, and the fourth Project is to implement concurrency control.
In Fall 2021, the first Project is to implement a buffer pool, the second Project is to implement a hash table, and the fourth Project is to implement concurrency control.
If you have more time you can try them all, and when you do not understand the textbook very well, try to code to implement the project will increase your understanding.
## Personal Resources
All the resources and assignments used by @ysj1173886760 in this course are maintained in [ysj1173886760/Learning: db - GitHub](https://github.com/ysj1173886760/Learning/tree/master/db)
Due to Andy's request, there is no implementation of Project in the repository, only the Solution of Homework. In particular, for Homework1, @ysj1173886760 wrote a shell script to help you evaluate the scores automatically.
After the course, it is recommended to read a paper: [Architecture Of a Database System](https://github.com/ysj1173886760/paper_notes/tree/master/db) This paper provides an overview of the overall architecture of database systems, so that you can have a more comprehensive view of the database.
## Advanced courses
[CMU15-721](https://15721.courses.cs.cmu.edu/spring2020/) mainly focuses on in-memory database, and each class has a corresponding paper to read, and is recommended for those who wish to advance in the database. ysj1173886760 is currently following up on this course, and will create a pull request here after completing it to provide advanced guidance.