sistem basis data - pertemuan 3 - littleradita's blog | just … · · 2010-10-047 data...
TRANSCRIPT
1
Lingkungan Database
Sistem Basis Data
STMIK-AUB SURAKARTA
Informasi Sebagai Aset
Siapa yang mempunyai informasiakan menjadipemenangInformasi menjadi asetdalam perusahaan(4M dan 1I)
Manusia
Mesin Material
Modal
Informasi
2
Manajemen Data
Data sebagaisumber informasiperlu dikeloladengan baik
Pengelolaan data diterapkan denganmenggunaandatabase
Database
DataDataDataDataData
DataDataDataDataData
Proses Informasi
Database dan Sistem InformasiManajer
Sistem Informasi
Database
Menggunakan pengetahuan yang diturunkan dari database untukkeunggulan kompetitif ataupengambilan keputusan
3
Database dan Sistem Informasi
Profesional TI
Menganalisa kebutuhan-kebutuhandan merancang danmengimplementasikannya
Contoh Aplikasi Database
Perbankan : informasinasabah, rekening, pinjaman, transaksiperbankanPenerbangan: reservasi danjadwal
4
Contoh Aplikasi Database
Jasa Paket : tarifpaket, tracking paket
Contoh Aplikasi Database
Universitas : Informasi mahasiswa, registrasi matakuliah, daftar nilaiSumber Daya Manusia: Informasipegawai, riwayat pekerjaan, gaji, danpelatihanTelekomunikasi: Tarif SLJJ, tagihanbulanan, saldo kartu prabayar
5
Contoh Aplikasi DatabaseToko Buku : Daftar buku, riwayatpembelian
Definisi Database
a collection of related data (Elmazri & Navathe, 1994)an organized collection of logically related
data (McFadden, Hoffer, and Presscot, 2002)a collection of data, typically describing
the activities of one or more related organizations (Ramakrishnan & Gerke, 2000)
6
Database
Database Akademik
Mahasiswa
Registrasi Matakuliah
Nilai Matakuliah
Data dan Informasi
Data : Deskripsi tentang benda, kejadian, aktivitas, dan transaksi, yang tidakmempunyai makna atau tidakberpengaruh secara langsung kepadapemakaiMisal: 6.30 27 6.32 28 6.34 27. Apaartinya?Data bisa berupa teks grafik, citra, suara, atau bahkan video
7
Data dan Informasi
Informasi : Data yang telah diprosessedemikian rupa sehingga meningkatkanpengetahuan sesorang yang menggunakan data tersebut (McFadden dkk, 1999)Informasi: Data yang telahdiorganisasikan ke dalam bentuk yang sesuai dengan kebutuhan seseorang(Kadir, 2001)
Metadata
Metadata : data yang menjelaskan sifat/karakteristikdata yang lain.Contoh data yang menjelaskan data pegawai:
Gaji pegawaiLongGaji
Nama pegawai5AlphanumericNama
Nomor pegawai5AlphanumericNIP
KeteranganPanjangTipeNama
8
Sistem Pemrosesan BerkasTradisional
Bentuk pemrosesandasar yang lahirsebelum databasemuncul
Berkecunderungantidak berbagi berkas(Setiap aplikasimemiliki berkastersendiri)
AplikasiPersonalia Personalia
AplikasiPelatihan Pelatihan
Sistem Pemrosesan BerkasTradisional
Dependensi data-programPerubahan data membuat sejumlah program perlu dimodifikasi
Duplikasi data Data yang sama muncul pada beberapa berkas
Keterbatasan berbagi data (Isolasi data - banyakformat file)Waktu pengembangan lama
Perlu membuat program untuk mengakses data
Problem integritas (kekonsistensian)Kekangan integritas (misalnya saldo >) menjadi bagian dariprogram
Keamanan data tidak terjamin
9
Aplikasi Database
Aplikasi database: adalah program aplikasi yang digunakan untukmelaksanakan sederet kegiatan yang ditentukan oleh pemakai.Beberapa operasi dasar yang dilakukanoleh aplikasi database:
Menambah dataMembaca dataMengubah dataMenghapus data
Pendekatan Database
Pendekatan database menekankanpada integrasi dan berbagi data dalamsebuah organisasiMemerlukan kepedulian dari pihakeksekutif atasFakta: Informasi dapat menjadi senjata(keunggulan komptetitif)
10
Ranah (Range) Aplikasi Database
Personal computer databasesWorkgroup databasesDepartment databasesEnterprise databases
Personal Computer Databases
Untuk mendukungpemakai tunggal yang menggunakansebuah PC
11
Workgroup Databases
Digunakan untukmendukungworkgroupWorkgroup : Sekelompok tim kecil, < 25 orang, yang berkolaborasi dalamproyek atau aplikasiyang sama
Workgroupdatabase
Database server
LAN
Department Databases
Department database : database yang dirancang untuk mendukung berbagaifungsi dan aktivitas dalam suatudepartemen
Departmentdatabase
Database server
LAN
Lingkupdepartemen
12
Enterprise Databases
Enterprise database: database yang memiliki lingkup dalam sebuahperusahaan (mencakup beberapadepartemen)
Enterprisedatabase
Database server
Departemen Akunting
Departemen Pemasaran
Departemen SDM
Keuntungan Pendekatan Database
Independensi program-dataMeminimalkan redundansi dataMeningkatkan konsitensi dataMeningkatkan kemampuan berbagai dataMeningkatkan produktivitas pengembanganaplikasiMeningkatkan pencapaian standarisasiMeningkatkan kualitas dataMeningkatkan tanggapan dan kemudahan aksesterhadap dataMengurangi pemeliharaan program
13
Independensi Program-Data
Struktur data pada database terpisah denganprogramPerubahan struktur data tidak membuat program harus dimodifikasi
Struktur Data
Kode
Program
Paradigma lama
Kode
Program
Pendekatan database
Database
Redundansi Data
Redundansi data dapat dikurangi dengancara data yang sama untuk aplikasi yang berbeda dijadikan satu
Data Pegawai
Bagian penggajian
Bagian pelatihan
Data Pegawai
Data Pegawai
Contoh redundansi data Mengatasi redundansi data
14
Konsistensi Data
Pengurangan redundansi data berimplikasi pada peningkatan konsistensidata (mengurangi kemungkinan untuktidak konsisten)Contoh: Dua biro perjalan tidak terhubungke database milik maskapai penerbangan. Apa yang terjadi kalau salah satu biro sudah menjual tempat duduk nomor 4 padahal biro yang lain tidak tahu?
Berbagi Data
Data dapat diakses oleh banyak pemakaidengan tetap memperhatikan otorisasiIstilah multiuser menyatakan bahwasebuah data bisa diakses oleh banyakorang dalam waktu yang bersamaan
15
ProduktivitasPengembangan Aplikasi
Kemudahan dalam mengakses database membuat waktu untuk pengembanganaplikasi dapat dipersingkatSistem database menyediakan banyaktool yang berguna untuk pembuatanaplikasi
Report generatorForm generator
Standarisasi
Standarisasi seperti nama data, panjangdata, kemungkinan nilainya, dan bahkanprosedur untuk mengaksesnya dapatdiatur oleh yang berwewenang (DBA)Contoh:
Nama pegawai selalui bertipe Alphanumericdengan panjang maksimal 35 karakter.
Semua pemrogram menggunakan standartersebut
16
Kualitas Data
Kualitas data sangat berpengaruh terhadappemerolehan informasi yang berkualitasAdanya kekangan (constraint) dalam databasemembuat pelanggaran terhadap isi data olehpemakai tidak akan ditoleransi oleh sistemdengan sendirinyaKekangan adalah suatu aturan yang diterapkanpada data dan tidak bisa dilanggar olehpemakai. Contoh: Agama hanya bisa diisidengan I, K, H, B, P. Sistem database akanmenolak kalau huruf X dicoba untuk dimasukkan
Tanggapan dan Akses
Sistem database memberikan tanggapandan akses yang cepat sekalipun pemakaiadalah orang yang tidak tahu tentangpemrogramanDengan menggunakan perintah dalamlevel SQL (Structured Query Language) yang mudah untuk dipahami oleh orangawam, akses terhadap database mudahsekali dilakukan
17
Pemeliharaan Program
Perubahan terhadap struktur data denganberbagai alasan seringkali dilakukanselama tahapan pemeliharaan; misalnyadata baru ditambahkan atau panjangsuatu data ditambahPerubahan seperti ini tidak selalumembuat program-program yang telah jadiharus ikut diubah
Biaya dan RisikoPendekatan Database
Kebutuhan personil khususKekompleksitasan dan biaya instalasi danpengelolaanBiaya KonversiKebutuhan untuk melakukan backup danrecoveryKonflik organisasi
18
Kebutuhan Personil Khusus
Pendekatan databasemenuntut
Perekrutan tenaga spesial baruPelatihan perancangan danimplementasi databasePenyediaan layananadministrasi databasePengelolaan terhadap SDM baru
Kekompleksitasan dan BiayaInstalasi dan Pengelolaan
Sistem manajemen databasemultiuser bersifat kompleksMemerlukan biaya awal yang besarMemerlukan tenaga terlatih untukmemasang dan mengoperasikanMembutuhkan biaya tahunanuntuk pemeliharaanMenuntut biaya penyesuaianuntuk hardware dan saranakomunikasi
19
Biaya Konversi
Biaya konversi adalah biaya untuk beralihdari sistem lama ke sistem baruBiaya konversi dapat diukur dalam bentukuang, waktu, dan komitmen organisasiBiaya ini bisa jadi sangat mahal
Kebutuhan Backup danRecovery
Database perusahaan dengan kekhasanberbagi data menuntut keakuratan danketersediaan setiap saatPerlu prosedur yang jelas untukmelakukan backup dan recoverySelain itu juga menuntut pengamanan
20
Konflik Organisasi
Database yang dipakai untuk berbagi data memerlukan
konsesus terhadap pendefinisian datakepemilikanpengkodean dan format datahak untuk memperbaharui data
Hal itu menuntut komitmen organisasi terhadappengelolaan database
Kekurangan dukungan dari manajemen puncakdapat menimbulkan problem
Komponen LingkunganDatabase
CASETools
UserInterface
ApplicationPrograms
Repository DatabsseDBMS
21
Komponen LingkunganDatabase
Computer-aided software engineering(CASE) Tools
Peranti otomasi untuk perancangan databasedan program aplikasi
RepositoryTempat penyimpanan terpusat yang berisidefinisi data, hubungan data, format layar danlaporan, serta komponen-komponen sistemlainBerisi metadata yang diperlukan untukpengelolaan database dan komponen-komponen lain sistem informasi
Contoh Metadata
Gaji pegawaiLongGaji
Nama pegawai5AlphanumericNama
Nomor pegawai5AlphanumericNIP
KeteranganPanjangTipeNama
22
Komponen Lingkungan Database(lanjutan )
Database Management System (DBMS)Software yang ditujukan untukmendefinisikan, menciptakan, memelihara, dan menyediakan akses terkontrol terhadapdatabase dan repository
Contoh DBMS: Microsoft Access, Visual FoxPro, Informix, Oracle, dll
Contoh DBMS Access
23
Komponen Lingkungan Database(lanjutan )
DatabaseKumpulan data yang saling terkait
Perbedaan dengan repository:Repository berisi definisi dataDatabase berisi data
Sebuah database berisi kumpulan dari tabel
Contoh Database
24
Hierarki dalam Database
Database
Tabel customer Tabel account Tabel depositor
Field customer-id
Field customer-name
Field customer-name Field Customer-city
Deretan byte/bit
Record Record
Komponen Lingkungan Database(lanjutan )
Application ProgramsProgram yang ditujukan untukmengakses databasedan menyediakaninformasi bagipemakai
25
Komponen Lingkungan Database(lanjutan )
User InterfaceBahasa, menu, dan fasilitas lain yang dipakaioleh pengguna dalam berinteraksi dengankomponen-komponen sistem seperti CASE Tools, program aplikasi, DBMS, danrepository
Komponen Lingkungan Database(lanjutan )
Data AdministratorsOrang yang bertanggung jawab terhadapkeseluuhan sumber daya informasi dalamorganisasi
System developersOrang yang bertanggung jawab dalammerancang program aplikasiContoh: system analyst dan programmer
26
Komponen Lingkungan Database(lanjutan )
End usersOrang yang melakukanakses terhadap databasePengguna akhir dapatdibedakan menjadi:
Pengguna aplikasi : orang yang mengoperasikan program aplikasi
Pengguna interaktif : orang yang dapatmemberikan perintah-perintah beraras tinggipada antarmuka databaseyang tersedia (misalnyamenggunakan SQL)
SQL
SQL biasa dipakai sebagai non-procedural languageContoh, untuk mendapatkan pelanggan dengan customer-id 192-83-7465
select customer.customer-namefrom customerwhere customer.customer-id = 192-83-7465
Untuk mendapatkan saldo dari rekening yang dipunyai olehpelanggan dengan customer-id 192-83-7465
select account.balancefrom depositor, accountwhere depositor.customer-id = 192-83-7465 and
depositor.account-number = account.account-number
Program aplikasi mengakses database melaluiPerluasan yang memungkinkan untuk menyisipkan SQLAntramuka program aplikasi (mislanya ODBC/JDBC) yang memungkinkan query SQL dikirim ke database
27
Evolusi Database
Tahun 60-anSistem pemrosesan berkasDBMS tahap awal (misalnya untuk menangani proyekApolo pendaratan di bulan)
Tahun 70-anDatabase hierarkikal dan networkBeberapa kelemahan database saat itu:
Sulit untuk mengakses dataIndependensi terhadap data masih sangat terbatasBelum tersedia landasan teori yang kokohKonsep database relasional belum dikenal
Evolusi Database(lanjutan )
Tahun 80-anDatabase relasional mulai dikenal secara meluasDatabase mudah diakses melalui SQLDi lingkungan PC, dBase II dan dBase III+ sangatpopuler
Tahun 90-anTren client-server dan aplikasi Internet Penerapan database berorientasi objekDatabase multimediaDatabase cerdas
28
Evolusi Database(lanjutan )
Tahun 2000-anPenanganan data yang kompleks(multidimensional data)Database terdistribusi
Arsitektur Tiga Skema
Arsitektur tiga skema merupakan suatupendekatan yang ditujukan kepentinganabstraksi dataSkema adalah struktur logika dalamdatabaseAbstraksi data dimaksudkan agar pemakaitidak perlu tahu tentang bagaimana DBMS secara detail menyimpan dan memeliharadatabase
29
Arsitektur Tiga Skema
View Level
View level merupakan lapisan tertinggi padaarsitektur tiga skemaPada level ini pemakai hanya mengenal strukturdata yang sederhana, yang berorientasi padakebutuhan penggunaData yang dikenal oleh masing-masingpengguna bisa berbeda-beda dan kemungkinanhanya mencakup sebagian data dalam databaseSebagai contoh pada level ini, seseorangpengguna mislanya tidak boleh mengakses data gaji
30
Logical Level
Disebut juga Conceptual SchemaMenjabarkan data apa saja yang sesungguhnya disimpan dalam databasedan mendeksripsikan hubungan antardataLevel ini biasa dipakai oleh DBA
Physical View
Disebut juga Physical SchemaMenjelaskan bagaimana data sesungguhnya disimpan dalam memorisekunder
31
Gambaran Abstraksi Data
Contoh suatu struktur dataPegawai = RECORD
Nama : STRING[25];Alamat : STRING[25];Bagian : STRING[10];Gaji : LONGINT;
END;
Contoh di atas menyatakan recordbernama Pegawai mengandung 4 Field
Gambaran Abstraksi Data(lanjutan )
Pada level fisik, Pegawai dapat dijabarkansebagai blok data yang terletak dalammemori sekunder.
Pada lapis konseptual, masing-masingrecord dijabarkan dalam definisi di depanPada lapis pandangan (view), pemakai A boleh mengakses data gaji tetapi pemakaiB tidak
ALI BAHARUDIN JL KARANGWARU 23 AKUNTING 1200000
32
Physical Data Independence
Physical Data Independencekemampuan untuk memodifikasi skemafisik tanpa mengubah skema logika
Aplikasi bergantung pada skema logika
Antarmuka berbagai level dan komponenharus terdefinisi dengan baik sehinggaperubahan pada salah satu bagian tidakmempengaruhi yang lain
Sistem DBMS SecaraMenyeluruh
33
Istilah-Istilah
DDL (Data Definition Language)Perintah-perintah yang biasa dipakai DBA untuk mendefinisikan skema ke DBMSDDL juga dapat dipakai untuk membuatsubskema (pandangan bagi penggunaterhadap suatu database).
NAMA ALAMAT BAGIAN GAJI
NAMA BAGIAN
Skema
Subskema
Istilah-Istilah(lanjutan )
DDL (Data Definition Language)Contoh:create table account (
account-number char(10),balance integer)
DDL compiler membuat perintah seperti diatas disimpan dalam repository
34
Istilah-Istilah(lanjutan )
DML (Data Manipulaton Language)Perintah-perintah yang digunakan untukmengubah, memanipulasi, dan mengambildata pada database.DML dapat dibagi menjadi 2 kategori:
Prosedural (menuntut pengguna menentukandata apa saja yang diperlukan dan bagaimanacara mendapatkannya)Non-prosedural (menuntut penggunamenentukan data apa saja yang diperlukan, tetapitidak perlu menyebutkan cara mendapatkannyasecara detail)
Istilah-Istilah(lanjutan )
Contoh perintah prosedural:OPEN INPUT KARYAWAN.
BACA-BERULANG.READ KARYAWAN.
IF TGL_MASUK GREATER THAN OR EQUAL 01/01/1983
DISPLAY NAMAGO TO BACA-BERULANG.
CLOSE KARYAWAN.
Contoh perintah non-prosedural:SELECT NAMA FROM KARYAWAN
WHERE TGL_MASUK < 1983/01/01 .
35
Istilah-Istilah(lanjutan )
Transaction adalah kumpulan operasi yaangmelakukan sebuah fungsi yang utuh dalamsuatu aplikasi databaseTransaction-management componentmemastikan database selalu dalm keadaanyang konsisten meskipun terjadi kegagalansistem (kegagalan sumber listrik atau sistemoperasi) dan kegagalan transaksi
Concurrency-control manager mengendalikaninteraksi antara transakasi-transaksi yang berjalan bersamaan, untuk menjaminkonsistensi dalam database
Istilah-Istilah(lanjutan )
Storage manager adalah modul program yang menyediakan antarmuka antara data tersimpan dalam database dan program aplikasi serta query yang dikirim ke sistemStorage manager bertanggung jawabterhadap:
Interaksi dengan file manager Efisiensi penyimpanan, pengambilan, danpengubahan data
36
Application Architectures
Two-tier architecture: Contoh - program klien menggunakanODBC/JDBC untuk berkomunikasi dengan databaseThree-tier architecture: Contoh aplikasi berbasis Web
Contoh Two-tier Architecture
ProgramVisual BASIC
DatabaseServer
MySQL
MyODBC