Nama : Christian Kevin Emor
Database untuk aplikasi social media foto sharing - Instagram
Berikut adalah skema instgaram database
Desain Basis Data adalah kumpulan proses yang memfasilitasi perancangan, pengembangan, implementasi, dan pemeliharaan sistem manajemen data perusahaan. Basis data yang dirancang dengan benar mudah dipelihara, meningkatkan konsistensi data, dan hemat biaya dalam hal ruang penyimpanan disk. Desainer database memutuskan bagaimana elemen data berkorelasi dan data apa yang harus disimpan
Tabel Users
| Kolom |
Tipe Data |
Deskripsi |
| id |
SERIAL |
Primary key, auto-increment |
| username |
VARCHAR(255) |
Nama pengguna unik |
| email |
VARCHAR(255) |
Email unik |
| password_hash |
VARCHAR(255) |
Hash kata sandi |
| profile_picture |
TEXT |
URL gambar profil |
| bio |
TEXT |
Biografi pengguna |
| created_at |
TIMESTAMP |
Waktu pembuatan akun |
Tabel Posts
| Kolom |
Tipe Data |
Deskripsi |
| id |
SERIAL |
Primary key, auto-increment |
| user_id |
INTEGER |
Foreign key ke tabel Users |
| media_url |
TEXT |
URL media |
| caption |
TEXT |
Keterangan |
| created_at |
TIMESTAMP |
Waktu pembuatan post |
Tabel Comments
| Kolom |
Tipe Data |
Deskripsi |
| id |
SERIAL |
Primary key, auto-increment |
| post_id |
INTEGER |
Foreign key ke tabel Posts |
| user_id |
INTEGER |
Foreign key ke tabel Users |
| comment_text |
TEXT |
Isi komentar |
| created_at |
TIMESTAMP |
Waktu pembuatan komentar |
Tabel Likes
| Kolom |
Tipe Data |
Deskripsi |
| id |
SERIAL |
Primary key, auto-increment |
| post_id |
INTEGER |
Foreign key ke tabel Posts |
| user_id |
INTEGER |
Foreign key ke tabel Users |
| created_at |
TIMESTAMP |
Waktu pemberian like |
Tabel Followers
| Kolom |
Tipe Data |
Deskripsi |
| user_id |
INTEGER |
Foreign key ke tabel Users |
| follower_id |
INTEGER |
Foreign key ke tabel Users |
| created_at |
TIMESTAMP |
Waktu mulai mengikuti |
| PRIMARY KEY (user_id, follower_id) |
Tabel Messages
| Kolom |
Tipe Data |
Deskripsi |
| id |
SERIAL |
Primary key, auto-increment |
| sender_id |
INTEGER |
Foreign key ke tabel Users |
| receiver_id |
INTEGER |
Foreign key ke tabel Users |
| message_text |
TEXT |
Isi pesan |
| created_at |
TIMESTAMP |
Waktu pembuatan pesan |
Tabel Notifications
| Kolom |
Tipe Data |
Deskripsi |
| id |
SERIAL |
Primary key, auto-increment |
| user_id |
INTEGER |
Foreign key ke tabel Users |
| notification_type |
VARCHAR(255) |
Jenis notifikasi |
| message |
TEXT |
Pesan notifikasi |
| created_at |
TIMESTAMP |
Waktu pembuatan notifikasi |
Komentar
Posting Komentar