(це "орієнтоване на вузол", якщо таке взагалі існує)
Починай тут. Маючи справу зі складним додатком, таким як база даних (навіть проста база даних є складним додатком), ви повинні бути знайомі з історією домену та відповідною термінологією та мати принаймні дуже високий рівень уявлення про архітектуру. Ви можете почати зі статті Вікіпедії на базі даних . Провів кілька днів, читаючи всі статті про суміжні поняття та різні типи баз даних.
А оскільки те, що я маю на увазі, не є ні реляційним, ні документоорієнтованим
Далі ви вибираєте Relational або NoSQl. Якщо ви вибираєте NoSQL, вам слід вибрати один тип NoSQL. Це надзвичайно важливо, ви не знайдете жодних архітектурних документів, які б обговорювали всі різні родини баз даних. Не важливо, кого ви виберете, просто виберіть його і дотримуйтесь його.
Мова не має жодного значення.
Так, це (на жаль), тому що після вибору сім'ї баз даних слід розпочати вивчення коду з баз даних з відкритим кодом цього сімейства. Існує кілька загальних рекомендацій щодо того, на що звернути увагу:
- Відносно невелика база коду,
- Архітектурні документи або принаймні блог про розробку,
- База даних, яку ви вибираєте, повинна бути близькою до того, що в сім’ї вважається загальним, навчитися, якщо вона вузькоспеціалізована, важче буде.
Кілька прикладів, які підходять:
Отримайте джерело, складіть його і пограйте з ним. Вам не потрібно надсилати виправлення або щось подібне, просто вивчіть код і зробіть невеликі зміни тут і там, щоб побачити, що відбувається. Це поступовий процес, чим більше ви будете грати з ним, тим легше буде зрозуміти, що робить код. Якщо перший вибраний вами проект здається надзвичайно важким для розуміння, просто переходите до наступного.
Ще одним чудовим варіантом було б зосередитись на створенні двигуна для MySQL, як @NB пропонує у попередній відповіді .
Якщо ви дійдете до того, що вам вдасться зробити щось корисне з базою даних коду, залучіться до спільноти проекту, це найпростіший спосіб знайти більш детальні ресурси щодо залучених концепцій.
І тоді, нарешті, починайте працювати над своєю базою даних. Спочатку ви могли просто написати надзвичайно зменшений клон коду, який ви досліджували. Це не повинно бути оригінальним, дуже багато чудових проектів розпочалися як клони чи вилки.
Які ресурси / навчальні посібники / книги я можу прочитати, щоб зрозуміти?
Книг досить багато:
І ще кілька сотень інших, а також безліч академічних робіт, які ви могли легко відстежити через Google. Потрібно спочатку визначити, що ви хочете зробити, а потім шукати книгу. Взаємодія з спільнотою колег авторів баз даних також допоможе вам звузити список книг і, можливо, отримати набагато кращі пропозиції, ніж вище.
Удачі! Я очікую коментар із посиланням на ваше сховище, коли закінчите. І якщо ви ніколи не закінчите, не забудьте залишити коментар, який нагадує мені, що я все ще не закінчив цей компілятор, який я почав писати в 2001 році.