Wednesday, October 28, 2009

Basic Data

Bayangkan dunia tanpa basis data :
? Dunia Pendidikan
Pertanyaan-- pertanyaan berikut iini banyak dijjumpai di llingkungan pendidikan ::
Berapakah jjumlah mahasiswa yang mengikuti kuliah basis data ?
Siapa sajakah yang llulus pada periode Agustus ttahun iini ?
Berapa persentase mahasiswa yang ttidak melakukan registrasi pada semester iini ?
Berapa jjumlah SKS yang diiperoleh oleh mahasiswa yang bernama Edi ?

? Perusahaan Kredit Motor / Mobil
Pertanyaan kepada pemilik usaha ::
“ Pak Bagus,, saya Pak Andi,, mau melunasi kredit mobil saya besok pagi..
Berapa yang harus saya bayar ttermasuk dendanya ?,, kebetulan sudah dua
bulan iini ttidak mengangsur berhubung saya sedang berada di lluar
negeri”..
? Perpusttakaan Besar di Kota/Uniiversitas
Perpustakaan memiliki ratusan ribu eksemplar buku,, jjurnal,, diktat,, dll..
? Bank yang sudah memiliki ratusan ribu hingga jjutaan nasabahnya

Basis Data (Database) dapat dibayangkan sebagai sebuah lemari arsip/baju/buku, yang memiliki
aturan/cara dalampenyusunan/penempatan arsip/baju/buku di dalamnya. Misal dengan :
• Disampul/map pada kumpulan/bundel arsip sejenis
• Penomoran dengan pola tertentu yang nilainya unik
• Menempatkan arsip tersebut dengan cara/urutan tertentu, atau
• Menyusun/menempatkan arsip sesuai kedatangan (kronologisnya) dan tanpa pengelompokkan.

Mengapa hal - hal ttersebut harus dilakukan?
Agar mudah dan cepat dalam mencari dan mengambil arsip/buku/baju dari
llemari masing-- masing..

DEFINISI BASIS DATA
Basis Data terdiri dari dua kata :
o Basis ? Kurang lebih dapat diartikan sebagai markas atau gudang, tempat bersarang/berkumpul.
o Data ? Representase fakta dunia nyata yang mewakili suatu objek seperti manusia (pegawai, siswa, pembeli, pelanggan), barang, hewan, peristiwa, konsep, keadaan, dsb. Yang direkam dalam bentuk angka, huruf, symbol, teks, gambar, bunyi, atau kombinasinya.
Secara tradisional, data diorganisasikan ke dalam suatu hirarki yang terdiri atas :
? Elemen Data
Adalah satuan data terkecil yang tidak dapat dipecah lagi menjadi unit lain
yang bermakna.
Data kepegawaian : nama pegawai, alamat, kota tempat tinggal, dan atribut
lain yang menyangkut seorang pegawai.
Istilah lain untuk elemen data adalah medan (fiield), kolom, item, dan atribut.
? Rekaman (Record)
Adalah gabungan sejumlah elemen data yang saling terkait. Contoh pada
data kepegawaian, nama, alamat, kota dan tanggal lahir seorang pegawai
dapat dihimpun dalam sebuah rekaman.
Dalam sistem basis data relasional, rekaman biasa disebut dengan istilah
tupel atau baris.
? Berkas (File)
Himpunan seluruh rekaman yang bertipe sama membentuk sebuah berkas.
Berkas dapat dikatakan sebagai kumpulan rekaman data yang berkaitan
dengan suatu objek.
Dalam sistem basis data relasional, berkas mewakili komponen yang disebut
tabel atau relasi.

HIRARKI DATA

Berkas/table barang

Basis Data sendiri dapat di definiiikan dalam sejumlah sudut pandang seperti ::
? Himpunan kelompok data (arsip) yang saling berhubungan yang di organisasi sedemikian rupa agar kelak dapat di manfaatkan kembali dengan cepat dan mudah.
? Kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa dan tanpa pengulangan (redundansi) yang tidak perlu, untuk memenuhi perbagai kebutuhan.
? Kumpulan tabel/file/arsip yang saling berhubungan yang di simpan dalam media penyimpanan elektronis.

Lemari Arsip dan Basis Data

Basis Data DalamPerspektif Fisik

SEJARAH KEMUNCULAN BASIS DATA

? Sistem pemrosesan basis data terbentuk setelah masa sistem pemrosesan manual dan system pemrosesan berkas.
? SistemPemrosesanManual (berbasis kertas)
Merupakan bentuk pemrosesan yang menggunakan dasar berupa setumpuk rekaman yang disimpan pada rak-rak berkas. Contoh: pada buku telepon saku, yang seseorang relative mudah mencari nama-nama rekannya karena datanya telah disusun secara alfabetis. Namun demikian kemudahan ini tetap saja kurang luwes, data tidak bias diurutkan menurut kata atau no.tlpn tertentu, kecuali dilakukan penulisan kembali.
? SistemPemrosesan Berkas
Sekelompok rekaman disimpan pada sejumlah berkas secara terpisah. Sistem ini memiliki kelebihan daripada sistem pemrosesan manual, yaitu dalam hal kecepatandan keakuratannya.
Kelemahannya, perancangan sistem masih didasarkan pada kebutuhan individual pengguna, bukan kebutuhan sejumlah pengguna. Setiap kali ada kebutuhan baru dari seorang pengguna, kebutuhan
segera diterjemahkan ke program komputer. Alhasil, setiap program aplikasi menuliskan data tersendiri. Sementara itu ada kemungkinan data yang sama juga terdapat pada berkas-berkas lain yang digunakan oleh program aplikasi
lain.
Konkretnya,, system pemrosesan berkas memiliki kekurangan dalam hal:
_ kemubaziran data ((adanya duplikasi data)
_ keterbatasan berbagi data
_ ketidak konsistenan dan kurangnya iintegritas (dikarenakan perubahan pada data yang sama, tetapi tidak semuanya diubah)
_ ketidakluwesan ((karena perubahan struktur
berkas akan merubah program).

EVOLUSI TEKNOLOGI EVOLUSI TEKNOLOGI BASIS DATA

OPERASI DASAR BASIS DATA

o Pembuatan basis data baru (Creatte Dattabase), yang identik dengan pembuatan lemari arsip duluan.
o Penghapusan basis data (Drop Dattabase), yang identik dengan perusakan lemari arsip, sekaligus beserta isinya apabila ada.
o Pembuatan file/tabel baru ke suatu basis data (Create Table), yang identik dengan penambahan map arsip baru ke sebuah lamari arsip.
o Penghapusan file/tabel dari suatu basis data (Drop Tablle), yang identik dengan perusakan map arsip lama yang ada di sebuah lemari arsip.
o Penambahan/pengisian data baru ke sebuah file/tabel di sebuah basis data (insert). Yang identik dengan penambahan lembaran arsip ke sebuah map.
o Pengambilan data dari sebuah file/tabel (Retrieve/Search,, yang identik dengan pencarian lembaran dari sebuah map arsip.
o Pengubahan data dari sebuah file/tabel (Updatte), yang identik dengan perbaikan isi lembaran arsip yang ada di sebuah map arsip.
o Penghapusan data dari sebuah fille/tabell (Dellette), yang identik dengan penghapusan sebuah lembaran arsip yang ada di sebuah map arsip.

OBJEKTIF BASIS DATA

o Kecepattan dan Kemudahan (Speed)
Lebih cepat dan mudah dalam memaiipulasi dan menampilkan dtta..
o Efisiensi Ruang Penyimpanan (Space)
Efisiensi/optimalisasi penggunaan ruang penyimpanan dapat dilakukan, karena kita dapat melakukan penekanan jumlah redundansi data, baik dengan menerapkan sejumlah pengkodean atau dengan membuat relasi-resali (dalam bentuk file) antar kelompok datayang saling berhubungan.
o Keakurattan (Accuracy)
Pemanfaatan pengkodean atau pembentukan relasi antar data bersama dengan aturan/batasan (constraint) tipe data, domain data, keunikan data, dsb,yang secara ketat dapat diterapkan dalam sebuah basis data, sangat berguna untuk menekan ketidak akuratan pemasukan/penyimpanan data.
o Ketersediaan (Availability)
Adanya pemilahan data utama/master/referensi, data transaksi, data histori hinga data kadaluarsa. Data yang sudah jarang atau bahkan tidak pernah digunakan, dapat diatur untuk dilepaskan dari system basis data yang sedang aktif (menjadi of-line) baik dengan cara penghapusan atau dengan memindahkannya ke media penyimpanan of-line (seperti removable disk, atau tape).
o Kelengkapan (Completeness)
Lengkap/tidaknya data yang kita kelola dalam sebuah basis data bersifat relatif (baik terhadap kebutuhan pemakai maupun terhadap waktu). Untuk mengakomodasi kebutuhan kelengkapan datayang semakin berkembang, maka tidak hanya menambah record-record data, tetapi juga dapat melakukan perubahan struktur dalam basis data, baik dalam bentuk penambahan objek baru (table) atau dengan penambahan field-field baru pada sebuah table.
o Keamanan (Security)
Menentukan siapa-siapa (pemakaii) yang boleh menggunakan basis data beserta objek-objek di dalamnya dan menentukan jenis-jenis operasi apa saja yang boleh dilakukannya.
o Kebersamaan Pemakai (Sharability)
Basis data yang dikelola oleh sistem (aplikasi) yang mendukung lingkungan multiuser, akan dapat memenuhi kebutuhan ini, tetapi tetap dengan menjaga/menghindari terhadap munculnya persoalan baru seperti inkonsistensi data (karena data yang sama diubah oleh banyak pemakai pada saat bersamaan) atau kondisi deadlock (karena adanya banyak pemakai yang saling menunggu untuk menggunakan data).

PENERAPAN BASIS DATA
Secara llebih tteknis/nyata, bidang-bidang fungsional yang telah umum memanfaatkan basis data demi efisiensi, akurasi, dan kecepatan operasi antara lain adalah:
- Kepegawaian
- Pergudangan ((Inventory)
- Akunttasi
- Reservasi
- Layanan Pelanggan ((Customer Carre), dll.

Sedang bentuk-bettuk organisasi/perusahaan yang memanfaatkan basis data (sebagai komponen system informasi dalam organisasi/perusahaan) dapat berupa:
- Perbankan
Pengelolaan data nasabah/data tabungan/data pinjaman, pembuatan laporan-laporan
akuntansi, pelayanan informasi pada nasabah/calon nasabah, dll.
- Asuransi
Pengelolaan data nasabah/data pembayaran premi, pemrosesan pengajuan klaim asuransi, dll.
- Rumah Sakit
Pengelolaan histori penyakit/pengobatan pasien, menangani pembayaran perawatan,dll.
- Produsen Barang
Pengelolaan data keluar masuk barang (inventory), dll.
- Industri Manufaktur
Pengelolaan pesanan barang, data karyawan, dll.
- Pendidikan/Sekolah
Pengelolaan data siswa, penjadwalan kegiatan perkuliahan, dll.
- Telekomunikasi
Pengelolaan data administrasi kabel/data pelanggan, menangani gangguan, dll.
- Dll.

LINGKUNGAN BASIS DATA

File mahasiswa: Mhs (npm, nama, Alamat, tgl_lahir)
MataKul (kd_mk, nama_mk, sks)
File MataKuliah: MataKul (kd_mk, nama, sks)

Kelemahan sistem pemrosesan file :

? imbulnya data rangkap (redundancy data) dan Ketidakkonsistensi data (inconsistency data).
Karena file-file dan proTgram aplikasi disusun oleh programmer yang berbeda, sejumlah informasi mungkin memiliki duplikasi dalam beberapa file. Sebagai contoh nama mata kuliah dan sks dari mahasiswa dapat muncul pada suatu file memiliki record-record mahasiswa dan juga pada suatu file yang terdiri dari record-record mata kuliah. Kerangkapan data seperti ini dapat menyebabkan pemborosan tempat penyimpanan dan biaya akses yang bertambah. Disamping itu dapat terjadi inkonsistensi data. Misalnya, apabila terjadi perubahan jumlah sks mata kuliah, sedangkan perubahan hanya diperbaiki pada file mata kuliah dan tidak diperbaiki pada file mahasiswa. Hal ini dapat mengakibatkan kesalahan dalam laporan nilai mahasiswa.
? Kesukaran dalam Mengakses Data
Munculnya permintaan-permintaan baru yang tidak diantisipasikan sewaktu membuat program aplikasi, sehingga tidak memungkin-kan untuk pengambilan data.
? Data terisolir (Isolation Data)
Karena data tersebar dalam berbagai file, dan file-file mungkin dalam format — format yang berbeda, akan sulit menuliskan program aplikasi baru untuk mengambil data yang sesuai.
? Masalah Pengamanan ( Security Problem )
Tidak semua pemakai diperbolehkan mengakses seluruh data. Bagian Mahasiswa hanya boleh mengakses file mahasiswa. Bagian Mata kuliah hanya boleh mengakses file mata kuliah, tidak boleh mengakses file mahasiswa Tetapi sejak program-program aplikasi ditambahkan secara ad-hoc maka sulit melaksanakan pengamanan seperti yang diharapkan.
? Data Dependence
Apabila terjadi perubahan atau kesalahan pada program aplikasi maka pemakai tidak dapat mengakses data.

Sistem Basis data

- Mhs ( Npm, nama, alamat, tgl_Iahir )
- Mt_kul (kd_mk, nama_mk,sks )

Konsep Dasar Basis Data

Data adalah representasi fakta dunia nyata yang mewakili suatu objek seperti manusia (pegawai, mahasiswa, pembeli), barang, hewan, peristiwa, konsep, keadaan, dan sebagainya yang direkam
dalam bentuk angka, huruf, simbol, teks, gambar, bunyi atau kombinasinya.
- Basis Data adalah sekumpulan data yang terintegrasi yang diorganisasikan untuk memenuhi kebutuhan para pemakai di dalam suatu organisasi.
- DBMS (Database Management System) adalah Perangkat Lunak yang menangani semua pengaksesan ke basis data
- Sistem Basis Data terdiri dari basis data dan DBMS.

Istilah - Istilah Dasar Basis Data

• Enterprise
Suatu bentuk organisasi seperti : bank, universitas, rumah sakit, pabrik, dsb. Data yang disimpan dalam basis data merupakan data operasional dari suatu enterprise.
Contoh data operasional : data keuangan, data mahasiswa, data pasien
• Entitas
Suatu obyek yang dapat dibedakan dari lainnya yang dapat diwujudkan dalam basis data.
Contoh Entitas dalam Iingkungan bank terdiri dari : Nasabah, Simpanan, Hipotik Contoh Entitas dalam Iingkungan universitas terdiri dari : Mahasiswa, mata kuliah Kumpulan dari entitas disebut Himpunan Entitas
Contoh : semua nasabah, semua mahasiswa
• Atribut (Elemen Data)
Karakteristik dari suatu entitas.
Contoh : Entitas Mahasiswa atributnya terdiri dari Npm, Nama, Alamat, Tanggal lahir.
• Nilai Data (Data Value)
Isi data / informasi yang tercakup dalam setiap elemen data.
Contoh Atribut Nama Mahasiswa dapat berisi Nilai Data : Diana, Sulaeman, Lina
• Kunci Elemen Data (Key Data Element)
Tanda pengenal yang secara unik mengidentifikasikan entitas dari suatu kumpulan entitas.
Contoh Entitas Mahasiswa yang mempunyai atribut npm, nama, alamat, tanggal lahir menggunakan Kunci Elemen Data npm.
• Record Data
Kumpulan Isi Elemen data yang saling berhubungan.
Contoh : kumpulan atribut npm, nama, alamat, tanggal lahir dari Entitas Mahasiswa berisikan : "10200123", "Sulaeman", "JI. Sirsak 28 Jakarta", "8 Maret 1983".

Keuntungan Sistem Basis Data

? Terkontrolnya kerangkapan data
Dalam basis data hanya mencantumkan satu kali saja field yang sama yang dapat dipakai oleh semua aplikasi yang memerlukannya.
? Terpeliharanya keselarasan (kekonsistenan) data
Apabila ada perubahan data pada aplikasi yang berbeda maka secara otomatis perubahan itu berlaku untuk keseluruhan
? Data dapat dipakai secara bersama (shared)
Data dapat dipakai secara bersama-sama oleh beberapa program aplikasi (secara batch maupun on-line) pada saat bersamaan.
? Dapat diterapkan standarisasi
Dengan adanya pengontrolan yang terpusat maka DBA dapat menerapkan standarisasi data yang disimpan sehingga dapat memudahkan pemakaian, pengiriman maupun pertukaran data.
? Keamanan data terjamin
DBA dapat memberikan batasan-batasan pengaksesan data, misalnya dengan memberikan password dan pemberian hak akses bagi pemakai (missal: modify, delete, insert, retrieve)
? Terpelliharanya iintegritas data
Jika kerangkapan data dikontrol dan kekonsistenan data dapat dijaga maka data menjadi akurat.
? Terpeliharanya keseimbangan (keselarasan) antara kebutuhan data yang berbeda dalam setiap aplikasi struktur basis data diatur sedemikian rupasehingga dapat melayani pengaksesan data dengan cepat.
? Data iindependence (kemandirian data)
Dapat digunakan untuk bermacam-macam program aplikasi tanpa harus merubah format data yang sudah ada

Kelemahan Sistem Basis Data
• Memerlukan tenaga spesialis
• Kompleks
• Memerlukan tempat yang besar
• Mahal

Pengguna Basis Data

1.. System Engineer
Tenaga ahli yang bertanggung jjawab atas pemasangan Siistem Basiis Data,, dan jjuga mengadakan peniingkatan dan melaporkan kesalahan dari system tersebut kepada pihak penjual.
2. Database Administrator (DBA)
Mengontrol DBMS dan software-software Tenaga ahli yang mempunyai tugas untuk mengontrol sistem basis data secara keseluruhan, meramalkan kebutuhan akan sistem basis data, merencanakannya dan mengaturnya.
Tugas DBA :
• Memonitor siapa yang mengakses basis data
• Mengatur pemakaian basis data
• Memeriksa security, integrity, recovery dan concurency
Program Utilitas yang digunakan oleh DBA :
• Loading Routines
Membangun versi utama dari basis data
• Reorganization Routines
Mengatur / mengorganisasikan kembali basis data
• Journaling Routines
Mencatat semua operasi pemakaian basis data
• Recovery Routines
Menempatkan kembali data, sebelum terjadinya kerusakan
• Statistical Analysis Routines
Membantu memonitor kehandalan system
3. End User (Pemakai Akhir)
• Programmer aplikasi
Pemakai yang berinteraksi dengan basis data melalui Data Manipulation Language (DML), yang disertakan (embedded) dalam program yang ditulis pada bahasa pemrograman induk (seperti C, pascal, cobol, dll)
• Pemakai Mahir (Casual User)
Pemakai yang berinteraksi dengan sistem tanpa menulis modul program. Mereka menyatakan query (untuk akses data) dengan bahasa query yang telah disediakan oleh suatu DBMS
• Pemakai Umum(End User/Naive User)
Pemakai yang berinteraksi dengan sistem basis data melalui pemanggilan satu program aplikasi permanen (executable program) yang telah ditulis (disediakan) sebelumnya.
• Pemakai Khusus (Specialized/Sophisticated User)
Pemakai yang menulis aplikasi basis data non konvensional, tetapi untuk keperluan-keperluan khusus seperti aplikasi Al, Sistem Pakar, Pengolahan Citra, dll, yang bisa saja mengakses basis data dengan atau tanpa DBMS yang bersangkutan.

PERKEMBANGAN BASIS DATA

TIGA TINGKATAN ARSITEKTUR BASIS DATA

1. Tingkat eksternal (external 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.

2. Tingkat konseptual (conceptual level)
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.

3. Tingkat Internal (Internal level)
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)
- Penempata record
- Penempatan data dan teknik enscryption.

Contoh: sebuah file pegawai yang akan didefinisikan
Tingkat eksternal (external level):
Cobol
01 PEG_REC.
02 PEG_NO PIC X(6).
02 DEPT_NO PIC X(4).
02 GAJI PIC 9(4).
Tingkat konseptual (conceptual level):
PEGAWAI
NOMOR_PEGAWAI CHARACTER 6
NOMOR_DEPT CHARACTER 4
GAJI NUMERIC 6
Tingkat internal (internal level):
FILE_PEGAWAI LENGTH = 22
PREFIX TYPE = BYTE (6), OFFSET = 0
EMP# TYPE = BYTE (6), OFFSET = 6, INDEX = EMPX
DEPT# TYPE = BYTE (4), OFFSET = 12
PAY TYPE = FULLWORD, OFFSET = 16

Data Independence

Tujuan utama dari tingkat arsitektur adalah memelihara kemandirian data (data independence) Yang berarti perubahan yang terjadi pada tingkat yang lebih rendah tidak mempengaruhi tingkat yang lebih tinggi.
1. Physical data independence
Bahwa internal schema dapat diubah oleh DBA tanpa mengganggu conceptual schema. Dengan kata lain physical data independence menunjukan kekebalan conceptual schema terhadap perubahan internal schema.
2. Logical data independence
Bahwa conceptual schema dapat diubah oleh DBA tanpa mengganggu external schema. Dengan kata lain logical data independence menunjukan kekebalan external schema terhadap perubahan conceptual schema.
Prinsip data independence adalah salah satu hal yang harus diterapkan didalam pengelolaan system basis data dengan alas an-alasan sbb:
1. DBA dapat mengubah isi, lokasi, perwujadan dalam organisasi basis data tanpa mengganggu program-program aplikasi yang sudah ada.
2. Pabrik/agen peralatan/software pengolahan data dapat memperkenalkan produk-produk baru tanpa mengganggu program-program aplikasi yang sudah ada.
3. Untuk memindahkan perkembangan program-program aplikasi.
4. memberikan fasilitas pengontrolan terpusat oleh DBA demi keamanan dan integritas data dengan memperhatiakan perubahan-perubahan kebutuhan pengguna.

Bahasa dalam DBMS

DBMS (database management system) adalah kumpulan program yang mengkoordinasikan semua kegiatan yang berhubungan dengan basis data. Dengan adanya berbagai tingkatan pandangan dalam suatu basis data maka untuk mengkoordinasikan masing-masing pengguna dalam piranti lunak manajemen basis data biasanya terdapat bahasa-bahasa tertentu yang disebut data sub language.
Data sub language adalah subset bahasa yang dipakai untuk operasi manajemen basis data. Dalam penggunaan biasanya dapat ditempelkan (embedded) pada bahasa tuan rumah (cobol, PL/1, dsb). Secara umum maka setiap pengguna basis data memerlukan bahasa yang dipakai sesuai tugas dan fungsinya.
Dalam basis data secara umum dikenal 2 data sub language:
1. Data Definition Language (DDL)
Bahasa yang digunakan dalam mendefinisikan struktur atau kerangka dari basis data, didalamnya termasuk record, elemen data, kunci elemen, dan relasinya.
2. Data manifulation language (DML)
Bahasa yang digunakan untuk menjabarkan pemrosesan dari bsis data, fasilitas ini diperlukan untuk memasukkan, mengambil, mengubah data. DML dipakai untuk operasi terhadap isi basis data
Ada dua jenis DML:
1. Procedural
Digunakan untuk mendefinisikan data yang di olah dan perintah yang akan dilaksanakan.
2. Non procedural
Digunakan untuk menjabarkan data yang diinginkan tanpa menyebutkan bagaimana cara pengambilannya.

Model data

Model data adalah kumpulan konsep yang terintegrasi yang menggambarkan data, hubungan antara data dan batasan-batasan data dalam suatu organisasi. Fungsi dari sebuah model data untuk merepresentasikan data sehingga data tersebut mudah dipahami.
Untuk menggambarkan data pada tingkat eksternal dan konseptual digunakan model data berbasis objek atau model data berbasis record.
1. Model data berbasis objek
Model data berbasis objek menggunakan konsep entitas, atribut dan hubungan antar entitas. Beberapa jenis model data berbasis objek yang umum adalah:
- entity-relationship
- Semantic
- Functional
- Object-oriented.
2. Model data berbasis record
Pada model data berbasis record, basis data terdiri dari sejumlah record dalam bentuk yang tetap yang dapat dibedakan dari bentuknya. Ada 3 macam model data berbasis record yaitu:
- Model data relasional (relational)
- Model data hierarkhi (hierarchical)
- Model data Jaringan (network).

1. Query processor
Komponen yang merubah bentuk query ke dalam instruksi tingkat rendah ke database manager.
2. Database Manager
Batabase manager menerima query dan menguji skemaeksternal dan konseptual untuk menentukan apakah record-record dibutuhkan untuk memenuhi permintaan. Kemudian database manager memanggil file manager untuk menyelesaikan permintaan.
3. File manager
Memanipulasi penyimpanan file dan mengatur alokasi ruang penyimpanan pada disk.
4. DML preprocessor
Modul yang merubah perintah DML embedded kedalam program aplikasi dalam bentuk fungsi-fungsi yang memanggil dalam host language.
5. DDL compiler
Merubah perintah DDL menjadi kumpulan table yang berisi metadata.
6. Dictionary manager
Mengatur akses dan memelihara data dictionary. Data dictionary diakses oleh komponen DBMS yang lain.

Komponen software utama database manager adalah:
1. Autorization control
Modul yang memeriksa apakah pemakai mempunyai wewenang untuk menyelesaikan operasi.
2. Command processor
Memeriksa apakah pemakai mempunyai wewenang untuk menyelesaikan operasi.
3. Integrity checker
Untuk semua operasi yang merubah basis data, integrity checker memeriksa operasi yang diminta memerlukan batasan integritas.
4. Query optimizer
Modul ini menentukan strategi yang optimal untuk eksekusi query
5. Transaction manager
Modul ini mengerjakan proses-proses yang dibutuhkan operasi yang diterima transaksi.
6. Scheduler
Modul ini bertanggung jawab untuk menjamin operasi secara bersamaan terhadap basis data sehingga berjalan tanpa ada masalah antara yang satu dengan yang lain.
7. Recovery manager
Modul ini menjamin basis data tetap konsisten walaupun terjadi kerusakan.
8. Buffer manager
Modul ini bertanggung jawab terhadap pemindahan data antara main memory dan secondary storage, seperti disk dan tape.

No comments: