(Ini "node-oriented", jika itu ada)
Mulai di sini. Ketika berhadapan dengan aplikasi yang kompleks seperti database (bahkan database sederhana adalah aplikasi yang kompleks), Anda harus terbiasa dengan sejarah domain dan terminologi yang tepat dan setidaknya memiliki ide arsitektur tingkat tinggi. Anda bisa mulai dari artikel Wikipedia tentang Basis Data . Menghabiskan beberapa hari membaca semua artikel tentang konsep terkait dan berbagai jenis database.
Dan karena apa yang ada dalam pikiran saya bukan relasional atau berorientasi dokumen
Selanjutnya, Anda memilih Relational atau NoSQl. Jika Anda memilih NoSQL, Anda harus memilih satu jenis NoSQL. Itu sangat penting, Anda tidak akan menemukan dokumen arsitektur yang membahas semua keluarga basis data yang berbeda. Tidak masalah yang mana yang Anda pilih, cukup pilih yang mana dan pilih saja.
Bahasa tidak menjadi masalah sedikitpun.
Ya ya (sayangnya), karena setelah Anda memilih keluarga basis data, Anda harus mulai mengeksplorasi kode dari basis data sumber terbuka dari keluarga itu. Ada beberapa pedoman umum tentang apa yang harus dicari:
- Basis kode yang relatif kecil,
- Dokumen arsitektur atau setidaknya blog pengembangan,
- Basis data yang Anda pilih harus dekat dengan apa yang dianggap generik dalam keluarga, akan lebih sulit untuk dipelajari jika itu sangat terspesialisasi.
Beberapa contoh yang sesuai:
Dapatkan sumbernya, kompilasi dan mainkan. Anda tidak harus mengirimkan tambalan atau apa pun yang disukai, cukup jelajahi kodenya dan buat perubahan kecil di sana-sini untuk melihat apa yang terjadi. Ini adalah proses tambahan, semakin Anda bermain-main dengannya semakin mudah untuk memahami apa yang dilakukan kode. Jika proyek pertama yang Anda pilih tampaknya sangat sulit untuk dipahami, lanjutkan ke yang berikutnya.
Pilihan hebat lainnya adalah berkonsentrasi pada pembuatan mesin untuk MySQL, seperti yang disarankan @NB dalam jawaban sebelumnya .
Jika Anda mencapai titik di mana Anda dapat melakukan sesuatu yang berguna dengan basis kode, terlibat dalam komunitas proyek, itulah cara termudah untuk menemukan sumber daya yang lebih rinci tentang konsep-konsep yang terlibat.
Dan akhirnya, mulailah mengerjakan basis data Anda. Pada awalnya Anda hanya bisa menulis klon yang sangat diperkecil dari kode yang telah Anda jelajahi. Tidak harus asli, beberapa proyek besar dimulai sebagai klon atau garpu.
Sumber daya / tutorial / buku apa yang dapat saya baca untuk mengerti?
Ada beberapa buku:
Dan beberapa ratus lainnya, ditambah segudang makalah akademis yang dapat Anda lacak dengan mudah melalui Google. Anda perlu menentukan apa yang ingin Anda lakukan terlebih dahulu, dan kemudian mencari buku. Terlibat dengan komunitas sesama penulis basis data juga akan membantu Anda mempersempit daftar buku dan mungkin mendapatkan saran yang jauh lebih baik daripada yang di atas.
Semoga berhasil! Saya mengharapkan komentar dengan tautan ke repositori Anda setelah selesai. Dan jika Anda belum pernah selesai, pastikan Anda meninggalkan komentar yang mengingatkan saya bahwa saya masih belum menyelesaikan kompilator yang saya mulai tulis pada tahun 2001.