Minggu, 28 Februari 2010

aturan dalam model data relasional

Nama : Yunita
kelas : 3ea07
tugas : SIM2
Model Data


Model data merupakan kumpulan konsep yang terpadu untuk mendeskripsikan data, keterhubungan antar data (data relationship), semantik, dan batasan konsistensi data yang berguna untuk menyembunyikan rincian (keruwetan) penyimpanan data level rendah. Model data bertindak sebagai representasi objek dan kejadian ‘dunia nyata’ (fakta) serta keterhubungannya. Pemodelan data diperlukan sebagai alat penggambaran konsep dan notasi dasar sebagai sarana komunikasi (protokol) antara perancang basisdata dengan pemakai secara tegas, akurat dan tidak ambigu.

Model data minimal mengandung tiga komponen, yaitu;

* Struktur Data (Data Structure), yang berisi sekumpulan definisi dan aturan berkaitan dengan basisdata yang dibangun
* Aturan Integritas Data (Data Integrity), biasanya berupa batasan-batasan (constraints) item-item data dalam basisdata untuk menjamin keakuratan data
* Manipulasi Data (Data Manipulation), berisikan tipe-tipe operasi yang sah yang digunakan sebagai alat manipulasi data, termasuk didalamnya operasi-operasi penyisipan (insert), pembaruan (update), pengurangan (delete) dan pengambilan (select) data serta pengubahan struktur basisdata (alter).

Model Data Berbasis Rekord (Record Based Data Model)
Model data berbasis rekord merupakan model data yang paling umum saat ini. Model ini mendeskripsikan data di tingkat konsep (conceptual level) dan pandangan (view level). Pada level konsep, perancang basisdata memandang data sebagai kumpulan kolom-kolom (attribute/field) yang memiliki keterhubungan (berelasi) menjadi sebuah rekord. Sedangkan pada level pandangan (view), pemakai dihadapkan pada data (nilai-nilai) yang harus di-input-kan. Pada model data berbasis rekord, basisdata dikonstruksikan dalam rekord-rekord dengan beberapa format tipe yang tetap. Setiap rekord memiliki sejumlah field tetap (attribute) yang memiliki panjang yang tetap.


Data level ini telah dilengkapi dengan kakas-kakas (tools) bahasa untuk mendeskripsikan hal-hal berikut;

* Skema konseptual yang digunakan untuk mendeskripsikan struktur data yang disimpan dalam basisdata. Pendeskripsian/pendefinisian struktur data dalam basisdata menggunakan bahasa DDL (Data Definition Language)
* Batasan (constraint) yang digunakan untuk menspesifikasikan kondisi-kondisi yang harus dipenuhi item-item data di dalama basisdata. Batasan-batasan ini didefinisikan dengan menggunakan bahasa DDL (Data Definition Language)
* Operasi-operasi manipulasi data dengan menggunakan DML (Data Manipulation Language) yang merupakan sekumpulan abstraksi data level tinggi.

Beberapa sistem basisdata menyertakan DCL (Data Control Language) yang menyatakan siapa saja yang berhak mengakses basisdata dan seberapa jauh haknya. Disamping itu ada DBMS menyertakan SDL (Storage Definition Language) yang memungkinkan database administrator atau perancang basisdata menyesuaikan skema fisik yang erat terpadu dengan dengan DDL (skema logik). Oracle Storage Management merupakan contoh SDL yang berfungsi mengatur Controlfile, Tablespace, Datafile, Rollback Segment & Archive Log.


Macam-Macam Model Data berbasis Rekord (Record Based Data Model)
Terdapat tiga macam model data berbasis rekord yang digunakan secra umum, yaitu;

* Model jaringan (network model)
* Model hirarki (hierarchical model)
* Model relasional (rational model)

Model jaringan merupakan model yang mempresentasikan data sebagai kumpulan rekord dan keterhubungannya (relasinya) digambarkan dengan himpunan-himpunan yang secara eksplisit berupa pointer dalam implementasinya. Rekord-rekord diorganisasikan sebagai struktur graph umum, dimana rekord bertindak sebagai simpul dan himpunan sebagai busur dalam graph.

Model hirarki merupakan tipe terbatas model jaringan. Data dipresentasikan sebagai kumpulan rekord dan keterhubungannya (relasinya) dipresentasikan sebagai himpunan. Model hirarki hanya mengijinkan sebuah simpul (rekord) mempunyai satu induk. Model ini dapat dipresentasikan sebagai tree graph (graph pohon) dengan rekord sebagai simpul/segment dan himpunan sebagai busur.

Model relasional, merupakan model data yang didasarkan pada konsep relasi matematika (aljabar relasional dan kalkulus relasional). Data dan keterhubungannya dipresentasikan sebagai tabel yang mempunyai kolom-kolom dengan nama unik dan antar entitas terdapat keterhubungan. Model relasional tidak menyatakan tautan (link) antar tabel secara eksplisit dengan pointer fisik. Kesamaan attribut/himpunan attribut di satu tabel yang sama dengan attribut/himpunan attribut di tabel lain, menyatakan adanya keterhubungan antara ke dua tabel tersebut. Pada model relasional ini, pemakai memandang basisdata hanya sebagai kumpulan tabel (relasi) yang memiliki keterhubungan secara logika. Hal tersebut sesuai cara pandang tingkat ekternal (view).


Model Data Relasional
Pada model relasional, semua data distrukturkan secara logik menjadi tabel-tabel (relasi-relasi). Masing-masing tabel (relasi) mempunyai nama yang unik dan terdiri dari kolom-kolom (attribut-attribut). Pada setiap baris/rekord (tupel) tabel (relasi) berisi satu nilai per attribut. Kekuatan utama model relasional adalah struktur logik yang sederhana dan didukung landasan teoritis yang kuat. Hal inilah yang menjadi kekuatan model relasional dibandingkan model data yang lama (model jaringan dan hirarki).

Model ini disebut relasional karena basisdata ini didasarkan pada konsep relasi matematika yang menyatakan data sebagai elemen-elemen dari himpunan-himpunan yang berbeda dan memiliki keterhubungan secara logik. Pengenalan model relasional ini memiliki tujuan/sasaran untuk;



* Meningkatkan derajat ketidakbergantungan data, utamanya terhadap program aplikasi.
* Memberikan landasan semantik, konsistensi dan menghindari praktek redudansi data dengan teknik normalisasi tabel (relasi)
* Memungkinkan adanya perluasan bahasa-bahasa manipulasi data yang berorientasi himpunan (set oriented data manipulation language).

Model relasional merupakan suatu tatanan yang menggiring pemakai dalam memandang data hanya sebagai kumpulan data yang memiliki keterhubungan secara logik membentuk sebuah tabel (relasi). Model data relasional tidak membicarakan data secara fisik dan strategi penyimpanan dan cara pengaksesannya.
Model relasional memiliki keunggulan sebagai berikut;



* Merupakan alat komunikasi yang bagus anatara pemakai dan perancang basisdata
* Memiliki kriteria perancangan basisdata yang esensi dan mapan
* Struktur data yang dipresentasikan dengan relasi dapat langsung dikonversi ke RDBMS dan diimplementasikan pada komputer. Seluruh data pada basisdata dapat diproses dengan satu kalimat tunggal (dengan menggunakan bahasa query).

Istilah-Istilah Pada Model Relasional
Beberapa istilah penting pada model data relasional adalah;

* Entitas/Entity
* Attibut
* Data Value
* Domain
* Rekord/Tupel
* Tabel/Relasi
* Derajat (Degree) Relasi
* Kardinalitas Relasi

Entitas/Entity, merupakan sesuatu yang memiliki nilai/data yang, seperti orang, tempat kejadian atau konsep yang data/informasinya perlu direkam dalam lingkup pembicaraan tertentu. Pada lingkup pembicaraan Sistem Informasi Administrasi Kemahasiswaan maka entitas yang tampil diantaranya adalah Mahasiswa, Dosen, Matakuliah, transaksi KRS dan absensi kelas.

Attribut, merupakan sebutan untuk mewakili suatu nilai/value dari suatu entitas. Seorang mahasisawa dapat memiliki attribut-attribut seperti NIM, Nama, Jenis Kelamin, Alamat dll. Attribut dapat juga disebut sebagai Data Elemen, Data Field atau Data Item.

Data Value, merupakan nilai/data aktual yang disimpan pada tiap attribut. Attribut Nama Mahasiswa menunjukkan tempat data nama seorang mahasiswa disimpan, sedangkan ‘ABU YAZID’, ‘ATO’ILLAH’, ‘DIAN AJI SUKMA’ dan ‘RETNO PALUPI’, merupakan data value dari attribut Nama Mahasiswa.

Domain, merupakan kumpulan/himpunan nilai-nilai yang diijinkan dan dapat dimiliki oleh suatu attribut. Setiap attribut pada basisdata relasional didefinisikan pada suatu domain. Domain tidak hanya sekedar tipe data, yang terkadang beberapa domain memiliki tipe data yang sama. Masing-masing attribut dalam suatu tabel/relasi dapat berbeda, namun sebaliknya, dapat juga dua atau lebih attribut mempunyai domain yang sama.Rekord/Tupel, merupakan himpunan attribut yang saling berkaitan secara logik untuk menginformasikan tentang suatu entitas secara lengkap.

Tabel/Relasi, merupakan kumpulan rekord/tupel sejenis yang mempunyai panjang elemen dan attribut yang sama, namun dapat memiliki data value yang berbeda-beda. Kumpulan rekord/tupel yang sejenis tersebut didefinisikan dalam sebuah nama yang uniq untuk menunjukkan keberadaannya yang berbeda (baik nama maupun kegunaannya) dengan tabel-tabel/relasi-relasi lain dalam sebuah database.

Derajat (Degree) Relasi, merupakan jumlah attribut yang dimiliki oleh sebuah tabel/relasi
Kardinalitas Relasi, merupakan jumlah rekord/tupel yang dimiliki oleh sebuah tabel/relasi. Kardinalitas relasi otomatis berubah ketika tupel relasi ditambah atau dihapus. Nilai kardinalitas adalah kondisi suatu saat dari sabuah tabel/relasi..


Skema Relasi

Skema relasi yang lengkap berisi;

* Nama relasi yang uniq dalam sebuah basisdata (database)
* Nama-nama attribut di relasi diasosiasikan sebagai nama-nama domain. Attribut merupakan nama yang diberikan kepada kolom di suatu relasi. Semua kolom harus diberi nama yang uniq. Nama domain hanya nama yang diberikan ke suatu himpunan nilai yang terdefinisi bagus.
* Konstrain-konstrain integritas yang berupa batasan-batasan pada relasi, yaitu batasan-batasan pada tupel-tupel yang muncul di relasi. Skema relasi disebut legal, bila telah memenuhi semua konstrain integritas yang diasosiasikan sebagai sebuah skema.

Contoh Skema Relasi;
Dosen (ID:CHAR[10], Nama:CHAR[30], Alamat:CHAR[25], Kota:CHAR[15], KodePos:CHAR[6] , Telp:CHAR[15] , Fax:CHAR[15])
Skema relasi tersebut memiliki jumlah attribut (derajat relasi) 7. Semua attributnya diasosiasikan bertipe CHAR, namun memiliki nama yang berbeda-beda. Tipe-tipe yang sama diantara attributnya bukan berarti memiliki domain yang sama.

Data pada model relasional, diorganisasikan/distrukturkan dalam bentuk tabel-tabel (relasi-relasi) yang terdiri dari sekumpulan kolom bernama (attribut) dan sembarang jumlah baris yang tidak bernama. Relasi mempunyai sifat-sifat sebagai berikut;

* Isian pada kolom-kolom (attribut) bernilai tunggal
* Isian pada kolom-kolom (attribut) adalah sejenis
* Tiap kolom (attribut) memiliki nama yang uniq
* Tiap baris adalah uniq
* Urutan kolom (dari kiri ke kanan) tidak penting
* Urutan baris (dari atas ke bawah) juga tidak penting

Relasi merupakan representasi data secara logik bukan representasi secara fisik. Relasi mendeskripsikan struktur data tanpa memperhatikan cara pengaksesan dan penyimpanannya secara fisik, sehingga cara analisa dan perancangannya pun tidak perlu memusingkannya.


ALJABAR RELASIONAL & KALKULUS RELASIONAL
Bahasa query rasional formal merupakan bahasa untuk meminta informasi dari sebuah database/basisdata tanpa harus menghiraukan kerumitan algoritma pengambilannya (sebagaimana sering dijumpai dalam bahasa pemrograman konvensional). SQL (Structured Query Language) merupakan contoh produk dari bahasa query rasional formal tersebut. Permintaan terhadap informasi dari sebuah basisdata cukup dideklarasikan dalam perintah-perintah formal (query) yang dikenal dan bukan proses komputasinya. Terdapat dua jenis bahasa query relasional formal yang utama, yaitu;

* Aljabar relasional
* Kalkulus relasional


Aljabar Relasional
Aljabar relasional merupakan bahasa query prosedural yang dapat mengistruksikan sistem komputer melakukan sederetan operasi agar diperoleh hasil/informasi yang diinginkan. Terdapat lima operasi dasar dari aljabar relasional, yaitu;



* Select ()
* Project ()
* Union ()
* Set-Difference ()
* Cartesian-Product (x) atau disebut juga dengan Cross Product


Selain itu, terdapat pula operasi-operasi turunan dari operasi-operasi dasar tersebut, yaitu;

* Set Intersection
* Theta Join
* Natural Join
* ivisiona

Tidak ada komentar:

Posting Komentar