cs-self-learning/docs/数据库系统/CS346.en.md
Yinmin Zhong af9526f8c2
[Translation] Finish all the remaining translation (#544)
* GFW translation

* translate usage

* [FIX] Fix giscus plugin (#543)

* [Translate] translate CS188/Docker/GUN_Make (#540)

* complete eng_version for deep learning folder

* fix typo

* add english version for machine learning systems

* Update AICS.en.md

Adjust indentation

* [ADD]add translation for CS188

* [ADD]add translation for Docker

* [UPDATE]update file name

* [ADD]add translation for GNU_Make

* [FIX]fix typo

* [FIX]fix spacing error

* translate github

* translate thesis writing

* translate tools

* translate NJUOS

* translate CS122

* translate CS346

* translate 15799

* translate CS148

* translate games101

* translate games202

* translate games103

* translate advanced ML

* translate CS plan

* nits

* translate scoop

* translate CA

* translate information retrieval

* translate Decal && AUT

* translate workflow

---------

Co-authored-by: nzomi <jly14@tsinghua.org.cn>
2023-12-16 12:15:13 +08:00

30 lines
No EOL
1.7 KiB
Markdown

# Stanford CS 346: Database System Implementation
## Course Introduction
- **University**: Stanford
- **Prerequisites**: None
- **Programming Language**: C++
- **Course Difficulty**: 🌟🌟🌟🌟🌟
- **Estimated Study Time**: 150 hours
RedBase, the project for CS346, involves the implementation of a simplified database system and is highly structured. The project can be divided into the following parts, which also correspond to the four labs that need to be completed:
1. **The Record Management Component**: This involves the implementation of record management functionalities.
2. **The Index Component**: Focuses on the management of B+ tree indexing.
3. **The System Management Component**: Deals with DDL statements, command-line tools, data loading commands, and metadata management.
4. **The Query Language Component**: In this part, students are required to implement the RQL Redbase Query Language, including select, insert, delete, and update statements.
5. **Extension Component**: Beyond the basic components of a database system, students must implement an extension component, which could be a Blob type, network module, join algorithms, CBO optimizer, OLAP, transactions, etc.
RedBase is an ideal follow-up project for students who have completed CMU 15-445 and wish to learn other components of a database system. Due to its manageable codebase, it allows for convenient expansion as needed. Furthermore, as it is entirely written in C++, it also serves as good practice for C++ programming skills.
## Course Resources
- Course Website: <https://web.stanford.edu/class/cs346/2015/>
- Course Code: <https://github.com/junkumar/redbase.git>
- Course Textbook: None
- Course Assignments: 4 Projects + 1 Extension