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