Простая реализация базы данных для образовательных целей

Я хотел бы изучить внедрение систем баз данных в глубину. Существует ли простая реализация базы данных с открытым исходным кодом для образовательных целей, чтобы я мог пройти через код? Как будто есть много реализаций ОС (Minix, Pintos...). Мне интересно, существуют ли аналогичные системы для обучения баз данных?

Я прочитал несколько учебников, и они в основном сосредоточены на теории и концепции.

Большое спасибо! Альфред

3 ответа

Тогда найдите какой-нибудь учебный материал:) Когда я изучал концепцию БД, мой профессор попросил нас написать простую БД. Одна важная ссылка - Redbase:

http://infolab.stanford.edu/~widom/cs346/

Надеюсь, это поможет.

MySQL, PostgreSQL, SQlite - все с открытым исходным кодом. Вы можете найти их исходный код и соответствующую документацию.
Также проверьте NoSQL группу баз данных.

Что заставляет вас думать, что реализация базы данных проста?

Какие части базы данных вас интересуют? Управление хранением? Индексация? Язык запросов? Планирование запросов? Сделки?

Современные (даже "игрушечные") реляционные системы имеют все эти компоненты, что делает их довольно сложными с самого начала. Другие БД, такие базы данных на основе БД, намного проще. Кроме того, у вас есть такие вещи, как Lucene, который представляет собой базу данных для документов и текста в свободной форме - концептуально простой, но прилагает много усилий для масштабирования.

Вы можете посмотреть на реализации SPARQL, если вам интересно узнать о языках запросов, так как они работают с тройными хранилищами RDF (которые не очень сложны).

Есть также такие вещи, как Prevlayer, который является базой данных в памяти и использует концепцию, называемую распространенностью. Вероятно, самый простой из всех, действительно, когда вы приступаете к этому.

Другие вопросы по тегам