Summary

This document discusses database implementation, including file-based systems and database management systems (DBMS). It details the stages of database development, including design, analysis, and implementation, and the importance of a well-structured database in modern information systems.

Full Transcript

Pengelolaan Data BAB X. IMPLEMENTASI DATABASE 10.1. Uraian Materi Pada pembahasan sebelumnya, telah dijelaskan mengenai strategi pengelolaan data dan pengelolaan informasi. Data dan informasi merupakan sesuatu yang berbeda namu...

Pengelolaan Data BAB X. IMPLEMENTASI DATABASE 10.1. Uraian Materi Pada pembahasan sebelumnya, telah dijelaskan mengenai strategi pengelolaan data dan pengelolaan informasi. Data dan informasi merupakan sesuatu yang berbeda namun saling berhubugan. Data merupakan fakta dari sebuah kejadian atau keadaan yang dapat disimpan ke dalam sebuah media berupa tulisan, gambar, suara, maupun video. Sedangkan informasi merupakan hasil keluaran dari data yang sudah dilakukan proses pengelolaan, pengolahan, dan penyajian untuk dimanfaatkan sebagai bahan dalam pengambilan keputusan atua kebijakan. Kebijakan yang tepat tentu tidak lepas dari peran pengelolaan data dari sebuah sistem informasi yang baik dan benar. Sekarang ini, database merupakan pusat dari sebagian besar sistem informasi dan aplikasi yang biasa kita gunakan dalam bekerja maupun dalam beraktivitas. Sangatlah penting bagi kita untuk melakukan implementasi database dengan metode yang sesuai. a. Pendekatan File-Based dan Pendekatan Database Dikutip dari Connoly dan Begg (Database Systems, A Practical Approach to Design, Implementation, and Management), file-based system adalah kumpulan dari aplikasi yang memberikan layanan kepada pengguna dimana setiap aplikasi menentukan dan mengelola datanya masing-masing. File-based system digunakan untuk mengkomputerisasi isian data manual yang berupa file fisik. Pendekatan ini sangat cocok untuk data yang disimpan masih berukuran kecil atau masih dalam lingkup satuan unit kerja tersendiri. Karena setiap unit kerja mempunyai aplikasi dan pengolahan datanya masing-masing, menyebabkan pendekatan file-based mempunyai beberapa kekurangan yaitu: 1. Data yang terpisah dan terisolasi antar masing-masing aplikasi yang berhubungan. 2. Duplikasi data terjadi karena setiap aplikasi bisa saja membutuhkan data yang sama namun file dikelola oleh masing-masing aplikasi. 78 Pengelolaan Data 3. Depedensi data menjadi hal yang tidak menyenangkan bagi pengembang aplikasi karena perubahan struktur dari sebuah file akan menyebabkan aplikasi lain yang menggunakan file tersebut perlu melakukan update pada aplikasinya. 4. Format file yang incompatible apabila setiap aplikasi menggunakan bahasa pemrograman aplikasi yang berbeda-beda. 5. Query data dari aplikasi yang berbeda-beda menyebabkan tidak ada kontrol terhadap data sehingga keamanan sangatlah rentan. Limitasi yang telah dijelaskan sebelumnya dapat diatasi dengan pendekatan database yang memanfaatkan Database Management System (DBMS). Database dapat diartikan sebagai kumpulan data yang saling berhubungan, diorganisasikan secara sistematik berikut dengan deskripsi data tersebut, dan dapat diakses secara bersama dengan tujuan untuk memenuhi kebutuhan informasi bagi suatu organisasi. b. Alur Pengembangan Database Menurut Howard Gould dalam bukunya Database Design and Implementation, alur pengembangan database dalam pengembangan sebuah aplikasi dapat dibagi ke dalam beberapa tahapan sebagai berikut: 1. Perancangan Dalam sebuah alur, secara umum diawali dengan perancangan yaitu untuk menentukan strategi dan rancangan sehingga dapat mengidentifikasi kebutuhan dan cakupan data dari sebuah sistem. 2. Analisis Kebutuhan Kebutuhan pengguna atau stakeholder harus diidentifikasi dan dikemukakan untuk menuntun terbentuknya sistem yang sesuai dengan kebutuhan. Hal ini akan melibatkan analisis konseptual dari sebuah database. 3. Desain Dalam tahap desain akan melibatkan conceptual design, logical design, dan physical design. Bagian terpenting dari tahapan desain adalah untuk memahami dan mengimplementasikan model data yang tepat agar dapat lanjut ke bagian pengembangan. 79 Pengelolaan Data 4. Pengembangan Pembuatan struktur database menggunakan Database Management Systems (DBMS) biasanya melibatkan tahapan pengembangan aplikasi yang menghasilkan user interface dari sebuah form maupun dashboard yang mempunyai kontrol dalam akses data dari dan menuju database. 5. Implementasi Ketika sistem sudah dikembangan maka akan dilakukan deploy dan dapat dilakukan testing sehingga dapat mengetahui kemampuan dari sebuah database untuk melayani aplikasi. 6. Perawatan Selama sistem selalu digunakan, akan muncul kebutuhan-kebutuhan baru yang membutuhkan maintenance sehingga alur pengembangan akan dimulai dari awal kembali. Conceptual Design Entity Relational Diagram Logical Design Normalisasi dan Validasi Transaksi Physical Design Indeks dan Organisasi File DBMS Gambar 12. Tahapan Disain Database Dalam mendesain sebuah database yang baik, kita perlu memahami lebih detail mengenai kebutuhan organisasi. Conceptual design akan membangun sebuah model data secara konsep yang mempresentasikan bagaimana data akan memenuhi kebutuhan organisasi. Konsep yang dihasilkan tidak bergantung pada perangkat keras maupun perangkat lunak yang digunakan. Hasil dari conceptual design ini 80 Pengelolaan Data bisa berupa Entity Relational Diagram (ERD) yang mempresentasikan model data dari sebuah organisasi ke dalam bentuk entitas, atribut, dan relasi. Dalam buku Database Design and Implementation, Howart Gould menjelaskan bahwa ERD menampilkan entitas yang mempunyai atribut data yang dibutuhkan oleh sistem dan antar entitas dihubungkan oleh sebuah relasi yang menjelaskan jenis hubungan tersebut. Gambar 13. Contoh ERD Kegiatan Diklat Setelah ERD terbentuk, langkah selanjutnya adalah masuk ke tahap Logical Design. Dalam tahap ini, ERD akan diubah menjadi sebuah bentuk model data logic yang efisien dan menjaga integritas data sehingga dapat diterapkan ke berbagai perangkat lunak sistem database. ERD dilakukan normalisasi untuk memastikan bahwa tidak ada data yang janggal seperti redundansi data dan seluruh entitas telah terhubung dengan relasi yang tepat beserta kardinalitasnya. Hasil dari tahap ini adalah berupa relasional model yang merupakan sekumpulan tabel yang efisien yang siap diimplementasikan pada tahap akhir. Selanjutnya adalah Physical Design yaitu proses menghasilkan spesifikasi implementasi database pada media penyimpanan komputer. Perancangan ini menggambarkan tabel dasar, organisasi file, dan penataan indeks dengan tujuan untuk mencapai efisiensi pengaksesan dan keamanan data yang akan diimplementasikan pada DBMS tertentu. c. Database Management System (DBMS) DBMS adalah sebuah perangkat lunak yang memungkinan pengguna untuk mendefinisikan, membuat, mengolah, dan mengontrol akses dari sebuah database (Connoly dan Begg, Database Systems, A Practical Approach to Design, Implementation, and Management). DBMS berperan penting dalam sebuah aplikasi karena menghubungkan aplikasi dengan database untuk menyimpan dan mengambil data. Kemampuan untuk mengelola sebuah database disebut dengan 81 Pengelolaan Data query dan bahasa yang digunakan dalam sistem database adalah SQL (Structured Query Language). Secara umum DBMS mempunyai dua peran penting yaitu sebagai Data Definition Language (DDL) dan Data Manipulation Language (DML). DDL merupakan bagian dari SQL yang digunakan untuk mendefinisikan tabel, atribut, relasi, domain, integritas, view, dan tingkat akses pada sebuah database. DML adalah bagian dari SQL yang digunakan untuk mendukung operasi database yang meliputi penambahan, data pemanggilan data, perubahan data, dan penghapusan data (CRUD – Create, Read, Update, Delete). d. Monitoring dan Tuning System Semakin efisien suatu database, maka semakin bagus kinerja dari database. Dijelaskan sebelumnya bahwa tujuan utama pada physical design dalam pengembangan database adalah untuk menyimpan dan mengambil data seefisien mungkin. Dikutip dari Connoly dan Begg (Database Systems, A Practical Approach to Design, Implementation, and Management), ada beberapa indikator yang bisa digunakan untuk menghitung efisiensi dari sebuah database yaitu sebagai berikut: Arus transaksi database yang dihasilkan. Arus transaksi yang dimaksud adalah besaran jumlah transaksi data yang dapat diproses dengan berhasil dalam jangka waktu tertentu. Semakin besar jumlah transaksi data yang berhasil semakin efisien suatu database dalam melayani permintaan data. Waktu merespon yang diperlukan. Waktu meresepon adalah waktu yang digunakan untuk memproses data dari satu permintaan diterima hingga data berhasil dikirimkan kembali dengan berhasil. Dibutuhkan waktu merespon yang cepat untuk melayani suatu permintaan dari pengguna. Namun dalam implementasinya, ada beberapa faktor yang mempengaruhi kecepatan transaksi data yang berada di luar jangkauan atau kontrol seorang perancang database. Contohnya adalah pemuatan sistem atau waktu komunikasi yang dapat dikurangi dengan cara: i. Mengurangi waktu tunggu pada I/O disk; ii. Mengurangi jumlah waktu yang membutuhkan sumber daya; 82 Pengelolaan Data iii. Menggunakan komponen yang lebih cepat. Disk penyimpanan data. Ini adalah jumlah ruang disk yang diperlukan untuk menyimpan file pada database. Perancang database mungkin ingin meminimalkan jumlah penyimpanan disk yang digunakan untuk mempercepat proses query. Setelah desain diimplementasikan, diperlukan pemantauan sistem dan tuning untuk melihat performa dari sebuah database. Beberapa DBMS memberikan layanan atau fitur untuk melakukan monitoring dan tuning database. Banyak manfaat yang dapat diambil dari tuning database yaitu: Menghindari pengadaan perangkat keras tambahan; Mengurangi konfigurasi perangkat keras; Mempercepat waktu merespon dan memperbesar arus transaksi. Untuk melakukan tuning dari sistem database, harus diperhatikan bahwa beberapa komponen perangkat keras mempengaruhi kinerja dari sebuah database. Beberapa komponen tersebut adalah main memory, control processcor unit, hardisk storage, dan jaringan. e. Taksonomi dan Ontologi Data Implementasi Relational DBMS memang sangat memudahkan karena memberikan tampilan dalam bentuk tabel yang berupa kolom dan baris sehingga mudah dipahami dan dibaca oleh pengguna awam. Namun dalam praktiknya data yang kita kelola tidak selalu disimpan langsung ke dalam model data relational. Karenanya kita perlu memahami bagaimana cara mengakses, pengambilan, penyimpanan, dan penggunaan data dan informasi yang disimpan di luar database relasional. Data dan informasi yang didapat tidak memiliki struktur yang jelas sehingga perlu diproses agar dapat dibaca lebih mudah dengan cara mengambil kosakata yang bersinggungan (Controlled Vocabulary). Dikutip dari DAMA-DMBOK Controlled Vocabulary adalah daftar istilah yang diizinkan secara eksplisit yang digunakan untuk mengindeks, mengkategorikan, menandai, menyortir, dan mengambil konten melalui penelusuran dan pencarian. Controlled Vocabulary diperlukan untuk mengatur dokumen, catatan, dan konten secara sistematis. Kosakata tersebut memiliki kompleksitas mulai dari daftar sederhana atau daftar pilihan, seperti taksonomi dan ontologi. Taksonomi adalah struktur penamaan yang berisi Controlled Vocabulary yang digunakan untuk menguraikan topik dan mengaktifkan sistem navigasi dan pencarian. Taksonomi membantu mengurangi ambiguitas dan mengontrol sinonim. Taksonomi memiliki beberapa struktur yaitu sebagai berikut: Flat Taxonomy 83 Pengelolaan Data Flat Taxonomy datar tidak memiliki hubungan di antara kumpulan kategori yang dikontrol. Semua kategori sama sehingga mirip dengan isian daftar misalnya daftar negara, daftar kota. Hierarchical Taxonomy Hierarchical Taxonomy adalah struktur pohon di mana simpul-simpul dihubungkan oleh suatu aturan. Hirarki memiliki setidaknya dua tingkat dan bersifat dua arah. Semakin atas hierarki akan memperluas kategori; semakin ke bawah akan memperjelas kategori. Contohnya adalah geografi, dari benua hingga alamat jalan. Polyhierarchy Taxonomy Polyhierarchy adalah struktur seperti pohon dengan lebih dari satu aturan relasi simpul. Node child mungkin memiliki banyak daripada parent. Node parent itu juga dapat berbagi grandparents. Dengan demikian, jalur traversal dapat menjadi rumit dan harus berhati-hati untuk menghindari potensi traversal yang tidak valid. Struktur polyhierarchy yang rumit mungkin lebih baik disajikan dengan Facet Taxonomy. Facet Taxonomy Facet Taxonomy tampak seperti bintang di mana setiap simpul diasosiasikan dengan simpul pusat. Facet adalah atribut objek di tengah. Contohnya adalah Metadata, di mana setiap atribut (pembuat, judul, hak akses, kata kunci, versi, dll.) adalah facet dari objek konten. Network Taxonomy Network Taxonomy menggunakan struktur Hierarchical dan Facet. Setiap dua node dalam Network Taxonomy membangun hubungan berdasarkan asosiasinya. Contohnya adalah mesin pemberi rekomendasi. Dalam penyusunan taksonomi di dalamnya juga termasuk penyusunan ontologi yang berupa representasi dari struktur konsep-konsep beserta hubungannya dalam suatu domain. Perbedaan antara taksonomi dan ontologi adalah sebagai berikut: Taksonomi menyediakan klasifikasi konten data untuk area konsep tertentu. Model data secara khusus memanggil entitas yang memiliki atribut dan valid untuk atribut tersebut. Namun, dalam ontologi, entitas, atribut, dan konsep konten dapat sepenuhnya tercampur. Perbedaan diidentifikasi melalui metadata atau hubungan lainnya. Dalam taksonomi atau model data, apa yang didefinisikan adalah apa yang diketahui – dan tidak ada yang lain. Ini disebut sebagai asumsi dunia tertutup. Dalam ontologi, kemungkinan hubungan disimpulkan berdasarkan sifat hubungan yang ada, sehingga sesuatu yang tidak dinyatakan secara eksplisit bisa jadi benar. 10.2. Rangkuman 1. Limitasi pada File-Based System dapat diatasi denganmemanfaatkan Database Management System (DBMS). Database dapat diartikan sebagai kumpulan data yang saling berhubungan, diorganisasikan secara sistematik berikut dengan deskripsi data tersebut, dan dapat diakses secara bersama dengan tujuan untuk memenuhi kebutuhan informasi bagi suatu organisasi. 84 Pengelolaan Data 2. Pembuatan database berlangsung sejalan dengan pengembangan sistem. Pada tahap desain pengembangan sistem, fase desain database diawali dengan conceptual design untuk mendapatkan model data yang sesuai dengan kebutuhan organisasi. Selanjutnya masuk ke fase logical design untuk mendapatkan tabel yang efisien dan siap untuk diimplementasikan pada physical design. 3. DBMS berperan penting dalam sebuah aplikasi karena menghubungkan aplikasi dengan database untuk menyimpan dan mengambil data. 4. Sebagian besar DBMS memberikan fitur untuk melakukan monitoring dan tuning sistem untuk membantu meningkatan kinerja dan performa layanan database. 5. Tidak semua data dan informasi bisa disimpan langsung ke dalam model data relational. Perlu memahami bagaimana cara mengakses, pengambilan, penyimpanan, dan penggunaan data dan informasi yang disimpan di luar database relasional dengan taksonomi dan ontologi data. 10.3. Soal Latihan 1. Berikan contoh penggunaan file-based system yang ada di unit kerja kemudian jelaskan perbandingannya apabila diubah ke database? 2. Buatlah ERD dari suatu sistem yang berada di unit kerja dan berikan analisanya terhadap aturan normalisasi? 10.4. Contoh Kasus Contoh berikut diambil dari buku ”Database Systems, A Practical Approach to Design, Implementation, and Management”. Perusahaan “Kami Berjaya” merupakan perusahaan yang bergerak di bidang properti. Di setiap unit kerjanya mempunyai program aplikasi yang menangani kegiatannya masing- masing. Gambar 14. Contoh program aplikasi yang berjalan masing-masing Dalam perkembangannya sering ditemukan anomali data seperti data tidak konsisten dan terjadinya duplikasi data. Hal ini membuat stakeholder dan pembuat kebijakan terhambat ketika meminta data yang akurat dan valid. 85 Pengelolaan Data Akhirnya pimpinan memutuskan untuk membuat sebuah database yang dapat digunakan oleh semua aplikasi yang ada di perusahaan tersebut untuk menangani limitasi aplikasi yang masih file-based system. Seorang database administrator ditunjuk untuk mengimplementasikan database sistem pada perusahaan tersebut. Database administrator tersebut kemudian melakukan perancangan yang sejalan dengan pengembangan aplikasi baru yang terintegrasi. Pada tahap desain, dilakukan conceptual design dan mendapatkan ERD dari keseluruhan aktivitas perusahaan. Gambar 15. Contoh ERD yang dibuat untuk perusahaan properti Pada tahap logical design, database administrator tersebut melakukan penyempurnaan ERD untuk menghubungukan semua entitas yang ada memiliki relasi yang tepat. Dilakukan validasi terhadap model yang didapat agar dapat menjalankan seluruh aktivitas yang dimuat dalam program aplikasi yang akan mengakses database tersebut. 86 Pengelolaan Data Gambar 16. Table hasil dari logical design yang memuat sebagian hubungan data model Selanjutnya dalam tahap physical design data model diimplementasikan dan deploy ke DBMS agar masuk ke tahap testing dan production dalam tahap pengembangan aplikasi. Gambar 17. Proses akses database dari berbabagai program aplikasi 87

Use Quizgecko on...
Browser
Browser