Kamis, 22 Mei 2008

Dr. Codd's 12 Rules for a Relational Database Model

The most popular data storage model is the relational database, which grew from the

seminal paper "A Relational Model of Data for Large Shared Data Banks," written by

Dr. E. F. Codd in 1970. SQL evolved to service the concepts of the relational database

model. Dr. Codd defined 13 rules, oddly enough referred to as Codd's 12 Rules, for the

relational model:

0. A relational DBMS must be able to manage databases entirely through its

relational capabilities.

1. Information rule-- All information in a relational database (including table

and column names) is represented explicitly as values in tables.


2. Guaranteed access--Every value in a relational database is guaranteed to be

accessible by using a combination of the table name, primary key value, and

column name.


3. Systematic null value support--The DBMS provides systematic support for the

treatment of null values (unknown or inapplicable data), distinct from default

values, and independent of any domain.


4. Active, online relational catalog--The description of the database and its

contents is represented at the logical level as tables and can therefore be

queried using the database language.


5. Comprehensive data sublanguage--At least one supported language must have a

well-defined syntax and be comprehensive. It must support data definition,

manipulation, integrity rules, authorization, and transactions.


6. View updating rule--All views that are theoretically updatable can be updated

through the system.


7. Set-level insertion, update, and deletion--The DBMS supports not only set-

level retrievals but also set-level inserts, updates, and deletes.


8. Physical data independence--Application programs and ad hoc programs are

logically unaffected when physical access methods or storage structures are

altered.


9. Logical data independence--Application programs and ad hoc programs are

logically unaffected, to the extent possible, when changes are made to the table

structures.


10. Integrity independence--The database language must be capable of defining

integrity rules. They must be stored in the online catalog, and they cannot be

bypassed.


11. Distribution independence--Application programs and ad hoc requests are

logically unaffected when data is first distributed or when it is redistributed.


12. Nonsubversion--It must not be possible to bypass the integrity rules defined

through the database language by using lower-level languages.


Elemen-elemen RDBMS

Database :
Sekelompok tabel data berisi informasi yang berhubungan. Perhatikan bahwa suatu database dapat terdiri dari satu tabel saja.

Table :
Sekelompok record data, masing-masing informasi yang sejenis. Dalam contoh catalog perpustakaan, catalog itu sendiri merupakan tabel data.

Record :
Entri tunggal dalam tabel; entri tersebut terdiri dari sejumlah field data. Dalam catalog perpustakaan, record adalah salah satu baris entri tunggal.

Field :
Item (kolom) tertentu dari data dalam record. Dalam satu buku telepon, sekurang-kurangnya dapat dikenali empat field : nama keluarga, nama depan, alamat, dan nomor telepon.

Index :
Tipe tabel tertentu yang berisi nilai-nilai field kunci atau field (yang ditetapkan oleh pemakai) dan pinter ke lokasi record yang sebenarnya. Nilai-nilai dan pointer ini disimpan dalam urutan tertentu (sekali lagi ditetapkan oleh pemakai) dan mungkin digunakan untuk menyajikan data dalam urutan database.

Query :
Perintah SQL yang dirancang untuk memanggil kelompok record tertentu dari satu tabel atau lebih untuk melakukan operasi pada tabel. Meskipun perintah SQL dapat dijalankan langsung dari program, query sebagai enjin perintah dan menyimpannya dalam database itu sendiri - ini berguna, jika perintah-perintah SQL sering kita gunakan, sebagaimana perintah yang memanggil record untuk laporan bulanan tertentu. Bila query disimpan dalam database, biasanya kompilasi. Kompilasi query memperbaiki kinerja program kita kerana mesin database tidak harus menerjemahkan (atau menguraikan) perintah SQL.

Filter (Pembatas Kondisi) :
Filter sebenarnya bukan merupakan bagian dari database, namun ia digunakan bersama urutan indeks dan sort untuk menentukan data mana yang diproses atau ditampilkan. Filter adalah pembatas kondisi yang dikenakan pada data

View :
View data terdiri atas jumlah record yang tampak (atau diproses) dan urutan penampilannya (atau pemrosesannya). View khususnya dikendalikan oleh filter dan indeks.

Arsitektur RDBMS

Arsitektur RDBMS memiliki banyak karakteristik yang membedakan dari model penyimpanan data lainnya. Perbedaan yang paling penting adalah pemisahan segi fisik dari segi logika suatu data. Dalam RDBMS, seluruh data secara logika tersimpan di dalam tabel-tabel, yang merupakan kumpulan dari baris dan kolom. Sistem pencarian data di dalam RDBMS menggunakan index yang merupakan struktur data yang terpisah dari tabel dan menyimpan hanya nilai terstruktur dari kolom-kolom dan alamat fisiknya. Disamping itu dengan didukung oleh penggunaan index dapat mempercepat proses pencarian data di dalam database.
Faktor penting lainnya dari arsitektur RDBMS adalah integrity constraints. Dengan Integrity Constraints tabel-tabel dihubungkan dengan key. Key adalah beberapa kolom atau kombinasi kolom kolom yang secara unique mengidentifikasi setiap tabel. Sebuah key yang secara unique bagi suatu tabel dapat berdiri sebagai kolom yang tidak unique bagi tabel lainnya. Integrity Constraints adalah aturan "build in" yang secara otomatis berpengaruh dalam mempertahankan integritas database.
Aturan-aturan integritas ini biasa dibuat atau dirancang oleh seorang perancang database. Karakteristik penting lainnya dari arsitektur RDBMS adalah adanya "Optimizer". Optimizer adalah sebuah sistem pakar yang bertugas untuk menentukan cara pemrosesan yang paling efesien bagi suatu database.

Relational Database Management System (RDBMS)

Relational Database Management System (RDBMS) adalah sebuah sistem yang secara otomatis menyatukan semua DBMS yang saling berhubungan. RDBMS biasanya menggunakan 4th Genration Languange (4GL) dan sangat fleksibel sehingga data dapat dimodifikasi dengan mudah, demikian pula dengan struktur databasenya.

RDBMS tumbuh dari suatu teori yang pertama kali dikembangkan oleh E.F Codd (IBM, 1969). Model relasi CODD ini digunakan untuk menciptakan sebuah sistem secara formal sebagai media penyimpanan data yang memisahkan representasi data secara internal dari aksses dan representasi / perwujudan logikanya.

Kekuatan RDBMS terletak pada kemampuannya untuk menyembunyikan detail dari penyimpanan data dari pengguna database dan cara penggunaanya yang lebih mudah baik bagi pembangunan aplikasi / programmer, maupun bagi pemakai akhir (end user). Hal ini didukung pula dengan penggunaan Structured Query Languange (SQL) sebagi sumber dari semua RDBMS.

Database Management System (DBMS)

Database Management System atau sering disingkat menjadi (DBMS) diciptakan untuk menyediakan mekanisme penyimpanan data bersama, baik bagi user-user maupun program-program. Tugas utama bagi DBMS adalah untuk menyediakan fungsi pendefinisian data bagi user untuk mengakses dan merubah data yang tersimpan.
Di luar fungsi utamanya, DBMS juga dituntut untuk memiliki kemampuan untuk mengamankan data dari user yang tidak berkepentingan, perbaikan bagi kegagalan sistem, concurrency : sehingga user yang banyak jumlahnya tersebut dapat mengakses database pada waktu yang bersamaan, dan melakukan pengecekan integritas sehingga data pada bagian yang berbeda dari suatu database dapat tetap konsisten secara logika terhadap keseluruhan database.
Sehingga dapat di tarik definisi umum bahawa DBMS adalah kumpulan program-program (software) yang memperbolehkan user untuk membuat dan memelihara database.

Mendefinisikan Istilah "Database"

Pada definisi yang luas, database adalah kumpulan informasi, biasanya disusun dalam urutan tertentu. Database adalah kumpulan data yang terintegrasi satu sama lain. Contoh database yang umum ialah buku telephon. Buku ini berisi kumpulan nama, alamat dan nomor telepon yang disusun dalam urutan alfabet.
Database dapat dijalankan secara manual atau menggunakan menggunakan mesin, dalam hal ini komputer. Contoh yang manual adalah buku telephon tadi ataupun suatu katalog di perpustakaan. Database yang dikelola oleh komputer dapat dibuat baik oleh program aplikasi yang khusus dibuat maupun dengan Database Management System.