600 likes | 950 Views
Desain Database. Pertemuan Minggu Ke- 2. Kompetensi Khusus. Mahasiswa mampu menjelaskan DBLC , aktivitas paralel antara SDLC dan DBLC , dan strategi desain database (C2). Sistem Informasi.
E N D
Desain Database Pertemuan Minggu Ke-2
Kompetensi Khusus Mahasiswa mampu menjelaskan DBLC, aktivitas paralel antara SDLC dan DBLC, dan strategi desain database (C2)
Sistem Informasi • Database merupakanbagiandarisisteminformasi, yang digunakanuntukpengumpulan, penyimpanan, danpengambilan data. • Sisteminformasimembantumerubah data menjadiinformasi, sertamengatur data daninformasi. • Kinerjadarisisteminformasibergantungpada: • Desain & implementasi database • Desain & implementasiaplikasi • Proseduradministratif
Pengembangan Database • Tujuanutamadalamdesain database adalahuntukmembuat model database yang lengkap, normal (tidakredundan), danterintegrasipenuhantarakonseptual, logis, danfisik. • Tahapimplementasimencakuppembuatanstrukturpenyimpanan database, memasukkan data kedalam database, danmanajemen data.
Studi Awal Database • Bertujuan untuk: • Menganalisa situasi perusahaan • Mendefinisikan masalah • Mendefinisikan tujuan • Mendefinisikan ruang lingkup & batasan
Menganalisasituasiperusahaan • Situasiperusahaanmendeskripsikankondisiumumdimanaperusahaanberoperasi, strukturorganisasi, & misi. • Desainer database harusmempelajarikomponenoperasionalperusahaan, fungsionalitas & interaksinya. • Beberapamasalah yang harusdiatasi: • Desainharusmemenuhikebutuhanoperasional yang dibuatdarimisiperusahaan. • Mendefinisikanaliraninformasi, laporan, format query, dsbdenganmengetahuisiapapemegangkekuasaan & strukturpelaporannya.
Mendefinisikanmasalah • End user perusahaanbiasanyatidakdapatmendeskripsikansecaratepatoperasiperusahaansecarakeseluruhanataumengidentifikasimasalahsebenarnya yang munculselamaoperasiperusahaan. • Biasanyapandanganmanajerialterhadapoperasiperusahaan & masalahnyaberbedadari end user yang melakukanpekerjaanrutin. • Selama proses ini, desainermengumpulkandeskripsimasalah yang sangatluas, yang diikutiolehmasukandariend user. • Desainer database selanjutnyamelakukanpenyelidikanuntukmemperolehinformasitambahan yang dapatmendefinisikanmasalahdalamkerangka yang lebihbesardarioperasionalperusahaan. • Pentinguntukmenemukanjawaban yang tepat, khususnya yang berkaitandenganhubunganoperasionalantar unit bisnis. Jikasistem yang diusulkandapatmenyelesaikanmasalahsuatudivisitetapimemperburukmasalah di divisi lain, makatidakbanyakkemajuan yang dibuat.
Mendefinisikantujuan • Sistem database yang diajukanharusdirancanguntukmenyelesaikan paling tidakmasalahutama yang teridentifikasiselama proses penemuanmasalah. • Desainerharusmemastikantujuandatabasenyasesuaidengan yang dibayangkanoleh end user. • Berikutbeberapapertanyaan yang harusdiajukan: • Apatujuanawaldarisistem yang diusulkan? • Apakahsistemperlumemilikiantarmukadengansistem lain yang sudahadaataumendatangdalamperusahaan? • Apakahsistemakanberbagi data dengansistematau user lain?
Menentukanruanglingkup & batasan • Ruanglingkupsistemmenentukansejauhmanadesainsesuaidengankebutuhanoperasional. Apakahdesain database mencakupseluruhperusahaan, satuataulebihdepartemendalamperusahaan, atausatuataulebihfungsidalamsatudepartemen? Pengetahuanruanglingkupmembantumendefinisikanstruktur data yang dibutuhkan, tipedanjumlahentitas, ukuranfisik database, dsb. • Batasanada di luarsistem, bisaberupawaktu, anggaran, software & hardware yang ada. Idealnya, desainerdapatmemilih hardware & software yang paling baikdalammencapaisasaransistem. Nyatanya, pemilihan software adalahaspekpentingdari SDLC. Tetapinyatanya, sistemharusdirancangsesuai hardware yang ada. Olehkarenaitu, desainerbertugasuntukmerancangsistemsebaikmungkindalambatasantersebut. • Terkadangdefinisimasalah & tujuanharusdiperbaikiuntukmemenuhiruanglingkup & batasansistem.
Desain Database • Konsentrasiterdapatpadakarakteristik data yang dibutuhkanuntukmembangun model database. • Terdapat 2 pandanganterhadap data dalamsistem: • Pandanganbisnisdari data sebagaisumberinformasi. • Pandangandesainerterhadapstruktur data, akses, & aktivitas yang diperlukanuntukmerubah data menjadiinformasi.
Beberapapointerkaitprosedur yang dibutuhkanuntukmenyelesaikantahapdesaindalam DBLC: • Proses desain database berkaitandengananalisis & desainsistemyang lebihbesar. Komponen data hanyamerupakansatuelemendarisisteminformasi yang lebihbesar. • Analisatau programmer sistembertanggungjawabdalammerancangkomponensistem lain. Aktivitasnyamembuatprosedur yang akanmembantutransformasi data dalam database menjadiinformasi. • Desain database tidakmengikuti proses sekuensial, melainkanmerupakan proses iteratifyang menyediakanumpanbaliksecaraberkelanjutan yang dirancanguntukmelacaklangkahsebelumnya.
Proses desain database terbagimenjadi 3 tahap: desainkonseptual, logis, & fisik, ditambahkeputusanpemilihan DBMS, yang sangatkritisuntukmenentukantipedesainlogis & fisik yang akandibuat. • Proses desaindimulaidengandesainkonseptual yang berlanjutkedesainlogis & fisik. Padatiaptahap, detail lebihmengenaidesain model data ditentukan & didokumentasikan. • Desainkonseptualsebagaikeseluruhan data yang dilihatoleh end user, desainlogissebagai data yang dilihatoleh DBMS, & desainfisiksebagai data yang dilihatolehalatmanajemenpenyimpanansistemoperasi.
Implementasi & Loading • Output dari tahap desain database adalah serangkaian instruksi yang berisi detail pembuatan tabel, atribut, domain, view, indeks, batasan keamanan, & pedoman penyimpanan & kinerja. • Pada tahap ini, semua spesifikasi desain tersebut diimplementasi.
Instal DBMS • Langkahinidiperlukanhanyaketikadibutuhkan instance DBMS yang baruuntuksistem. • DBMS dapatdiinstalpada server baruatau yang sudahada. • Virtualisasiadalahteknik yang menciptakanrepresentasilogisdarisumberdayakomputasi yang independendarisumberdayakomputasifisik. Teknikinibanyakdigunakandalam area komputasi, sepertipembuatan server virtual, penyimpanan virtual, & jaringanpribadi virtual (VPN). • Dalamlingkungan database, virtualisasi database mengacupadainstalasidari instance DBMS yang barupada server virtual yang berjalanpada hardware bersama (shared).
Membuatdatabase • Diawalidenganpembuatan database dantabelmenggunakan DDL. • View sebenarnyatidakdibutuhkanuntukakses database dalamlingkunganrelasional, tetapi view diperlukandarisisikeamanan. • Memasukkanataumengkonversi data • Setelah database dibuat, data harusdimasukkankedalamtabel database melaluimigrasidariversisistemsebelumnya. Biasanya data harusdikumpulkandaribeberapasumber. • Skenarioterbaiknyaadalahsemua data beradadalam database relasionalsehinggadapatditransferlangsungke database baru. Nyatanyatidakdemikian, sehinggadibutuhkan program konversiuntukmemformatkembali data sebelumdiimporke database baru. • Skenarioterburuknyaadalah data harusdiinputsecara manual kedalam database. • Setelah data berhasildipindahkanke database baru, DBA bekerjadenganpengembangaplikasiuntukmenguji & mengevaluasi database.
Pengujian & Evaluasi • Padatahapini, DBA mengujidanmenyetel database untukmemastikannyabekerjasesuai yang diharapkan. Faseiniterjadidalamhubungannyadenganpemrogramanaplikasi. • Programmer menggunakan tool database untukmembuatprototipeaplikasiselamapengkodeanprogram. Alatseperti report generators, screen painters, & menu generators bergunakhususnyauntuk programmer aplikasi.
Menguji database • DBA menguji database untukmemastikanintegritas & keamanan data. • Integritas data diberlakukanoleh DBMS melaluipenggunaanaturan primary & foreign key. DBMS jugamendukungpembuatan domain constraints & triggers. Pengujiandilakukanuntukmemastikanbatasantersebuttelahdirancang & diimplementasidenganbaik. • Pengujianjugadilakukanpadahakakses user sertaprivasi & keamanan data.
Beberapahalberikut yang harusdiuji: • Keamananfisik hanyapersonel yang diotorisasi yang memilikiaksesfisikke area tertentu. Implementasinyatergantungpadatipe database. • Keamanan password memberikanhakakseske user yang terotorisasi& berlakupadasaat login di tingkatsistemoperasi. • Hakakses dibuatmelaluipenggunaan software database. Hakaksesdapatmembatasioperasi (CREATE, UPDATE, DELETE, dsb) padaobjek yang ditentukanseperti database, tabel, view, query, & laporan. • Jejak audit disediakanoleh DBMS untukmemeriksapelanggaranakses. • Enkripsi data menampilkan data yang tidakbergunabagi user yang tidakterotorisasi yang mungkinmelanggarbeberapalapisankeamanan database. • Diskless workstation user dapatmengakses database tanpadapatmengunduhinformasidarikomputernya.
Menyeteldatabase • Kinerja database sulitdievaluasikarenatidakadastandarpengukurantetapiinimerupakanfaktorpentingdalamimplementasi database. • Kebutuhankinerja database bergantungpadasistem, misalnyasistem yang mendukungtransaksicepatmembutuhkan database yang menyediakankinerja superior selamatingginyatransaksi insert, update, & delete. Sistem lain seperti DSS membutuhkankinerja superior untukpengambilan data yang rumit. • Banyakfaktor yang dapatmempengaruhikinerja database termasuk hardware & software dimana database beroperasi. Selainitu, karakteristik & volume data turutmempengaruhikinerja database. Faktorpentinglainnyamencakup parameter konfigurasisistem & database sepertipenempatan data, definisijalurakses, penggunaanindeks, & ukuran buffer.
Evaluasi database & program aplikasinya • Pengujian & evaluasikomponen individual harusberujungpadaberbagaiujisistem yang lebihluasuntukmemastikanbahwasemuakomponenberinteraksidenganbaiksesuaikebutuhan user. • Padatahapini, masalahintegrasi & rencana deployment diperhalus, pelatihan user dilakukan, & dokumentasisistemdifinalisasi. • Untukmemastikantidakterjadinyakehilangan data makarencana backup & restore harusdiuji. Vendor database mendukungpenggunaankomponen fault-tolerant seperti UPS, penyimpanan RAID, clustered servers, & teknologireplikasi data untukmemastikanoperasiberkelanjutandari database dalamkasuskegagalan hardware. Walaupundemikian, fungsi backup & restore merupakanbagian yang sangatpentingdarioperasi database sehari-hari. Beberapa DBMS menyediakanfungsibagi DBA untukmenjadwalkan backup database secaraotomatiskealatpenyimpananseperti disk, DVD, tape, & penyimpanan online.
Backup database dapatdilakukanpadabeberapatingkat: • Full backup, atau dump membackupsemuaobjek database. • Differential backup hanyamembackupobjek yang pernahdimodifikasisejak full backup terakhir. • Transaction log backup hanyamembackupoperasi log transaksi yang tidakterdapatdalam backup database sebelumnya,tidakadaobjek database lain yang dibackup. • Backup database disimpandalamlokasiaman, biasanyadalamgedung yang berbedadari database itusendiri, & dilindungidaribahayasepertiapi, pencurian, banjir, & ancamanlainnya. • Pemulihan database biasanyadiawalidenganmenentukantipe & tingkatpemulihan yang dibutuhkan. • Padaakhirtahapini, database menyelesaikan proses iteratifdaripengujian, evaluasi, & modifikasi yang berkelanjutansampaisistemdinilaisiapmemasukitahapoperasional.
Operasi • Awaltahapoperasionalmemulai proses evolusisistem. Segerasetelahsemua end user memasukitahapoperasi, masalah yang tidakdapatdiramalkanselamatahappengujianmunculkepermukaan. • Beberapamasalahcukupseriussehinggamembutuhkanrespondarurat, sementara yang lain hanyaberupagangguan minor. • Contoh: jika database diimplementasidengan web, volume transaksimungkindapatmenurunkankinerjasistem. Dalamkasusini, desainerharusmengidentifikasisumber bottleneck & membuatsolusialternatif. Solusitersebutdapatberupa software load balancing untukmendistribusikantransaksikebeberapakomputer, meningkatkan cache yang tersediauntuk DBMS, dsb.
Pemeliharaan & Evolusi • DBA melakukanaktivitaspemeliharaanrutindalam database yang mencakup: • Pemeliharaanpreventif (backup) • Pemeliharaankorektif (pemulihan) • Pemeliharaanadaptif (meningkatkankinerja, menambahentitas & atribut, dsb) • Pemberianakses & pemeliharaanuntuk user baru & lama • Pembuatanstatistikakses database untukmeningkatkanefisiensi & kegunaan audit sistem & untukmemantaukinerjasistem • Audit keamananberkalaberdasarkanstatistik yang dihasilkansistem • Ringkasanpenggunaansistembulanan, tiap 3 bulan, atautahunanuntuktujuan billing internal atau budgeting • Perubahanmudahdiimplementasihanyaketikadesain database fleksibel & semuadokumentasitersedia. Akhirnyabahkan database yang dirancangdenganbaiktidakselamanyamampumengikutiperubahan yang evolusioner, sehingga proses DBLC dimulailagi.
Desain Konseptual • Tahappertamadalam proses desain database. • Bertujuanuntukmerancang database yang independendari software database & detail fisik. • Output dari proses iniadalah model data konseptual yang mendeskripsikanentitas data utama, atribut, hubungan, & batasandari domain yang diberikan. Biasanyaterdiridarirepresentasigrafisbersamaandengandeskripsitekstualdarielemen data utama, hubungan, & batasan. • Semuaelemen data yang dibutuhkanolehtransaksi database harusdidefinisikandalam model, & semuaelemen data yang didefinisikandalam model harusdigunakan paling sedikitolehsatutransaksi database. • Fokustidakhanyapadakebutuhan data sekarangtetapijugakebutuhan data mendatang. Desain database harusmemungkinkanmodifikasi & penambahan di masamendatang.
Langkah dalam desain konseptual: • Analisis & kebutuhan data • Pemodelan hubungan entitas & normalisasi • Verifikasi model data • Desain database terdistribusi
Analisis & kebutuhan data • Langkahpertamaadalahuntukmenemukankarakteristikdarielemen data denganfokus: • Kebutuhaninformasi: Jenisinformasiapa yang dibutuhkan? Output/ laporan/ query apa yang harusdihasilkanolehsistem?Informasiapa yang dihasilkansistemberjalan & sampaisejauhmanainformasitersebutmemadai? • Penggunainformasi: Siapapenggunainformasi?Bagaimanainformasidigunakan? Data apa yang dilihatoleh end user? • Sumberinformasi: Dimanainformasidapatditemukan?Bagaimanainformasiakandiekstraksaatditemukan? • Susunaninformasi: Elemen data apa yang dibutuhkanuntukmenghasilkaninformasi?Atribut data, hubunganantar data, volume data? Seberapasering data digunakan?Transformasi data yang akandigunakanuntukmenghasilkaninformasi yang dibutuhkan?
Desainermemperolehjawabanuntukpertanyaan di atasdariberbagaisumberuntukmengkompilasiinformasi yang dibutuhkan: • Membangun & mengumpulkan view data end-user • Mengamatisistemberjalansecaralangsung • Berinteraksidengankelompokdesainsistem • Dari sudutpandang database, kumpulan data menjadiberartihanyaketikaaturanbisnisdidefinisikan. Aturanbisnisditurunkandarideskripsioperasi format, yaitudokumen yang menyediakandeskripsiaktivitas yang tepat, up-to-date, & menyeluruh yang mendefinisikanlingkunganoperasiperusahaan. • Sumberinformasiuntukdeskripsioperasi & aturanbisnisadalahmanajerperusahaan, pembuatkebijakan, manajerdivisi, & dokumentasitertulissepertiprosedurperusahaan, standar, & manual operasi. Untukmemperolehaturanbisnisdengancepatadalahdenganmewawancarai end user tetapimasing-masing end user mungkinmemilikipersepsi yang berbeda, sehinggadesainerbertugasuntukmerekonsiliasiperbedaan & memverifikasihasilrekonsiliasiuntukmemastikanaturanbisnissesuai & akurat.
Aturan bisnis menghasilkan beberapa manfaat penting dalam desain sistem baru: • Membantu standarisasi pendangan data perusahaan. • Membentuk alat komunikasi antara user & desainer. • Memperbolehkan desainer untuk memahami sifat, peran, & ruang lingkup data. • Memperbolehkan desainer untuk memahami proses bisnis. • Memperbolehkan desainer untuk membangun aturan partisipasi hubungan yang tepat & batasan foreign key.
Pemodelanhubunganentitas & normalisasi • Sebelummembuat model ER, desainerharusmendiskusikanmengenaistandar yang akandigunakandalamdokumentasidesain, mencakuppenggunaan diagram & simbol, jenistulisan, layout, dsb. • Berikutlangkahmembangun model konseptualmenggunakan diagram ER: • Identifikasi, analisis, & perbaikanaturanbisnis. • Identifikasientitasutamamenggunakanhasillangkah 1. • Definisikanhubunganantarentitas, menggunakanhasillangkah 1 &2. • Definisikanatribut, primary key, & foreign key untuktiapentitas. • Normalisasientitas. • Lengkapi diagram ER awal. • Validasi model ER dengankebutuhaninformasi end user & pemrosesan. • Modifikasi model ER menggunakanhasillangkah 7.
Selama proses pemodelan ER, desainerharus: • Mendefinisikanentitas, atribut, primary key, & foreign key. • Membuatkeputusanmengenaipenambahanatribut primary key baruuntukmemuaskankebutuhan end-user & pemrosesan. • Membuatkeputusanmengenaiperlakuanatribut composite & multivalued. • Membuatkeputusanmengenaipenambahanatributturunanuntukmemuaskankebutuhanpemrosesan. • Membuatkeputusanmengenaiposisi foreign key dalamhubungan 1:1. • Hindarihubungan ternary yang tidakperlu. • Gambar diagram ER. • Normalisasientitas. • Masukkansemuadefinisielemen data dalamkamus data. • Membuatkeputusanmengenaistandarpenamaan. • Standarpenamaanpenting agar timpengembanganmemilikiacuan yang sama.
Verifikasi model data • Merupakantahap paling pentingdimana model ER diverifikasidengan proses sistem yang diusulkan. • Verifikasidilakukandenganpengujian model terhadap: • Pandangan data end-user • Semuatransaksi yang dibutuhkan: operasi SELECT, INSERT, UPDATE, & DELETE • Hakakses & keamanan • Kebutuhan data & batasanbisnis • Perancangan database dipecahmenjadikomponenutama yang dinamakanmodul. Tiapmodulmenanganifungsibisnistertentudandidukungolehpecahan ER yang merupakan subset ataupecahandari model ER perusahaan. • Pecahan ER dapatmengakibatkanterjadinya overlapping, duplikasi, ataukonflikpada view dari data yang sama; & tidakdapatmendukungsemua proses dalammodulsistem
Langkah proses verifikasi model ER: • Identifikasi entitas utama model ER • Identifikasi tiap modul & komponennya • Identifikasi kebutuhan transaksi tiap modul • Internal: updates/ inserts/ deletes/ queries/ reports • Eksternal: module interfaces • Verifikasi semua proses dengan kebutuhan sistem • Lakukan semua perubahan yang disarankan di langkah 4 • Ulangi langkah 2-5 untuk semua modul
Desain database terdistribusi • Beberapa perusahaan membutuhkan database terdistribusi yang tersebar di beberapa lokasi geografi. Proses yang mengakses database juga bervariasi antar lokasi. • Jika data & proses akan didistribusikan maka pecahan database akan berada di beberapa lokasi fisik. Pecahan database dapat berupa subset dari baris atau kolom dari satu atau lebih tabel. • Strategi alokasi menentukan bagaimana membagi database & dimana tiap pecahan harus disimpan.
Pemilihan Software DBMS • Beberapafaktor yang mempengaruhikeputusanmembeli software: • Biaya: hargabeli, biayapemeliharaan, operasional, lisensi, instalasi, pelatihan, & konversi. • Fitur & tool DBMS: contoh tool DBMS yaitu QBE (Query by Example), screen painters, report generators, application generators, & data dictionaries. Fasilitas administrator database, query, kemudahanpemakaian, kinerja, keamanan, kontrolkonkurensi, pemrosesantransaksi, & dukunganpihakketigajugamempengaruhipemilihan software DBMS. • Model: hirarki, jaringan, relasional, atauberorientasiobjek. • Portabilitas: portabel di semua platform, sistem, & bahasa. • Kebutuhan hardware DBMS: prosesor, RAM, kapasitaspenyimpanan, dsb.
Desain Logis • Tujuandaridesainlogisadalahuntukmerancang database perusahaanberdasarkan model data tertentutetapiindependendari detail tingkatfisik. • Desainlogismembutuhkansemuaobjekdalam model konseptualdipetakankebentukkhusus yang digunakanoleh model database yang dipilih. • Berikutlangkahdesainlogis: • Memetakan model konseptualkekomponen model logis. • Memvalidasi model logismenggunakannormalisasi. • Memvalidasi integrity constraint pada model logis. • Memvalidasi model logisdengankebutuhan user.
Memetakan model konseptual ke model logis • Model logis yang digunakan adalah model relasional karena merupakan model yang paling banyak digunakan. • Berikut aktivitas yang dilakukan: • Memetakan entitas yang kuat • Memetakan hubungan supertype/ subtype • Memetakan entitas yang lemah • Memetakan hubungan binary • Memetakan hubungan tingkat tinggi
Validasi model logis menggunakan normalisasi • Desain logis harus berisi hanya tabel yang sudah normal (3NF). • Proses pemetaan dari model konseptual ke model logis akan mengungkap beberapa atribut baru atau multivalued atau composite. • Desain database merupakan proses iteratif. Normalisasi akan dilakukan pada beberapa tahapan berbeda dalam proses desain. Setiap kali suatu tahap diulangi, model menjadi lebih baik.
Validasi integrity constraint pada model logis • Tiap constraint yang teridentifikasiharusdipetakanke constraint model relasional. • Hakakses database jugaditentukanselamatahapdesainlogis. View dapatmembantumembatasiakses user kesatuataulebih data. • Sebagaitambahan, jikamenggunakandesain database terdistribusi, data dapatdisimpanpadabeberapalokasi, & tiaplokasimungkinmemilikibatasankeamanan yang berbeda. • Validasi model logisdengankebutuhan user • Model logisdivalidasiterhadapsemuakebutuhan data end-user, transaksi, & keamanan. • Tahapinimerupakanpersiapanuntukmendefinisikankebutuhanfisik agar sistemdapatberfungsidalamlingkungan DBMS/ hardware yang dipilih.
Desain Fisik • Desainfisikadalah proses menentukanorganisasipenyimpanan data & karakteristikakses data dari database untukmemastikanintegritas, keamanan, & kinerja. • Desainfisikdapatmenjadipekerjaanteknis yang bukanhanyamempengaruhiaksesibilitas data dalamalatpenyimpanantetapijugakinerjasistem. • Langkahdalamdesainfisik: • Mendefinisikanorganisasipenyimpanan data • Mendefinisikanukuranintegritas & keamanan • Menentukanukurankinerja
Mendefinisikan organisasi penyimpanan data • Desainer harus menentukan volume data yang akan dikelola & pola penggunaan data, kemudian dilanjutkan dengan langkah berikut: • Menentukan lokasi & organisasi penyimpanan fisik untuk tiap tabel. • Mengidentifikasi indeks & jenis indeks untuk tiap tabel. • Mengidentifikasi view & jenis view untuk tiap tabel.
Menentukan ukuran integritas & keamanan • Sebelum user dapat mengakses data dalam database, user harus dikonfirmasi dengan benar. • Berikut 2 hal yang harus dilakukan desainer: • Mendefinisikan user, kelompok user & perannya. • Desainer harus mengetahui berbagai jenis user & kelompok user agar dapat memberlakukan keamanan database. Kebanyakan DBMS mendukung penggunaan database role. Database role adalah seperangkat hak database yang diberikan ke user atau kelompok. • Menentukan kontrol keamanan. • DBMS juga memperbolehkan administrator untuk menentukan hak akses tertentu pada objek database ke user atau kelompok user.
Menentukan ukuran kinerja • Desain fisik menjadi lebih rumit ketika data terdistribusi ke beberapa lokasi karena kinerja dipengaruhi oleh throughput media komunikasi. • Kinerja database relasional dipengaruhi oleh properti penyimpanan fisik seperti waktu pencarian, ukuran sector & block (page), ukuran buffer pool, & jumlah disk platters & read/ write heads. • Faktor seperti indeks juga cukup berpengaruh terhadap kinerja database relasional, yaitu kecepatan & efisiensi akses data.
Strategi Desain Database • Terdapat 2 pendekatandesain database: • Desain top-down diawalidenganidentifikasi set data kemudianmendefinisikanelemen data untuktiap set tersebut. Proses inimelibatkanidentifikasientitaskemudianmenentukanatributdaritiapentitas. Lebihsesuaiuntukjumlah, variasi, & kompleksitasentitas, relasi, & transaksi yang besar. • Desain bottom-up diawalidenganidentifikasielemen data (item) kemudianmengelompokkannyakedalam set data. Dengan kata lain, definisikanatributterlebihdulu, kemudianmengelompokkannyamenjadientitas. Lebihsesuaiuntuk database kecildengansedikitentitas, atribut, relasi, & transaksi.