Dalam konteks pengembangan web, siapa yang mendesain basis data? Meskipun banyak informasi yang mengaitkan web dev back-end dengan pemrosesan sisi server, pemodelan data, dan sejenisnya, aspek desain basis data dari persamaan ini tampaknya tidak ada secara misterius.
Saya tidak berbicara tentang siapa yang mengatur basis data fisik, saya merujuk pada siapa yang mendesain model logis dari basis data, melakukan wawancara dengan pengguna-cerita untuk mendapatkan informasi tentang bidang apa yang dibutuhkan, apa spesifikasi bidang itu, dan lain-lain. .
Aku sudah menyadari bahwa ( PROPER desain) dari database adalah bukan tugas kecil (saya membaca ini 672 pager) dan dapat dengan mudah seluruh profesi. Namun, mencari naik dan turun internet telah menyebabkan hasil yang sedikit mengejutkan bagi siapa yang diharapkan untuk menangani tugas ini dalam konteks web dev.
sumber
what those field specifications are
, jika proyek Anda memiliki spec, Anda harus dapat mengidentifikasi model Anda.Jawaban:
Pertanyaan Anda tidak hanya terkait dengan aplikasi web, tetapi untuk semua jenis aplikasi yang menggunakan backend basis data.
Dalam pengalaman saya
Intinya:
MEMPERBARUI:
Ada 3 jenis DBA:
Kebanyakan DBA adalah produksi DBA, yang bagus karena mereka adalah orang-orang yang memulihkan database yang hilang dari array disk yang gagal di larut malam. Tetapi mereka tidak berpartisipasi aktif dalam proses desain.
sumber
Tergantung apa yang digunakan untuk database.
Dalam banyak aplikasi (aplikasi web atau tidak), basis data terkait erat dengan aplikasi itu karena berfungsi sebagai toko yang gigih untuk itu. Kemudian database secara konseptual merupakan bagian dari aplikasi sehingga dirancang bersama (dan Anda menganggap bahwa tidak ada program lain yang secara signifikan akan mengakses atau memperbarui database itu). BTW, kegigihan dapat dicapai dengan cara lain selain dari basis data, mis. File teks biasa, file biner (file yang diindeks khusus a la GDBM ), repositori git (atau VCS lainnya), direktori atau file pohon, partisi disk mentah, perangkat keras khusus (mis. flash), sistem file jarak jauh, pos pemeriksaanteknik. Untuk database yang dirancang untuk dan dengan satu aplikasi, Anda harus memperhatikan pengambilan umum & pola pembaruan dan merancang skema database (dan pengindeksan!) Dengan mereka dalam pikiran.
Dalam beberapa situasi, basis data itu sendiri merupakan aset utama dan independen, dan dirancang apriori untuk digunakan oleh beberapa aplikasi yang berbeda (dan bahkan yang akan datang). Maka itu harus dirancang secara independen (dan jauh lebih hati-hati).
Secara khusus beberapa aplikasi web hanyalah antarmuka web ke database yang ada.
Dalam banyak kasus (anggap beberapa wiki sebagai contoh), data lebih penting dan lebih berharga daripada aplikasi yang menggunakannya. Anda mungkin peduli bagaimana membuatnya menjadi bukti di masa depan dan dapat mengembangkannya dengan mudah (misalnya dengan menggunakan atau mendefinisikan format teks & serbaguna - yang lebih baik terstandarisasi dan terdokumentasi) untuk membuat cadangan dan memulihkannya).
Baca juga tentang NoSQL , database berorientasi dokumen , kunci-nilai database , manajemen pengetahuan , representasi pengetahuan dan penalaran , ontologi , sistem pakar , aturan bisnis pendekatan , ERP , CMS . Mungkin pertimbangkan untuk menggunakan REDIS , MongoDB , dll.
sumber