13 poin oleh GN⁺ 2024-07-25 | Belum ada komentar. | Bagikan ke WhatsApp

Pengantar

Tutorial perancangan database ini menunjukkan cara merancang tabel database untuk proyek nyata yang kompleks. Kita akan merancang klon Google Calendar. Seri ini menjelaskan pendekatan dari buku "Database Design using Minimal Modeling". Pertama, kita akan membangun model logis lengkap yang menjelaskan data kalender, lalu melanjutkan ke perancangan tabel berdasarkan model logis tersebut.

Pembaca yang Ditargetkan

Tujuan buku ini adalah membantu pembaca beralih dari ide yang ambigu menuju definisi lengkap tabel database. Tiga perempat awal teks ini hanya memerlukan pemahaman umum tentang database dan menjelaskan model logis. Seperempat terakhir menjelaskan cara berpindah dari model logis ke struktur tabel fisik.

Daftar Isi

  • Pengantar
  • Pendekatan buku ini
  • Penjelasan masalah
  • Part 1: Event dasar sepanjang hari
  • Part 2: Event berbasis waktu
  • Part 3: Event sepanjang hari yang berulang
  • Part 4: Rendering halaman kalender
  • Part 5: Rendering halaman kalender untuk event berbasis waktu
  • Part 6: Model logis lengkap sejauh ini
  • Part 7: Membuat tabel SQL
  • Kesimpulan
  • Langkah berikutnya

Pendekatan buku ini

Orang sering memulai dari desain tabel, tetapi di sini kita mengambil pendekatan yang berbeda. Kita menulis model logis terlebih dahulu dan mendefinisikan atribut data serta hubungan antarentitas. Setelah model logis ditetapkan, barulah kita merancang tabel fisiknya.

Penjelasan masalah

Kita akan mengimplementasikan fitur utama Google Calendar. Data terkait pengguna akan diimplementasikan seminimal mungkin. Event memiliki atribut seperti judul, deskripsi, lokasi, dan sebagainya. Bagian paling kompleks adalah waktu dan tanggal.

Part 1: Event dasar sepanjang hari

Anchor

Pertama, kita perlu menemukan anchor. Anchor adalah entitas, misalnya pengguna (User) dan event (Event). Anchor menangani ID dan penghitungan.

Atribut pengguna

Kita akan memodelkan data minimum tentang pengguna, misalnya email.

Atribut event sepanjang hari

Kita perlu menyimpan nama event, tanggal mulai, dan tanggal selesai.

Link

Kita perlu menentukan di mana menyimpan informasi bahwa pengguna tertentu membuat event tertentu. Ini ditangani sebagai link, bukan atribut.

Part 2: Event berbasis waktu

Zona waktu

Zona waktu digunakan di banyak negara dan wilayah. Definisi zona waktu kadang berubah. Kita akan mengimplementasikan model minimum yang terkait dengan zona waktu.

Atribut zona waktu

Kita akan menyimpan nama zona waktu yang dapat dibaca manusia.

Atribut event berbasis waktu

Kita akan menyimpan nama event, waktu mulai, dan waktu selesai. Waktu lokal akan digunakan.

Link

Kita mendefinisikan link antara zona waktu dan event berbasis waktu.

Kesamaan antara event tanggal dan event waktu

Kita akan mempertimbangkan kesamaan antara kedua jenis event tersebut. Melalui pemodelan logis, kita bisa menunda keputusan.

Part 3: Event sepanjang hari yang berulang

Atribut #1, periode

Kita mendefinisikan atribut tentang seberapa sering event berulang.

Atribut #2, atribut yang saling terkait

Kita mendefinisikan periode dari event yang berulang.

Atribut #3

Untuk event bulanan, kita mendefinisikan apakah event berulang pada hari yang sama atau pada hari kerja yang sama.

Hari dalam minggu: micro anchor

Kita menentukan di mana menyimpan hari dalam minggu. Kita memperkenalkan anchor baru.

Link

Kita mendefinisikan link antara hari dalam minggu dan event.

Memeriksa apakah sudah selesai

Kita meninjau kembali persyaratan awal untuk memeriksa apakah pemodelan sudah selesai.

Batas pengulangan: atribut yang lebih saling terkait

Kita mendefinisikan atribut tentang sampai kapan event akan berulang.

Part 4: Rendering halaman kalender

Sejauh ini kita telah membahas bagian pencatatan dari kalender. Sekarang kita perlu menampilkan tampilan mingguan kalender milik pengguna.


Ringkasan GN⁺

Tutorial ini menjelaskan perancangan database kompleks langkah demi langkah sehingga mudah dipahami bahkan oleh pemula. Dengan memodelkan fitur utama Google Calendar, tutorial ini memberikan contoh praktis yang berguna untuk diterapkan pada proyek nyata. Tutorial ini menjelaskan bagaimana pemodelan logis membantu mencegah kesalahan dalam perancangan database dan secara alami mengarah ke desain tabel fisik. Proyek dengan fitur serupa mencakup Microsoft Outlook Calendar dan lainnya.

Belum ada komentar.

Belum ada komentar.