Senin, 23 Februari 2015

Pengertian Basis data dan key basis data

Basis Data 
Database atau basis data adalah kumpulan data yang disimpan secara sistematis di dalam komputer dan dapat diolah atau dimanipulasi menggunakan perangkat lunak (program aplikasi) untuk menghasilkan informasi. Pendefinisian basis data meliputi spesifikasi berupa tipe data, struktur, dan juga batasan-batasan data yang akan disimpan. Basis data merupakan aspek yang sangat penting dalam sistem informasi dimana basis data merupakan gudang penyimpanan data yang akan diolah lebih lanjut. Basis data menjadi penting karena dapat menghidari duplikasi data, hubungan antar data yang tidak jelas, organisasi data, dan juga update yang rumit.
Proses memasukkan dan mengambil data ke dan dari media penyimpanan data memerlukan perangkat lunak yang disebut dengan sistem manajemen basis data (database management system | DBMS). DBMS merupakan sistem perangkat lunak yang memungkinkan user untuk memelihara, mengontrol, dan mengakses data secara praktis dan efisien. Dengan kata lain semua akses ke basis data akan ditangani oleh DBMS. Ada beberapa fungsi yang harus ditangani DBMS yaitu mengolah pendefinisian data, dapat menangani permintaan pemakai untuk mengakses data, memeriksa sekuriti dan integriti data yang didefinisikan oleh DBA (Database Administrator), menangani kegagalan dalam pengaksesan data yang disebabkan oleh kerusakan sistem maupun disk, dan menangani unjuk kerja semua fungsi secara efisien.
Tujuan utama dari DBMS adalah untuk memberikan tinjauan abstrak data kepada user (pengguna). Jadi sistem menyembunyikan informasi tentang bagaimana data disimpan, dipelihara, dan tetap dapat diambil (akses) secara efisien. Pertimbangan efisien di sini adalah bagaimana merancang struktur data yang kompleks tetapi masih tetap bisa digunakan oleh pengguna awam tanpa mengetahui kompleksitas strukturnya.


Pembagian database menurut jenisnya:

Basis data flat-file. Basis data flat-file ideal untuk data berukuran kecil dan dapat dirubah dengan mudah. Pada dasarnya, mereka tersusun dari sekumpulan string dalam satu atau lebih file yang dapat diurai untuk mendapatkan informasi yang disimpan. Basis data flat-file baik digunakan untuk menyimpan daftar atau data yang sederhana dan dalam jumlah kecil. Basis data flat-file akan menjadi sangat rumit apabila digunakan untuk menyimpan data dengan struktur kompleks walaupun dimungkinkan pula untuk menyimpan data semacam itu. Salah satu masalah menggunakan basis data jenis ini adalah rentan pada korupsi data karena tidak adanya penguncian yang melekat ketika data digunakan atau dimodifikasi.
Basis data relasional. Basis data ini mempunyai struktur yang lebih logis terkait cara penyimpanan. Kata "relasional" berasal dari kenyataan bahwa tabel-tabel yang berada di basis data dapat dihubungkan satu dengan lainnya. Basis data relasional menggunakan sekumpulan tabel dua dimensi yang masing-masing tabel tersusun atas baris (tupel) dan kolom (atribut). Untuk membuat hubungan antara dua atau lebih tabel, digunakan key (atribut kunci) yaitu primary key di salah satu tabel dan foreign key di tabel yang lain. Saat ini, basis data relasional menjadi pilihan karena keunggulannya. Beberapa kelemahan yang mungkin dirasakan untuk basis data jenis ini adalah implementasi yang lebih sulit untuk  data dalam jumlah besar dengan tingkat kompleksitasnya yang tinggi dan proses pencarian informasi yang lebih lambat karena perlu menghubungkan tabel-tabel terlebih dahulu apabila datanya tersebar di beberapa tabel.

Pengertian Key 
     
         Key adalah satu gabungan dari beberapa atribut yang dapat membedakan semua basis data (row) dalam tabel secara unik.
Key di dalam database berfungsi sebagai  suatu cara untuk mengidentifikasi dan menghubungkan satu tabel data dengan tabel yang lain.

Jenis-Jenis Key
  • Primary Key (Kunci Primer)
         Kunci primer adalah suatu atribut atau satu set minimal atribut yang tidak hanya mendefinisikan secara unik suatu kejadian spesifik tetapi juga dapat mewakili setiap kejadian dari suatu kejadian.
Nilai field yang menjadi primary key harus:
- Unik atau tidak boleh ganda
- Tidak boleh Null (kosong, tidak diketahui, tidak dapat ditentukan)
- Key tersebut lebih natural untuk dijadikan acuan
database tanpa data apapun yang asing. Setiap tabel dapat memiliki satu atau lebih candidate key.
Key boleh terdiri lebih dari satu field Key yang terdiri lebih dari satu kolom seperti ini disebut Composite Key



Contoh Primary Key
Contoh:
File pegawai berisi attribute
                Ø  no induk
                Ø  No ktp
                Ø  Nama
                Ø  Tempat lahir
                Ø  Tanggal lahir
                Ø  Alamat
                Ø  Kota
No induk dan no ktp adalah kunci calon (Candidate Key) dan untuk kunci utama (primary key) adalah salah satu yang dipilih dari kunci calon. Misalnya No. induk di jadikan primary key, maka primary key nya adalah no induk.

Nomor_pesanan sebagai primary key di tabel pesanan
Nomor_pesanan sebagai foreign key di tabel barang_pesanan.

  • Foreign Key (Kunci Tamu)

               Foreign Key adalah satu set atribut atau set atribut sebagai key penghubung kedua tabel dan melengkapi satu relationship (hubungan) terhadap primary key yang menunjukan keinduknya.
Jika sebuah primary key terhubungan ke table/entity lain, maka keberadaan primary key pada entity tersebut di sebut sebagai foreign key.

Contoh Foreign Key :
Pada gambar diatas, nim pada table mhs adalah primary key. Sedangkan primary key pada table matkul adalah id_matkul. Lalu id_matkul menempel pada table mhs yang kita sebut sebagai foreign key.
Biasanya disebut table yang berisi foreign key sebagai table anak karena table tersebut mengait pada table lain. Sedangkan table yang terkait saya sebut sebagai table induk. Pada contoh table di atas, mhs sebagai table anak sedangkan matkul sebagai table induk.

  • Candidat key (Kunci kandidat/kunci calon)
          adalah suatu atribut atau satu set minimal atribut yang hanya mengidentifikasikan secara unik untuk suatu kejadian spesifik dari entitas.
Candidate key ini harus memenuhi syarat sbb:
Unique Identifier, untuk setiap row/tuple candidate key harus secara unik dapat menjadi identifier. Artinya, setiap non candidate key atribut secara fungsional bergantung pada candidate tersebut.
Non Redudancy, tidak ada duplikasi candidate key untuk menjadi unique identifier, dimana tidak dapat dilakukan penghapusan pada candidate key dimana tidak merusak sifat unique identifier.

Contoh dari candidate key adalah:
Untuk entiti 'supplier' candidate key yang dapat kita pilih adalah atribut SNo, karena secara fungsional atribut SName, Status, dan City bergantung ke atribut SNo.

Contoh Candidate Key
File pegawai berisi attribute
                Ø  no induk
                Ø  No ktp
                Ø  Nama
                Ø  Tempat lahir
                Ø  Tanggal lahir
                Ø  Alamat
                Ø  Kota

Kunci kandidat disini adalah:
                Ø  No induk
                Ø  No ktp 


  • Composite Key
Dalam desain database, composite key adalah kunci yang terdiri dari 2 atau lebih atribut yang secara unik mengidentifikasi suatu kejadian entitas. Setiap atribut yang membentuk kunci senyawa adalah kunci sederhana dalam haknya sendiri.
composite setidaknya satu atribut yang membentuk kunci komposit bukanlah kunci sederhana.

Contoh Composite Key: 

suatu entitas yang mewakili masing-masing modul siswa hadir di Universitas. entitas ini memiliki nim dan kode_matakuliah sebagai kunci utama. Setiap atribut yang membentuk kunci utama adalah kunci sederhana karena masing-masing merupakan referensi unik ketika mengidentifikasi siswa dalam satu kasus dan modul yang lain.

Sebaliknya, dengan menggunakan contoh yang sama, bayangkan kita mengidentifikasi seorang mahasiswa oleh NamaBelakang + NamaDepan mereka. Di tabel siswa tersebut pada modul kunci utama yaitu NamaDepan + NamaBelakang + kode_matakuliah. Karena NamaBelakang + NamaDepan merupakan referensi unik untuk mahasiswa, itu bukanlah sebuah kunci sederhana, itu adalah kombinasi dari atribut yang digunakan untuk secara unik mengidentifikasi seorang mahasiswa. Oleh karena itu kunci utama untuk entitas ini adalah kunci komposit.

Tidak ada pembatasan diterapkan pada atribut tentang (awal) kepemilikan mereka dalam model data. Ini berarti bahwa setiap satu, tidak ada, atau semua, dari beberapa atribut dalam kunci senyawa dapat menjadi kunci asing. Dimana kunci asing mungkin sendiri dapat menjadi kunci majemuk.

  • Alternative Key adalah candidate key yang tidak dipilih sebagai primary key.
  • Sekunder key adalah sebuah atribut atau kombinasi yang digunakan hanya untuk tujuan pengambilan data.

Tidak ada komentar:

Posting Komentar