BAB VIII KONSEP PENGELOLAAN BASIS DATA 8.1. PENDAHULUAN Basis data spasial mendeskripsikan sekumpulan entity baik yang memiliki lokasi atau posisi yang tetap maupun yang tidak tetap. Hampir semua SIG memiliki campuran tipe entity spasial dan non-spasial. Tipe entity spasial memiliki properties topografi dasar yang meliputi lokasi, dimensi, dan bentuk. Sedangkan non-spasial tidak memiliki propertiy topografi dasar lokasi. Dengan demikian, sebelum analisis SIG dapat dilakukan, diperlukan data tambahan untuk digabungkan ke dalam basis data geografi. Sebagai contoh, untuk menjawab pertanyaan apa tipe landuse (tata guna tanah) yang dipresentasikanoleh setiap poligon pada suatu pea SIG, diperlukan beberapa atribut deskriptif untuk dikaitkan terhadap coverage landuse tsb yang kemudian dikelola oleh perangkat SIG. Atribut tersebut meliputi : kode yang mengindikasikan tipe landuse setiap poligon, nilai biaya rata-rata untuk pemeliharaan per hektar, dll. 8.2. SIG SEBAGAI BASIS DATA Saat ini SIG dikembangkan dengan menggunakan sistem manajemen basis data (DBMS). Beberpa fakta menunjukkan bahwa sebagian besar biaya sistem perangkat lunak SIG adalah biaya untuk DBMS-nya. Selain itu, DBMS memiliki dan menangani fungsi-fungsi yang sangat diperlukan oleh SIG. Ada dua pendekatan untuk menggunakan DBMS di dalam SIG: (1) Pendekatan solusi DBMS total – data spasial dan non-spasial diakses melalui DBMS. (2) Pendekatan solusi kombinasi – tidak semua data diakses melalui DBMS karena datadata tersebut telah sesuai dengan modelnya. 8.3. BASIS DATA Konsep basis data (database)dapat dipandang dari berbagai sudut: dari sisi sistem, basis data merupakan kumpulan tabel yang saling berhubungan. Sedangkan dari sisi manajemen, basisdata merupakan kumpulan data yang memodelkan aktivitas-aktivitas yang terdapat dalam perusahannya. Beberapa pengertian atau definisi basis data yang dikembangkan atas dasar sudut pandang yang berbeda: (1) Hipunan kelompok data (file/arsip) yang saling berhubungan dan diorganisasikan sedemikian rupa agar kelak dapat dimanfaatkan kembali dengan cepat dan mudah. (2) Kumpulan data yang saling berhubungan dan disimpan bersama s edemikian rupa tanpa pengulangan yang tidak perlu (redudancy) untuk memenuhi berbagai kebutuhan. (3) Kumpulan file/arsip yang saling berhubungan dan disimpan di dalam media penyimpanan elektronik. 8. Basis Data „SIG“ Hal. 1 / 7 Kehadiran basisdata mengimplikasikan adanya pengertian keterpisahan antara penyimpanan data yang digunakan dengan program aplikasi yang mengaksesnya. Dengan menggunakan basisdata,, pemrogram, atau developer program aplikasi tidak erlu mengetahui informasi detil mengenai bagaimana data-datanya disimpan. Dengan basis data, perubahan atau updating data dapat dilakukan tanpa mempengaruhi komponen lainnya. 8.3.1 Keuntungan Basis Data Bila dibandingkan dengan sistem pemrosesan file yang didukung oleh sistem operasi konvensional, maka penggunaan basis data memberikan keuntungan-keuntungan sbb: (a) mereduksi duplikasi data (b) kemudahan, kecepatan dan efisiensi akses data (c) penjagaan integritas data (d) menyebabkan data menjadi self-dokumented dan self-descriptive (e) mereduksi biaya pengembangan perangkat lunak (f) meningkatkan faktor keamanan data 8.3.2. Tingkat Abstraksi Data Karena tidak semua pengguna system basis data terlatih dengan baik dan penggunanya terbagi dalam beberapa tingkatan, maka kompleksitas basis data akan tersembunyi dari penggunanya melalui beberapa tingkat abstraksi data (lihat Gb. 8.1). Hal ini dibuat untuk menyederhanakan interaksi antara pengguna dengan sistemnya. Tingkat (level) view (abstraksi) data tersebut adalah: (a) Level fisik – merupakan tingkat terendah dalam abstraksi data, menunjukkan bagaimana sesungguhnya data tersimpan. (b) Level konseptual – menggambarkan data apa saja yang sebenarnya disimpan dalam basisdata beserta hubungannya di dalam basisdata. (c) Level view – merupakan tingkat yang tertinggi, menunjukkan struktur data yang sederhana dan berorientasi pada pengguna. View 1 View 2 View 3 Level konseptual Level fisik Gb. 8.1. Level Abstraksi Data 8.4. SISTEM BASIS DATA Pengertian atau definisi dai sistem basis data bervariasi dan tidak mudah dibedakan dengan pengertian DBMS pada beberapa literatur, antara lain: (1) Sistem basisdata merupakan perangkat lunak DBMS bersama dengan datanya, dan terkadang mencakup perangkat lunak aplikasi di dalamnya. 8. Basis Data „SIG“ Hal. 2 / 7 (2) Sistem basis data merupakan sistem yang terdiri dari kumpulan file (tabel) yang saling berhubungan dan sekumpuan program (DBMS) yang memungkinkan pengguna untuk mengakses dan memanipulasi file-file tersebut. (3) Sistem basis data merupakan kombinasi perangkat keras dan perangkat lunak yang memungkinkan dan memudahkan untuk menjalankan satu atau lebih tugas yang melibatkan penggunaan sejumlah besar informasi. 8.4.1. Komponen Sistem Basis Data Sebagai suatu sistem, sistem basis data terdiri dari komponen-komponen yang membentuknya, yang meliputi: (a) Perangkat keras (b) Pengguna (users) (c) System operasi (d) System pengelolaan basisdata (DBMS) (e) Program aplikasi lain (f) Basisdata Komponen pengguna (users) system basisdata terbagi dalam beberapa kelompok: (a) Database administrator – memiliki kewenangan sebagai pusat pengendali seluruh sistem basisdata maupun program-program yang mengaksesnya. (b) Application programmers – merupakan programmer aplikasi yang profesional berinteraksi dengan sistem melalui pemanggilan DML (data manipulation language). (c) Sophisticated users – berinteraksi dengan sistem tanpa harus menuliskan sendiri progamnya. (d) Specialized users – menuliskan program aplikasi basisdata khusus yang tidak sesuai dengan framework pemrosesan data tradisional. Misalnya CAD, system pakar, dll. (e) Naive users – berinteraksi dengan system melalui pemanggilan salah satu program aplikasi yang telah disediakan. 8.4.1. Komponen Fungsional Sistem Basis Data Komponen fungsional system basisdata, terdiri atas: (a) File manager – mengelola alokasi kebutuhan ruang penyimpanan basisdata beserta struktur data yang digunakan untuk merepresentasikan informasi yang disimpan dalam storage. (b) Database manager – menyediakan interface antara data tingkat rendah yang disimpan dalam basisdata dengan program aplikasi dan queries yang dikirimkan ke system. (c) Query processor – menterjemahkan pernyataan bahawa query ke dalam intruksi tingkat rendah yang dimengerti oleh database manager. (d) DML precompiler – mengkonversi pernyataan DML yang dimasukan di dalam program aplikasi ke dalam pemanggilan prosedur normal di dalam bahasa induknya. (e) DDL compiler – mengkonversi pernyataan DDL ke dalam sekumpulan tabel yang mengandung metadata atau data mengenai data. 8. Basis Data „SIG“ Hal. 3 / 7 8.5. SISTEM MANAJEMAN BASISDATA 8.5.1. Pengertian dan Definisi Sistem manajemen basisdata (DBMS) merupakan kumpulan dari data yang saling berhubungan dengan sekumpulan program-program yang mengakses data tersebut. Perbedaan dengan basisdata, DBMS merupakan paket perangkat lunak general purpose yang digunakan untuk membangun sistem basisdata tertentu. Dengan kata lain DBMS adalah bagian dari sistem basisdata. 8.5.2. Manfaat Sistem Manajemen Basis Data Manfaat penggunaan DBMS dalam aplikasi basisdata, antara lain: (a) Sangat baik dalam mengorganisasikan dan mengelola data dengan jumlah besar. (b) Melindungi data dari kerusakan yang disebabkan oleh akses data yang tidak syah, kerusakan erangkat keras, dan kerusakan erangkat lunak. (c) Memungkinkan untuk akses data secara simultan atau bersamaan. (d) Memungkinkan pembagian suatu basisdata menjadi kepingan-kepingan yang terpisah di bbrp tempat. 8.5.3. Komponen Sistem Manajemen Basis Data Komponen DBMS, meliputi: (a) Data – yang disimpan di dalam basisdata (b) Operasi standard – yang disediakan oleh hamper semua DBMS (c) DDL (data definition language) yang merupakan bahasa yang digunakan untuk mendeskripsikan isi (dan struktur) basisdata. (d) DML (data manipulation language) atau bahasa query yang setara dengan bahasa pengrograman yang didukung oleh DBMS untuk membentuk perintah-perintah masukan, keluaran, editing, dan analisis basisdata. (e) Bahasa pemrograman (programming tools) – menangani akses melalui fungtion calls atau subroutine calls dari program aplikasi lain. (f) Struktur file – struktur internal yang digunakan untuk mengorganisasikan data. 8.6. MODEL BASISDATA DALAM DBMS Dalam DBMS terdapat bbrp model basisdata yang digunakan. Model ini menyatakan hubungan antara record-record yang ada di dalam basisdatanya. Model basisdata tersebut antara lain: (a) Flat file (tabular) – data terletak di dalam table tunggal (tidak terdapat kaitan antara table suatu denga table lainnya) Table 8.1. Contoh Flat file (table) untuk mahasiswa 8. Basis Data „SIG“ Hal. 4 / 7 (b) Hierarchical – model ini sering disebut sebagai model pohon atau hirarki karena mirip dengan struktur pohon terbalik. Model ini menggunakan pola hubungan parent-child. Simpul yang paling atas (tingkat tinggi) tidak memiliki parent sebagai root, sedangkan simpul yang tidak memiliki child (bagian bawah) disebut sebagai leap. Gb. 8.2. Contoh model basisdata hirarki sederhana Gb. 8.3. Contoh model hirarki dalam bentuk lain (c) Network – model ini sering disebut juga sebagai model DBTG (database task group). Model ini sangat mirip dengan model hierarchical, tetapi pada model network ini, setiap child dapat memiliki lebih dari satu parent. Dengan demikian, baik parent maupun child memiliki hubungan (N-M), demikian juga sebaliknya. Gb. 8.4. Contoh model basisdata Network sederhana 8. Basis Data „SIG“ Hal. 5 / 7 Gb. 8.5. Contoh model basisdata network dalam bentuk lain (d) Relational – terdiri dari table-tabel (data direpresentasikan dalam table yang terdiri dari baris dan kolom) ternormalisasi dengan field-field kunci sebagai penghubung relational antar table. Table 8.2. Contoh table relational – table mahasiswa 8.7. MODEL BASISDATA RELASIONAL Model basisdata yang paling terkenal dalam DBMS ini banyak digunakan dalam SIG. Beberapa DBMS yang menggunakan model basisdata relational: (a) Dbase (*.dbf) – digunakan oleh ArcView, PC Arc/Info, dan SIG lain (b) INFO – digunakan di dalam Arc/Info (c) Oracle – digunakan dalam Arc/Info, Geovision, dll 8. Basis Data „SIG“ Hal. 6 / 7 8.7.1. Terminologi Dalam Model Basisdata Relational (a) Relasi Ö Setiap baris data (record) memiliki atribut (field) Ö Setiap tipe record membentuk table dan relasi Ö Derajat atau tingkat relasi suatu table dinyatakan dengan jumlah atribut yang terdapat di dalam table ybs. (b) Kunci Ö Kunci sering disebut sebagai super key atau key dari suatu relasi, merupakan bagian (subset) dari atribut dengan cirri sbb: - dapat diidentifikasikan secara unik - non-redundancy – tak ada satu atribut kunci yang dapat dihapus tanpa merusak keunikan atribut tsb. (c) Queries Ö DDL digunakan untuk menentukan data mana yang akan disimpan dalam basisdata, dan menentukan bagaimana data tersebut direlasikan. Ö DML digunakan untuk menambah, memanggil kembali, meng-update, dan menghapus data dalam DBMS. Ö Query sering diambil sebagai pernyataan atau sekumpulan pernyataan baik pada DDL, DML atau keduanya. Ö Query language (QL) adalah bahasa formal yang mengimplementasikan DDL, DML, atau keduanya. (d) Normalisasi Ö Normalisasi adalah teknik yang digunakan untuk menstrukturkan data sedemikian rupa sehingga mengurangi atau mencegah timbulnya masalahmasalah yang berhubungan dengan pengelolaan basisdata. Ö Proses normalisasi dalam model basisdata relasional menitikberatkan pada masalah penentuan struktur data yang paling sederhana untuk table-tabelnya. Ö Hasil normalisasi adalah data, record atau table-tabel yang konsisten secaa logic. 8.7.2 Keunggulan Model Basisdata Relasional Ö Model relational benar-benar merupakan model data yang lengkap secara matematis. Ö Memiliki teori yang solid untuk mendukung accestability, correctness, dan predictability. Ö Fleksibilitas tinggi – jelas memisahkan model fisik dan logic hingga dengan adanya decoupling (mengurangi ketergantungan antara komponen system) Ö Integritas: perubahan struktur data tidak mengganggu keutuhan relasi dalam basisdata. Ö Multiple views – dapat menyajikan secara langsung view yang berbeda dari basisdata yang sama untuk pengguna yang berbeda. Ö Concurrency – hamper semua teori mengenai pengendalian transaksi simultan yang telah ada, dan dibuat berdasarkan teori formalisme milik model relasonal. 8. Basis Data „SIG“ Hal. 7 / 7