Apakah ada buku atau tutorial yang mengajarkan kita cara efisien menerapkan algoritma umum (pengurutan, pencarian, dll.) Pada data besar (yaitu data yang tidak dapat sepenuhnya dimuat ke dalam memori utama) dan bagaimana cara efisien menerapkan algoritma tersebut dengan mempertimbangkan biaya memblokir transfer dari memori eksternal? Sebagai contoh, hampir semua buku teks algoritma mengatakan bahwa B dan B + -trees dapat digunakan untuk menyimpan data pada disk. Namun, sebenarnya bagaimana hal ini dapat dilakukan, terutama menangani pointer di mana data ada pada disk tidak dijelaskan. Demikian pula, meskipun banyak buku mengajarkan teknik pencarian, mereka tidak menganggap data ada dalam memori sekunder.
Saya telah memeriksa buku Knuth. Meskipun membahas ide-ide ini, saya masih tidak mengerti bagaimana cara menerapkannya dalam bahasa tingkat tinggi. Apakah ada referensi yang membahas perincian ini?
Jawaban:
Buku-buku basis data adalah contoh yang bagus. Namun, lihatlah pada bidang I / O struktur data yang efisien (dan algoritma). Setahu saya, ada beberapa kursus tentang topik ini, tetapi sangat sedikit buku.
Periksa buku ini: U. Meyer, P. Sanders, dan J. Sibeyn (eds.), Algoritma untuk Hirarki Memori, Catatan Kuliah dalam Ilmu Komputer 2625, Springer, 2003.
Lihat kursus-kursus ini: http://www.win.tue.nl/~hermanh/teaching/2IL35/ http://www.daimi.au.dk/~large/ioS12/
dan slide ini: algo2.iti.kit.edu/sanders/courses/algen09-10/rdslides.pdf
sumber
Buku basis data Ramkrishnan dan Gehrke membahas hal-hal ini secara terperinci.
sumber
Mungkin apa yang Anda cari dalam satu buku yang rapi: Algoritma dan Struktur Data untuk Memori Eksternal oleh Jeffrey Scott Vitter.
sumber
Saat ini bidang ini dikenal sebagai data besar , dan berkembang sangat cepat dan cepat berdasarkan koneksi yang kuat dengan virtualisasi dan teknologi basis data relasional hanya dilihat sebagai subset. Juga seperti catatan komentar, database kunci / nilai dan NoSQL adalah tempat banyak inovasi dan momentum baru bergerak. Namun dari komentar Anda, Anda tampaknya lebih tertarik pada prinsip dan teknik desain basis data relasional . Coba referensi berikut:
Database DeMYSTiFieD, Edisi ke-2 oleh Oppel
Desain Basis Data untuk Mere Mortal: Panduan Praktis untuk Desain Basis Data Relasional (Edisi ke-2) oleh Hernandez
Permulaan Desain Basis Data: Dari Novice hingga Professional oleh Churcher
Panduan Pemula Mutlak untuk Database oleh Petersen
sumber