implementasi basis data

29
IMPLEMENTASI BASIS DATA By : I Ngh Putu Mardika, S.Pd

Upload: putu-mardika

Post on 04-Jul-2015

309 views

Category:

Documents


3 download

TRANSCRIPT

IMPLEMENTASI BASIS DATA

By :

I Ngh Putu Mardika, S.Pd

Performansi basis data ditentukan oleh

• Kualitas dan bentuk perancangan basis data

• Kualitas mesin / komputer

• Platform yang dipilih

• Sistem operasi

• DBMS yang digunakan

Implementasi Basis Data

• Merupakan upaya untuk membangun basis data fisik yang ditempatkan dalam media penyimpan (disk) dengan bantuan DBMS

• Diawali dengan melakukan transformasi dari model data yang telah selesai dibuat struktur basis data sesuai DBMS yang dipilih

• Secara umum, sebuah ERD akan diwujudkan menjadi sebuah basis data secara fisik. Sedangkan komponen-komponen ER yang berupa himpunan entitas dan himpunan relasi akan diwujudkan menjadi tabel-tabel. Selanjutnya, atributatribut yang melekat pada masing-masing himpunan entitas dan himpunan relasi akan dinyatakan sebagai field-field dari tabel yang sesuai

Transformasi Model Data ke Basis Data Fisik

• Transformasi Umum/Dasar

• Implementasi Himpunan Entitas Lemah dan Sub Entitas

• Implementasi Relasi Tunggal (Unary Relation)

• Implementasi Relasi Multi Entitas (N-aryRelation)

• Implementasi Relasi Ganda (Redundant Relation

Transformasi Umum/Dasar

a. Setiap himpunan entitas akan diimplementasikan sebagai sebuah tabel (filedata)

Aturan Umum :

b. Relasi dengan derajat relasi satu-ke-satu, yang menghubungkan 2 buah himpunan entitas akan direpresentasikan dalam bentuk penambahan /penyertaan atribut-atribut relasi ke tabel yang mewakili salah satu dari kedua himpunan entitas

Tabel Jurusan

kode_jur nama_jur kode_dos

c. Relasi dengan derajat relasi satu-ke-banyak, yang menghubungkan 2 buah himpunan entitas, juga akan direpresentasikan dalam bentuk pemberian /pencantuman atribut kunci dari himpunan entitas pertama (yang berderajat 1) ke tabel yang mewakili himpunan entitas kedua (yang berderajat M)

c. Relasi dengan derajat relasi banyak-ke-banyak, yang menghubungkan 2 buah himpunan entitas akan diwujudkan dalam bentuk tabel khusus, yang memiliki field (atau foreign key) yang berasal dari kunci-kunci dari himpunan entitas yang dihubungkannya

mahasiswa

kuliah

nim nama_mhs

alamat_mhs

tgl_lahir

kode_kul

indeks_nilai

kode_kul

nama_kul

semestersks

nim

mempelajari

Tabel Mahasiswa

nim nama_mhs alamat_mhs tgl_lahir

Tabel mempelajari

nim kodek_kul indeks_nilai

Tabel Kuliah

kode_kul nama_kul sks semester

Tabel khusus yang mewakili himpunan relasi

Implementasi Himpunan Entitas Lemah

Implementasi Relasi Tunggal (unary Relation)

Untuk relasi satu-ke-banyak dapat diimplementasikan melaluipenggunaan field key dua kali tapi untuk fungsi yang berbeda.

Relasi yang derajatnya banyak-ke-banyak akan diimplementasikan melaluipembentukan tabel baru yang merepresentasikan relasi tersebut. Tabel baru inimendapatkan field dari semua atribut relasi (jika ada) yang ditambah denganatribut key dari himpunan entitasnya.

Implementasi Relasi Tunggal (unary Relation)

Implementasi Relasi Multi Entitas (N-ary Relation)

• Secara umum, relasi multi entitas yang menghubungkanlebih dari dua himpunan entitas (N himpunan entitas, dimana N > 2) akan diimplementasikan sebagai sebuah tabelkhusus (tentu saja, setiap himpunan entitas yang terlibatdalam relasi juga akan direpresentasikan dalam tabel-tabelterpisah).

Namun jika pada relasi yang menghubungkan N buahhimpunan entitas kita dapat memastikan bahwa DerajatRelasi parsial di antara (N-1) buah himpunan entitasdengan suatu himpunan entitas (misalnya X) adalah satu-ke-banyak, maka relasi tadi tidak perlu diwujudkan sebagaisebuah tabel khusus dan atribut-atributnya cukupdilekatkan pada himpunan entitas X tersebut.

13

Pada Diagram E-R diatas, Derajat Relasi parsial di antara setiap pasang himpunan entitas yang ada adalah sebagai berikut: Pada relasi pengajaran tersebut setiap mata kuliah dapat diajarkan oleh

seorang dosen dan setiap dosen dapat melakukan pengajaran banyak mata kuliah, maka Derajat Relasi parsial antara himpunan entitas Dosen–Kuliah adalah 1-N (satu-ke-banyak).

Implementasi Relasi Multi Entitas (N-ary Relation)

14

Pada relasi pengajaran tersebut setiap mata kuliah hanya dapat diselenggarakan di sebuah ruang yang telah ditentukan dan setiap ruang pada saat yang berbeda dapat digunakan untuk pengajaran berbagai mata kuliah, maka Derajat Relasi parsial antara himpunan entitas Ruang-Kuliah adalah 1-N (satu-ke-banyak).

Implementasi Relasi Multi Entitas (N-ary Relation)

15

Pada relasi pengajaran tersebut setiap ruangan dapat digunakan oleh banyak dosen (untuk mengajarkan berbagai mata kuliah) dan setiap dosen dapat menggunakan berbagai ruangan karena memang mengajarkan lebih dari satu matakuliah, maka Derajat Relasi parsial antara himpunan entitas Ruang-Dosen adalah N-N (banyak-ke-banyak).

Implementasi Relasi Multi Entitas (N-ary Relation)

Dari hasil pengamatan tersebut kita dapat menyetujui bahwasemua derajat relasi parsial antara himpunan entitas Dosenataupun Ruang dengn himpunan entitas Kuliah selalu satu-ke-banyak. Dengan demikian, relasi Pengajaran tersebut tidak perludiimplementasikan sebagai sebuah tabel khusus, tetapi atribut-atributnya dilekatkan pada tabel yang mewakili himpunan entitaskuliah.

3 buah field yang mewakilirelasi Pengajaran

Implementasi Relasi Multi Entitas (N-ary Relation)

Jika ternyata di kemudian hari, suatu mata kuliah (dengan jumlah sks yang besar) dapat dilaksanakan lebih dari satu kali dalam seminggu, dan mungkin untukdiselenggarakan di ruang yang berbeda, maka Derajat Relasi parsial antarahimpunan entitas Ruang-Kuliah bukan lagi satu-ke-banyak, tapi menjadi banyak-ke-banyak. Jika kenyataan ini harus diakomodasi, maka tabel Kuliah tetapsebagaimana bentuk semula (dengan 4 buah field: kode_kul, nama_kul, sks dansemester) dan relasi diatas harus diimplementasikan sebagai sebuat tabel khususseperti berikut:

Implementasi Relasi Multi Entitas (N-ary Relation)

18

Implementasi Relasi Ganda (Redundant Relation)

Implementasinya ditinjau pada masing-masing relasi tanpa terikat satu sama lain berdasarkan Derajat Relasi di masing-masing relasi tersebut.

Karena derajat relasi mengajar adalah satu-ke-banyak, maka field kode_dos yang berasal dari himpunan entitas Dosen ditambahkan ke tabel Kuliah. Sementara untuk relasi Menguasai, karena Derajat Relasinya adalah banyak-ke-banyak maka relasi akan dinyatakan dalam tabel khusus dengan 2 buah field: kode_dos dan kode_kul.

19

Implementasi Relasi Ganda (Redundant Relation)Hasil akhir implementasinya adalah:

Atribut tambahan untuk merepresentasikan relasi Mengajar

tabel khusus untukmerepresentasikan relasi menguasai

Implementasi Sub Entitas Hasil dari Spesialisasi

DOSEN

ISA

DOSENTETAP DOSEN TDK TETAP

nik

namaKd_dsn alamat

jabatan

Tgl_masuk

Nama_kantor

alamat_kantor

nohp

Gaji_bulanan

Gaji_harian

Tgl_gajian

Implementasi Spesialisasi dan Generalisasi

Mahasiswa D3

ISA

Mahasiswa

Mahasiswa S1

Generalisasi

Nam a_m hs Nim

Alamat_mhs Tgl_lahir

nim Nama_mhs Alamat_mhs Tgl_lahir Prog_studi

Tabel Mempelajari

Kuliah

Nim

Mempelajari

Mengikuti

Kode_kul

Kode_pra Nilai

Nam a_pra Jum lah_jam

Praktikum

Mahasiswa N N

Kode_pra

N

N

nim Kode_kul Indeks_nilai

Implementasi Agregasi

Kode_pra Nama_pra Jumlah_jam

Tabel Praktikum

nim Kode_kul Kode_pra nilai

Tabel Mengikuti

DBMS dan Struktur Tabel

• Data Angka

• Data Numerik

• Data Bilangan Bulat (integer)

• Data Bilangan Nyata

• Data Uang

• Data Teks

• Feature tambahan

Indeks dan Struktur Penyimpanan

• Indeks Primer (Primary Index)

• Indeks Sekunder

• Struktur Penyimpanan (Storage Structure)

KUIS

• Buatkan ilustrasi Locking disertai querynya

• Buatkan contoh hak otorisasi, misalnya untuk mengupdate gaji pd tabel pegawai

• Buat 1 contoh kasus data base yang besar dan dipecahkan dengan menggunakan data mining

• Buat Konsepsual ERD Inventori dan di tranformasikan pada tabel, ketentuan :– Terdiri : 3 entitas, masing-masing Entitas 4 atribut,

3 relasi serta menentukan kunci/key

Keamanan Pada PerancanganBasisdata

• Ketika kita meletakkan basisdata pada web, dia menjadi mudah diserang oleh hacker dan penjahat lainnya dari luar organisasi yang akan merusak atau mencuri data. Bayangkan bahwa gaji semua orang, data personalia, atau data rahasia perusahaan lainnya ditampilkan kepada umum melalui website. Bahkan dari dalam perusahaan sendiri dapat terjadi seorang pegawai merusak sistem ketika mereka dipecat.

• Kemungkinan terjadinya gangguan dari orang-orang baik dalam maupun luar organisasi harus dilawan. Masalah yang lebih besar dapat terjadi ketika orang-orang dalam perusahaan harus menanggulangi kemungkinan kesalahan yang tak disengaja. Menghapus atau menimpa suatu file data, menghapus tabel atau mengupdate kolom secara tidak benar dengan tidak sengaja, dapat menimbulkan masalah seperti yang ditimbulkan oleh hacker. Oleh karena itu keamanan harus direncanakan dengan baik dan diintegrasikan dalam basisdata.

• Basisdata seharusnya tidak hanya menyediakan data pada pengguna tapi juga menyediakan proteksi pada data tersebut.

Yang Berhak Mengakses Basisdata

• Ada beberapa kategori pengguna untuk setiap sistem informasi, mulai dari pengguna akhir sampai administrator sistem informasi. Pengguna yang mempunyai akses untuk sistem informasi adalah sebagai berikut:• Pengguna akhir

• Pelanggan

• Manajemen

• Administrator jaringan

• Administrator sistem

• Administrator basisdata

• Pemilik skema

Tingkatan Akses

• Pengguna basisdata diberi identitas pengguna dengan password dan kemampuan untuk berhubungan dengan basisdata.

• Basisdata modern membutuhkan keputusan tentang perancangan yang berhubungan dengan identitas pengguna dan password. Keamanan digunakan untuk mengontrol akses. Pengguna mempunyai akses ke baik data maupun sumberdaya, keduanya dapat dikontrol pada tingkatan basisdata.

• Apabila pengguna diberi identitas pengguna, mereka dapat mengakses basisdata secara langsung kedalam jaringan melalui aplikasi client-server. Mereka juga dapat log in melalui aplikasi middle tier untuk mengakses basisdata. Sebagai contoh, pengguna dapat log in ke server aplikasi web yang mempunyai banyak pengguna web yang log in ke server tersebut. Server aplikasi web kemudian berkomunikasi dengan basisdata dengan cara log in dengan menggunakan identitas pengguna yang mempunyai akses minimum yang dibutuhkan untuk menyelesaikan pekerjaan yang sedang dikerjakan oleh aplikasi web.