Database Management System (DBMS)

Perangkat lunak yang didesain untuk membantu dalam memelihara dan menggunakan koleksi data dalam jumlah yang besar. Penggunaan DBMS adalah untuk menyimpan data dalam file dan menulis aplikasi dengan kode khusus untuk mengaturnya.

Asep Septiadi @ [email protected]

Sumber: http://repository.usu.ac.id/bitstream/handle/123456789/46315/Chapter%20II.pdf;jsessionid=97C31261F16F5FAC95798A4114ED4666?sequence=3

A. Sistem Basis Data

Basis Data dan Teknologinya telah memainkan peran penting seiring dengan pertumbuhan penggunaan komputer. Basis data telah digunakan pada hampir seluruh area dimana komputer digunakan, termasuk bisnis, teknik, kesehatan, hukum, pendidikan dan sebagainya. Kata basis data dapat didefinisikan sebagai kumpulan data yang saling berhubungan. Sedangkan kata data dapat didefinisikan sebagai fakta yang direkam atau dicatat.

Sebagai contoh adalah nama, nomor telepon, dan alamat dari orang-orang yang anda kenal. Anda mungkin telah merekam data ini pada buku alamat, atau anda dapat menyimpannya dalam disket, menggunakan komputer personal dan perangkat lunak seperti dBASE IV.

Sistem Basis Data adalah suatu sistem menyusun dan mengelola record-record menggunakan komputer untuk menyimpan atau merekam serta memelihara data operasional lengkap sebuah organisasi/perusahaan sehingga mampu menyediakan informasi yang optimal yang diperlukan pemakai untuk proses mengambil keputusan.

B. Konsep Basis Data Relasional

Prinsip model relasional (relational model) pertama kali diperkenalkan oleh Dr. E.F Codd, pada bulan Juni 1970 dalam sebuah tulisannya yang berjudul “A Relational Model of Data for Large Shared Data Banks.” Dalam tulisan tersebut, Dr. Codd menjelaskan tentang model relasional untuk sistem basis data.

Model-model yang lebih populer digunakan pada saat itu adalah hierarchical dan network, atau bahkan simple flat file data stuctures. Relational Database Management Systems (RDBMS) segera menjadi sangat populer, terutama karena kemudahan penggunaannya dan fleksibilitas struktur datanya.

Selanjutnya, banyak vendor bermunculan untuk mendukung sistem ini diantaranya Oracle, Ms.SQL Server dimana mendukung RDBMS dengan paket untuk keperluan membangun aplikasi dan produk-produk siap pakai, sebagai total solusi bagi keperluan pengembangan teknologi informasi.

C.Konsep Model Relasional

Konsep basis data model relasional memiliki beberapa definisi penting sebagai berikut:

  • Mengatur penyimpanan data

  • Mengontrol akses terhadap data

  • Mendukung proses menampilkan dan memanipulasi data

D. Istilah-istilah Basis Data Relasional

Beberapa istilah yang perlu kita pahami mengenai basis data relasional antara lain:

  • Tabel: Merupakan struktur penyimpanan dasar dari basis data relasional, terdiri dari satu atau lebih kolom (column) dan nol atau lebih baris (row).

  • Row (baris): Baris merupakan kombinasi dari nilai-nilai kolom dalam tabel; sebagai contoh, informasi tentang suatu departemen pada tabel Departmen. Baris seringkali disebut dengan “record”.

  • Column (kolom): Kolom menggambarkan jenis data pada tabel; sebagai contoh, nama departemen dalam tabel Departmen. Kolom di definisikan dengan nama kolom dan tipe data beserta panjang data tertentu.

  • Field : Field merupakan pertemuan antara baris dan kolom. Sebuah field dapat berisi data. Jika pada suatu field tidak terdapat data, maka field tersebut dikatakan memiliki nilai “null”.

  • Primary key : Primary key atau kunci utama merupakan kolom atau kumpulan kolom yang secara unik membedakan antara baris yang satu dengan lainnya; sebagai contoh adalah kode departemen. Kolom dengan kategori ini tidak boleh mengandung nilai “null”, dan nilainya harus unique (berbeda antara baris satu dengan lainnya).

  • Foreign key: Foreign key atau kunci tamu merupakan kolom atau kumpulan kolom yang mengacu ke primary key pada tabel yang sama atau tabel lain. Foreign key ini dibuat untuk memaksakan aturan-aturan relasi pada basis data. Nilai data dari foreign key harus sesuai dengan nilai data pada kolom dari tabel yang diacunya atau bernilai “null”.

E. Basis Data Terdistribusi

Basis data terdistribusi adalah kumpulan data logic yang saling berhubungan secara fisik terdistribusi dalam jaringan komputer, yang tidak tergantung dari program aplikasi sekarang maupun masa yang akan datang.

Basis data terdistribusi (distributed database) merupakan suatu basis data yang di bawah sistem manajemen basis data atau (DBMS) yang terpusat dengan peranti penyimpanan (storage devices) dan terpisah-pisah satu dari yang lainnya. Dan tempat penyimpanan dapat berada di satu lokasi yang secara fisik berdekatan.

Contohnya: Dalam satu bangunan atau terpisah oleh jarak yang jauh walaupun banyak bangunannya dan terhubung melalui jaringan internet. Dalam penggunaan basis data terdistribusi bisa dilakukan di server internet, ekstranet kantor atau intranet, maupun di jaringan perusahaan.

Pengguna atau disebut (user) dalam sebuah basis data terdistribusi bisa mengakses basis data melalui dua jenis aplikasi yaitu:

  • Aplikasi lokal adalah aplikasi yang tidak memerlukan data dari tempat lain.

  • Aplikasi global adalah aplikasi dengan kebutuhan akan data dari tempat lain.

F. Konsep Structure Query Language(SQL)

Menurut Connoly dan Begg (2005, p113), pengertian SQL adalah transform- oriented language atau bahasa yang dirancang dengan penggunaan relasi untuk mengubah masukan menjadi keluaran yang ibutuhkan. Sebagai sebuah bahasa, standar internasional SQL menetapkan 2 komponen pokok, yaitu :

  • Data Definition Language (DDL) untuk mendefisinikan struktur basis data dan akses kontrol data.

  • Data Manipulation Language (DML) untuk mengembalikan dan memperbarui data.

G. Data Manipulation

Data manipulation di dalam SQL mencakup banyak hal mengenai query. Halhal yang akan dibahas disini adalah yang terkait dengan query secara umum, yaitu :

  • SELECT : untuk menampilkan hasil query data dalam basis data

  • INSERT : untuk memasukkan data ke dalam basis data.

  • UPDATE : untuk memperbarui data dalam basis data.

  • DELETE : untuk menghapus data dalam basis data.

Tujuan perintah SELECT adalah untuk mengembalikan nilai dan menampilkan data dari satu atau lebih tabel dalam basis data. Perintah yang sangat baik kemampuannya dalam menampilkan relasi data adalah operasi Selection, Projection dan Join dalam perintah tunggal.

Bag. #1 - Selection

Operasi selection bekerja pada relasi tunggal R dan mendefinisikan relasi yang hanya berisi tuple R yang memenuhi kondisi tertentu (predikat). Misalnya adalah mencari gaji pegawai yang lebih dari 10000. Predikat dapat dihasilkan dari operasi logika AND, OR dan NOT.

Misalkan ada data seperti dibawah ini:

misalkan kita ingin mencari karyawan dimana gaji diatas Rp. 2.000.000

Bag. #2 - Projection

Operasi projection bekerja pada relasi tunggal R dan mendefinisikan relasi yang berisi bagian secara vertikal dari R, mengambil nilai dari atribut yang ditentukan dan menghilangkan duplikasi.

Bag. #3 - Join

Operasi join sama halnya dengan operasi cross-product yang melakukan pencarian data yang sama pada kolom yang berkaitan antara 2 tabel dalam query.

Dalam memenuhi kondisi query tertentu, penggunaan operasi join lebih baik daripada operasi cross-product dalam efisiensi waktu dan pencarian yang dilakukan.

Operasi join akan mengkombinasikan dua relasi ke bentuk relasi yang baru, yang merupakan operasi dasar dalam relational algebra.

Menurut Ramakrishnan dan Gehrke (2005, p107), ada beberapa bentuk dari join, yaitu :

Bag. #3.1 Condition Joins

Penggunaan join yang paling umum adalah bentuk condition join, yang melakukan kondisi seleksi pada cross-product antara 2 relasi (R dan S).

  • Equijoin

Operasi equijoin sama halnya ketika melakukan query dengan penggabungan relasi dengan mencari nilai data yang sama pada kolom yang berkaitan antara kedua relasi tersebut. Diilustrasikan dengan query : R.name1 = S.name2, dimana R dan S masing-masing adalah tabel untuk mencari nilai data yang sama pada kolom name1 pada tabel R dan kolom name2 pada tabel S.

  • Natural Join

Operasi Natural Join adalah operasi equijoin yang memiliki kesamaan dalam semua field yang memiliki nama yang sama dalam tabel R dan tabel S. Dalam hal ini, kita dapat menghilangkan kondisi dalam operasi join karena akan menghasilkan dua field dengan nama yang sama.

Dalam RDBMS, perintah SQL akan dianalisis oleh Optimizer, yang akan menentukan langkah-langkah yang paling optimal dalam menjalankan perintah SQL. Berikut ini ada beberapa cara JOIN yang ada pada basis data yaitu :

Bag. #3.1.1 - Nested Loop

Nested Loop adalah sebuah JOIN yang efektif jika subset yang digabungkan berjumlah sedikit dan jika kondisi dalam perintah JOIN efisien untuk menggabungkan 2 tabel tersebut.Cara kerja Nested Loop adalah :

  • Optimizer menentukan sebuah tabel untuk dijadikan Outer

  • Tabel yang tersisa dijadikan Inner Table (Table Utama).

  • Pada setiap baris yang terdapat pada Outer Table (Table Tamu), Optimizer akan mengakses semua baris yang terdapat pada Inner Table dengan kondisi yang di spesifikasikan di dalam JOIN.

Bag. #4 - Konsep Query

Query adalah semacam kemampuan untuk menampilkan suatu data dari database dimana mengambil dari table-tabel yang ada di database, namun tabel tersebut tidak semua ditampilkan sesuai dengan yang kita inginkan.

data apa yang ingin kita tampilkan. Misal : data peminjam dengan buku yang dipinjam, maka nanti akan mengambil data dari table peminjam dan tabel buku.

Bahasa Query (query language) adalah bahasa khusus yang digunakan untuk melakukan query pada basis data. Contoh penggunaan bahasa query adalah: SELECT ALL WHERE kota=”Yogyakarta” AND umur<40. Query tersebut meminta semua record dari basis data yang sedang digunakan (misalkan basisdata konsumen) yang bertempat tinggal di Yogyakarta dan berumur lebih dari 40 tahun (kota dan umur adalah nama field yang telah didefinisikan). Standar bahasa query yang banyak digunakan adalah SQL (structured query language). Metode ini paling rumit tetapi paling fleksibel dibandingkan metode query yang lain, query dengan parameter yang telah tersedia dan query by example.

Query dibedakan menjadi 2, yaitu

  • Untuk membuat/mendefinisikan obyek-obyek database seperti membuat tabel, relasi dan sebagainya. Biasanya disebut dengan Data Definition Language (DDL)

  • Untuk memanipulasi data, yang biasanya dikenal dengan Data Manipulation Language (DML). Manipulasi data bisa berupa: Menambah, mengubah atau menghapus data. Pengambilan informasi yang diperlukan dari database, yang mana datanya diambil dari tabel maupun dari query sebelumnya.

results matching ""

    No results matching ""