Post 4: Apa itu Physical Model
Definisi Physical Model
Physical Model adalah representasi database pada level implementasi yang menggambarkan bagaimana data akan disimpan secara fisik dalam sistem database. Model ini sangat spesifik terhadap DBMS dan platform yang digunakan.
Karakteristik Physical Model
- DBMS Specific: Terikat pada sistem database tertentu (MySQL, PostgreSQL, etc.)
- Implementation Ready: Dapat langsung dikonversi menjadi DDL statements
- Performance Oriented: Mempertimbangkan aspek optimasi dan performa
- Storage Detailed: Menspesifikasikan detail penyimpanan fisik
Komponen Physical Model
1. Tables dan Columns
Definisi struktur tabel yang akan dibuat dalam database:
- Table Names: Nama tabel yang akan dibuat
- Column Names: Nama kolom dalam setiap tabel
- Data Types: VARCHAR, INT, DATE, DECIMAL, dll.
- Column Size: Ukuran maximum untuk setiap kolom
2. Constraints
Aturan-aturan yang diberlakukan pada data:
- Primary Key: Identifikasi unik untuk setiap record
- Foreign Key: Referensi ke primary key tabel lain
- NOT NULL: Kolom yang wajib diisi
- UNIQUE: Nilai yang harus unik
- CHECK: Validasi nilai berdasarkan kondisi
3. Indexes
Struktur data yang meningkatkan kecepatan query:
- Primary Index: Otomatis dibuat untuk primary key
- Secondary Index: Index tambahan untuk optimasi
- Composite Index: Index yang melibatkan multiple columns
- Unique Index: Index yang memastikan uniqueness
Contoh Implementation Physical Model
Contoh DDL Script untuk Tabel Mahasiswa:
CREATE TABLE mahasiswa (
nim VARCHAR(15) NOT NULL,
nama VARCHAR(100) NOT NULL,
email VARCHAR(100) UNIQUE,
tanggal_lahir DATE,
jenis_kelamin ENUM('L', 'P'),
alamat TEXT,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (nim),
INDEX idx_nama (nama),
INDEX idx_email (email)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
Performance Optimization dalam Physical Model
1. Index Strategy
- Buat index pada kolom yang sering digunakan dalam WHERE clause
- Pertimbangkan composite index untuk query multi-column
- Hindari over-indexing yang dapat memperlambat INSERT/UPDATE
2. Normalization vs Denormalization
- Normalization: Mengurangi redundancy, meningkatkan consistency
- Denormalization: Meningkatkan read performance, mengorbankan storage
3. Storage Engine Selection
Pemilihan storage engine berdasarkan kebutuhan:
- InnoDB: ACID compliant, supports transactions
- MyISAM: Fast reads, tidak support transactions
- Memory: Data disimpan di RAM untuk kecepatan maksimal
Considerations untuk Physical Design
- Query Patterns: Analisis bagaimana data akan diakses
- Data Volume: Estimasi ukuran data dan growth rate
- Concurrency: Jumlah simultaneous users dan transactions
- Backup Strategy: Requirement untuk backup dan recovery
- Security: Implementasi access control dan encryption
Migration dari Logical ke Physical Model
Proses Transformasi Model
Conceptual Model → Logical Model → Physical Model → Database Implementation
Kesimpulan
Physical Model adalah tahap final dalam database design yang menentukan bagaimana data akan disimpan dan diakses secara fisik. Model ini memerlukan pemahaman mendalam tentang DBMS yang digunakan, performance requirements, dan operational constraints. Desain physical model yang baik akan menghasilkan database yang performant, scalable, dan maintainable.
← Kembali ke Beranda