Pages

Home » » Tentang Database

Tentang Database

Penulis : ariestar permana on Minggu, 23 Oktober 2011 | 23.05

Saat mempelajari kuliah Sistem basis data saya mendapatkan tugas,
cari perintah yg ekuivalen dengan perintah in,some,all,
exists dan beberapa operasi himpunan seperti union, set intersection,set difference.
ini memang bukan perintah yg umum
seperti membuat tabel (create table nama_table),
menghapus tabel (drop table nama_table).

berkat bantuan dari
teman akhirnya tugas ini selesai
saya belum tahu apakah tulisan di bawah ini
benar atau salah karena saya dan teman-teman belum
sempat membahas tugas kuliah ini.
dan jika ada kesalahan mohon di koreksi donk.. hehe


Basis data adalah sekumpulan data yang terletak pada suatu tempat, dimana data tersebut saling berhubungan, dan nantinya dapat dimanfaatkan.

Adapun beberapa contoh Operasi Dasar Basis Data. Untuk mempermudah pemahaman, saya akan melakukan perumpamaan basis data tersebut sebagai lemari. Misalkan, basis data itu kita ibaratkan lemari. Hal yang bisa kita lakukan dengan lemari, yaitu:
  • Membuat sebuah lemari sendiri. Entah dari apa bahannya, yang penting lemari itu jadi. Baru setelah lemari itu jadi, kita dapat mengisinya dengan barang yang kita sukai (create database).
  • Membuang lemari atau melenyapkan lemari. Kalo dalam hal ini, isi didalam lemari itupun ikut hilang. (drop database).
  •  Untuk mengisi lemari tersebut, kita harus membagi lemari tersebut agar lemari tersebut cukup dan sesuai keinginan kita. Entah itu pakaian, makanan, atau peralatan yang lainnya (create table).
  • Kita juga dapat menghilangkan isi didalam lemari tersebut tanpa harus membuang lemari tersebut. Karena suatu saat, kita dapat menggunakan lemari tersebut untuk tempat yang lain (drop table).
  • Pada tiap bagian dari lemari tersebut, kita dapat melakukan operasi pengisian (insert).
  • Operasi lain yang dapat dilakukan pada bagian lemari tersebut, yaitu: pengambilan (select).
  • Perubahan isi bagian dari lemari tersebut (update).
  • Dan yang terakhir ialah penghapusan (delete)

REDUNDANCY DALAM BASIS DATA (DATABASE)


Tidak sedikit orang yang salah dalam mengartikan redundancy (kerangkapan data dalam database). Ada yang menyangka bahwa contoh redundancy adalah: memasukkan data yang sama berulang-ulang dalam database, atau dalam sebuah file;

Contoh 1: kesalahan pengertian mereka di file KRS:

NPM
Nama Mahasiswa
Kode_MK
Nama_MK
123
Ali
IT-001
Logika dan Algoritma
123
Ali
IT-002
Sistem Operasi

Dan seterusnya, sehingga si Ali mengambil 8 mata kuliah.

Katanya, penulisan nama ’Ali’ ditulis berulang-ulang, sehingga disebut dengan redundancy, sehingga atribut Nama Mahasiswa harus dipisah di tabel lain.

Di pisah ke dalam tabel lain, itu jelas, karena antara MASTER FILE tidak boleh bercampur dengan TRANSACTION FILE. Jadi, selain nama mahasiswa, nama mata kuliah (nama_mk) juga tidak boleh ada di sana. Jadi, meskipun nama mata kuliah tidak rangkap, tetap tidak boleh di sana.

Kini, NPM berulang juga, tetapi mereka bilang ’kalau NPM boleh rangkap, karena itu kunci atribut’, lho, kok tidak konsisten ?, kalau satu atribut tidak boleh rangkap, ya atribut lain juga tidak boleh rangkap dong, mau jenisnya apapun.

Nah, jadi pengertian rangkap (redundancy) itu salah di sana. Cara tersebut memang kewajiban sebelum membentuk sebuah file, harus dipisahkan mana file master (contoh file mahasiswa, dosen, mata kuliah, dan sebagainya) dan mana file transaksi (KRS, DNS, Peminjaman Buku, Pengembalian Buku, Pembayaran Uang Kuliah, dsb.)

Hal itu senada dengan proses normalisasi data ke-3 di mana setiap atribut yang tidak tergantung secara fungsional dengan kunci atributnya, maka harus dipisahkan ke dalam file lain dan membentuk atribut kunci sendiri.


JADI, APA ITU REDUNDANCY ??


Redundancy atau kerangkapan data terjadi di jaman sebelum ada sistem basis data, yaitu pada jaman sistem pemrosesan file atau sistem file tradisional. Di saat itu, setiap orang bekerja sendiri-sendiri, meski dalam satu kantor.

Sehingga, pada saat itu diperlukan disket yang banyak untuk saling tukar-menukar data. Si A mengcopy data untuk si B, si B mengcopy data untuk si A, dan seterusnya sebanyak orang yang saling bertukar data.

Sehingga di kantor itu, ada banyak data pegawai. Si A punya data pengawai, si B punya data pegawai, si C, si D, dan semua punya data pegawai. Tetapi isinya belum tentu sama, bisa saja si X alamatnya di Jl. M di komputernya si A, tetapi alamatnya di Jl. J di komputernya si B, dan seterusnya. (Baca di ”Catatan Manajemen Basis Data”)

Jadi, kerangkapan data adalah adanya data (file) rangkap di suatu kantor (yang saat itu memang harus rangkap, kalau tidak rangkap mereka tidak bisa bekerja dengan baik). Nah kerangkapan itulah yang dihilangkan dengan dimunculkannya sistem basis data dengan cara dibuat jaringan (network), sehingga data yang sama (rangkap) cukup dibuat satu kali saja di server, semua mengambil data dari sana. Salah satu keuntungannya, semua orang yang bekerja di kantor itu akan menerima data yang sama (konsisten, dan valid).

Demikianlah, semoga bermanfaat.

KEUNTUNGAN dan KERUGIAN BASIS DATA

Bila kita mendengar kata perbandingan (misalkan, keuntungan), maka harus diketahui perbandingannya. Keuntungan basis data adalah keuntungan jika dibandingkan dengan sistem file tradisional. Kata tradisional di sini juga jangan dikonotasikan dengan kata “belum memakai komputer.”


Pandang sebuah perusahaan, misalkan di sana ada bagian (1) Pembukuan, (2) Produksi, (3) Personalia, dan (4) Pemasaran. Di keempat bagian itu diletakkan masing-masing sebuah komputer PC yang belum dihubungkan satu dengan lainnya, maka, mau tidak mau di setiap komputer tersebut harus memiliki data PEGAWAI.


Akibatnya, keempat komputer tersebut sama-sama memiliki data PEGAWAI yang sebetulnya isinya sama. Ini yang disebut sistem file tradisional. Kelemahan utama sistem ini adalah adanya kerangkapan data (redundancy), karena data yang sama ditulis berulang-ulang (dalam hal ini sebanyak empat kali).


Kelemahan lainnya adalah programming oriented, yaitu format data disesuaikan dengan bahasa pemrograman yang digunakan (belum tentu keempat orang di bagian yang berbeda tersebut memakai bahasa pemrograman yang sama). Data dalam PASCAL tidak dapat digunakan secara langsung oleh data dalam COBOL.


Dapat kita pikirkan lebih dalam, apa lagi kelemahan dalam sistem tradisional ini, misalkan, mungkin saja tidak ada format data yang pasti, misalkan, si A membuat field NAMA dengan panjang 20 karakter, si B 30 karakter, si C 25 karakter, dan si D 40 karakter. Si A menulis nama “Bambang Wahyudi”, si B menulis nama itu dengan “B. Wahyudi”, si C menulisnya dengan “Bambang W.”, dan si D menulis “BAMBANG WAHYUDI”, tidak ada keseragaman.


Misalkan lagi, bila pegawai “Ali” pindah rumah, ia harus melaporkan kepindahannya ke empat bagian yang berbeda, kalau tidak, maka akan timbul masalah, data alamat mana yang benar untuk si “Ali” ?.


Begitu juga ketika Pimpinan meminta atau ingin mendapatkan laporan kemajuan perusahaannya, maka ia harus meminta laporan dari seluruh bagian yang ada. Ia tidak dapat mengakses langsung di komputer (karena belum ada integrasi data).


Secara kejadian se hari-hari di Bank, bila sebuah bank belum menerapkan sistem basis data, maka kita tidak dapat menabung di cabang tertentu dan mengambil di cabang lainnya (sering diistilahkan dengan sistem online untuk menggambarkan penggunaan basis data).


Kelemahan-kelemahan yang ada di sistem file tradisional itu ditanggulangi oleh sistem basis data. Konsep utama basis data adalah meniadakan kerangkapan data, dengan menempatkan data di satu media penyimpanan tertentu (misalkan pada hard disk di dalam server) dan setiap komputer dihubungkan oleh sebuah jaringan menuju server tersebut. Semua user yang memerlukan data mengakses pada data yang sama.


Karena sulit dan rumitnya mendisain sebuah basis data, maka kelemahan basis data adalah diperlukannya tenaga ahli, misalkan orang yang berkedudukan sebagai Data Base Administrator (DBA). DBA bertugas untuk mendisain rancangan basis data, memberi hak dan wewenang kepada setiap user, menentukan bentuk-bentuk akses data, dan sebagainya.


Hal yang lebih fatal dapat terjadi yang merupakan kerugian basis data adalah jika data rusak, maka seluruh user akan terganggu, sedangkan pada sistem file tradisional, bila data si A rusak, maka si B, C, dan D masih dapat terus bekerja.


Banyak tool (alat) yang digunakan untuk merancang suatu sistem kerja, misalkan saja Data Flow Diagram/ DFD (Diagram yang menggambarkan aliran data dari suatu sumber menuju ke tujuan). Lambang-lambang DFD terdiri atas (1) Terminator, disebut juga kesatuan luar, disebut juga sumber atau tujuan. Terminator dilambangkan dengan persegi panjang. Terminator menunjukkan data yang akan diolah oleh sistem berasal dari (kesatuan) mana, dan akan ditujukan (dilaporkan) kepada (kesatuan) mana. Kesatuan tersebut dapat merupakan jabatan seseorang, sebuah organisasi, dan sebagainya. (2) alur data, berupa arah panah yang membawa jenis data, (3) proses, berupa lingkaran yang berisi suatu kegiatan kerja, dan (4) penyimpan data (data store), berupa garis paralel yang merupakan nama file yang digunakan sebagai tempat acuan berkas untuk atau hasil suatu proses.


DFD terdiri dari diagram konteks, yaitu gambaran umum (secara garis besar) sistem yang akan dibuat. Selanjutnya dijabarkan menjadi diagram nol (zero), dan dijabarkan lagi menjadi level-level yang lebih detil lagi.


Dari gambaran DFD tersebut akan diperoleh file-file yang akan digunakan (data store). File-file tersebut akan saling direlasikan di ERD (telah dibahas di atas).


Alat lain yang digunakan adalah kamus data (yang menjabarkan makna dan ketentuan dari setiap atribut yang digunakan), misalkan : NPM, jenis karakter, panjang 8, karakter pertama berisi angka 1, 2, 3, 4, 5, atau 6, di mana misalkan angka “1” untuk fakultas ilmu komputer, jenjang strata satu, jurusan sistem informasi, dan seterusnya.


Dan banyak lagi alat yang dapat digunakan yang kesemuanya digunakan untuk menyempurnakan sistem yang akan dibangun agar terhindar dari kesalahan atau kehilangan informasi yang dibutuhkan

Bila kita mendengar kata perbandingan (misalkan, keuntungan), maka harus diketahui perbandingannya. Keuntungan basis data adalah keuntungan jika dibandingkan dengan sistem file tradisional. Kata tradisional di sini juga jangan dikonotasikan dengan kata “belum memakai komputer.”


Pandang sebuah perusahaan, misalkan di sana ada bagian (1) Pembukuan, (2) Produksi, (3) Personalia, dan (4) Pemasaran. Di keempat bagian itu diletakkan masing-masing sebuah komputer PC yang belum dihubungkan satu dengan lainnya, maka, mau tidak mau di setiap komputer tersebut harus memiliki data PEGAWAI.


Akibatnya, keempat komputer tersebut sama-sama memiliki data PEGAWAI yang sebetulnya isinya sama. Ini yang disebut sistem file tradisional. Kelemahan utama sistem ini adalah adanya kerangkapan data (redundancy), karena data yang sama ditulis berulang-ulang (dalam hal ini sebanyak empat kali).


Kelemahan lainnya adalah programming oriented, yaitu format data disesuaikan dengan bahasa pemrograman yang digunakan (belum tentu keempat orang di bagian yang berbeda tersebut memakai bahasa pemrograman yang sama). Data dalam PASCAL tidak dapat digunakan secara langsung oleh data dalam COBOL.


Dapat kita pikirkan lebih dalam, apa lagi kelemahan dalam sistem tradisional ini, misalkan, mungkin saja tidak ada format data yang pasti, misalkan, si A membuat field NAMA dengan panjang 20 karakter, si B 30 karakter, si C 25 karakter, dan si D 40 karakter. Si A menulis nama “Bambang Wahyudi”, si B menulis nama itu dengan “B. Wahyudi”, si C menulisnya dengan “Bambang W.”, dan si D menulis “BAMBANG WAHYUDI”, tidak ada keseragaman.


Misalkan lagi, bila pegawai “Ali” pindah rumah, ia harus melaporkan kepindahannya ke empat bagian yang berbeda, kalau tidak, maka akan timbul masalah, data alamat mana yang benar untuk si “Ali” ?.


Begitu juga ketika Pimpinan meminta atau ingin mendapatkan laporan kemajuan perusahaannya, maka ia harus meminta laporan dari seluruh bagian yang ada. Ia tidak dapat mengakses langsung di komputer (karena belum ada integrasi data).


Secara kejadian se hari-hari di Bank, bila sebuah bank belum menerapkan sistem basis data, maka kita tidak dapat menabung di cabang tertentu dan mengambil di cabang lainnya (sering diistilahkan dengan sistem online untuk menggambarkan penggunaan basis data).


Kelemahan-kelemahan yang ada di sistem file tradisional itu ditanggulangi oleh sistem basis data. Konsep utama basis data adalah meniadakan kerangkapan data, dengan menempatkan data di satu media penyimpanan tertentu (misalkan pada hard disk di dalam server) dan setiap komputer dihubungkan oleh sebuah jaringan menuju server tersebut. Semua user yang memerlukan data mengakses pada data yang sama.


Karena sulit dan rumitnya mendisain sebuah basis data, maka kelemahan basis data adalah diperlukannya tenaga ahli, misalkan orang yang berkedudukan sebagai Data Base Administrator (DBA). DBA bertugas untuk mendisain rancangan basis data, memberi hak dan wewenang kepada setiap user, menentukan bentuk-bentuk akses data, dan sebagainya.


Hal yang lebih fatal dapat terjadi yang merupakan kerugian basis data adalah jika data rusak, maka seluruh user akan terganggu, sedangkan pada sistem file tradisional, bila data si A rusak, maka si B, C, dan D masih dapat terus bekerja.


Banyak tool (alat) yang digunakan untuk merancang suatu sistem kerja, misalkan saja Data Flow Diagram/ DFD (Diagram yang menggambarkan aliran data dari suatu sumber menuju ke tujuan). Lambang-lambang DFD terdiri atas (1) Terminator, disebut juga kesatuan luar, disebut juga sumber atau tujuan. Terminator dilambangkan dengan persegi panjang. Terminator menunjukkan data yang akan diolah oleh sistem berasal dari (kesatuan) mana, dan akan ditujukan (dilaporkan) kepada (kesatuan) mana. Kesatuan tersebut dapat merupakan jabatan seseorang, sebuah organisasi, dan sebagainya. (2) alur data, berupa arah panah yang membawa jenis data, (3) proses, berupa lingkaran yang berisi suatu kegiatan kerja, dan (4) penyimpan data (data store), berupa garis paralel yang merupakan nama file yang digunakan sebagai tempat acuan berkas untuk atau hasil suatu proses.


DFD terdiri dari diagram konteks, yaitu gambaran umum (secara garis besar) sistem yang akan dibuat. Selanjutnya dijabarkan menjadi diagram nol (zero), dan dijabarkan lagi menjadi level-level yang lebih detil lagi.


Dari gambaran DFD tersebut akan diperoleh file-file yang akan digunakan (data store). File-file tersebut akan saling direlasikan di ERD (telah dibahas di atas).


Alat lain yang digunakan adalah kamus data (yang menjabarkan makna dan ketentuan dari setiap atribut yang digunakan), misalkan : NPM, jenis karakter, panjang 8, karakter pertama berisi angka 1, 2, 3, 4, 5, atau 6, di mana misalkan angka “1” untuk fakultas ilmu komputer, jenjang strata satu, jurusan sistem informasi, dan seterusnya.


Dan banyak lagi alat yang dapat digunakan yang kesemuanya digunakan untuk menyempurnakan sistem yang akan dibangun agar terhindar dari kesalahan atau kehilangan informasi yang dibutuhkan







Level konseptual

Abstraksi data merupakan tingkatan/level bagaimana melihat data dalam sebuah sistem basis data.
Tiga level abstraksi data :
  1. Level Fisik (Physical Level)
Pemakai melihat data sebagai gabungan dari struktur dan datanya sendiri dan berkompeten dalam mengetahui bagaimana representasi fisik dari penyimpanan/pengorganisasian data (teks, angka, himpunan bit data, dll).
  1. Level Lojik/Konseptual (Conseptual Level)
Menggambarkan data apa yang sebenarnya (secara fungsional) disimpan dalam basis data dan hubungannya dengan data yang lain.
  1. Level Penampakan (View Level)
Untuk pemakai yang hanya membutuhkan sebagian data/informasi dalam basis data yang kemunculannya di mata pemakai diatur oleh aplikasi end-user.


Share this article :

Posting Komentar