database lanjutan

32
Basis Data Pertemuan 3 Weny Mistarika R.

Upload: putrawitama

Post on 29-Sep-2015

47 views

Category:

Documents


2 download

DESCRIPTION

database

TRANSCRIPT

Basis Data Pertemuan 3

Basis DataPertemuan 3 Weny Mistarika R.Acara perkuliahan hari iniReview materi dan tugas minggu laluLangkah-langkah pembuatan basis data (bagian 1)

Arsitektur basis dataView 1View 2View 3Conceptual SchemaPhysical SchemaBasis data terdiri dari 3 level abstraksiViews (External schemas) menjelaskan bagaimana pengguna melihat datacontoh : Course_info(cid: string, enrollment: integer)Conceptual schema mendefinisikan data yang disimpan dalam database berupa entitas beserta relasi-relasinya.contoh:Students(sid: string, name: string, login: string, age: integer, gpa: real)Faculty(fid: sttring, fname: string, sal: real)Courses(cid: string, cname: string, credits: integer) Enrolled(sid: string, cid: string, grade: string)Physical schema menjelaskan detil penyimpanan data (bagaimana skema konseptual disimpan dalam disk dan tape)contoh:Relations disimpan dalam bentuk unordered files. Buat index pada kolom pertama dari tabel Students.Bahasa dalam DBMSKomponen dalam bahasa basis dataData Definition Language (DDL)Data Manipulation Language (DML)

Contoh dari DDL dan DML ???? Model data Evaluasi tugas !!!Model dataMerupakan konsep model data untuk menjelaskan struktur basis data.Ada beberapa macam model data yang digunakan dalam basis data.Contoh beberapa model data:Hierarchy data modelNetwork data modelRelational data model

Hierarchy data modelDisebut juga model pohon, karena serupa pohon terbalik.Menggunakan pola hubungan orangtua (parent) dan anak (child).Setiap orang tua dapat memiliki satu atau lebih anak.Setiap anak hanya memiliki tepat satu parent.Hierarchy data modeldeptemployeechildofficeMemungkinkan banyak terjadi pengulangan data karena setiap simpul hanya dapat memiliki satu parent.Network data modelPada network model data, terdapat sekumpulan pemilik dan anggota.Orang tua pada hierarchy model, berperan sebagai pemilik pada network model. Sedangkan anak pada hierarchy model berperan sebagai anggota pada network model.Setiap pemilik dapat memiliki satu atau lebih anggota.Setiap anggota memungkinkan memiliki banyak pemilik.

Network data modelKomplex dalam proses queri maupun manipulasi dataJurusan TIMK Basis DataMK B.InggrisMK KalkulusAliceBobCharlieDartEvinRelation data modelRelational data model berbentuk kumpulan tabel 2 dimensi, dengan kolom merupakan field, dan baris merupakan record.Pertemuan antara baris dan kolom disebut item atau value.Tabel-tabel yang terbentuk saling berhubungan.Hubungan antar tabel : satu ke satu ( one to one), satu ke banyak (one to many),banyak ke satu ( many to one), banyak ke banyak ( many to many).Data model ini paling banyak digunakan.Langkah pembuatan basis dataAnalisis kebutuhan (Requirements Analysis)Desain basis data konseptual (Conceptual Database Design)Desain basis data logikal (Logical Database Design)Penghalusan skema (Schema Refinement)Desain basis data fisik (Physical Database Design)Desain aplikasi & sekuritas (Application and Security Design)

1. Analisis kebutuhanMerupakan langkah awal untuk mendesain database.Pada tahap ini, semua kebutuhan user terhadap database harus didapatkan secara detail seperti :Laporan atau informasi apa yang diinginkanData apa yang akan disimpan dalam databaseAplikasi apa yang dibangunOperasi apa saja yang akan sering dilakukanBatasan-batasan apa yang diperlukandllAnalisa kebutuhan dapat dilakukan dengan diskusi atau wawancara kepada pengguna. 2. Desain basis data konseptualMembuat ER model berdasarkan hasil analisis kebutuhan.ER model merupakan salah satu contoh desain model data.Tujuannya untuk membuat deskripsi yang lebih simple terhadap data sesuai dengan pemahaman user dan developer. 3. Desain basis data logikal Mengonversi hasil desain basis data konseptual ke dalam skema basis data pada DBMS.Atau mengubah skema ER kedalam skema database relasional.4. Penghalusan skemaBertujuan untuk menganalisis skema basis data relasional dan mengidentifikasi masalah-masalah yang mungkin muncul serta memperbaikinya.Penghalusan skema dilakukan dengan cara normalisasi.5. Desain basis data fisikMeliputi pembuatan index dan tuning basis data yang bertujuan memercepat performansi basis data.6. Desain sekuritas dan aplikasiPada tahap ini mendeskripsikan role masing-maing pengguna.Apa saja yang dapat dilakukan oleh masing-masing role, dan apa saja yang tidak dapat dilakukan.Look closer1. Analisis kebutuhanContoh dari hasil analisis kebutuhan:Berdasarkan hasil rapat dengan pemilik sebuah perusahaan, perusahaan tersebut menginginkan basis data untuk mencatat pegawai, departemen dan proyek yang dikerjakan.Dari data pegawai, yang dicatat adalah no pegawai, nama pegawai, dan alamat pegawai.Pegawai bekerja pada departemen.Departemen memiliki id departemen dan nama departemen. Setiap departemen dapat menjalankan satu atau lebih project.

2. Desain basis data konseptualDari hasil analisis kebutuhan, digambarkan sebuah model konseptual data dalam bentuk Entity Relationship Diagram (ERD) atau Conceptual Data Model (CDM).ERD atau Conceptual Schema / conceptual data model (CDM) digenerated menjadi Physical Schema / Physical Data Model (PDM)

ERD/CDMPDMDATABASEER DIAGRAMTeknik pemodelan data yang menggambarkan entitas dan hubungan antar entitas dalam sebuah sistem informasi.ERD memiliki dua komponen utama:Entity / entitasRelationship / hubungan

Simbol ER-DiagramNamaSimbolEntitas

Atribut

Primary Key

Entitas Lemah

Hubungan / relationships

Nama EntitasNama AtributAtribut PKNama Entitas LemahNama hubunganNamaSimbolAtribut TurunanAtribut multivaluePrimary Key Entitas LemahHubungan dengan Entitas Lemah

Nama AtributNama AtributAtribut PKNama hubunganEntitas / entityEntity merupakan object di dunia nyata yang dapat dibedakan dari object lain.Entity memiliki atribut.Setiap entity memiliki sebuah key.Entity yang sama (memiliki atribut yang sama) membentuk sebuah set entity.Entitas / entityContoh : entity pegawai -> memiliki atribut id, nama, alamat.Pegawai IDNama Alamat RelationshipMerupakan hubungan antar entitas.Relationship dapat memiliki atribut deskriptif yang mencatat informasi tentang hubungan.Contoh : pegawai bernama Beggy bekerja pada departemen Informasi.Pegawai IDNama Alamat Bekerja_padaDepartemenIDDdname sejakKey constraintSeorang pegawai dapat bekerja pada banyak departemen, dan satu departemen dapat memiliki banyak pegawai.

Contoh key constraint apabila seorang pegawai dapat mengepalai beberapa departemen, sementara setiap departemen hanya dapat dikepalai oleh satu pegawaiPegawai IDNama Alamat Bekerja_padaDepartemenIDDdname sejakPegawai IDNama Alamat Menge-palaiDepartemenIDDdname sejakKey constraintMany-to-Many1-to-11-to ManyMany-to-1Peg1 Peg2 Peg3 Peg4 1/1/912/2/923/3/934/4/945/5/95517589pegawaiBekerja_padadepartemenParticipation constraint Merupakan bentuk pertisipasi suatu entitas atau relasi terhadap entitas atau relasi lainnya.Terdapat 2 jenis partisipasi:Total participation/ partisipasi totalPartial parciation / partisipasi parsialcontohContoh: pada hubungan mengepalai, setiap departemen pasti memiliki seorang kepala, sehingga hubungan antara departemen dan mengepalai adalah partisipasi total. Sedangkan tidak semua karyawan mengepalai departemen, sehingga hubungan antara karyawan dan mengepalai adalah partisipasi parsial.Participation constraintPartisipasi total ditandai dengan garis tebal untuk menggambarkan hubunganPegawai IDNama Alamat Bekerja_padaDepartemenIDDdname sejakMenge-palaisejakSelamat Belajar