PPL: Tugas 10 - Pertemuan 14

Nama: Ferza Noveri
NRP: 5025211097
Kelas: PPL-A

Desain Database


Deskripsi Singkat

Desain database penting untuk platform media sosial seperti Instagram dan memungkinkan pengelolaan akun pengguna, postingan, komentar, suka, dan konten multimedia secara efisien. Arsitektur database yang kuat mendukung interaksi pengguna yang mudah, pembaruan waktu nyata, serta peningkatan privasi dan keamanan.

Esensi Desain Basis Data untuk Instagram

  • Merancang database untuk platform media sosial seperti Instagram melibatkan pertimbangan seperti manajemen pengguna, penyimpanan konten, interaksi, pembaruan waktu nyata, dan keamanan.
  • Basis data harus menangani data dalam jumlah besar, memastikan waktu respons yang cepat, dan menjaga integritas dan privasi data.

Fitur Basis Data untuk Platform Media Sosial

Basis data untuk platform media sosial menawarkan serangkaian fitur yang dirancang untuk mendukung manajemen pengguna, penyimpanan konten, interaksi pengguna, pembaruan waktu nyata, dan analitik. Fitur-fitur ini biasanya meliputi:

  • Manajemen Pengguna: Mengelola akun pengguna, profil, dan otentikasi.
  • Penyimpanan Konten: Menyimpan konten multimedia seperti foto dan video.
  • Interaksi: Menangani suka, komentar, dan mengikuti.
  • Pembaruan Real-time: Memastikan notifikasi real-time dan pembaruan feed.
  • Sistem Rekomendasi: Memberikan saran konten yang dipersonalisasi berdasarkan perilaku pengguna.
  • Analisis dan Pelaporan: Menghasilkan wawasan dan laporan tentang keterlibatan pengguna dan kinerja platform.

Entitas dan Atribut dalam Database untuk Platform Media Sosial

Entitas dalam database platform media sosial mewakili berbagai aspek manajemen pengguna, penyimpanan konten, interaksi pengguna, dan pembaruan waktu nyata, sedangkan atribut menggambarkan karakteristiknya.

1. User Table 

  • UserID (Primary Key): Ini adalah pengidentifikasi unik untuk setiap pengguna.
  • Nama Pengguna: Nama tampilan pengguna.
  • Email: Alamat email pengguna untuk kontak dan login.
  • PasswordHash: Kata sandi yang di-hash dengan aman untuk otentikasi pengguna.
  • ProfilePicture: Ini adalah URL atau referensi ke gambar profil pengguna.
  • Bio: Bio profil pengguna.
  • CreatedAt: Stempel waktu saat akun pengguna dibuat.

2. Post Table

  • PostID (Primary Key): Ini adalah pengidentifikasi unik untuk setiap posting.
  • UserID: Pengidentifikasi untuk pengguna yang membuat postingan.
  • ContentURL: Ini adalah URL atau referensi ke foto atau video.
  • Caption: Teks keterangan yang menyertai postingan.
  • CreatedAt: Ini adalah Stempel Waktu saat postingan dibuat.

3. Comment Table

  • CommentID (Kunci Utama): Ini adalah pengidentifikasi unik untuk setiap komentar.
  • PostID: Pengidentifikasi untuk postingan terkait.
  • UserID: Pengidentifikasi untuk pengguna yang membuat komentar.
  • Konten: Isi teks komentar.
  • CreatedAt: Stempel waktu saat komentar dibuat.

4. Like Table

  • LikeID (Primary Key): Ini adalah pengidentifikasi unik untuk setiap suka.
  • PostID: Pengidentifikasi untuk postingan yang disukai.
  • UserID: Pengidentifikasi untuk pengguna yang menyukai postingan.
  • CreatedAt: Stempel waktu saat suka dibuat.

5. Follow Table

  • FollowerID: Pengidentifikasi untuk pengguna yang mengikuti.
  • FolloweeID: Pengidentifikasi untuk pengguna yang diikuti.
  • CreatedAt: Stempel waktu saat hubungan berikut terjalin.

Hubungan Antar Entitas

Berdasarkan entitas dan atribut yang disediakan, hubungan di antara mereka dapat ditentukan untuk membangun aliran data dan ketergantungan dalam database platform media sosial.

1. Hubungan One-to-Many antara Pengguna dan Postingan:

  • Satu pengguna dapat membuat banyak postingan.
  • Setiap postingan dibuat oleh satu pengguna.
  • Oleh karena itu, hubungan antara Pengguna dan Postingan adalah hubungan satu-ke-banyak.

2. Hubungan One-to-Many antara Postingan dan Komentar:

  • Satu postingan bisa mendapat banyak komentar.
  • Setiap komentar dikaitkan dengan satu postingan.
  • Oleh karena itu, hubungan antara Postingan dan Komentar adalah hubungan satu-ke-banyak.

3. Hubungan One-to-Many antara Posting dan Suka:

  • Satu postingan bisa mendapat banyak suka.
  • Setiap suka dikaitkan dengan satu postingan.
  • Oleh karena itu, hubungan antara Post dan Like adalah hubungan satu-ke-banyak.

4. Hubungan One-to-Many antara Pengguna dan Komentar:

  • Satu pengguna dapat membuat banyak komentar.
  • Setiap komentar dibuat oleh satu pengguna.
  • Oleh karena itu, hubungan antara Pengguna dan Komentar adalah hubungan satu-ke-banyak.

5. Hubungan One-to-Many antara Pengguna dan Suka:

  • Satu pengguna dapat menyukai beberapa postingan.
  • Setiap suka dibuat oleh satu pengguna.
  • Oleh karena itu, hubungan antara Pengguna dan Suka adalah hubungan satu-ke-banyak.

6. Hubungan Many-to-Many antara Pengguna dan Ikuti:

  • Satu pengguna dapat mengikuti beberapa pengguna lainnya.
  • Satu pengguna dapat diikuti oleh beberapa pengguna lainnya.
  • Oleh karena itu, hubungan antara Pengguna dan Ikuti adalah hubungan banyak ke banyak.

Database Model





Comments

Popular posts from this blog

TUGAS 1 PPL

Tugas 3 PPL

PBKK: Pertemuan 2 - Membuat Kalkulator Sederhana