Monday, November 30, 2015

Materi Sistem Basis Data

Dibawah ini adalah materi tentang Sistem Basis Data yang pada kesempatan kali ini admin akan berbagi pada teman-teman dan semoga bisa bermanfaat.
  1. Basis Data Dan Sistem Basis Data
  2. Integritas Data
  3. Transaksi Dan Concurency
  4. XML
  5. Back End Programming
Nah itu adalah beberapa daftar materi yang dapat admin posting untuk kali ini semoga bermanfaat :)

Back End Programming

1.      Stored Procedure
Stored Procedure adalah PL/SQL Blok yang dipanggil dengan sekumpulan parameter. PL/SQL memiliki dua jenis subprogram yaitu: procedure dan function. Stored proceduremerupakan salah satu jenis PL/SQL yang dapat menerima parameter masukan, melakukan pengolahan terhadap parameter masukan tersebut dan menampilkannya. Stored procedure dapat memeiliki parameter masukan atau tidak memiliki parameter.

      2. Trigger
Trigger adalah blok PL/SQL yang disimpan dalam database dan akan diaktivasi ketika kita melakukan statement-statement SQL (DELETE, UPDATE, dan INSERT) pada sebuah tabel. Aktivasi trigger didasarkan pada event yang terjadi di dalam tabel tersebut sehingga trigger dapat membantu dalam menjaga integritas dan konsistensi data.
SP yang dipanggil secara khusus pada event tertentu:
        before/after  INSERT
        before/after  DELETE
        before/after  UPDATE

Manfaat triger
1.      Membuat integrity constraint yang kompleks.
2.      Mencatat aktivitas suatu tabel (logging).

3.      Sinkronisasi

XML

XML terletak pada inti web service, yang digunakan untuk mendeskripsikan data. Fungsi utama dari XML adalah komunikasi antar aplikasi, integrasi data, dan komunikasi aplikasi eksternal dengan partner luaran. Dengan standarisasi XML, aplikasi-aplikasi yang berbeda dapat dengan mudah berkomunikasi antar satu dengan yang lain
.
XML adalah singkatan dari eXtensible Markup Language. Bahasa markup adalah sekumpulan aturan-aturan yang mendefinisikan suatu sintaks yang digunakan untuk menjelaskan, dan mendeskripsikan teks atau data dalam sebuah dokumen melalui penggunaan tag. Bahasa markup lain yang populer seperti HTML, menggambarkan kepada browser web tentang bagaimana menampilkan format teks, data, dan grafik ke layar komputer ketika sedang mengunjungi sebuah situs web. XML adalah sebuah bahasa markup yang digunakan untuk mengolah meta data (informasi tentang data) yang menggambarkan struktur dan maksud/tujuan data yang terdapat dalam dokumen XML, namun bukan menggambarkan format tampilan data  tersebut. XML adalah sebuah standar sederhana yang digunakan untuk medeskripsikan data teks dengan cara self-describing (deskripsi diri). XML juga dapat digunakan untuk mendefinisikan domain tertentu lainnya, seperti musik, matematika, keuangan dan lain-lain yang menggunakan bahasa markup terstruktur.
1.      Struktur Penulisan Dokumen XML
Aturan  yang ditetapkan untuk  struktur dokumen adalah  : Rancangan XML  harus  formal dan  ringkas. Setiap rancangan dokumen XML memiliki logical structure dan physical structure :
1)      Logical structure yang mendefinisikan unit dan subunit dari data container (elemen-elemen), mendefinisikan data type, attributes, dll.
2)      Physical structure  yang menyediakan data yang akan diletakkan di dalam  elemen, seperti text, images, atau media yang lain, sebagaimana ditentukan di dalam aturan logical structure.
Well-formedness adalah bagian dari logical structure. Sebagai contoh setiap dokumen berisi satu, dan hanya satu root, atau elemen dokumen, yang membuka dan menutup dokumen.
1)      Dokumen menggunakan syntax XML versi 1
2)      Tidak ada eksternal DTD : standalone=”yes”
3)      Encoding=”UTF-8”
Perhatikanlah contoh berikut yang merupakan dokumen yang lengkap :
<?XML version="1.0" standalone="yes" encoding="UTF-8"?> 
<letter> 
  <greeting> 
  Hello There 
  </greeting> 
</letter> 
Berikut ini adalah contoh sebuah struktur dokumen XML:
<?xml version="1.0" encoding="ISO-8859-1"?>
<email>   
<to>Agus </to>
<from>Reno</from>
<subject>Hallo</subject>
<message>Selamat Pagi…</message>
</email>
2.      Kegunaan XML

XML didesain sebagai solusi interoperabilitas antarsoftware dari platform yang berbeda. Misalnya software A berjalan diatas platform Java, ingin berbagi informasi dengan software yang berjalan di atas platform .NET. software A akan membaca request dari software B dalam format XML.Atau bisa jadi software A menyediakan informasi yang sudah dikemas dalam fomat XML, yang dapat dimanfaatkan oleh software B, C, D, dan seterusnya. Untuk mengakses informasi dalam format XML ini, digunakan tool yang bersifat web service. Contoh yang paling sederhana dari interoprabilitas menggunakan XML ini adalah RSS feed dan aggregator.
Saat ini banyak website berita dan blog yang menyediakan informasi yang dikemas dalam format XML, atau dikenal dengan nama RSS feed. Website lain atau aplikasi desktop yang disebut dengan aggregator dapat memanfaatkan informasi ini melalui web service, yakni HTTP, untuk membaca file XML, dan menampilkannya.Bagaimana XML, dan web service bekerja sama menciptakan layanan baru yang disebut dengan interoprabilitas ini? Seperti yang dijelaskan di atas, XML merupakan markup langage. Namun, berbeda dengan HTML yang memerintahkan web browser bagaimana menampilkan informasi, XML menandai informasi secara terstruktur sehingga memudahkan aplikasi lain mengekstrak, dan menggunakannya.Seperti halnya HTML, XML juga menggunakan tag-tag. Jika tag-tag pada HTML bersifat baku, tag-tag XML dapat dibuat sendiri, sesuai dengan kebutuhan.
3.      Keuntungan XML
a.       Self Documenting àdengan melihat tag, dapat diketahui isi dokumen.
b.      Dapat dibaca software dan manusia.
c.       Fleksibel
d.      Dapat dikembangkan tanpa melanggar format lama.
Contoh: pada <pengarang>, tambah tag <telepon>, maka XML yang lama tetap dapat dibaca.
e.       Hirarkis à dapat merepresentasikan data kompleks
f.       Independen terhadap bahasa pemrograman, OS
4.      Aturan XML
a.       Setiap tag harus ada penutupnya.
b.      Penamaan Tag
1.      case sensitive. <nama> tidak sama dengan <Nama>.
2.      Tidak diawali dengan angka
3.      Tidak mengandung spasi
4.      Hindari ‘-’ dan ‘.’
c.       Urutan hirarki harus benar.
            Contoh yang salah
            <mahasiswa> <nama> yudi </mahasiswa></nama>
d.      Setiap XML harus mengandung root (akar)


e.       Setiap atribut harus dalam tanda petik.
Contoh:
     <surat  tanggal = “12/12/2007”>
     <catatan oleh = “ Jum’at ” > 
     <catatan oleh = ‘  Budi “si cepat” Martami ‘>


Sumber : dokumen.tips/documents/makalah-about-xml.html

Integritas Data

Pengertian integritas data secara luas mengacu pada kepercayaan dari sumber daya suatu sistem. Integritas data sangat penting karena dapat memastikan keakuratan, konsistensi, aksesibilitasi, dan kualitas tinggi dari sebuah data, sehingga sangat penting untuk mengikuti aturan pengintegritasan suatu data.
Data yang mempunyai integritas identik di pertahankan selama operasi apapun (seperti bisnis transfer, penyimpanan, atau pengambilan). Secara sederhana dalam istilah bisnis, integritas data adalah jaminan bahwa data konsisten, bersertifikat dan dapat dirujukan.
Contoh dari mekanisme integritas data adalah hunbungan orang tua dan anak dengan record terkait. Jika dalam catatan orangtua memiliki satu atau lebih dari catatan anak terkait semua proses integritas referensial akan ditangani oleh database itu sendiri, yang secara otomatis menjamin keakuratan dan integritas data sehingga tidak ada catatan anak bisa ada tanpa orang tua (atau disebut juga yatim piatu) dan bahwa tidak ada orangtua kehilangan catatan anak mereka. Ini juga menjamin bahwa tidak ada catatan induk dapat dihapus sementara orangtua memiliki record setiap anak. Semua ini ditangani pada tingkat database dan tidak memerlukan coding cek integritas ke dalam setiap aplikasi.
Integritas Data dapat Di kelompokan menjadi 2 bagian :
1.      Integritas data yang berada dalam relasi, yaitu integritas entitas dan integritas domain.
2.      Integritas yang berada di luar relasi, yaitu integritas referensial

Selain itu ada juga integritas yang ditentukan sendiri di dalam suatu perusahaan, yaitu integritas perusahaan (Enterprise integrity/ user Defined Integrity).
Jenis-jenis Integritas Data :
1.      Domain integrity (Integritas jangkauan nilai)
Tidak ada item data yang melanggar jangkauan nilai di tiap kolom data.
2.      Integrity Entity (Integritas Entitas)
Tidak ada baris data duplikat dalam satu tabel.
3.      Integrity Referential (Integritas acuan)
Menjaga relasi atau korespondensi antar tabel.
4.      Redudant Data Integrity (Integritas Data Antar Tabel)
Data di sebuah tabel tidak berulang di tabel lain.
5.      Bussiness Rule Integrity (Integritas Aturan Nyata)
Data di suatu tabel harus memiliki nilai yang layak dan dapat diterima ditempat sistem basis data itu diterapkan. Integritas jenis ini bersifat kasuistis, artinya sangat bergantung pada jenis data, lokasi, lingkungan, dan waktu penerapan basis data.
6.      Membuat Constraint

Constraint merupakan suatu aturan yang membatasi jenis data yang diijinkan untuk dimasukkan ke dalam tabel.

Sumber :

Transaksi Dan Concurency

Transaksi pada basis data adalah satu atomic operasi berupa lojik pekerjaan maupun lojik recovery yang bisa terdiri dari beberapa intruksi. Tujuan dari transaksi adalah menjaga database dari kehilangan data dan kerusakan,seperti system crash dan pengaksesan data yang sama secara bersamaan oleh dua aplikasi yang berbeda yang menimbulkan gangguan.
Ada empat elemen dalam transaksi yang biasa disingkat ACID, yaitu :
1.      Atomicity,  semua berhasil atau semua gagal
2.      Consistency,  transaksi mempertahankan konsistensi database
3.      Isolation,  transaksi terisolasi satu dengan yang lain
4.      Durability,  setelah commit update harus survive di database
Dan ada dua jenis transaksi yang paling penting dalam sistem basis data adalah :
1.      Commit, memberi tanda bahwa transaksi telah selesai. Update dibuat permanen (bahkan jika setelah commit terjadi kegagalan system)
2.      Rollback, memberi tanda bahwa transaksi gagal. Semua update harus di-undo
Untuk lojik recovery atau system recovery database dilakukan ketika terjadi kegagalan media, kegagalan system atau kesalahan pada transaksi. Sistem recovery menggunakan fungsi rollback dan checkpoint. Checkpoint adalah interval tertentu pada perjalanan transaksi basis data yang menyimpan keadaan basis data saat itu. Checkpoint dapat dilakukan untuk merecovery database secara backward (undo) maupun forward (redo).
Sedangkan concurrency adalah sebuah mekanisme pada system basis data yang mengijinkan banyak transaksi pada saat bersamaan untuk mengakses data yang sama tanpa adanya gangguan.
Pada umumnya terdapat 3 masalah utama pada concurrency :
1.      Lost update problem, ketika dua user mengupdate dua buah data yang sama
2.      Uncommited dependency problem, ketika user yang satu meretrieve data dan user yang lain merollback data tersebut
3.      Inconsistent analysis problem, ketika user yang satu meretrieve data dan user yang lain mengupdate data tersebut
Untuk menangani masalah tersebut, dilakukan proses locking, jika sebuah transaksi ingin record/resource tidak berubah dalam waktu tertentu maka dia meminta lock.
Ada dua jenis lock yaitu :
1.      Exclusive Lock (Xlock) write lock
2.      Shared Lock (Slock) read lock
Jadi cara kerjanya : 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 :
a)    Permintaan Xlock transaksi lain pada R ditolak
b)   Permintaan Slock transaksi lain pada R diterima
Tapi, ada satu masalah yang dapat terjadi ketika melakukan proses locking ini, yaitu deadlock. Yaitu, situasi dimana dua atau lebih transaksi dalam kondisi wait-state, satu sama lain menunggu lock dilepaskan sebelum dapat memulai. Cara penanganannya adalah :
1)   Deteksi dan pecahkan deadlock
2)   Deteksi deadlock wait-for-graph
3)   Pecahkan deadlock salah satu dirollback paksa

4)   Ostrich Algorithm diabaikan

Pengertian Basis Data Dan Sistem Basis Data

1.    Basis Data
Basis data adalah, basis data terdiri dari 2 (dua) kata, yaitu kata Basis dan Data. Basis bisa di artikan sebagai markas ataupun gudang, tempat berkumpul. Sedangkan data yaitu kumpulan fakta dunia nyata yang mewakili suatu objek, seperti manusia, barang, dan lain-lain yang direkam ke dalam bentuk angka, bentuk huruf, simbol, teks, bunyi, gambar atau juga  kombinasinya.
Jadi pengertian basis data adalah kumpulan terorganisasi dari data – data yang saling berhubungan sedemikian rupa sehingga dapat mudah disimpan, dimanipulasi, serta dipanggil oleh penggunanya. Definisi Basis data juga dapat diartikan sebagai kumpulan data yang terdiri dari satu atau lebih tabel yang terintegrasi satu sama lain, dimana setiap user diberi wewenang untuk dapat mengakses ( seperti mengubah,menghapus dll.) data dalam tabel-tabel tersebut.
1.1  Tujuan Basis data
·      Kecepatan serta kemudahan dalam menyimpan, memanipulasi atau juga menampilkan kembali data tersebut.
·      Efisiensinya ruang penyimpanan, karena dengan basis data, redudansi data akan bisa dihindari.
·      Keakuratan (Accuracy) data.
·      Ketersediaan (Availability) data.
·      Kelengkapan (Completeness) data, Bisa melakukan perubahan struktur dalam basis data, baik dalam penambahan objek baru (tabel) atau dengan penambahan field-field baru pada table.
·      Keamanan (Security) data, dapat menentukan pemakai yang boleh menggunakan basis data beserta objek-objek yang ada didalamnya serta menentukan jenis -jenis operasi apa saja yang boleh dilakukannya.
·      Kebersamaan Pemakai (Sharability), Pemakai basis data bisa lebih dari satu orang, tetapi tetap menjaga atau menghindari masalah baru seperti: inkonsistensi data (karana data yang sama diubah oleh banyak pemakai pada saat yang bersamaan) dan juga kondisi deadlock (karena ada banyak pemakai yang saling menunggu untuk menggunakan data tersebut.

2.    Sistem Basis Data 
Pengertian sistem basis data adalah sistem yang terdiri dari koleksi data atau kumpulan data yang saling berhubungan dan program-program untuk mengakses data tersebut.
2.1  Komponen utama sistem basis data :
·       Perangkat Keras (Hardware)
·       Sistem Operasi (Operating Sistem)
·       Basis data (Database)
·       Sistem Pengelola Basis Data (Database Management Sistem atau disingkat DBMS)
Yaitu pengelola basis data secara fisik tidak dilakukan oleh pemakai secara langsung, akan tetapi ditangani oleh sebuah perangkat lunak yang khusus. Perangkat Lunak inilah yang disebut DBMS (Database Management Sistem) yang akan menentukan bagaimana data diorganisasi, disimpan, diubah serta diambil kembali. Perangkat Lunak ini juga yang menerapkan mekanisme pengamanan data, pemakaian data secara bersama-sama, konsistensi data dan sebagainya.
·       Pemakai (User).
·       Aplikasi atau Perangkat Lunak yang lainnya.
2.2  Tujuan Utama Sistem Basis Data sendiri adalah :
Menunjukkan suatu lingkungan yang tepat dan efisien didalam melakukan pengambilan (retrieving) dan penyimpanan (storing) informasi basis data, serta menyediakan antarmuka yang lebih ramah kepada user dalam melihat data.
2.3  Kegunaan atau Fungsi Sistem Basis Data
Kegunaan atau Fungsi Sistem Basis Data, mengatasi masalah-masalah pemrosesan data yang sering ditemui dengan menggunakan metode konvensional, permasalah yang diatasi diantaranya:
·       Redudansi data dan juga inkonsistensi data.
·       Kesuliatan dalam pengaksesan data.
·       Data Isolation.
·       Konkurensi pengaksesan.
·       Masalah keamanan.
·       Masalah Integritas.
2.4  Pemakai sistem basis data
·       Programmer Aplikasi yaitu orang atau pemakai yang berinteraksi dengan basis data melalui Data Manipulation Language (DML),
·       User Mahir (Casual User) yaitu pemakai yang berinteraksi dengan sistem tanpa menulis modul program. Mereka menyatakan query untuk mengakses data dengan bahasa query yang telah disediakan oleh suatu DBMS.
·       User Umum (End User/ Naïve User) yaitu Pemakai yang berinteraksi dengan sistem basis data melalui pemanggilan satu program aplikasi permanen (executable program) yang telah disediakan sebelumnya.
·       User Khusus (Specialized User) yaitu Pemakai yang menulis aplikasi basis data non konvensional, tetapi untuk keperluan-keperluan khusus.

Berikut ini adalah kelebihan Sistem Database:
1.      Kerangkapan dan inkonsistensi data dapat dikontrol sehingga tidak terdapat data rangkap.
2.      Terpeliharanya keselarasan data
3.      Data dapat dipakai secara bersama-sama
4.      Memudahkan penerapan standarisasi
5.      Memudahkan penerapan batasan-batasan pengamana
6.      Terpeliharanya integritas data.

Dan berikut kekurangan Sistem Database tersebut:
1.      Mahal dalam implementasinya 
2.      Rumit/komplek 
3.      Kerusakan pada sistem basis data dapat mempengaruhi departemen yang terkait


Sumber : http://www.pengertianku.net/2014/06/pengertian-basis-data-dan-sistem-basis.html