Wednesday, October 10, 2012

BAB II

LINGKUNGAN BASIS DATA

2.1 Arsitektur sistem basis data
Ada tiga tahapan dalam sistem database:
1.    External Level    :  Setiap user mempunyai bahasa dalam penyelesaiannya
             -  Bahasa pemrograman : pembuat program aplikasi
             -  Bahasa Query ex. formulir, menu : Pemakai data langsung
2.   Conceptual Level:  Pandangan secara menyeluruh
3.   Internal Level     :  Bagaimana secara fisik data tersimpan pada penyimpan sekunder
  • Pertimbangan dalam memilih arsitektur sistem basis data :
§  Keunggulan teknologi
§  Biaya pengembangan
§  Sesuai dengan kebutuhan pengguna
  • Jenis arsitektur sistem basis data :
§  Sistem tunggal (Standalone)
§  DBMS, basis data, dan aplikasi basis data ditempatkan pada komputer yang sama.
§  Hanya bisa dipakai oleh satu pemakai pada saat yang bersamaan
§  Sistem Terpusat (Centralized system)
§  Terdiri dari sebuah server dan sejumlah terminal
§  Yang terpusat adalah basis data, DBMS, dan aplikasi basis data
§  Ada dua macam :
§  Aplikasi dan basis data terpusat; diakses oleh dumb terminal
§  Basis data terpusat; aplikasi ada pada terminal
§  Sistem Client-server
§  Ditujukan untuk mengatasi kelemahan yang terdapt pada sistem terpusat
§  Terdiri dari 2 komponen utama yaitu client dan server. Client berisi aplikasi basis data; server berisi DBMS dan basis data
§  Ada dua macam :
§  Arsitektur 2 lapis (2-tier)
§  Arsitektur 3 lapis (3-tier)
2.2 Data independence
Data independence adalah Metode mengubah pola data dari isi data tersebut dan cara menyimpannya, sehingga perubahan tersebut tidak menyebabkan suatu program aplikasi ditulis kembali.
Jenis Data Independence :
1.  Logical Data Independence :
-       Kemampuan untuk merubah skema konseptual tanpa harus merubah skema eksternal
-       Hanya definisi dari view dan mapping yang perlu diubah dalam DBMS
-       Constraint dari basis data juga dapat diubah dalam skema konseptual tanpa mempengaruhi skema eksternal
2.  Physical Data Independence :
-        Kemampuan untuk merubah skema internal tanpa haarus merubah skema konseptual (atau eksternal)
-        Lebih mudah untuk dilakukan daripada logical data independence karena adanya isolasi aplikasi dari susunan penyimpanan fisik.

TINGKAT DATA INDEPENDENCE
1.    Physical data independence, yaitu “perubahan internal schema dapat dilakukan tanpa menggangu conceptual schema”.
2.    Logical data independence, yaitu” Conceptual schema dapat dirubah tanpa mempengaruhi ekternal schema”.

ALASAN  PERLUNYA  PRINSIP  DATA INDEPENDENCE  DITERAPKAN  PADA PENGELOLAAN  SISTEM  DATABASE
1.    Database Administrator dapat merubah isi, lokasi dan organisasi database tanpa mengganggu program aplikasi yang ada
2.    Vendor hardware & software pengelolaan data bisa memperkenalkan produk - produk baru tanpa mengganggu program - program aplikasi yang telah ada
3.    Untuk memudahkan perkembangan program aplikasi
4.    Memberikan fasilitas pengontrolan terpusat oleh DBA demi security dan integritas data, dengan memperhatikan perubahan - perubahan kebutuhan user.
-         
2.3 Konsep DBMS, Komponen DBMS, Fungsi DBMS, dan bahasa yang digunakan dalam DBMS
a. Konsep DBMS (Database Managemen System)
DBMS (Data Base Management System) adalah perangkat lunak yang memberikan fasilitas untuk melakukan fungsi pengaturan, pengawasan, pengendalian, pengolahan, dan koordinasi terhadap semua proses yang terjadi pada sistem basis data
1.    Menutut C.J. Date :  DBMS adalah merupakan software yang menghandel seluruh akses pada database untuk melayani kebutuhan user.
2.    Menurut S, Attre   :  DBMS adalah software, hardware, firmware dan procedure-procedure yang memanage database. Firmware adalah software yang telah menjadi modul yang tertanam pada hardware (ROM).
3.    Menurut Gordon C. Everest  :  DBMS adalah manajemen yang efektif untuk mengorganisasi sumber daya data.
Jadi DBMS  :  Semua peralatan komputer (Hardware+Software+Firmware). DBMS dilengkapi dengan bahasa yang berorientasi pada data (High level data langauage) yang sering disebut juga sebagai bahasa generasi ke 4 (fourth generation language).
b. Komponen DBMS
Komponen-komponen utama DBMS :
§  Query language
·         Digunakan oleh bagian lain dengan sedikit perintah sederhana
·         Contoh : SQL (Structure Query Language), QBE (Query By Example)
§  Report generator
·         Dirancang untuk membuat cetakan, yang memiliki perintah-perintah untuk membuat header, judul, kolom, summary, dll.
§  DML (Data Manipulation Language)
·         Terdiri dari perintah-perintah yang disediakan dalam program aplikasi untuk melakukan manipulasi data seperti append, list, atau update
§  DDL (Data Definition Language)
·         Dengan bahasa ini kita dapat membuat tabel baru, membuat indeks, mengubah tabel, menentukan struktur tabel, dll.
·         Hasil dari kompilasi perintah DDL menjadi Kamus Data, yaitu data yang menjelaskan data sesungguhnya
·         Contoh : Create, Modify report, Modify structure
§  Recovery
·         Merupakan kemampuan untuk mengembalikan data yang rusak atau hilang akibat operasi basis data (insert, update, delete, dll.)
§  Data dictionary
·         Digunakan untuk memelihara definisi-definisi standar seluruh rinci data dalam lingkup kecil pada sistem basis data
§  Database
·         Merupakan bagian dari DBMS yang menyediakan data dalam berbagai tipe dan format untuk memenuhi kebutuhan pemakai
§  Access routine
·         Suatu rutin yang dapat dipanggil dan dipergunakan oleh program lain untuk mengakses basis data
c.Fungsi DBMS
Fungsi DBMS           :  -  Definisi data dan hubungannya
                           -  Memanipulasi data
                           -  Keamanan dan integritas data
                           -  Security dan integritas data
                           -  Recovery/perbaikan dan concurency data
                           -  Data dictionary
                           -  Unjuk kerja / performance
Peralatan untuk menetapkan/menentukan pendekatan database disebut DBMS
DBMS merupakan software (dan hardware) yang kusus didesain untuk melindungi dan memanage database.
Dengan menggunakan DBMS, maka dapat :
·         Mendefinisikan data dan hubungannya.
·         Mendokumentasikan struktur dan definisi data
·         Menggambarkan, mengorganisasikan dan menyimpan data untuk akses yang selektif/dipilih dan efisien.
·         Hubungan yang sesuai antara user dengan sumber daya data.
·         Perlindungan terhadap sumber daya data akan terjamin, dapat diandalkan, konsisten dan benar.
·         Memisahkan masalah Logical dan physical sehingga merubah implementasi database secara fisik tidak menghendaki user untuk merubah maksud data (Logical).
·         Menentukan pembagian data kepada para user untuk mengakses secara concurent pada sumber daya data.

Contoh DBMS :
1.    Database Hierarchy      : Pengaksesan data harus mengikuti aturan hierarchy yang sudah didefinisikan terlebih dahulu.
      Contoh : IMS-2 (Information Management System) oleh IBM, 1968
2.   Data Network : Data membentuk jaringan yang lebih bebas dari model hierarchy.
      Contoh  :  IDMS (Integrated Database Management System) oleh Cullinett Software Inc,
                       1972
3.   Data Relational : Data dikelompokkan secara bebas menurut jenisnya lewat proses
                               normalisasi
      Contoh  :  -   INGRES oleh UN of CA & Relational Tech., 1973
                       -   System-R oleh IBM Research, 1975
                       -   ORACLE oleh Relational Software Inc. , 1979
                       -   DBASE II oleh Ashton-Tate, 1981
c. Bahasa basis data (DBMS)
  • Bahasa basis data merupakan perantara bagi pemakai dengan basis data dalam berinteraksi, yang telah ditetapkan oleh pembuat DBMS
  • Dapat dibedakan menjadi 2, yaitu :
    • Data Definition Language (DDL)
      • Dengan bahasa ini kita dapat membuat tabel baru, membuat indeks, mengubah tabel, menentukan struktur tabel, dll.
      • Hasil dari kompilasi perintah DDL menjadi Kamus Data, yaitu data yang menjelaskan data sesungguhnya
      • Contoh : Create, Modify report, Modify structure
    • Data Manipulation Language (DML)
      • Berguna untuk melakukan manipulasi dan pengambilan data pada suatu basis data, yang berupa insert, update, delete, dll.
      • Ada 2 jenis, yaitu prosedural (ditentukan data yang diinginkan dan cara mendapatkannya) dan non-prosedural (tanpa menyebutkan cara mendapatkannya)
      • Contoh : dbase 3+, foxbase, SQL, QBE
2.4 Model data.
1.    Model data
§  Model data merupakan suatu cara untuk menjelaskan bagaimana pemakai dapat melihat data secara logik
§  Ada 3 jenis model data :
a.    Model data berbasis objek
·         Merupakan himpunan data dan relasi yang menjelaskan hubungan logik antar data dalam suatu basis data berdasarkan objek datanya
·         Terdiri dari 2 jenis :
o   Entity Relationship model
Merupakan model untuk menjelaskan hubungan antar data dalam basis data berdasarkan persepsi bahwa real world (dunia nyata) terdiri dari objek-objek dasar yang mempunyai hubungan / relasi antara objek tersebut

            o   Semantic model
Relasi antar objek dinyatakan dengan kata-kata (semantic)
Contoh:

b.    Model data berbasis record
Model ini mendasarkan pada record untuk menjelaskan kepada user tentang hubungan logik antar data dalam basis data
c.    Model data berbasis konseptual dan fisik
Model Konseptual adalah permodelan data yang merupakan awal dari kegiatan mendesain database.
Setiap aplikasi mengharapkan suatu kumpulan atribute. Model konsepsual merupakan pengumpulan / integrasi seluruh kebutuhan atribute dari para user / aplikasi menjadi satu pandangan organisasi. Dengan proses normalisasi seluruh atribut-atribut tersebut dikelompokkan sesuai dengan himpunannya.
Model Fisikal : Digunakan untuk menjelaskan kepada pemakai bagaimana data-data dalam basis data disimpan dalam media penyimpanan secara fisik, yang lebih berorientasi pada mesin, Menggambarkan bagaimana secara fisik data tersimpan pada penyimpan sekunder.
Pertimbangan-pertimbangan yang perlu dipikirkan antara lain : Metode akses dan teknik pengindeksan.
Dengan Low Level Data Language (LLDL : Basic, fortran, cobol pascal dll.) dapat membentuk suatu model data fisikal tertentu untuk melayani kebutuhan model data logikal. Kelemahan LLDL adalah tidak mempunyai Query language.
·         Ada 2 model :
o   Unifying model
o   Frame memory
Ad. 1.  Membuat model data Konseptual dan Proses Normalisasi
-  Data diasumsikan mempunyai model relational
-  Langkah-langkah yang dikerjakan :
1.  Mengumpulkan dan menganalisa data.
     Data dikumpulkan dari :
     -  Data yang telah ada (Existing Data) :
     contoh : Formulir-formulir, rekening, laporan, file data yang telah ada dan program
-  Data yang akan datang (Future Data).
2.  Proses normalisai  :   Yaitu proses untuk mengelompokkan atribut pada tabel-tabel. yang telah menggambarkan entity-entity dan hubungan-hubungannya satu sama lain.
3.  Gambaran secara grafis  :  Menggambarkan hubungan entity-entity yang didapat dari proses Normalisasi. Dan melengkapi gambar entity-entity yang ada dengan Atribute-atribute dan kunci-kuncinya.
Ada. 3.  Membuat model data Internal / Fisikal
Pada bagian ini akan dibicarakan 3 hal :
1.    Metoda-metoda akses secara umum
Metoda internal menggambarkan bagaimana secara fisik data disimpan pada penyimpan sekunder. Untuk menyimpan (Stored) dan mengambil (Retrieval) diperlukan suatu METODA AKSES. Unjuk kerja dalam menyimpan dan mengambil ini sangat tergantung pada metoda akses yang digunakan. AKSES adalah proses untuk menyimpan dan mengambil data dari penyimpan sekunder. Metoda akses tergantung pada kemampuan Sistem Operasi yang dipakai oleh DBMS.
-  Metoda akses pada sistem operasi ada 2 :
      -  Sequential access method
      -  Direct access method
-  Metoda akses pada DBMS dapat dibedakan menjadi 2 :
 
1.  Metode akses model internal  : Yaitu metoda akses yang berdasarkan gambaran bagaimana data disimpan secara fisikal, menggunakan pengertian-pengertian fisik, misal : alamat, record, key dll.
      contoh :
        -  Physical Sequential (akses urut secara fisik) menghasilkan : File sequential
         -  Record-record tersimpan dengan kunci-kunci recordnya yang urut secara logikal.
         -  Metode akses ini dipakai baik untuk simpan dan ambil.
         -  Akses diurut satu persatu dari awal sampai ketemu.
         -  Record yang baru selalu disisipkan pada urutannya.
         -  Hanya baik dipakai untuk file yang jarang berubah dan sering diakses sekuential.

          -  Indexed Sequential (Akses lewat index untuk file sequential)
          -  Untuk mempercepat pencarian pada file yang sudah terbentuk dengan physical sequential disamping file data yang ada dibentuk juga index.
           -  Index berisi kunci record yang urut dan alamat recordnya yang juga urut.
           -  Index tersebut dapat setiap kali dibentuk dalam memori prosesor dengan mengambil dari file index. Setiap ada perubahan jumlah record file data harus disertai dengan update file index.
           - Bila jumlah record besar, record-record tersebut dapat dikumpulkan dalam blok-blok.
           -  Penggunaan index terutama adalah untuk retrieval. Syarat utama dari penggunaan index adalah kunci record harus urut (Sorted).


      -  Direct (Akses langsung pada alamat record) menghasilkan : File random / acak
          -  Ada hubungan langsung antara kunci record dan alamat record.

Key value
Address Record
X101
X102
   :
Y100
   :
Y131
01
02
  :
100
  :
131

     

      -  Indexed Random (Akses lewat index untuk file random)
          -  Untuk mempercepat pencarian berdasarkan kunci record, dapat dibuatkan index untuk kunci record tersebut disertai alamat recordnya. Kunci record pada index tersebut harus sequential.
 



   -  Hashing (Akses langsung dengan memproses lebih dulu alamat recordnya)
          Untuk mengatasi efisiensi penyimpanan yang boros pada kunci-record yang
         jarang, kunci record tersebut diproses menurut suatu algoritma hashing yang
        menghasilkan alamat record.  Gunanya agar yang kosong terisi (padat) tetapi
             jangan sampai rangkap.

      -  Inverted (Akses lewat macam-macam index)
         Metode akses ini hanya untuk retrieval, permintaan data mungkinlewat beberapa kemungkinan atribute tertentu. Untuk melayani permintaan-permintaan tersebut untuk setiap atribut yang diminta dibuatkan indexnya. Setiap index terdiri dari atributnya dan alamat recordnya.
     
2.  Metoda akses model external  : Yaitu metoda akses yang berdasarkan gambaran hubungan logikal menggunakan istilah-istilah HLDL dari DBMS, misal : First record, next record dll.
      Relasi antara 2 record secara external dapat dinyatakan sebagai berikut :
      -  Sequence field relationship (Hubungan berurutan) Contoh : Next, Prior
      -  Dependency relationship (Hubungan ketergantungan) contoh : Firts, last, sorted
      -  Parent relationship (Hubungan ke file parent / childnya)
      -  Near relationship (Hubungan khusus) contoh : hubungan record-record pada 1 blok
2.    Implementasi metoda akses pada beberapa DBMS :
1.   DBMS Relational :  File-file database relational relatif bebas satu sama lain, karena untuk aksesnya dapat dipakai metoda akses :
      -  SAM (Sequential Access Method)
      -  DAM (Direct Access Method)
      -  ISAM (Indexed Sequential Access Method)
      -  IDAM (Indexed Direct Access Method)
      -  Hashing
      -  Inverted
      -  VSAM (Virtual Storage Access Method) : Yaitu membuat file data dengan index pada suatu kunci record / alamt record memakai struktur B-Tree
      -  OSAM (Overflow Sequential Access Method) : Yaitu membuat file data dengan struktur Linked List.
2.   DBMS Hirarki : Akses pada database hirarki tidak dapat langsung kesalah satu file, melainkan harus
      mengikuti struktur hirarki yang ada. contoh :
      -  HSAM (Hierarchical Sequential Access Method)
         -  Data disimpan urut seperti pada pita sesuai urutan hirarkinya.
         -  Record tidak dapat diinsert
         -  Operasi yang umum adalah membuat file master baru dari file master lama.
      -  HDAM (Hierarchical Direct Access Method)
         -  Akses hashing pada segment akar
         -  Akses direct ke segmen cabang
         -  Akses didalam segmen cabang dapat OSAM atau VSAM
      -  HISAM (Hierarchical Indexed Sequential Access Method)
         -  Akses Index pada segmen akar / root
         -  Akses sequential pada segmen cabang / dependent
      -  HIDAM (Hierarchical Indexed Direct Access Method)
         -  Akses index pada segmen akar, dapat ISAM atau VSAM
         -  Akses direct ke segmen cabang, akses didalam segmen cabang dapat OSAM atau VSAM
3.   DBMS Network  : Struktur model database network lebih fleksibel dari pada hirarki, hubungan antar filenya dikerjakan dengan memasang SET antar file tersebut. Untuk menyimpan record pada storage digunakan Location Mode yang sekaligus menggambarkan metode akses internal :
      -  Calc                   :  Kemampuan kases hashing
      -  Direct
      -  Via-Set  :  Membuat file yang bersangkutan diakses lewat jalur SET nya.
      -  Index                
      -  System                 :  Sebagian DBMS sudah mempunyai default SYSTEM yang secara otomatis mengatur akses pada database
3.    Evaluasi suatu model Internal

Ada 3 jenis model data :
o   Relational Model
§  Menjelaskan tentang hubungan logik antar data dalam basis data dengan memvisualisasikan ke dalam bentuk tabel-tabel yang terdiri dari sejumlah baris dan kolom yang menunjukkan atribut tertentu
§  Lebih mudah dipahami dibandingkan model-model lainnya
§  Contoh :
MAHASISWA
Nomhs
Nama
00351234
Fulan
01351346
Badu
02351370
Ayu
Keterangan :
-          Jumlah kolom disebut degree, ada 2
-          Baris disebut atribut, ada 3
-          Tiap baris disebut record / tuple, ada 3 record
-          Banyaknya baris dalam satu tabel disebut cardinality
o   Hirarchycal Model (Tree structure)
o   Menjelaskan tentang hubungan logik abtar data dalam basis data dalam bentuk hubungan bertingkat (hirarki)
o   Elemen penyusunnya disebut node, yang berupa rinci data, agregat data, atau record
o   Contoh :
Model hirarki



o   Network Model (Plex structure)
o   Hampir sama dengan model hirarki, dan digambarkan sedemikian rupa sehingga child pasti berada pada level yang lebih rendah daripada parent
o   Sebuah child dapat mempunyai lebih dari satu parent

Contoh :
 
 
2.5 data dictionary
Data dictionary adalah tempat penyimpanan informasi yang menggambarkan data dalam database. Data dictionary biasa disebut juga dengan metadata atau data mengenai data.
Data Dictionary yaitu segala sesuatu kekurangan tentang elemen-elemen database misal : Data apa saja yang dipakai suatu program aplikasi, data apa yang dibutuhkan untuk suatu laporan dari suatu departemen
Data dictionary digunakan untuk memelihara definisi-definisi standar seluruh rinci data dalam lingkup kecil pada sistem basis data
Berisi tentang :
-     nama-nama user yang mempunyai wewenang untuk menggunakan DBMS
-     nama-nama item data yang ada dalam database
-     jenis dan ukuran item data
-     batasan untuk masing-masing item data
·         Data dapat distandarkan dengan data dictionary :  Dengan keadaan telah distandarkan dimungkinkan pertukaran data antar sistem.

Membuat data dictionary
-  Membuat model data konsepsual
-  Membuat model data logikal
-  Membuat model data fisikal
2.6 Arsitektur DBMS multiuser.
File-Server
Proses didistribusikan ke dalam jaringan, sejenis LAN (Local Area Network).  File server mengendalikan file yang diperlukan oleh aplikasi dan DBMS. Meskipun aplikasi dan DBMS dijalankan pada masing-masing workstation, tetapi tetap meminta file dari file server jika diperlukan (perhatikan gambar di bawah ini).

Kerugian arsitektur file-server adalah
-     Terdapat lalulintas jaringan yang besar
-     Masing-masing workstation membutuhkan copy DBMS
-     Kontrol terhadap concurrency, recovery dan integrity menjadi lebih kompleks karena sejumlah DBMS mengakses file secara bersamaan
Teleprocessing
Arsitektur tradisional untuk sistem multi user adalah teleprocessing, dimana satu komputer dengan sebuah CPU dan sejumlah terminal seperti pada gambar di bawah ini.



Client Server
Client-server menunjukkan cara komponen software berinteraksi dalam bentuk sistem.

§  Sistem Client-server
§  Ditujukan untuk mengatasi kelemahan yang terdapat pada sistem terpusat
§  Terdiri dari 2 komponen utama yaitu client dan server. Client berisi aplikasi basis data; server berisi DBMS dan basis data
§  Ada dua macam :
§  Arsitektur 2 lapis (2-tier)
§  Arsitektur 3 lapis (3-tier)

Sumber:
www.stafsite.gunadarma.ac.id
materi sidang comprehensi Wisnu Ajie Supardi S.Kom

www.gunadarma.ac.id




















No comments:

Post a Comment