KATA PENGANTAR
Bismillahirrohmanirrokhim. Puji syukur penulis hatur kehadirat Allah SWT, atas limpahan rahmat-nya sehingga Makalah Trasformasi Model Data Many to Many dapat terwujud. Untuk itu penulis sampaikan rasa terima kasih kepada seluruh pihak yang telah memberi sumbangsih. Juga ucapan terima kasih kepada Bapak ..... selaku Dosen pembimbing mata kuliah .....
Harapan penulis, makalah ini dapat memberi tuntunan konseptual yang praktis bagi mereka, baik praktisi maupun mahasiswa dalam memahami basis data. Penulis menyadari, isi maupun cara penyampian makalah ini masih jauh dari sempurna. Untuk itu penulis mengharapkan saran dan kritik yang bersifat membangun dari para membaca sehingga penulis bisa mengembangangkan makalah menjadi lebih baik dikemudian hari.
Terima kasih.
Matang, 10 Oktober 2010
Penulis (DAHLAN)
DAFTAR ISI
KATA PENGANTAR ................................................................................
DAFTAR ISI ............................................................................................
BAB I KONSEP DASAR BASIS DATA ...........................................
A. Pendahuluan ...............................................................................
B. Sejarah Perkembangan Konsep Basis data (Data Base) ...................
C. Definisi Basis Data ...................................................................
D. Tujuan Basis Data ...................................................................
E. Mamfaat/ kelebihan Basis Data .......................................................
F. Kerugian/ Kelemahan Pengunaan DBSM ...........................................
BAB II PERANCANGAN BASIS DATA ...........................................
A. Level Abstraksi ...............................................................................
B. Database System Environment .......................................................
C. Instansi dan Skema (Instance and Schema) ...............................
D. DBMS LANGUAGE & INTERFACE ...........................................
E. Database Users and Adminitrator ...........................................
F. MODEL BASIS DATA ...................................................................
BAB III RELATIONSHIP ...................................................................
A. Pengertian Relationship ...................................................................
B. Entity-Relationship Model (ERD) .......................................................
C. Kardinalitas / Cardinalities .......................................................
D. Batasan Partisipasi /Participation .......................................................
E. Membangun ERD /Entity-Relationship ...........................................
F. Entity-Relationship Model (Lanjutan) ...........................................
G. Konversi Model E-R Ke Skema Relasi ...........................................
H. Tipe File ...........................................................................................
I. Organisasi File ...............................................................................
BAB I
KONSEP DASAR BASIS DATA
A. PENDAHULUAN
Pemrosesan basis data sebagai perangkat andalan sangat diperlukan oleh berbagai institusi dan perusahaan. Dalam pengembangan sistem informasi diperlukan basis data sebagai media penyimpanan data. Kehadiran basis data dapat meningkatkan Daya saing perusahaan tersebut. Basis data dapat mempercepat upaya pelayanan kepada pelanggan, menghasilkan informasi dengan cepat dan tepat sehingga membantu pengambilan keputusan untuk segera memutuskan suatu masalah berdasarkan informasi yang ada.
Basis data menyediakan fasilitas atau memudahkan dalam memproduksi informasi yang digunakan oleh pemakai untuk mendukung pengambilan keputusan. Hal inilah yang menjadikan alasan dari penggunaan tehnologi basis data pada saat sekarang (dunia bisnis). Berikut ini contoh penggunaan Aplikasi database dalam dunia bisnis :
Bank : Pengelolaan data nasabah, akunting, semua transaksi perbankan
Bandara: Pengelolaan data reservasi, penjadualan
Universitas: Pengelolaan pendaftaran, alumni
Penjualan: Pengelolaan data customer, produk, penjualan
Pabrik: Pengelolaan data produksi, persediaan barang, pemesanan, agen
Kepegawaian: Pengelolaan data karyawan, gaji, pajak
Telekomunikasi : Pengelolaan data tagihan, jumlah pulsa
Sistem Pemrosesan File
File Nasabah
Nasabah (nonasabah, nama, alamat)
File Rekening
Rekening (nonasabah, norek, nama, alamat, saldo)
Gambar1. Sistem database untuk suatu Bank
Perhatikan gambar 1 di atas. Pada sistem ini record-record data disimpan pada satu tempat yakni database dan diantara program aplikasi maupun pemakai terdapat DBMS ( Database Management System ).
Sebelumnya, sistem yang digunakan untuk mengatasi semua permasalahan bisnis, menggunakan pengelolaan data secara tradisional dengan cara menyimpan record-record pada file-file yang terpisah, yang disebut juga sistem pemrosesan file. Dimana masing-masing file diperuntukkan hanya untuk satu program aplikasi saja.
Beberapa informasi pada perusahaan retail seperti jumlah penjualan, mencari jumlah stok penjualan, mencari jumlah stok yang tersedia, barang apa yang paling laku dijual pada bulan ini, dan berapa laba bersih perusahaan dapat diketahui dengan mudah dengan basis data. Pada perpustakaan, adanya aplikasi pencarian data buku berdasarkan judul, pengarang atau kriteria lain dapat mudah dilakukan dengan basis data. Pencarian data peminjam yang terlambat mengembalikan juga mudah dilakukan sehingga bisa dibuat aplikasi pembuatan surat berdasarkan informasi yang tersedia.
Dengan memanfaatkan teknologi jaringan, kemampuan basis data dapat dapat dioptimalkan. Misalnya transaksi antar cabang pada sebuah perbankan secara online. Begitu banyak yang dapat diperoleh dengan pemanfaatan basis data. Basis data dapat meningkatkan daya guna perangkat computer yang mungkin tadinya hanya untuk keperluan game atau pengetikan dengan aplikasi office.
B. SEJARAH PERKEMBANGAN KONSEP BASIS DATA (DATA BASE)
Perkembangan Konsep Basis Data.
Menurut Edhy Sutanta (2004:1-3), pengetahuan tentang konsep basis data muncul dan mulai berkembang seiring dengan adanya kebutuhan pengolahan data untuk memenuhi kebutuhan informasi. Perkembangan konsep basis data dapat dibedakan dalam lima tahapan yaitu :
1. Tahap I (awal tahun 1960-an), perkembangan teknologi komputer yang ditemukan pada sekitar tahun 1945, telah melahirkan pandangan dan pengetahuan baru tentang konsep penyimpanan data dalam basis data, yang sebelumnya banyak menggunakan cara-cara manual. Konsep-konsep tentang basis data yang berkembang pada masa itu dikenal sebagai konsep basis data tahap I. Ciri konsep basis data tahap I adalah data-data diolah berdasarkan prinsip berkas (file processing) pada lingkungan komputer mainframe.
2. Tahap II (akhir tahun 1960-an), pada akhir tahun 1960-an terjadi kemajuan dan perubahan yang mencolok dalam konsep basis data dan selanjutnya konsep-konsep tentang basis data pada masa tersebut disebut sebagai konsep basis data tahap II. Pada tahap ini telah mengubah dan memperbaiki metode penyimpanan dalam basis data. Ciri utama konsep basis data tahap ini adalah konsep sistem basis data (Data Base Systems/DBS), konsep sistem manajemen basis data (Data Base Management Systems/DBMS ), layanan informasi secara online dan layanan informasi berbasis teks.
3. Tahap III (awal tahun 1970-an), perkembangan metode penyimpanan data dalam basis data yang lebih baik terjadi pada awal tahun 1970-an. Perangkat keras penyimpanan yang digunakan saat itu telah semakin baik. Kondisi demikian telah mempengaruhi pandangan dan pengetahuan tentang konsep basis data yang semakin baik pula. Selanjutnya konsep-konsep basis data saat itu disebut sebagai konsep basis data tahap III. Ciri utama konsep basis data pada tahap III adalah kemunculan aplikasi-aplikasi basis data berbasis sistem pakar (Expert Systems/ES) dalam sistem pendukung keputusan (Decission Support System/DSS), serta pemrograman berorientasi objek (Object Ocriented Programming/OOP).
4. Tahap IV (mulai tahun 1980-an), perkembangan sangat cepat pada teknologi komputer dan penyimpanan data sejak tahun 1980-an telah mempengaruhi pandangan dan pengetahuan dalam konsep basis data. Hal ini mengakibatkan munculnya perubahan-perubahan pandangan dan pengetahuan baru tentang konsep basis data. Konsep basis data pada masa tersebut dikenal sebagai konsep basis data tahap IV. Ciri utama konsep basis data pada tahap IV adalah sistem berbasis hypertext yang memungkinkan penampilan informasi berdasarkan kunci pencarian yang dapat dilakukan secara acak.
5. Tahap V (mulai tahun 1990-an), perkembangan konsep basis data pada tahun 1990-an telah berkembang ke arah aplikasi-aplikasi basis data untuk sistem kecerdasan buatan (Artificial Intelligent/AI), basis data untuk aplikasi-aplikasi multimedia yang melibatkan data teks, suara, gambar dan animasi, aplikasi basis data berorientasi objek (Objek Oriented Data Base/OODB), serta aplikasi-aplikasi basis data secara online ( online data base ) untuk jaringan komputer global atau internet. Aplikasi konsep basis data kabur ( fuzzy ) juga mewarnai konsep basis data pada masa ini.
C. DEFINISI BASIS DATA
Basis data adalah kumpulan data yang saling berelasi. Data sendiri merupakan fakta mengenai obyek, orang, dan lain-lain. Data dinyatakan dengan nilai (angka,deretan karakter, atau symbol). Basis data dapat didefinisikn dalam berbagai sudut pandang seperti berikut:
1. Himpunan kelompok data yang saling berhubungan yang diorganisasikan sedemikian rupa sehingga kelak dapat dimanfaatkan dengan cepat dan mudah.
2. Kumpulan data yang saling berhubungan yang disimpan secara bersama sedemikian rupa tanpa pengulangan (redundancy) yang tidak perlu, untuk memenuhi kebutuhan.
3. Kumpulan file/table/arsip yang saling berhubungan yang disimpan dalam media penyimpanan elektronik.
D. TUJUAN BASIS DATA
Basis data bertujuan untuk mengatur data sehingga diperoleh kemudahan, ketepatan, dan kecepatan dalam pengambilan kembali. Untuk mencapai tujuan, syarat sebuah basis data yang baik adalah sebagai berikut;
1. Tujuan adanya redundansi dan inkonsistensi data
Redudansi terjadi jika suatu informasi disimpan di beberapa tempat. Misalnya, ada data mahasiswa yang memuat NIM, nama, alamat, dan atribut lainnya, sementara kita punya data lain tentang data KHS mahasiswa yang isinya yang terdapat NIM, nama, mata kuliah, dan nilai.
2) Kesulitan Pengaksesan Data
Basis data memiliki fasilitas untuk melakuakan pencarian informasi dengan menggunakan Query taupun dari tool untik melihat tabelnya. Dengan fasilitas ini. Kita bias secara langsung melihat data dari software DBMS-nya. Selain itu, baiss data bias dihubungkan dengan program aplikasi sehingga memudahkan pengguna dalam mengakses informasi. Misalnya program aplikasi untuk kasir yang terhubung dengan basis data . pengguna cukup mengguna fasilitas pencarian ataupun laporan. Yang tersedia pada program aplikasi untuk mendapatkan informasi stok, laporan penjualan, dan lain-lain. Dalam basis data, informasi yang diperolah dari kumpulan data bisa berupa keseluruhan data, sebagai data, data denga filter tertentu, data yang terurut, ataupun data summary.
Sebagai contoh sederhana ketika kita ingin mencatat data alamat dan telepon dari kolega kita. Sebagai orang akan menggunakan buku alamat. Metode pencatat dilakukan dilakukan dengan menuliskan data setelah catatan terakhir. Ketika kita menginginkan informasi alamat seseorang kita akan mencari karena informasi yang tersaji tidak terurut. Ada juga orang mencatat dengan mengelompokan nama berdasarkan abjad. Hal ini akan lebih mempermudah pencarian karena kita tidak perlu membaca keseluruhan data, tetapi cukup dalam satu kelompok saja. Tapi masalah baru muncul ketika jumlah data untuk sekelompokan data abjad teretentu telalu banyak sedangkan kelompok abjad yang lain masih terlalu sedikit. Dalam metode ini, ada banyak ruang tidak terpakai jika memberikan ruang yang sama untuk setiap kelompok. Dalam hal pencarian, kesulitan akan kita temui ketika informasi yang kita ingin cari dengan kata kunci sebagagian namanya. Misalnya kita akan mencari alamat Anto, sementara yang tercatat dalam buku catatan adalah Mardianto. Tentu saja kita tidak akan dapat menemukannya dalam kelompok data dengan huruf depan A. selain itu, tidak selamanya kata kunci yang diketahui adalah dari nama, tetapi bisa saja yang diketahui adalah nomer teleponnya, sedangkan yang ingin kita cari adalah alamat dan namanya. Hal ini merupakan masalah baru dari pencatatan data dengan buku. Basis data bisa memberikan solusi terhadap permasalahan-permasalahan tersebut diatas.
3) Multiple User
Basis data memungkinkan pengguna data bersama-sama oleh banyak pengguna pada saat yang bersamaan atau pada saat yang berbeda. Dengan meletakkan basis data pada bagian server yang bisa diakses kesemua pengguna dari banyak klient, kita sudah menyediakan akses kesemua pengguna dari computer klient ke sumber informasi yaitu basis data. Tentu saja pengaksesan oleh pengguna-pengguna ini disesuaikan dengan hak aksesnya. Misalnya sebuah perguruan tinggi memiliki data tentang mahasiswa, pembayaran, dan lain-lain yang diletakan dalam sebuah basis data. Bagian Akademi akan bisa mengakses data-data akademi mahasiswa, Bagian Keuangan akan diijinkan mengakses data pembayaran mahasiswa, sementara mahasiswa hanya bisa melihat status akademi/keuangan yang berhubungan dengan dirinya saja. Hal ini sangat dimungkinkan dengan penyimpanan data dalam basis data.
E. MANFAAT/ KELEBIHAN BASIS DATA
Banyak memanfaat yang dapat kira peroleh dengan menggunakan basis data. Manfaat/kelebihan basis data diantaranya adalah:
1) Kecepatan dan kemudahan (speed)
Dengan menggunakan basis data pengambilan informasi dapat dilakukan dengan cepat dan mudah. Basis data memiliki kemampuan dalam mengelompokan, mengurutkan bahkan perhitungan dengan metematika. Dengan perancangan yang benar, maka penyajian informasi akan dapat dilakukan dengan cepat dan mudah.
2) Kebersamaan pemakai
Sebuah basis data dapat digunakan oleh banyak user san banyak aplikasi. Untuk data-data yang diperlukan oleh banyak orang/bagian. Tidak perlu dilakukan pencatatan dimasing-masing bagian, tetapi cukup dengan satu basis data untuk dipakai bersama. Misalnya data mahasiswa dalam suatu perguruan tinggi, dibutuhkan oleh banyak bagian, diantaranya: bagian akademik, bagian keuangan, bagian kemahasiswaan, dan perpustakaan. Tidak harus semua bagian ini memiliki catatan dan semua bagian bisa mengakses data tersebut sesuai dengan keperluannya.
3) Pemusatan control data
karena cukup dengan satu basis data unutk banyak keperluan, pengontrolan terhadap data juga cukup dilakuan di satu tempat saja. Jika ada perubahan data alamat mahasiswa misalnya, maka tidak perlu kita meng-update semua data dimasing-masing bagian tetapi cukup hanya disatu basis data.
4) Efesiensi ruang penyimpanan (space)
Dengan pemakain bersama, kita tidak perlu menyediakan tempat penyimpanan diberbagai tempat, tetapi cukup satu saja sehingga ini akan menghemat ruang penyimpanan data yang dimilikioleh sebuah organisasi. Dengan teknik perancangan basis data yang benar, kita akan menyederhanakan penyimpanan sehingga tidak semua data harus disimpan.
5) Keakuratan (Accuracy)
Penerapan secara ketat aturan tipe data, domain data, keunikan data, hubungan antara data, dan lain-lain, dapat menekan keakuratan dalam pemasukan/penyimpanan data.
6) Ketersediaan (availability)
Dengan basis data kita dapat mem-backup data, memilah-milah data mana yang masih diperlukan dan data mana yang perlu kita simpan ke tempat lain. Hal ini mengingat pertumbuhan transaksi suatu organisasi dari waktu ke waktu membutuhkan media penyimpanan yang semakin besar.
7) Keamanan (Security)
Kebanyakan DBMS dilengkapi dengan fasilitas manajemen pengguna diberikan hak akses yang berbeda-beda sesuai dengan pengguna dan posisinya. Basis data bisa diberikan passwordnya untuk membatasi orang yang mengaksesnya.
8) Kemudahan dalam pembuatan program aplikasi baru
Pengguna basis data merupakan bagian dari perkembangan teknologi. Dengan adanya basis data pembuatan aplikasi bisa memanfaatkan kemampuan dari DBMS, sehingga pembuatan aplikasi tidak perlu mengurusi penyimpanan data, tetapi cukup mengatur interface untuk pengguna.
9) Pemakain secara langsung
Basis data memiliki fasilitas untuk melihat datanya secara langsung dengan tool yang disediakan oleh DBMS. Untuk melihat data, langsung ke table ataupun menggunakan query. Biasanya yang menggunakan fasilitas ini adalah user yang sudah ahli, atau database administrator.
10) Kebebasan data (Data Independence)
Jika sebuah program telah selesai dibuat, dan ternyata ada perubahan isi/struktur data. Maka dengan basis data, perubahan ini hanya perlu dilakukan pada level DBMS tanpa harus membongkar kembali program aplikasinya.
11) User view
Basis data penyediaan pandangan yang berbeda-beda untuk tiap-tiap pengguna. Misalnya kita memiliki data-data dari perusahaan yang bergerak dibidang retail. Data yang ada berupa data barang, penjualan, dan pembelian. Ada beberapa jenis pengguna yang memerlukan informasi terkait dengan data perusahaan tresebut. Mereka adalah pelanggan, kasir, bagian gudang, bagian akutansi dan manajer. Tidak semua data boleh diakses oleh semua pengguna. Misalnya kasir dia hanya boleh berhak melihat informasi nama barang dan harga jualnya. Sementara itu dia berhak untuk memasukan data penjualan . berbeda dengan pelanggan yang hanya melihat data keberadaan barang dan harga jual tetapi tidak berhak memasukan atau merubah data. Sementara itu bagian akutansi berhak melihat keuntungan dari tiap-tiap barang untuk menganalisa data akutansinya.Basis data mampu memberikan layanan organisasi seperti ini.
F. KERUGIAN/ KELEMAHAN PENGUNAAN DBSM (DATA BASE SYSTEM MANAGEMEN)
Keputusan menggunakan DBMS mengikat perusahaan atau pengguna untuk :
Memerlukan tenaga spesialis (DBA)
Kompleks
Memerlukan tempat yang besar (konfigurasi perangkat keras yang besar)
Mahal (Perangkat lunak)
BAB II
PERANCANGAN BASIS DATA
DBMS ( Database Management System ) adalah Perangkat Lunak yang menangani semua pengaksesan ke database
Sistem Basis Data terdiri dari basis data dan DBMS.
A. Level Abstraksi
Tingkatan abstraksi berguna untuk menyederhanakan interaksi pengguna dengan sistem, dalam hal ini dibagi menjadi 3 yaitu :
Tingkatan Fisik / Physical Level
Merupakan tingkatan abstarksi paling rendah,
Menggambarkan / mendeskripsikan bagaimana data sebenarnya (media fisikal) disimpan,
Mendeskripsikan detil struktur data.
Tingkatan Logis / Logical Level
Mendeskripsikan data yang disimpan dalam basisdata (representasi abstark)
dan relasi antar data tersebut,
Digunakan oleh DBA.
Tingkatan View / View Level
Merupakan tingkatan abstarksi paling tinggi,
Program aplikasi yang digunakan untuk mengolah data,
Digunakan oleh user.
B. Database System Environment
C. Instansi dan Skema (Instance and Schema)
Kumpulan informasi yang simpan dalam basisdata pada suatu waktu disebut Instansi / Instance suatu basisdata.
Instance, isi aktual dalam basisdata pada suatu data tertentu (contoh : dalam program isi variabel)
Skema / Schema basisdata merupakan rancangan basisdata secara keseluruhan.
Schema, struktur logik dari basisdata (contoh : dalam program tipe data atau variabel)
D. DBMS LANGUAGE & INTERFACE
DBMS harus menyediakan language dan interface untuk setiap kategori pemakai.
Dikenal ada beberapa language:
VDL (View Definition Language)
DDL (Data Definition Language)
SDL (Storage Definition Language)
DML (Data Manipulation Language)
1. Data Definition Language
Skema basisdata ditentukan sekumpulan difinisi oleh suatu bahasa tertentu yang disebut dengan Data-definition Language (DDL).
Sebagai contoh, pernyataan berikut dalam bahasa SQL untuk mendefinisikan tabel mahasiswa :
Eksekusi pernyataan DDL diatas akan membuat tabel mahasiswa. Pernyataan ini menambahkan kumpulan tabel yang disebut kamus data atau direktori data. Kamus data adalah istilah basisdata yang mnegacu pada definisi data yang disimpan dalam basisdata dan dikendalikan oleh sistem manajemn basisdata.
2. Data-Manipulation Language
Manipulasi data adalah :
Mengambil informasi yang disimpan dalam basisdata,
Menambahkan informasi baru ke dalam basisdata,
Menghapus informasi dari basisdata,
Modifikasi informasi yang disimpan dalam basisdata.
Bahasa manipulasi data (DML) adalah bahasa yang memungkinkan pengguna mengakses atau memanipulasi data seperti yang telah diatur oleh model data.
Ada dua tipe DML, yaitu :
Procedural DML, mengharuskan pengguna untuk menentukan data yang dibutuhkan dan bagaimana mendapatkannya.
Nonprocedural DML / Declarative DML, mengharuskan pengguna menentukan data yang dibutuhkan tanpa menentukan bagaimana mendapatkannya.
Nonprocedural DML / Declarative DML lebih mudah untuk digunakan daripada Procedural DML. Dikarenakan pengguna tidak harus menentukan cara mendapatkan data dalam basisdata, maka sistem basisdata harus mencari alat yang efektif untuk mengakses data. Komponen DML dari bahasa SQL merupakan nonprocedural.
Query adalah pernyataan yang digunakan pengguna untuk mengambil data. Dibawah ini contoh bahasa SQL untuk mendapatkan data mahasiswa yang memiliki NIM sama dengan 5303333.
E. Database Users and Adminitrator
Pengguna basis data dapat berupa orang atau aplikasi, dari tipe pengguna basisdata dapat dibedakan dari cara mereka mengharapkan interaksi dengan sistem.
Pengguna Naif / Naive users, pengguna unsophisticated yang berinteraksi dengan sistem menggunakan suatu program aplikasi (biasanya antamuka dalam bentuk formulir) yang dibuat Programmer aplikasi.
Programmer aplikasi / Application Programmers, profesional komputer yang membuat program aplikasi yang memanipulasi data dengan DML. Rapid Application Development (RAP) merupakan tool yang memungkinkan programmer aplikasi membuat formulir dan laporan tanpa menulis program.
Sophisticated Users, yang berinteraksi dengan sistem tanpa menulis program, biasa menggunakan bahasa SQL.
Specialized Users, pengguna Sophisticated yang menulis aplikasi basisdata yang tidak cocok untuk kerangka kerja pemrosesan data tradisional, biasa berupa Computer Aided Design System (CADS) sistem yang berdasarkan ilmu pengetahuan dan keahlian, sistem yang menyimpan data dengan tipe data kompleks. Misalnya : data grafik dan data audio.
Database Administrator
Orang yang memiliki kontrol penuh baik untuk data maupun program yang mengakses data disebut administrator basisdata (DBA).
Fungsi DBA meliput :
Menentukan schema, membuat schema basisdata dengan mengeksekusi kumpulan pernyataan definisi data dalam DDL.
Menentukan struktur penyimpanan dan metode akses.
Memodifikasi schema dan organisasi fisik, dengan tujuan untuk meningkatkan kinerja.
Memberikan otorisasi untuk akses data.
Perawatan rutin sistem basisdata (mem-backup basisdata, monitoring kinerja HW/SW, dll.)
F. MODEL BASIS DATA
Model Basisdata File (Flat file database model)
Model Basisdata Hierarki (Hierarchical database model)
Model Basisdata Jaringan (Network database model)
Model Basisdata Relasional (Relational database model)
Model Basisdata Berorientasi Objek (Object oriented database model)
Model Basisdata Relasi Objek (Object relational database model)
1. Model Basisdata File /Flat file database model
Basisdata file tersusun atas satu atau lebih file dan disimpan dalam format teks. Informasi dalam file teks disimpan sebagai field.
Field-field bisa memiliki panjang yang tetap (fixed width) atau berubah-ubah yang dipisahkan oleh karakter pemisah (delimited).
Kelemahan basisdata file, diantaranya :
Tidak mempunyai struktur,
Pengaksesan data,
Perawatan data,
Kesulitan untuk mengatur hubungan data,
Pengulangan data,
Program yang dibuat harus dapat mengatur data.
2. Model Basisdata Hierarki
Hierarchical database model
Arsitektur basisdata hierarki berdasarkan pada konsep hubungan orangtua dan anak. Pada basisdata hierarki, tabel akar / tabel orangtua berada pada puncak struktur dan menunjuk pada tabel anak yang mengandung data yang berhubungan.
Tabel-tabel yang berhubungan dalam struktur hierarki dihubungkan dengan pointer, yang menunjuk ke lokasi fisik redord anak.
Tabel orangtua dapat memiliki banyak tabel anak, tetapi tabel anak hanya dapat memiliki satu tabel orangtua. Untuk dapat mengakses tabel anak, kita harus mengakses tabel orangtua terlebih dahulu.
Keuntungan basisdata hierarki dibanding basisdata file :
Data dapat diakses secara cepat,
Integritas data lebih mudah diatur.
Kelemahan basisdata hierarki, diantaranya :
Pengguna harus memahami struktur basisdatanya,
Pengulangan data.
3. Model Basisdata Jaringan
Network database model
Basisdata jaringan merupakan hasil pengembangan dari basisdata hierarki. Keuntungan utama basisdata jaringan adalah kemampuan tabel orangtua untuk berbagi hubungan dengan tabel anak. Ini berarti bahwa tabel anak dapat memiliki beberapa tabel orangtua.
Dengan demikian dapat disimpulkan :
Data dapat diakses dari sembarang tabel dalam struktur, baik ke bawah maupun ke atas. Tidak diharuskan mengakses tabel orangtua terlebih dahulu untuk mengakses tabel anak. Hungungan antar tabel pada basisdata jaringan disebut set structure. Set stucture dapat mewakili hubungan one-tomany antara tabel-tabel. Program yang dibuat dalam model basisdata jaringan menggunakan set structure untuk mengakses data, jadi bila set stucture diubah maka program harus diubah pula.
Keuntungan basisdata jaringan adalah :
Data dapat diakses secara cepat,
Pengguna dapat mengakses data dari sembarang tabel.
Kelemahan basisdata jaringan, diantaranya :
Struktur tidak mudah untuk diubah,
Perubahan stuktur basisdata memengaruhi program
aplikasi yang dibuat untuk mengakses basisdata.
4. Model Basisdata Relasional
Relational database model
Basisdata relasional merupakan tipe basisdata yang paling populer saat ini. Tabel atau kelompok data yang saling berhubungan merupakan tempat penyimpanan data. Sebuah tabel terdiri dari baris (record) dan kolom (field), tabel dapat dihubungkan satu sama lain melalui nilai kolom yang disebut kunci (key). Ada tiga tipe hubungan diantaranya One-toone, One-to-many, dan Many-to-many. Hubungan antar tabel ditentukan oleh integritas referensial (referential integrity). Integritas referensial adalah penggunaan batasan untuk membuat valid data yang disimpan ke dalam tabel dan mengatur hubungan antara tabel orangtua dan anak.
Keuntungan basisdata relasional adalah :
Data dapat diakses secara cepat,
Struktur basisdata mudah untuk diubah,
Data sering lebih akurat,
Program aplikasi mudah dibuat dan dimodifikasi,
Bahasa standar (SQL) sudah dibuat.
Kelemahan basisdata relasional, diantaranya :
Pengguna harus memahami hubungan tabel,
Kelompok informasi atau tabel yang berbeda harus dihubungkan untuk mengambil data.
5. Model Basisdata Berorientasi Objek
Object oriented database model
Basisdata berorientasi objek adalah basis data di mana data dapat ditentukan, disimpan dan diakses menggunakan pendekatan pemrograman berorientasi objek. Ada dua struktur dasar dalam basisdata berorientasi objek, yaitu objek dan literal.
Objek adalah struktur yang memiliki pengenal, di mana melalui pengenal inilah sebuah objek dapat dihubungkan dengan objek lain.
Literal adalah nilai yang berhubungan dengan objek dan tidak memiliki pengenal.
Keuntungan basisdata berorientasi objek adalah :
Programer hanya perlu mengerti konsep berorientasi objek,
Objek dapat mewariskan properti ke objek lain,
Banyak proses dalam program aplikasi terjadi secara otomatis,
Secara teori, pengguna lebih mudah menangani objek.
Kelemahan basisdata berorientasi objek, diantaranya :
Pengguna harus memahami konsep basisdata berorientasi objek,
Model belum standar,
Stabilitas model basisdata berorientasi objek belum terjamin karena model masih baru.
6. Model Basisdata Relasional Objek
Object relational database model
Model basisdata relasional objek dibuat dengan tujuan menggabungkan kosep model basisdata relasional dengan pemrograman berorientasi objek. Model basisdata relasional objek dianggap yang terbaik (relasional dan berorientasi objek) meskipun model ini masih dalam tahap awal perkembangan.
Gambar diatas merupakan contoh penerapan relasional objek dalam RDBMS (relational database management system) pada Oracle 8. Ada dua tipe yang ditetntukan oleh pengguna (user defined) yaitu : Orang dan Alamat.
Keuntungan basisdata relasional objek adalah :
Basisdata relasional memiliki banyak arsitektur 3D,
Tipe yang ditentukan oleh oleh pengguna dapat dbiuat.
Kelemahan basisdata relasional objek, diantaranya :
Pengguna harus mengerti, baik konsep relasionalmaupun berorientasi objek.
BAB III
RELATIONSHIP
A. Pengertian Relationship
Relationship Adalah hubungan antara suatu himpunan entitas dengan himpunan entitas lainnya. Simbol yang digunakan adalah bentuk belah ketupat, diamod atau rectangle.
B. Entity-Relationship Model (ERD)
Entity-relationship (E-R) data model didasarkan pada persepsi terhadap dunia nyata yang tersusun atas kumpulan objekobjek dasar yang disebut entitas dan relasi.
Entitas digambarkan dalam basisdata dengan kumpulan atribut. Kumpulan semua entitas bertipe sama disebut kumpulan entitas / entity set.
Contoh : atribut nim, nama, alamat dan kota dapat menggambarkan data mahasiswa. Atribut-atribut membentuk entitas mahasiswa.
Relasi adalah hubungan antara beberapa entitas. Kumpulan relasi bertipe sama disebut kumpulan relasi / relationship set.
Contoh : relasi menghubungkan mahasiswa dengan matakuliah yang diambinya.
Notasi Entity-Relationship
Contoh:
C. Kardinalitas / Cardinalities
Pemetaan Kardinalitas ( Mapping Cardinalities ) menyatakan jumlah entitas dimana entitas lain dapat dihubungkan ke entitas tersebut melalui sebuah himpunan relasi (relationship set).
Pemetaan kardinalitas sangat berguna dalam menentukan himpunan relasi biner meskipun pemetaan dapat berperan dalam deskripsi himpunan relasi yang melibatkan lebih dari dua himpunan entitas.
Untuk suatu himpunan relasi biner R antara entity A dan B, pemetaan kardinalitas harus salah satu dari berikut ini :
One to one, sebuah entitas pada A berhubungan dengan paling banyak satu entitas pada B dan sebuah entitas pada B berhubungan paling banyak satu entitas pada A.
One to many, sebuah entitas pada A berhubungan dengan nol atau lebih entitas pada B dan sebuah entitas pada B berhubungan paling banyak satu entitas pada A.
Many to one, sebuah entitas pada A berhubungan paling banyak satu entitas pada B dan sebuah entitas pada B berhubungan nol atau lebih entitas pada A.
Many to many, sebuah entitas pada A berhubungan nol atau lebih entitas pada B dan sebuah entitas pada B berhubungan nol atau lebih entitas pada A.
Cardinality menyatakan jumlah kemunculan suatu entity di suatu entity lain yang terkait dengannya dalam satu kali proses pemunculan.
D. Batasan Partisipasi /Participation
Constraints
Partisipasi sebuah himpunan entitas E pada himpunan relasiR dikatakan total jika setiap entitas pada E berpartisikasi pada setidaknya satu relasi pada R. Jika hanya beberapa entitas pada E berpartisikasi pada relasi di R, partisipasi himpunan entitas E pada relasi R disebut parsial / partial.
Ilustrasi :
Kita mengharapkan setiap entitas pinjaman direlasikan ke setidaknya satu nasabah melalui relasi pinjaman. Partisipasi pinjaman pada himpunan relasi peminjam adalah Total.
Sebaliknya, seorang dapat menjadi nasabah sebuah bank, baik dia mempunyai pinjaman pada bank maupun tidak. Oleh karena itu, hanya beberapa entitas nasabah mungkin dihubungkan ke himpunan entitas pinjaman melalui relasi peminjam dan partisipasi nasabah pada himpunan relasi peminjam disebut parsial.
E. Membangun ERD /Entity-Relationship
Diagram Design
Entity Relationship Diagram merupakan suatu alat utama pemodelan data dan membantu menggambarkan data ke dalam entitas dan hubungan antar entitas.
Proses ini telah terbukti memungkinkan seorang analis untuk menghasilkan suatu struktur database yang baik, sehingga data dapat disimpan dan dimunculkan kembali secara efisien.
Metodologi ERD
Contoh Kasus :
Sebuah perusahaan mempunyai beberapa bagian. Masing-masing bagian mempunyai pengawas dan setidaknya satu pegawai. Pegawai harus ditugaskan pada paling tidak satu bagian, tetapi dapat pula beberapa bagian. Paling tidak satu pegawai mendapat tugas sebuah proyek. Namun, seorang pegawai dapat libur dan tidak mendapat tugas proyek. Field data yang penting adalah Nama Bagian, Proyek, Pengawas, Nomor Pengawas, Nomor Pegawai dan Nomor Proyek.
1. Menentukan Entitas
Entitas pada sistem adalah Bagian, Pegawai, Pengawas dan Proyek. Entitas perusahaan tidak termasuk dalam sistem karena dia hanya memiliki satu instansi. Entitas yang benar harus mempunyai lebih dari satu instansi.
2. Menentukan Relasi
Kita membuat matriks relasi entitas, sebagai berikut :
3. Gambar ERD sementara
Kita menghubungkan entitas yang mempunyai relasi seperti yang ditunjukan pada matriks relasi entitas.
4. Tentukan Kardinalitas
Dari deskripsi permasalahan kita, kita mengetahui bahawa :
Setiap bagian dipimpin oleh satu pengawas.
Seorang pengawas hanya memimpin satu bagian.
Setiap bagian memiliki paling sedikit satu Pegawai.
Setiap Pegawai bekerja di paling sedikit satu bagian.
Setiap proyek menggunakan paling sedikit satu Pegawai.
Seorang Pegawai dapat bekerja dalam banyak proyek atau bahkan
tidak sama sekali.
5. Tentukan kunci utama (Primary-keys)
Kunci utama adalah Nama Bagian, Nomor Pengawas, Nomor Pegawai dan Nomor Proyek.
6. Gambar ERD berdasarkan kunci
7. Menentuka Atribut
Atribut yang diperlukan adalah Nama Bagian, Nama Proyek, Nama Pengawas, Nama Pegawai selain primary-keys.
8. Pemetaan Atribut
9. Gambar ERD dengan Atribut
Jika ada suatu relasi (hubungan antara 2 entitas) yang tidak digambarkan atributnya, hal ini berarti relasi tersebut hanya memiliki atribut minimal, yaitu atribut yang berasal dari key atribut 2 entitas yang dihubungkannya.
10. Periksa Hasil
Lakukan pemeriksaan terhadap ER-D, bila tidak ada koreksi maka ER-D dapat memodelkan data dalam sistem dengan baik.
F. Entity-Relationship Model (Lanjutan)
Single-Valued Attribute / Atribut Bernilai Tunggal
Atribut bernilai tunggal ditujukan pada atribut-atribut yang memiliki paling banyak satu nilai untuk setiap baris data.
Contoh :
Pada tabel mahasiswa nim, nama_mhs dan alamat_mhs merupa atribut bernilai tunggal, karena atribut-atribut tersebut hanya dapat berisikan satu nilai.
Multi-Valued Attribute / Atribut Bernilai Banyak
Atribut bernilai banyak ditunjukan pada atribut-atribut yang dapat kita isi dengan lebih dari satu nilai, tetapi jenisnya sama.
Contoh :
Atribut hobby pada tabel mahasiswa, termasuk atribut bernilai banyak.
Derived Attribute / Atribut Turunan
Atribut turunan adalah atribut yang nilainya diperoleh dari pengolahan atau dapat diturunkan dari atribut atau tabel lain yang berhubungan.
Simple Attribute / Atribut Sederhana dan Composite
Attribute / Atribut Komposit
Atribut sederhana adalah atribut atomik yang tidak dapat dipilah lagi, sedangkan atribut komposit merupakan atribut yang masih dapat diuraikan lagi menjadi sub-sub atribut yang masing-masing memiliki makna.
G. Konversi Model E-R Ke Skema Relasi
A. Secara Umum
Entity sama dengan Relasi /Table
Atribut sama dengan Item Data /Field
B. BINARY RELATIONSHIP (1:1 mandatory di kedua entity)
Menjadi 2 relasi yang dihasilkan dari 2 entity, dimana key atribut entity pertama harus diletakkan sebagai atribut (foreign key) dari entity kedua, atau sebaliknya.
C. BINARY RELATIONSHIP (1:1 mandatory di salah satu entity)
Menjadi 2 relasi yang dihasilkan dari 2 entity, dimana key atribut entity yang mandatory (1,1) harus diletakkan sebagai atribut (foreign key) dari entity yang bukan mandatory (0,1)
D. BINARY RELATIONSHIP (1:M atau M:1)
Menjadi 2 relasi yang dihasilkan dari 2 entity, dimana key atribut entity yang “one” (1) harus diletakkan sebagai atribut (foreign key) dari entity yang “Many” (M)
E. BINARY RELATIONSHIP (M:N)
Menjadi 3 relasi yang dihasilkan dari 2 entity dan 1 relationship, dimana key atribut relasi yang dihasilkan dari relationship berasal dari key atribut 2 entity yang dihubungkannya.
F. UNARY RELATIONSHIP (1:1)
Menjadi 1 relasi dengan menambahkan peran lain dari entity tersebut sebagai atribut
G. UNARY RELATIONSHIP (1:M)
Sama dengan kardinalitas 1,1. Menjadi 1 relasi dengan menambahkan peran lain dari entity tersebut sebagai atribut
H. UNARY RELATIONSHIP (M:N)
Menjadi 2 relasi yang berasal dari entity dan relationship. Atribut relasiyang berasal dari relationship memiliki 2 key atribut yang berasal dari key atribut entity dan key atribut relationship tersebut.
H. Tipe File
Database dibentuk berdasarkan kumpulan file. File data dapat digolongan menurut jenisnya adalah sebagai berikut :
1. File Induk (master file)
Didalam aplikasi, file ini merupakan file yang penting. File ini tetap terus ada selama hidup dari sistem informasi. File induk dapat dibedakan lagi menjadi :
a. File induk acuan (reference master file), yaitu file induk yang recordnya relatif statis, jarang berubah nilainya.
Contoh : file daftar matakuliah, file daftar golongan, dll.
b. File induk dinamik (dynamic master file), yaitu file induk yang nilai dari record-recordnya sering berubah atau sering dimutakhirkan (updated) sebagai akibat dari suatu transaksi.
Contoh : file induk pelanggan, file induk barang, dll.
2. File Transaksi (transaction file)
File transaksi disebut juga dengan nama file input (input file). File ini digunakan untuk merekam data hasil dari suatu transaksi yang terjadi, dan biasanya mempengaruhi nilai record file induk.
Contoh : file transaksi penjualan yang berisi data tentang transaksi penjualan yang terjadi (tanggal, nama barang, jumlah), maka record file induk akan di-updated sesuai dengan transaksi penjualan yang terjadi.
3. File laporan (report file )
File ini disebut juga dengan file output (output file), yaitu file yang berisi informasi yang akan ditampilkan. File ini dibuat untuk mempersiapkan pembuatan suatu laporan dan biasanya dilakukan bila printer belum siap atau masih digunakan oleh proses yang lain.
4. File sejarah (history file)
File sejarah disebut juga dengan file arsip (archival file), yaitu file yang berisi dengan data masa lalu yang sudah tidak aktif lagi, tetapi perlu disimpan untuk keperluan mendatang.
5. File pelindung (backup file)
File pelindung merupakan salinan dari file-file yang masih aktif di database pada suatu saat tertentu. File ini digunakan sebagai cadangan atau pelindung bila file database yang aktif rusak atau hilang.
6. File kerja (working file)
File kerja disebut juga dengan nama file sementara (temprorary file) atau scratch file. File ini dibuat oleh suatu proses program secara sementara karena memori komputer tidak mecukupi atau untuk menghemat pemakaian memori selama proses dan akan dihapus bila proses telah selesai.
I. Organisasi File
Organisasi file adalah pengaturan dari record secara logika didalam file dihubungkan satu dengan yang lainnya. File dapat diorganisasikan secara urut (sequential organization) atau secara acak (random organization). Walaupun organisasi file dan pengaksesan file dapat dipandang secara terpisah, tetapi biasanya pembahasan mengenai organisasi file menyangkut keduanya, yaitu sebagai berikut :
File urut (sequential file), merupakan file dengan organisasi urut (sequential organization) dengan pengaksesan secara urut (sequential access).
File urut berindeks (indexed sequential file) atau sering disebut dengan ISAM (Indexed Sequential Access Method), merupakan file dengan organisasi urut (sequential organization) dengan pengaksesan secara langsung (direct access).
File akses langsung (direct access file) atau disebut dengan file alamat langsung (direct address file) merupakan file dengan organisasi acak (random organization) dengan pengaksesan langsung (direct access). Organisasi file seperti ini disebut dengan organisasi file tradisional atau konvensional, karena telah ada sebelum struktur database dikembangkan.
Sunday, 2 January 2011
Subscribe to:
Post Comments (Atom)
0 komentar:
Post a Comment