SEJARAH BASIS DATA
Dari awal penggunaan
komputer, penyimpanan dan manipulasi data merupakan focus utama
aplikasi. Pada awal tahun 1960, Charles Bachman diperusahaan General Electricmendesain generasi pertama DBMS yang disebut Penyimpanan Data Terintegrasi (Integrated Data Store). Dasar untuk model data jaringan dibentuk lalu distandardisasi oleh Conference on Data System Language (CODASYL). Kemudian, Bachman menerima ACM Turing Award (Penghargaan semacam nobel pada ilmu komputer ) di tahun 1973.
Pada akhir tahun 1960-an, IBM mengembangkan system manajemen informasi (Information Manajemen System)
DBMS. IMS dibentuk dari representasi data pada kerangka kerja yang
disebut model data hierarki. Dalam waktu yang sama, hasil kerja sama
antara IBM dengan perusahaan penerbangan Amerika mengembangkan system
SABRE. System SABRE memungkinkan user mengakses data yang sama pada
jaringan computer.
Tahun 1970
Pada
tahun 1970, Edgar Codd di laboratorium penelitian di San Jose
mengusulkan suatu representasi data baru yang disebut model data
relational. Pada tahun 1980, model relasional menjadi paradigm DBMS
paling dominan. Bahasa query SQL dikembangkan untuk basisdata
relasional sebagai bagian proyek Sistem R dari IBM. SQL di standardisasi
di akhir tahun 1980 dan SQL-92 diadopsi oleh American National
Standards Institute (ANSI) dan International Standards Organization
(ISO). Program yang digunakan untuk eksekusi bersamaan dalam basisdata
disebut transaksi. User menulis programnya, dan bertanggung jawab
menjalankan program secara bersamaan terhadap DBMS. Pada tahun 1999,
James Gray memenangkan Turing award untuk kontribusinya pada manajemen
transaksi dalam DBMS.
Pengertian
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.
Definisi
Basis Data : Sekumpulan data yang satu sama lain saling berhubungan.
Hubungan antar data dapat ditunjukan dengan adanya field/kolom kunci
dari tiap file/tabel yang ada.
DATA : Data berupa informasi yang disimpan dalam database.
HARDWARE
: Hardware(Perangkat Keras) yang digunakan untuk membuat input,proses,
dan output database. Contohnya : Keyboard, CPU, Monitor, Printer dan
perangkat keras lain.
SOFTWARE
: Software(Perangkat Lunak) yang digunakan dalam database, program yang
pernah saya gunakan untuk membuat database disini yaitu CMD, PHP-MySQL,
XAMPP.
Functional dependency (FD) atau kebergantungan fungsional adalah constraint atau batasan/ ketentuan antara 2 buah himpunan atribut pada sebuah tabel.
Kebergantungan Fungsional
JIka
A dan B adalah himpunan atribut dari tabel T, kebergantungan fungsional
antara A dan B biasanya dinyatakan dalam notasi notasi A -> B.
Notasi A -> B berarti:
- A menentukan B
- B secara fungsional bergantung kepada A.
A -> B jika memenuhi syarat berikut ini :
Pada
sebuah tabel T, jika ada dua baris data atau lebih dengan nilai atribut
A yang sama maka baris-baris data tersebut pasti akan memiliki nilai
atribut B yang sama Namun hal ini tidak berlaku sebaliknya.
Untuk lebih jelasnya perhatikan tabel berikut ini:
NIM
|
Nama_Mhs
|
Kd_Jur
|
Nama_Jur
|
Kode_MK
|
Nama_MK
|
SKS
|
Nilai
|
1-01
|
Tukimin
|
TE
|
Elektro
|
TE-001
|
Elektronika
|
3
|
A
|
1-01
|
Tukimin
|
TE
|
Elektro
|
DU-001
|
English
|
2
|
A
|
2-01
|
Jamilah
|
IF
|
Informatika
|
IF-001
|
Algoritma
|
3
|
B
|
2-01
|
Jamilah
|
IF
|
Informatika
|
DU-001
|
English
|
2
|
C
|
2-02
|
Maemunah
|
IF
|
Informatika
|
IF-002
|
Database
|
2
|
A
|
Contoh kebergantungan fungsional
- NIM -> Nama_mhsUntuk setiap baris data, jika NIM = 1-01 pasti Nama_mhs = ‘Tukimin’, walaupun belum tentu semua mahasiswa yang bernama Tukimin memiliki NIM = 1-01
- NIM -> Kd_jurUntuk setiap baris data, jika NIM = 1-01 pasti Kd_jur = ‘TE’, walaupun tidak semua baris data dengan kd_jur ‘TE’ memiliki kolom NIM bernilai 1-01
- NIM -> Nama_JurUntuk setiap baris data dengan kolom NIM bernilai 1-01 pasti memiliki kolom Nama_Jur = ‘Elektro’, walaupun tidak semua orang di jurusan Elektro memiliki NIM = 1-01. Demikian pula tidak semua baris data pada tabel dengan kolom Nama_Jur = ‘Elektro’ memiliki kolom NIM = 1-01
Penulisan Kebergantungan Fungsional
Penulisan kebergantungan fungsional dari 3 poin di atas dapat diringkas menjadi (NIM) -> (nama_mhs, kd_jur, nama_jur)
Dengan demikian, dari tabel tersebut dapat kita simpulkan beberapa kebergantungan fungsional (FD) sebagai berikut:
- FD1: (nim) -> (nama_mhs, kd_jur, nama_jur)
- FD2: (kd_jur) -> (nama_jur)
- FD3: (kode_mk) -> (nama_mk, sks)
- FD4: (nim,kode_mk) -> (nilai)
Jenis Kebergantungan Fungsional
Ada beberapa jenis kebergantungan fungsional, di antaranya yaitu:
- Partial Functional dependency
- Transitive Functional dependency
- Multivalued Functional dependency
Manfaat Penggunaan DBMS :
* Pengendalian Redudansi
* Pembatasan Akses
* Persistent Storage untuk obyek program dan struktur data.
* Inferensi Basis Data Menggunakan aturan deduksi.
* Tersedianya Multiple User Interfaces
* Dapat menyajikan relasi yang kompleks antar data yang dilibatkan.
* Pemaksaan Integrity Constraints
* Tersediannya Fasilitas Backup & recovery
B. Karakteristik Basis Data :
- Sifat yang fundamental bahwa basis data tidak hanya berisi data saja, tetapi lengkap dengan definisi dari data itu sendiri
- Definisi data disimpan dalam katalog sistem (META DATA) yang berisi:
· Struktur setiap file
· Tipe dan format penyimpanan dari setiap item data
- Constraint dari data
C. Pemakai Basis Data :
· Orang-orang yang berperan langsung :
- DBA : Orang yang bertanggung jawab terhadap admnistrasi penggunaan sumber daya basis data (basis data & DBMS). Tugas:
1. Mengatur otoritas akses terhadap basis data
2. Memonitor penggunaan basis data
3. Melayani permintaan S/W dan H/W
- Database Designer : Orang yang bertanggung jawab dalam perancangan basis data. Tugas:
1. Mengidentifikasi data yang akan disimpan dalam basis data
2. Memilih Struktur yang sesuai dalam menyajikan dan menyimpan data.
- End Users : Orang yang pekerjaannya memerlukan akses terhadap basis data untuk keperluan:
1. Query
2. Update
3. Generate report
-
System Analysts and Apllication Programers : System Analyst bertugas
mendefinisikan kebutuhan end user dan mengembangkan spesifikasi untuk
transaksi yang memenuhi keinginannya. Dan Application Programmers
bertugas mengimplementasikan spesifikasi menjadi program.
· Orang-orang dibelakang layar :
1. DBMS Designers & Implementers : Orang yang merancang dan mengimplementasikan modul DBMS dan interfacenya sebagai satu paket software.
2. Tool Developers :
Orang yang mengembangkan paket software yang memberikan fasilitas dalam
perancangan dan penggunakaan sistem basis data (contoh: simulation,
prototyping, dsbnya.).
3. Operators & Maintenance Personnel
Implikasi Penggunaan Pendekatan Basis Data :
1. Mempunyai Potensi untuk memaksakan standarisasi
2. Mengurangi waktu pengembangan aplikasi
3. Fleksibilitas
4. Tersedianya informasi yang up to date
5. Skala ekonomis
Keuntungan DBMS
DBMS memungkinkan perusahaan mapun pengguna individu untuk :
- Mengurangi pengulangan data
Apabila dibandingkan dengan file-file computer yang disimpan terpisah di setiap aplikasi computer, DBMS mengurangi jumlah total file dengan menghapus data yang terduplikasi di berbagai file. Data terduplikasi selebihnya dapat ditempatkan dalam satu file. - Mencapai independensi data
Spesifikasi data disimpan dalam skema pada tiap program aplikasi. Perubahan dapat dibuat pada struktur data tanpa memengaruhi program yang mengakses data. - Mengintegrasikan data beberapa file
Saat file dibentuk sehingga menyediakan kaitan logis, maka organisasi fisik bukan merupakan kendala. Organisasi logis, pandangan pengguna, dan program aplikasi tidak harus tercermin pada media penyimpanan fisik. - Mengambil data dan informasi dengan cepat
Hubungan-hubunga logis, bahasa manipulasi data, serta bahasa querymemungkinkan pengguna mengambil data dalam hitungan detik atau menit. - Mengingkatkan keamanan
DBMS mainframe maupun komputer mikro dapat menyertakan beberapa lapis keamanan seperti kata sandi (encryption) sehingga data yang dikelola akan lebih aman.
0 komentar :
Posting Komentar