Font size
S
M
L
XL
WorksheetsKuis Basis Data
Total questions: 30
Worksheet time: 24mins
Name
Class
Date
1.
Suatu tabel dikatakan memenuhi bentuk Normal Pertama (1NF) jika...
a)
Memiliki Primary Key komposit
b)
Setiap atribut bernilai atomik (tunggal)
c)
Sudah bebas dari ketergantungan transitif
d)
Sudah bebas dari ketergantungan parsial
e)
Tabel sudah dipecah menjadi dua
2.
Jika sebuah tabel sudah dalam bentuk 1NF dan semua atribut non-key bergantung penuh pada Primary Key (tidak ada ketergantungan parsial), maka tabel tersebut memenuhi...
a)
2NF (Second Normal Form)
b)
3NF (Third Normal Form)
c)
BCNF
d)
4NF
e)
Unnormalized Form
3.
Bentuk normal ketiga (3NF) bertujuan untuk menghilangkan...
a)
Ketergantungan Fungsional
b)
Ketergantungan Parsial
c)
Ketergantungan Transitif
d)
Atribut Bernilai Ganda
e)
Primary Key
4.
Teknik membagi tabel besar menjadi bagian-bagian yang lebih kecil secara horizontal berdasarkan range nilai tertentu (misal: berdasarkan tahun transaksi) disebut...
a)
Vertical Partitioning
b)
Horizontal Partitioning
c)
Sharding
d)
Indexing
e)
Normalisasi
5.
Apa perbedaan utama antara Partitioning dan Sharding?
a)
Partitioning membagi data dalam satu server; Sharding membagi data ke beberapa server berbeda
b)
Partitioning untuk data teks; Sharding untuk gambar
c)
Sharding hanya untuk NoSQL; Partitioning untuk SQL
d)
Tidak ada bedanya
e)
Partitioning membagi kolom; Sharding membagi baris
6.
Proses menyalin dan mendistribusikan data dan objek database dari satu database ke database lain untuk menjaga ketersediaan (availability) disebut...
a)
Backup
b)
Recovery
c)
Replikasi
d)
Mirroring
e)
Sharding
7.
Dalam optimasi tipe data, manakah tipe data yang paling efisien untuk menyimpan status 'Aktif' atau 'Tidak Aktif' (Boolean)?
a)
VARCHAR(10)
b)
TEXT
c)
TINYINT(1) / BIT
d)
INT
e)
BLOB
8.
Mengapa penggunaan tipe data VARCHAR lebih disarankan daripada CHAR untuk kolom 'Alamat'?
a)
Karena CHAR lebih lambat diindeks
b)
Karena panjang data alamat bervariasi sehingga VARCHAR lebih hemat ruang
c)
Karena CHAR tidak mendukung angka
d)
Karena VARCHAR wajib untuk Primary Key
e)
Tidak ada perbedaan performa
9.
Teknik membagi tabel berdasarkan kolom (misalnya memisahkan kolom data sensitif ke tabel lain) disebut...
a)
Horizontal Partitioning
b)
Vertical Partitioning
c)
Sharding
d)
Replikasi
e)
Denormalisasi
10.
Salah satu teknik optimasi query adalah menggunakan Index. Apa efek negatif dari terlalu banyak Index pada sebuah tabel?
a)
Proses SELECT menjadi lambat
b)
Proses INSERT/UPDATE/DELETE menjadi lebih lambat
c)
Kapasitas penyimpanan menjadi lebih kecil
d)
Data menjadi tidak konsisten
e)
Tidak ada efek negatif
11.
Strategi denormalisasi (sengaja melanggar aturan normalisasi) biasanya dilakukan dengan alasan...
a)
Menghemat ruang penyimpanan
b)
Meningkatkan performa baca (Read) dengan mengurangi JOIN
c)
Mempermudah insert data
d)
Menjaga integritas data
e)
Menghilangkan anomali update
12.
Perintah SQL untuk membuat index guna mempercepat pencarian pada kolom 'email' adalah...
a)
MAKE INDEX ON users(email)
b)
CREATE INDEX idx_email ON users(email)
c)
ADD INDEX TO users(email)
d)
INSERT INDEX idx_email INTO users
e)
UPDATE users SET INDEX email
13.
Jenis replikasi di mana perubahan data terjadi di satu server (Master) dan disalin ke server lain (Slave) yang hanya bisa dibaca disebut...
a)
Master-Master Replication
b)
Master-Slave Replication
c)
Synchronous Replication
d)
Peer-to-Peer Replication
e)
Failover Cluster
14.
Manakah yang BUKAN merupakan tujuan dari normalisasi?
a)
Mengurangi redundansi
b)
Mencegah anomali data
c)
Memaksimalkan kecepatan insert
d)
Memperumit struktur tabel agar sulit diretas
e)
Menjaga integritas data
15.
Dalam ERD, entitas 'Mahasiswa' dan 'Mata Kuliah' memiliki relasi Many-to-Many. Saat transformasi ke fisik, apa yang terjadi?
a)
Foreign key ditambahkan di Mahasiswa
b)
Foreign key ditambahkan di Mata Kuliah
c)
Dibuat tabel baru (junction table) berisi FK dari keduanya
d)
Tidak bisa diimplementasikan
e)
Salah satu tabel dihapus
16.
Pilihlah syarat-syarat agar sebuah tabel memenuhi 2NF (Second Normal Form).
a)
Sudah memenuhi 1NF
b)
Tidak ada ketergantungan parsial (atribut bergantung penuh pada PK)
c)
Sudah memenuhi 3NF
d)
Tidak memiliki atribut komposit
e)
Tidak ada ketergantungan transitif
17.
Manakah pernyataan yang BENAR mengenai Normalisasi 3NF?
a)
Harus sudah memenuhi 2NF
b)
Menghilangkan ketergantungan transitif (atribut non-key bergantung pada atribut non-key lain)
c)
Membolehkan adanya redundansi data besar
d)
Memisahkan data yang tidak berhubungan langsung dengan entitas utama
e)
Semua atribut harus bergantung langsung pada Primary Key
18.
Apa saja keuntungan menerapkan Partitioning pada tabel yang sangat besar?
a)
Meningkatkan performa query (Query Pruning)
b)
Memudahkan manajemen data (misal: arsip data lama)
c)
Menghemat ruang harddisk secara signifikan
d)
Memungkinkan backup/restore parsial
e)
Menghilangkan kebutuhan akan Primary Key
19.
Manakah yang termasuk strategi Optimasi Database dari sisi perancangan (Design)?
a)
Memilih tipe data yang tepat (ukuran sekecil mungkin)
b)
Melakukan Normalisasi untuk integritas
c)
Melakukan Denormalisasi selektif untuk performa baca
d)
Menambah RAM server
e)
Menggunakan Index pada kolom pencarian
20.
Pilihlah keuntungan menggunakan Replikasi Database (Database Replication).
a)
High Availability (Jika satu server mati data tetap ada)
b)
Load Balancing (Membagi beban query ke beberapa server)
c)
Data Backup real-time
d)
Mengurangi ukuran database
e)
Meningkatkan kecepatan penulisan (Write) data di semua node
21.
Kapan sebaiknya kita melakukan Sharding pada database?
a)
Ketika volume data melebihi kapasitas satu server fisik
b)
Ketika lalu lintas penulisan (Write) sangat tinggi
c)
Ketika tabel hanya memiliki sedikit baris
d)
Ketika ingin meningkatkan kecepatan join antar tabel
e)
Untuk skala horizontal (Horizontal Scaling)
22.
Faktor apa saja yang harus dipertimbangkan saat memilih tipe data untuk kolom database?
a)
Ukuran penyimpanan (Storage size)
b)
Range nilai yang mungkin disimpan
c)
Kecepatan operasi (Integer lebih cepat dari String)
d)
Warna teks
e)
Kompatibilitas dengan aplikasi
23.
Manakah anomali yang dapat dicegah dengan melakukan Normalisasi?
a)
Insertion Anomaly
b)
Deletion Anomaly
c)
Update Anomaly
d)
Connection Anomaly
e)
Speed Anomaly
24.
Apa saja kekurangan atau tantangan dari penggunaan Sharding?
a)
Kompleksitas aplikasi meningkat (harus tahu shard mana yang dituju)
b)
Biaya infrastruktur lebih mahal
c)
Join antar tabel di shard berbeda (Cross-shard join) sangat sulit/lambat
d)
Data menjadi lebih sedikit
e)
Backup data menjadi lebih sederhana
25.
Pilihlah jenis-jenis Partitioning yang umum digunakan.
a)
Range Partitioning
b)
List Partitioning
c)
Hash Partitioning
d)
Color Partitioning
e)
Random Partitioning
26.
Manakah praktik terbaik (Best Practice) dalam penggunaan Index?
a)
Buat index pada kolom yang sering dipakai di WHERE
b)
Buat index pada kolom Foreign Key untuk mempercepat JOIN
c)
Buat index pada semua kolom tanpa terkecuali
d)
Hindari index pada tabel yang sangat sering di-update (High Write)
e)
Hapus index yang tidak pernah digunakan
27.
Tanda-tanda tabel yang belum ternormalisasi (Unnormalized) adalah...
a)
Terdapat repeating groups (kelompok berulang)
b)
Satu sel berisi banyak nilai (multivalue)
c)
Sulit membedakan Primary Key
d)
Data tersimpan atomik
e)
Redundansi data sangat tinggi
28.
Dalam konteks tipe data, manakah pasangan yang tepat untuk efisiensi?
a)
Umur -> TINYINT / SMALLINT
b)
Deskripsi Singkat -> VARCHAR
c)
Uang/Saldo -> DECIMAL/NUMERIC (untuk presisi)
d)
ID Auto Increment -> INT / BIGINT
e)
Tanggal Lahir -> VARCHAR
29.
Tujuan dari Denormalisasi meliputi...
a)
Mengurangi jumlah tabel
b)
Mempercepat query report yang kompleks
c)
Mengurangi redundansi
d)
Menghindari operasi JOIN yang mahal
e)
Menghemat storage
30.
Apa yang terjadi jika kita salah memilih tipe data (misal: menggunakan TEXT untuk menyimpan Tanggal)?
a)
Ukuran database membengkak
b)
Query berdasarkan range tanggal menjadi lambat/sulit
c)
Fungsi date (seperti MONTH YEAR) tidak bisa langsung dipakai
d)
Data menjadi hilang otomatis
e)
Tidak bisa divalidasi formatnya oleh database
Reset
