TUGAS 10 PPL - Desain Database

Nama: Muhammad Hafidh Rosyadi
NRP: 5025211013
Kelas: PPL A 
Tahun: 2023/2024 (Genap)
  
 
Pada pertemuan kali ini, kita diminta untuk membuat Database Design untuk aplikasi social media Instagram.

Instagram Database Design

Tabel dan Relasinya

  1. app_user:

    • ID: Primary Key (PK) untuk mengidentifikasi setiap pengguna.
    • first_name: Nama depan pengguna.
    • last_name: Nama belakang pengguna.
    • profile_name: Nama profil pengguna.
    • signup_date: Tanggal pengguna mendaftar.
  2. follower:

    • following_user_id: Foreign Key (FK) yang merujuk ke ID pengguna yang mengikuti.
    • followed_user_id: Foreign Key (FK) yang merujuk ke ID pengguna yang diikuti.
  3. post:

    • ID: Primary Key (PK) untuk mengidentifikasi setiap posting.
    • created_by_user_id: Foreign Key (FK) yang merujuk ke ID pengguna yang membuat posting.
    • created_datetime: Waktu dan tanggal pembuatan posting.
    • caption: Caption atau deskripsi dari posting.
    • post_type: Foreign Key (FK) yang merujuk ke jenis posting.
  4. post_media:

    • ID: Primary Key (PK) untuk mengidentifikasi setiap media posting.
    • post_id: Foreign Key (FK) yang merujuk ke ID posting.
    • filter_id: Foreign Key (FK) yang merujuk ke filter yang digunakan.
    • media_file: File media (gambar atau video).
    • position: Posisi media dalam posting.
    • longitude: Koordinat geografis (bujur) dari tempat pengambilan media.
    • latitude: Koordinat geografis (lintang) dari tempat pengambilan media.
  5. post_media_user_tag:

    • post_media_id: Foreign Key (FK) yang merujuk ke ID media posting.
    • user_id: Foreign Key (FK) yang merujuk ke ID pengguna yang ditandai.
    • x_coordinate: Koordinat X dari tag pada media.
    • y_coordinate: Koordinat Y dari tag pada media.
  6. post_effect:

    • post_media_id: Foreign Key (FK) yang merujuk ke ID media posting.
    • effect_id: Foreign Key (FK) yang merujuk ke ID efek yang digunakan.
    • scale: Skala dari efek yang diterapkan.
  7. effect:

    • ID: Primary Key (PK) untuk mengidentifikasi setiap efek.
    • effect_name: Nama efek.
  8. filter:

    • ID: Primary Key (PK) untuk mengidentifikasi setiap filter.
    • filter_name: Nama filter.
    • filter_details: Detail dari filter.
  9. post_type:

    • ID: Primary Key (PK) untuk mengidentifikasi setiap jenis posting.
    • post_type_name: Nama jenis posting.
  10. reaction:

    • user_id: Foreign Key (FK) yang merujuk ke ID pengguna yang memberikan reaksi.
    • post_id: Foreign Key (FK) yang merujuk ke ID posting yang direaksi.
  11. comment:

    • ID: Primary Key (PK) untuk mengidentifikasi setiap komentar.
    • created_by_user_id: Foreign Key (FK) yang merujuk ke ID pengguna yang membuat komentar.
    • post_id: Foreign Key (FK) yang merujuk ke ID posting yang dikomentari.
    • created_datetime: Waktu dan tanggal pembuatan komentar.
    • comment: Isi komentar.
    • comment_replied_to_id: Foreign Key (FK) yang merujuk ke ID komentar yang dibalas.

Relasi Antar Tabel

  • app_user berhubungan dengan follower, post, reaction, dan comment melalui ID pengguna.
  • post berhubungan dengan post_media, reaction, dan comment melalui ID posting.
  • post_media berhubungan dengan post_media_user_tag dan post_effect melalui ID media posting.
  • post_media berhubungan dengan filter dan effect melalui ID filter dan ID efek.
  • comment berhubungan dengan comment itu sendiri melalui comment_replied_to_id untuk balasan komentar.

Dari database deign tersebut menunjukkan bagaimana data pengguna, posting, media, reaksi, komentar, dan relasi antara pengguna dikelola dalam sistem basis data Instagram.




Komentar

Postingan populer dari blog ini

QUIZ PBKK A

QUIZ 2 PBKK A

TUGAS 2 PWEB Membuat Portal Berita dan Kumpulan course