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.
Comments
Post a Comment