Saturday, May 18, 2013

Sistem Basis Data

· 0 comments

Rani Hanifah
1100284
ILMU KOMPUTER C
KUIS  2 SIMBADA

1. INTEGRITAS DATA
 
Pengertian Integritas Data Integritas Data adalah jaminan konsistensi data terhadap semua status konstrain yang diberlakukan terhadap data tersebut, sehingga memberikan jaminan keabsahan data itu sendiri. Integritas data sangat erat kaitannya dengan keamanan keberadaan data, dimana dapat terjadi secara institusional atau asidental. 
Jenis-jenis Integritas Data dapat dikelompokan sebagai berikut :
  • Entity Integritas
  • Domain Integritas
  • Refrential Integritas
  • User Defined Integritas
Penjelasan Domain Integritas Domain Integritas merupakan validasi dari masukan untuk sebuah kolom. Anda dapat memeriksa domain integritas dengan membatasi tipe (melalui data types), format (melalui check constraints dan rules), atau range nilai mungkin (melalui foreign key constraints, check constraints, default definitions dan rules).
Macam action dalam Referential Integrity
  •    NO ACTION atau RESTRICT : update atau delete tidak dilakukan. Ini merupakan pilihan default.
  •  CASCADE : nilai kolom di tabel kedua disesuaikan dengan nilai kolom di tabel utama
  • SET NULL : nilai kolom di tabel kedua dijadikan NULL
  •  SET DEFAULT : nilai kolom di tabel kedua dijadikan nilai DEFAULT (nilai DEFAULT harus ditentukan pada waktu pembuatan tabel).
Tipe-tipe Constraint :
  PRIMARY KEY Constraint, untuk menspesifikasikan kolom dalam tabel. Tidak boleh kosong, dan harus unik, untuk menghubungkan satu tabel dengan tabel lain.
  •  FOREIGN KEY Constraint, digunakan untuk menspesifikasikan kolom foreign key pada suatu tabel. Foreign key digunakan untuk menghubungkan dua tabel. Kolom foreign key adalah kolom atau kombinasi beberapa kolom dalam suatu tabel yang selalu merujuk pada kolom primary keypada suatu tabel.


2. TRANSAKSI
  
Pengertian Transaksi
•          Unit lojik pekerjaan, Unit lojik recovery
•          Satu atomic operation à bisa terdiri dari beberapa instruksi
•          Instruksi harus dijamin dikerjakan semua untuk menjamin konsistensi.

Tujuan Transaksi :
•          Melindungi database dari kehilangan data dan kerusakan.
•          Contoh masalah:
–         Sistem crash di tengah eksekusi program yang membuat database dalam state yang tidak diketahui
–         Dua program yang mengakses data yang sama dijalankan bersamaan sehingga saling menggangu.
Dua Operasi Penting Transaksi
•          COMMIT
–         memberi tanda bahwa transaksi telah selesai. Update dibuat permanen (bahkan jika setelah commit terjadi kegagalan system).
•          ROLLBACK
–         memberi tanda bahwa transaksi GAGAL. Semua update harus di-undo (bagaimana caranya?)
4 Elemen Transaksi: ACID
•          Atomicity: semua berhasil atau semua gagal
•          Consistency: transaksi mempertahankan konsistensi database
•          Isolation: transaksi terisolasi satu dengan yang lain
•          Durability: setelah commit update harus survive di database
3. CONCURENCY 

Pengertian Concurrency
•          DBMS mengijinkan banyak transaksi pada saat bersamaan untuk mengakses data yang sama.
•          Concurrency Control Mechanism (CCM) dibutuhkan agar transaksi tidak saling “menggangu”.
3 Masalah Concurrency
•          Lost Update Problem
•          Uncommitted dependency problem
•          Incosistent analysis problem
Locking
•          Jika sebuah transaksi ingin record/resource tidak berubah dalam waktu tertentu maka dia meminta lock.
Jenis Lock
•          Exclusive Lock (Xlock) à write lock
•          Shared Lock (Slock) à read lock
Jenis Lock (lanj)
•          Jika transaksi A memegang Xlock pada sebuah record, maka permintaan lock (X,S) pada record yang sama harus diabaikan.
•          Jika transaksi A memegang Slock pada record R maka:
–         Permintaan Xlock trans. lain pada R ditolak
–         Permintaan Slock trans. lain pada R diterima
PostgreSQL (lanj)
•          Ada dua
–         READ COMMITTED
–         SERIALIZABLE
•          Di PostgreSQL
–         READ UNCOMMITTED = READ COMMITTED
•          Di PostgreSQL
–         REPEATABLE READ = SERIALIZABLE
4. BACK AND PROGRAM
            Apa Stored Procedure
•          Procedure atau Function di dalam database.
•          Stored procedure à SQL + Bahasa Prosedural
•          Banyak disupport oleh RDBMS (ORA, SQL Server, MySQL versi 5 ke atas)
           
•          Program untuk mengisi sebuah field dengan deret 2, 4, 6 sd 100
create or replace procedure isi_deret as

    counter INTEGER;

begin

   counter := 0;

            loop

                insert into DERET(NILAI) values (counter);

                        counter := counter + 2;

                        exit when counter > 100;

            end loop;

end;
Mengapa menggunakan SP?
•          Dijalankan di database server à performance lebih baik, network trafik lebih rendah.
•          Tools DBA à praktis, selalu tersedia di database server.
•          Dapat digunakan oleh banyak aplikasi
–         Standarisasi business logic.
–         SP dapat dipanggil oleh aplikasi luar
Dapat memanfaatkan tipe, fungsi yang disediakan DBMS
Manfaat Trigger
•          Membuat integrity constraint yang kompleks.
•          Mencatat aktivitas suatu tabel (logging).
•          Sinkronisasi

Mengapa belajar SP?
•          Powerfull, tools sangat penting bagi DB designer, DB programmer dan DBA
•          Hampir semua RDBMS mensupport.
–          Walaupun syntax berbeda, umumnya menggunakan prinsip yang sama
SP di ORA: PL/SQL
•          PL/SQL à procedural language / SQL
•          Mirip Pascal
•          Case insensitive
•          Strong typed, semua variabel harus dideklarasikan
•          Komentar: 
-- ini komentar satu baris
/* komentar yang bisa > 1 baris */
Deklarasi Variabel
Contoh:
v_counter INTEGER;
v_nim CHAR(5);
v_nama VARCHAR(20);
v_nilai NUMBER;
v_nim_2 MAHASISWA.NIM%TYPE; /* mengikuti tipe mahasiswa.nim */
            Mengapa menggunakan huruf depan v_? Supaya tidak bentrok dengan nama field. Contoh:
insert into mahasiswa (nim,nama) values (v_nim,v_nama);

5.XML
Materi XML
Pengertian XML
•          XML = EXtensible Markup Language
•          Markup language untuk dokumen yang mengandung informasi terstruktur.
•          Ditujukan untuk pertukaran dokumen via web.
•          Berbentuk file teks à Cross platform, indepedenden terhadap software dan hardware.
Aplikasi XML
•          Mendeskripsikan dokumen.
•          Pertukaran data
•          Database
Contoh XML :
<?xml version="1.0" encoding="ISO-8859-1"?>

<daftar_pengarang>

      <pengarang>

                  <nama>budi martami</nama>

                  <alamat>sarijadi </alamat>

      </pengarang>

      <pengarang>

                  <nama>elfan noviari</nama>

                  <alamat>gerlong</alamat>

      </pengarang>

</daftar_pengarang>





Isi XML :

•          Tag:   <nama> budi </nama>

–         Tag didefinisikan sendiri.

•          Tag dapat mempunyai atribut

–          <daftar_mahasiswa jumlah=“30”> … </daftar_mahasiswa>

•          Struktur à hirarki (tag dalam tag)

      <mahasiswa><nama> budi </nama></mahasiswa>
XML dan HTML
•          Persamaan dengan HTML?
–         Sama-sama markup language
•          Perbedaan dengan HTML?
–         Semantik HTML telah didefinisikan. Contoh: <b> untuk bold
–         XML lebih ketat aturannya. Contoh: setiap tag harus ada penutupnya (<tag> …. </tag>)
–         XML case sensitive
Keuntungan XML
•          Self Documenting à dengan melihat tag, dapat diketahui isi dokumen.
•          Dapat dibaca software dan manusia.
•          Fleksibel
•          Dapat dikembangkan tanpa melanggar format lama.
–         Contoh: pada <pengarang>, tambah tag <telepon>, maka XML yang lama tetap dapat dibaca.
•          Hirarkis à dapat merepresentasikan data kompleks
•          Independen terhadap bahasa pemrograman, OS
Kerugian XML
•          Pengulangan tag à tidak efisien, ukuran membengkak

Beberapa Aturan XML
•          Setiap tag harus ada penutupnya.
•          Penamaan Tag
–         case sensitive. <nama> tidak sama dengan <Nama>.
–         Tidak diawali dengan angka
–         Tidak mengandung spasi
–         Hindari ‘-’ dan ‘.’
•          Urutan hirarki harus benar.
      Contoh yang salah: 

      <mahasiswa> <nama> yudi </mahasiswa></nama>


6.KEAMANAN BASIS DATA
            Keamanan pada basis data harus dijaga dan di sesuaikan dengan kebutuhan nya..
Keamanan nya harus terjaga agar tidak dipakai sembarang orang..




                                                      Referensi



handapeunpost