Selasa, 28 Februari 2012

Data Definition Language dan Perancangan Basis Data

1. Praktekan seluruh command pada DDL!
Berikut merupakan hasil saya saat membuat DDL pada command prompt dengan XAMPP :




2. Apa tujuan perancangan basis data ?

  • Memenuhi informasi yang berisikan kebutuhan-kebutuhan pengguna secara khusus dan aplikasi-aplikasinya.
  • Memudahkan pengertian struktur informasi
  • Mendukung kebutuhan-kebutuhan pemrosesan dan beberapa obyek penampilan (response time, processing time, dan storage space).

3.
Apa yang dimaksud macro lifecycle dan micro lifecycle, Sebutkan perbedaannya!

Macro life cycle adalah siklus kehidupan sistem informasi, Sedangkan micro life cycle adalah siklus kehidupan basis data'

4. Langkah apa saja yang dilakukan pada tahap pengumpulan dan analisa data?

Empat langkah proses pengumpulan dan analisa data

  • Menentukan kelompok pemakai dan bidang-bidang aplikasinya
  • Peninjauan dokumentasi yang ada
  • Pemrosesan data
  • Daftar pertanyaan dan wawancara
5. Apa yang dimaksud dengan transaction throughput ?

Transaction throughput adalah jumlah transaksi yang dapat diperoleh per menit oleh basis data

6. Lakukan perancangan basis data dengan terlebih dahulu melakukan pengumpulan data dan analisa data dengan contoh kasus yang anda tentukan sendiri!

Contoh Perancangan Database pada puskesmas:

Sebuah puskesmas ingin membuat database mengenai data balita. Dari database tersebut bisa diketahui :
1. Jumlah Penduduk di wilayah puskesmas berdasarkan Jenis Kelamin, Tingkat pendidikan, pekerjaan
2. Jumlah Keluarga Miskin di wilayah puskemas, informasi ini dapat membantu pemerintah dalam perncanaan kegiatan pengentasan kemiskinan dan dalam penyaluran bantuan bagi keluarga miskin
3. Persentase Jumlah Balita yang lahir dengan berat badan waktu lahir rendah, Tingginya Balita lahir dengan berat badan rendah menggambarkan status gizi ibu sewaktu mengandung, sehingga perlu peningkatan intervensi kegiatan yang diarahkan pada ibu hamil, disamping itu informasi bayi lahir dengan berat badan rendah segera melakukan pemberian makanan tambahan agar tidak menjadi balita gizi buruk.
4. Jumlah balita gizi buruk, Gizi Kurang, dan gizi baik, informasi ini dapat digunakan untuk merencanakan penanggulangan gizi buruk.

1. Pengumpulan Data dan Analisis Permintaan
Kelompok pemakai dan analisis permintaan
- Petugas puskesmas
- Masyarakat
- Pemerintah


2. Perancangan Model Konseptual Database
a. Perancangan Skema Konseptual
1. Table Kepala Keluarga
- Id_kk
- Nama_kk
- Tempat_lahir
- Tanggal_lahir
- Jenis_kelamin
- Pekerjaan
- Alamat
- Gakin

2. Table Data Anggota Keluarga
- Id_anggota_kk
- Id_kk
- Nama
- Tempat_lahir
- Tanggal_lahir
- Jenis_kelamin
- Pekerjaan
- Hubungan
- Alamat

3. Table Data Balita
- Id_balita
- Id_anggota_kk
- Bb_waktu_lahir
- Pb_waktu_lahir
- Kms_balita
a. Entity
Puskesmas(petugas, masyarakat, pemerintah)
b. Atribut dan Primary Key
- Id_kk, Nama_kk, Tempat_lahir, Tanggal_lahir, Jenis_kelamin, Pekerjaan, Alamat, Gakin
- Id_anggota_kk, Id_kk, Nama, Tempat_lahir, Tanggal_lahir, Jenis_kelamin, Pekerjaan, Hubungan, Alamat
- Id_balita, Id_anggota_kk, Bb_waktu_lahir, Pb_waktu_lahir, Kms_balita

Form Tampilan Program

c. Perancangan Model Fisik Database
Table Kepala Keluarga
Query : Create Table K_Keluarga ( Id_kk varchar(10) Not null Primary key, Nama_kk varchar(30), Tempat_Lahir varchar(30), Tenggal_Lahir date, J_Kelamin varchar(1), Pekerjaan varchar (30), Pendidikan varchar(30), Alamat varchar(100), Gakin varchar(1));
Field type Null
Id_kk varchar(10) No
Nama_kk varchar(30) No
Tempat_lahir varchar(30) No
Tanggal_lahir date No
Jenis_kelamin varchar(1) No
Pekerjaan varchar(30) No
Pendidikan varchar(30) No
Alamat varchar(100) No
Gakin varchar(1) No


Keterangan pengisian :
1. Id_kk sebagai Primary Key
2. Nama_kk berisi Nama Kepala Kelurga
3. Tempat_lahir tempat dari Kepala Keluarga
4. Tgl_lahir :Tanggal lahir dari Kepala Keluarga
5. Sex berisi kategori laki-laki dan perempuan dari Kepala Keluarga
6. Pekerjaan adalah pekerjaan dari kepala keluarga yang berisi kategori PNS, Swasta, Petani, Pedagang, Nelayan, Buruh,Tidak bekerja
7. Pendidikan adalah Tingkat Pendidikan kepala keluarga berisi kategori PT, Akademi, SMU,SMP,SD,Tidak Sekolah
8. Alamat adalah Alamat Kepala Keluarga
9. GAKIN berisi kategori : ya dan Tidak

Table Data Anggota Keluarga
Query : Create Table A_Keluarga( Id_A_K varchar(10) not null primary key, Id_kk varchar(10), Nama varchar(30), Tempat_Lahir varchar(30), Tanggal_lahir date, J_Kelamin varchar(1), Pekerjaan varchar(10), Hubungan varchar(10), Alamat varchar(100));
Field Type Null
Id_anggota_keluarga varchar(10) No
Id_kk varchar(10) No
Nama varchar(30) No
Tempat_lahir varchar(30) No
Tanggal_lahir Date No
Jenis_kelamin varchar(1) No
Pekerjaan varchar(10) No
Hubungan varchar(10) No
Alamat varchar(100) No


Keterangan pengisian :
1. Id_Anggota_kk sebagai Primary Key dari table Anggota_kk yaitu data Integral 10 digit
2. Id_kk adalah current key dari Tabel data_kk
3. Nama : nama anggota Keluarga
4. Tempat_lahir adalah Tempat Lahir dari anggota Keluarga
5. Tgl_lahir adalah Tanggal Lahir dari anggota Keluarga
6. Jenis_kelamin adalah Jenis Kelamin dari anggota keluarg yang berisi kategori laki-laki dan perempuan
7. Hubungan adalah hubungan dari anggota keluarga dengan kepala keluarga yang berisi kategori : Isteri, Anak, Orang Tua, Saudara Kandung, dll
8. Pekerjaan adalah Pekerjaan dari anggota keluarga berisi kategori PNS, Swasta, Petani, Pedagang, Nelayan, Buruh,Tidak bekerja
9. Pendidikan adalah Pendidikan dari anggota Keluarga berisi kategori Sarjana,Diploma, SMU,SMP,SD,Tidak Sekolah

Table Data Balita
Query : Create table Balita (Id_Balita varchar(10) not null primary key, Id_A_K varchar(10), Bb_W_L varchar(10), Pb_W_L varchar(10), KMS_B varchar(1));
Field Type Null
Id_balita varchar(10) No
Id_anggota_kk varchar(10) No
Bb_waktu_lahir varchar(10) No
Pb_waktu_lahir varchar(10) No
Kms_balita varchar(1) No
Keterangan pengisian :
a. Id_Balita sebagai Primary Key
b. Id_Anggota_kk adalah current key dari Tabel Angggota_kk
c. BB_wkt_lhr : adalah berat badan Balita Waktu Lahir
d. PB_wkt_lhr : adalah Panjang badan Balita Waktu Lahir
e. KMS_Balita adalah Kepemilikan Kartu Menuju Sehat, yang berisi kategori Ya dan Tidak

Selasa, 21 Februari 2012

Arsitektur DBMS

Salah satu tujuan dari DBMS adalah untuk menyediakan sarana antar muka (interface) dalam meng-akses data secara efisien tanpa harus melihat kerumitan atau detail tentang cara data direkam dan dipelihara. DBMS memiliki arsitektur untuk melakukan abstraksi dari data sehingga dapat diperoleh independensi data-program.

Arsitektur system basis data terbagi atas tiga level yaitu :

  1. Level Eksternal (external level) atau Level Pandangan (view level)
  2. Level Konseptual (conceptual level)
  3. Level Internal (internal level) atau Level Fisik (physical level)

Tingkat eksternal merupakan cara pandang pemakai terhadap basis data. Pada tingkat ini menggambarkan bagian basis data yang relevan bagi seorang pemakai tertentu. Tingkat eksternal terdiri dari sejumlah cara pandang yang berbeda dari sebuah basis data. Masing-masing pemakai merepresentasikan dalam bentuk yang sudah dikenalnya. Cara pandang secara eksternal hanya terbatas pada entitas, atribut, dan hubungan antar entitas (relationship) yang diperlukan saja.

Tingkat konseptual merupakan kumpulan cara pandang terhadap basis data. Pada tingkat ini menggambarkan data yang disimpan dalam basis data dan hubungan antara datanya. Hal-hal yang digambarkan dalam tingkat konseptual adalah:


- Semua entitas beerta atribut dan hubungannya

- Batasan data

- Informasi semantic tentang data

-Keamanan dan integritas informasi


semua cara pandang pada tingkat eksternal berupa data yang dibutuhakan oleh pemakai harus sudah tercakup didalam tingkat konseptual atau dapat diturunkan dari data yang ada. Deskripsi data dari entitas pada tingkat ini hanya terdiri dari jenis data dan besarnya atribut tanpa memperhatiakn besarnya penyimpana dalam ukuran byte.

Tingkat internal merupakan perwujudan basis data dalam computer. Pada tingakat ini menggambarkan bagaimana basis data disimpan secara fisik didalam peralatan strorage yang berkaitan erat dengan tempat penyimpanan/physical storage. Tingkat internal memperhatikan hal-hal berikut ini:


- Alokasi ruang penyimpana data dan indeks

- Deskripsi record untuk penyimpanan (dengan ukuran penyimpanan untuk data elemen)
- Penempatan record

- Penempatan data dan teknik enscryption.


Model-Model Database

Sistem manajemen database dibagi menjadi lima model, yaitu: Hirarkis, jaringan, relasional, berorientasi objek, multidemensional. Namun kali ini akan dijelaskan 4 diantaranya :

Database Hierarkis

Database hierarkis merupakan model tertua dan paling sederhana dari kelima model database. Dalam model database ini mengakses atau mengupdate data bisa berlangsung sangat cepat karena hubungan-hubungan sudah ditentukan. Tetapi, karena struktur harus didefinisikan lebih dahulu, maka hal ini cukup riskan. Lagipula menambahkan field baru ke sebuah record database membuat semua database harus didefinisikan kembali. Karena itulah diperlukan model database yang baru untuk menunjukkan masalah pengulangan data dan hubungan data yang kompleks.

Model Data Jaringan

Model data jaringan adalah pengembangan dari model data hirarkis, melihat kekurangan dari model hirarkis tersebut. Pada model jaringan diperkenankan bahwa sebuah child-record bisa memiliki lebih dari satu parent-record. Pada implementasi-nya berarti antara parent-record dan child-record diperlukan penghubung (link atau pointer) yang bisa satu arah atau dua-arah.

Model Data Relasional
Model Data Relasional adalah suatu model basis data yang menggunakan tabel dua dimensi, yang terdiri atas baris dan kolom untuk menggambarkan sebuah berkas data.
Model ini menunjukkan cara mengelola/mengorganisasikan data secara fisik dalam memory sekunder, yang akan berdampak pula pada bagaimana kita mengelompokkan data dan membentuk keseluruhan data yang terkait dalam sistem yang kita buat.

Cara kerja database relasional:

Elemen-elemen data disimpan dalam tabel lain yang membentuk baris dan kolom. Dalam model database ini data diatur secara logis, yakni berdasarkan isi. Masing-masing record dalam tabel diidentifikasi oleh sebuah field – kunci primer – yang berisi sebuah nilai unik. Karena itulah data dalam database relasional dapat muncul dengan cara yang berbeda dari cara ia disimpan secara fisik pada komputer. Pengguna tidak boleh mengetahui lokasi fisik sebuah record untuk mendapatkan kembali datanya.

Database Berorientasi Objek

Model ini menggunakan objek sebagai perangkat lunak yang ditulis dalam potongan kecil yang dapat digunakan kembali sebagai elemen dalam file database. Database berorientasi objek adalah sebuah database multimedia yang bisa menyimpan lebih banyak tipe data dibanding database relasional.

Salah satu model database berorientasi objek adalah database hypertext atau database web, yang memuat teks dan dihubungkan ke dokumen lain. Model lainnya adalah database hypermedia, yang memuat link dan juga grafis, suara, dan video.

Contoh: database DB2, Cloudscape, Oracle9i dan sebagainya.

RDBMS

2. RDBMS adalah sebuah program komputer (atau secara lebih tipikal adalah seperangkat program komputer) yang didisain untuk mengatur/memanajemen sebuah basisdata sebagai sekumpulan data yang disimpan secara terstruktur, dan melakukan operasi-operasi atas data atas permintaan penggunanya. Dalam cakupan yang minimum sistem tersebut memenuhi kriteria berikut:

  • menyajikan data pada pengguna dalam bentuk relasional (ditampilkan dalam bentuk tabular, sebagai koleksi dari tabel dimana setiap tabel beriisi sekumpulan baris dan kolom)
  • menyediakan operator relasioanl untuk memanipulasi data dalam bentuk tabular

Tipikalnya, sebuah sistem basisdata dikatakan memenuhi kriteria sebagai RDBMS apabila memenuhi hukum-hukum yang ditetapkan dalam 12 hukum Codd.

3. a. DBMS memiliki arsitektur untuk melakukan abstraksi dari data sehingga dapat diperoleh independensi data-program. ANSI-SPARC (American National Standards Institute – Standards Planning and Requirements Committee) menetapkan tiga level abstraksi dalam database, yaitu:

  1. Level Eksternal (external level) atau Level Pandangan (view level) adalah Pada level ini pengguna (user) hanya bisa melihat struktur data sesuai dengan keperluannya sehingga setiap user bisa memiliki pandangan (view) yang berbeda dari user lainnya
  2. Level Konseptual (conceptual level) adalah evel dari para administrator database, pada level ini didefinisikan hubungan antar data secara logik, sehingga diperlukan struktur data secara lengkap.
  3. Level Internal (internal level) atau Level Fisik (physical level) adalah level dimana data disimpan secara fisik dalam bentuk kode, teks, angka, bit. Pada level ini didefinisikan allokasi ruang penyimpanan data, deskripsi data dalam penyimpanan, kompressi data (agar lebih hemat), dan enkripsi data (agar lebih aman).

b. Model membantu mengkomunikasikan konsep-konsep yang ada pada pikiran manusia. Model dapat digunakan untuk tujuan-tujuan : Mengkomunikasikan, Menggolongkan, Menggambarkan, Menetapkan, Meneliti, Menyusun, Menganalisa, Meniru. Sasarannya adalah menghasilkan model yang tepat bagi banyak user, dapat dimengerti oleh user, tetapi mengandung detil-detil yang cukup bagi developer untuk membangun suatu sistem database.

c. Pertama, Komponen utama dari E-R model adalah entitas, atribut dan relationanship, sedangkan pada objek-oriented model komponen utamanya adalah nilai, metoda, dan sending a message. Kedua, pada E-R model karakteristik sebuah objek terletak pada atribut dari entitas, sedangakan pada objek-oriented model terletak pada nilai atau variable yang "melekat" pada objek. Ketiga, pada E-R model tidak digunakan penggunaan kelas, sedangkan pada objek-oriented model adanya penngunaan kelas.

d. 1. MODEL HIERARKIS

Model ini sering dijabarkan dalam bentuk pohon terbalik. Di dalam model ini dikenal istilah orang tua & anak. Masing-masing berupa suatu simpul & terdapat hubungan bahwa setiap anak hanya bisa memiliki satu orang tua, sedangkan orang tua dapat memiliki sejumlah anak. Simpul tertinggi yaitu tidak memiliki orang tua disebut AKAR (ROOT).

2. MODEL NETWORK

Model ini menyerupai model hirarkis. Namun ada perbedaan karena model data jaringan :

  1. Tidak mengenal akar
  2. Setiap anak bisa memiliki lebih dari satu orang tua

Mengingat bahwa anak bisa memiliki lebih dari sebuah orang tua, maka model data ini mendukung hubungan MANY TO MANY (M:M)

3. MODEL RELATIONAL

Model data relational meng gunakan sekumpulan tabel berdimensi dua, yang biasa disebut RELASI atau TABEL, dengan masing-masing tabel tersusun atas sejumlah BARIS dan KOLOM.


Label