Pages

Rabu, 16 November 2016

Konfigurasi Access Point dengan Menggunakan TP-LINK

Sebelum melakukan konfigurasi access point dengan menggunakan access point/router yang bermerk TP-LINK ini, dibutuhkan beberapa alat, yakni:

a. TP-LINK


b. Kabel UTP (Kabel LAN)

c. Kabel Adaptor


Untuk memulai konfigurasi access point ini, lakukan langkah-langkah berikut:

1. Hubungkan TP-LINK pada sumber listrik dengan menggunakan kabel adaptor.

2. Tekan tombol reset selama 30 detik.


3. Sambungkan kabel UTP pada TP-LINK, dan hubungkan dengan PC.


4. Setelah itu, AP/router akan terdeteksi oleh PC. Nama awal AP/router ini yakni TP-LINK_F504. Lalu klik Open Network Sharing Setting seperti yang ada pada kanan bawah gambar berikut.


5. Pilih wireless network connection dengan nama TP-LINK_F504, klik properties dan cari IPv4, kemudian ubah settingan IPnya (IP address = 192.168.0.2 dengan default gateway disesuaikan dengan default gateway yang tertera pada TP-link).


6. Masuk ke browser, ketikkan default gateway pada kolom URL. Setelah itu, masukkan username dan password awal (biasanya tertera pada TP-LINK).


7. Cari wireless  dan pilihlah wireless setting, kemudian ubah ssid sesuai dengan keinginan.

Sebelum mengubah SSID:


Setelah mengubah SSID


Setelah mengubah SSID menjadi nama yang diinginkan, maka klik save.

8. Kemudian, reboot rooter dengan menekan click here.


9. Maka akan muncul reboot seperti gambar di bawah ini, klik reboot, lalu tekan OK.


10. Tunggu sampai router reboot mencapai 100% (successfully).


11. Kemudian cari wireless dan masuk ke wireless advanced. Ganti setelannya ke wpa2 agar wireless routing dapat diamankan dengan password, lalu ubah password sesuai keinginan anda. Setelah selesai, klik save dan reboot.

12.  Setelah itu, pilih opsi untuk memfilter mac address, agar mac address tersebut tidak  bisa menggunakan wireless router.


13. Konfigurasi telah selesai, klik status untuk melihat hasil konfigurasi AP/router yang telah dilakukan.


Akhirnya, AP/router sudah dapat digunakan. Untuk dapat terhubung dengan AP/router, buka jaringan Wi-Fi yang terbaca oleh perangkat,  kemudian cari nama jaringan sesuai dengan nama SSID yang  telah disetting, dan masukkan password yang telah diatur pula sebelumnya.

Rabu, 27 April 2016

Hak Akses pada Linux


Hallo bloggers! Maaf author di sini jarang muncul karena sibuk, oke skip.
Kali ini, saya akan menjelaskan mengenai File Permission (Hak Akses) di Linux.

File permission adalah suatu hak akses yang dilakukan oleh user untuk menulis, membaca serta mengeksekusi sebuah file. File permission digunakan agar file-file yang ada hanya diakses oleh user yang berkepentingan, hal tersebut berarti digunakan untuk keamanan data. Tujuan dari file permission yaitu untuk melihat dan mengatur hak akses file, serta memahami tentang kepemilikan dari file dan direktori.

Terdapat tiga tipe yang berhak mengakses sebuah file di Linux, di antaranya:
User/owner: Pengguna yang merupakan pemilik file.
Group: Kelompok pengguna yang merupakan pemilik file, misalnya terdapat suatu kelompok yang terdiri dari sejumlah orang untuk membuat suatu proyek, maka setiap pengguna yang terdapat dalam kelompok berhak mengakses suatu file dengan hak akses yang sama.
Others: Pengguna yang bukan pemilik file serta tidak masuk ke dalam kelompok yang sama.

Jenis-jenis hak akses di Linux:
read: izin untuk membaca file, artinya file dapat dibuka dan dibaca.
write: izin untuk memodifikasi isi file, artinya file dapat dimodifikasi dengan menambah, menghapus, serta mengubah isi file.
execute: izin untuk mengeksekusi program, artinya pengguna dapat menjalankan file sebagai program atau shell script.

Untuk melihat hak akses di linux, caranya yaitu sebagai berikut:
Ketik perintah ls –l di terminal
Seperti berikut:



Terdapat 9 kolom yang ada di dalam terminal.

Keterangan:
Kolom pertama : merupakan jenis file dan perizinan yang mengikat file tersebut.
Terdapat 10 karakter dalam kolom pertama. Karakter pertama dari kolom pertama menunjukkan:
d = directory
- = regular file
l = symbolic link
s = unix domain socket
p = named pipe
c = character device file
b = block device file
9 karakter berikutnya di kolom pertama, berarti perizinan yang dibagi menjadi 3 grup. Tiap grupnya berisi 3 karakter, yakni:
r = read permission
w = write permission
x = execute permission
- = no permission
Kolom kedua : menunjukkan jumlah link.
Kolom ketiga : menunjukkan pemilik file.
Kolom keempat : menunjukan grup pemilik file.
Kolom kelima : menunjukkan ukuran file dalam byte.
Kolom keenam, ketujuh, kedelapan: menunjukan bulan dan tanggal terakhir file tersebut di akses.
Kolom kesembilan : menunjukkan nama file.


Berikut merupakan cara mengatur hak akses:

*Mode Simbolik (Huruf)
Pertama : Kita harus memutuskan terlebih dahulu hak akses yang diatur, misalnya untuk pengguna (u), kelompok (g), pengguna lainnya (o), atau ketiganya (a).
Kedua : Kita dapat menambahkan izin (+), menghapus izin (-), atau menghapus izin sebelumnya dan menambahkan izin yang baru (=).
Ketiga : Kita harus menentukan perizinannya dengan mengatur izin read (r), write (w), execute (e), atau ketiganya.
Keempat : Tentukan hak akses yang akan diubah, dengan memberikan perintah untuk chmod.

Contoh:
File bernama Erni serta memiliki izin akses penuh pada semua kelompok.
Tampilan awal perizinan file:
drwxrwxr-x
1. Hapus semua hak akses yang sekarang, kemudian ganti dengan hanya izin read untuk semua grup.
Ketik: $ chmod a=r Erni
Hasil: dr--r--r--
2. Beri izin kepada grup untuk ditambahkan izin execute.
Ketik: $ chmod g+x Erni
Hasil: dr--r-xr--
3. Beri izin kepada semua grup untuk di tambahkan izin write.
Ketik: $ chmod ugo+w Erni
Hasil: drw-rwxrw-
4. Hapus izin execute yang ada pada grup untuk dihapus.
Ketik: $ chmod g-x Erni
Hasil : drw-rw-rw-



* Mode Numerik (Angka)
Mode ini diwakili oleh 3 angka octal untuk perizinan filenya.
Keterangan
Angka 4 untuk read (r)
Angka 2 untuk write (w)
Angka 1 untuk execute (x)
Angka 0 berarti tidak ada izin (-)
Jumlahkan angka yang sesuai untuk mendapatkan hak akses yang diinginkan.

Contoh:
1. Untuk mendapatkan hak akses read dan execute secara bersamaan, maka:
read + execute = 4 + 1 = 5
2. Untuk mendapatkan hak akses read, write dan execute secara bersamaan, maka:
read + write + execute = 4 + 2 + 1 = 7
Penerapannya, ketik: $ chmod 755 Erni
Artinya:
hak akses untuk user yaitu 7 (rwx)
hak akses untuk grup adalah 5 (rx)
hak akses untuk others juga 5 (rx)

Sekian penjelasan dari saya. Semoga bermanfaat ya readers :)

Senin, 15 Februari 2016

Langkah-Langkah untuk Menginstall Ubuntu 15.10

Pada postingan kali ini, saya akan menjelaskan langkah-langkah untuk menginstall sistem operasi Ubuntu. Menurut wikipedia, Ubuntu merupakan salah satu distribusi Linux yang berbasiskan Debian dan didistribusikan sebagai perangkat lunak bebas. Sebelum memulai untuk menginstall, maka kita terlebih dahulu harus mempersiapkan beberapa hal, yakni:
  • Download ISO Ubuntu (kebetulan saya memakai Ubuntu 15.10).
  • Jika ISO telah didownload, maka masukkan installernya ke dalam flashdisk atau CD/DVD kosong (namun saya memilih USB disk agar lebih mudah).
  • Jika kita memakai flashdisk, colokkan flashdisk ke port USB.
  • Sebelum menginstall (alangkah lebih baik laptop dicharge terlebih dahulu agar laptop tidak mati mendadak).
  • Restart komputer lalu tunggu proses masuk ke pengaturan BIOS terlebih dahulu.
  • Setelah berada di pengaturan BIOS, pilih menu BOOT, tempatkan flashdisk pada posisi booting paling atas. Lalu simpan.
  • Tunggu proses selanjutnya.

Setelah beberapa hal tersebut dipersiapkan dan dilakukan. Selanjutnya, saya akan menjelaskan langkah-langkah menginstal Ubuntu seperti berikut.


1
Pilih bahasa yang akan kita gunakan. Kemudian klik Install Ubuntu untuk memasang Ubuntu.


2
Centang kalimat ‘Install this third-party software’, kemudian klik Continue untuk melanjutkan.


3
Pilih opsi ‘Something else’ agar memudahkan kita untuk membuat partisi pada harddisk secara manual.


4
Pada tahap ini, kita akan membuat partisi baru pada harddisk (dengan klik New Partition Table). Kemudian Klik Continue. Space partisi disesuaikan dengan menekan tanda ‘+’ (plus) yang terdapat di layar.


5
Partisi yang disediakan sebesar 8 GB, dan saya menyisakan 1,2 GB (1229 MB). Pilih ‘Primary’ untuk tipe pada partisi baru dan pilih ’Beginning’ untuk lokasi pada partisi baru, pilih ‘Ext4 journaling file system’ pada opsi Use as, dan pilih tanda "/" pada opsi Mount Point, selanjutnya klik OK.


6
Setelah melakukan tahap sebelumnya, pilih ‘Free space’, selanjutnya klik "+".

7
Pada tahap ini, pilih ‘Logical’ untuk tipe partisi, pilih ‘Beginning’ untuk lokasi partisi tersebut, dan pilih ‘swap area’ pada opsi Use as, lalu klik OK.


8
Kemudian klik ‘Install Now’.


9
Klik ‘Continue untuk melanjutkan.


10
Klik ‘Continue (lagi) untuk melanjutkan.


11
Pilih zona wilayah sesuai tempat tinggal dengan klik gambar peta yang ada.


12
Pilih Keyboard Layout (biasanya orang Indonesia memilih English (US)).


13
Isikan nama, nama pengguna, nama komputer, serta password anda. Kemudian klik Continue.


14
Tunggu beberapa menit untuk proses penginstallan. 


15
Setelah selesai, klik ‘Restart Now’ untuk menghidupkan ulang komputer. 

16
Akhirnya, Ubuntu telah berhasil diinstall.

Demikian langkah-langkah untuk menginstall Ubuntu yang telah saya lakukan sebelumnya.

Rabu, 25 November 2015

Sistem Basis Data

         Assalamu'alaikum, setelah sekian lama saya tidak membuat postingan, kali ini saya akan menjelaskan beberapa materi yang telah dibahas pada Mata Kuliah Sistem Basis Data di semester 3 Pendidikan Ilmu Komputer Universitas Pendidikan Indonesia. Materi ini terdiri dari pengertian basis data, sistem basis data, integritas data, transaksi, concurrency, back-end programming, dan XML.
 
====================================
Perbedaan Basis Data dan Sistem Basis Data 
====================================

A. Basis Data
1.    Definisi Basis Data
Basis data terdiri dari dua kata, yaitu kata Basis dan Data. Basis berarti markas atau gudang, dan data berarti representasi fakta dunia nyata yang mewakili suatu objek, seperti manusia, barang, hewan, keadaan, konsep peristiwa, dan lain-lain. Jadi, basis data dapat didefinisikan sebagai kumpulan dari berbagai data yang saling berhubungan satu dengan yang lainnya. Basis data tersimpan di perangkat keras, serta dimanipulasi dengan menggunakan perangkat lunak. Basis data merupakan aspek yang sangat penting dalam sistem informasi dimana basis data merupakan gudang penyimpanan data yang akan diolah lebih lanjut. Basis datasangat penting karena dapat mengorganisasi data, menghindari duplikasi data, hubungan antar data yang tidak jelas dan juga update yang rumit.

2.    Operasi-Operasi Dasar Basis Data
Operasi-operasi dasar yang dapat kita lakukan berkenaan dengan basis data dapat antara lain sebagai berikut:
  • Pembuatan basis data baru (create database), yang identik dengan pembuatan lemari arsip yang baru.
  • Penghapusan basis data (drop database), yang identik dengan perusakan lemari arsip (sekaligus beserta isinya jika ada).
  • Pembuatan file/tabel baru ke suatu basis data (create table), yang identik dengan penambahan map arsip baru ke sebuah lemari arsip yang telah ada.
  • Penghapusan file/tabel dari suatu basis data (drop table), yang identik dengan perusakan map arsip lama yang ada di sebuah lemari arsip.
  • Penambahan/pengisian data baru ke sebuah file/tabel di sebuah basis data (insert), yang identik dengan penambahan lembaran arsip ke sebuah map arsip.
  • Pengambilan data dari sebuah file/tabel (retrieve/search), yang identik dengan pencarian lembaran arsip dari sebuah map arsip.
  • Pengubahan data dari sebuah file/tabel (update), yang identik dengan perbaikan isi lembaran arsip yang ada di sebuah map arsip.
  • Penghapusan data dari sebuah file/tabel (delete), yang identik dengan penghapusan sebuah lembaran arsip yang ada di sebuah map arsip.
Operasi pada pembuatan objek (basis data dan tabel) merupakan operasi awal yang hanya dilakukan sekali dan berlaku seterusnya. Sedangkan operasi pada isi tabel (data) merupakan operasi yang akan berlangsung berulang-ulang, karena operasi pada isi tabel dapat mewakili aktivitas pengelolaan (management) dan pengolahan (processing) data dalam basis data.

3.    Objektif Basis Data
Pemanfaatan basis data dapat dilakukan untuk memenuhi tujuan-tujuan (objektif) yang meliputi:
a. Kecepatan dan Kemudahan (Speed)
            Kecepatan serta kemudahan dalam menyimpan, memanipulasi atau juga menampilkan kembali data tersebut.
b. Efisiensi Ruang Penyimpanan (Space)
Efisiensi/optimalisai penggunaan ruang penyimpanan dapat dilakukan karena dengan basis data, redudansi data akan bisa dihindari.
c. Keakuratan (Accuracy)
Pemanfaatan pengkodean atau pembentukan relasi antar data bersama dengan penerapan aturan/batasan (constraint) tipe data, domain data, keunikan data dan sebagainya yang secara ketat dapat diterapkan dalam sebuah basis data, sangat berguna untuk menekan ketidakakuratan/penyimpanan data. 
d. Ketersediaan (Availability)
Dengan kepentingan pemakaian data, sebuah basis data dapat memiliki data yang tersebar di banyak lokasi geografis. Misalnya, data nasabah sebuah bank dipisah-pisah dan disimpan di lokasi yang sesuai dengan keberadaan nasabah. Dengan pemanfaatan teknologi jaringan komputer, data yang berada di suatu lokasi/cabang, dapat juga diakses (menjadi tersedia/available) bagi cabang yang lain.
e. Kelengkapan (Completeness)
Kelengkapan dapat melakukan perubahan struktur dalam basis data, baik dalam penambahan objek baru (tabel) atau dengan penambahan field-field baru pada table.
f. Keamanan (Security)
Keamanan dapat menentukan pemakai yang boleh menggunakan basis data beserta objek-objek yang ada didalamnya serta menentukan jenis -jenis operasi apa saja yang boleh dilakukannya. 
g. Kebersamaan Pemakaian (Sharebility)
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.
 
4.    Penerapan Basis Data
Bidang-bidang fungsional yang telah umum memanfaatkan basis data demi efisiensi, akurasi dan kecepatan operasi antara lain sebagai berikut:
  • Kepegawaian
  • Pergudangan (inventori)
  • Akuntansi
  • Reservasi
  • Layanan Pelanggan (customer care)
Sedangkan bentuk-bentuk organisasi/perusahaan yang memanfaatkan basis data meliputi:
  • Perbankan
  • Asuransi
  • Rumah Sakit
  • Produsen Barang
  • Industri Manufaktur
  • Pendidikan/Sekolah
  • Telekomunikasi

B.  Sistem Basis Data

            Sistem basis data terdiri dari tiga kata, yakni system, basis, dan data. Sistem berarti tatanan yang terdiri atas sejumlah komponen fungsional yang saling berhubungan dan secara bersama-sama bertujuan untuk memenuhi suatu proses tertentu. Basis data hanyalah sebuah objek yang pasif, ia ada karena ada pembuatnya. Basis data tidak akan berguna tanpa alat penggeraknya. Gabungan antara basis data dan pengelolanya menghasilkan sebuah system. Jadi, sistem basis data merupakan sistem yang terdiri dari koleksi data atau kumpulan data yang saling berhubungan dan program-program untuk mengakses data tersebut.

1.    Komponen Utama Sistem Basis Data :
  • Perangkat Keras (Hardware) yang terdiri dari komputer (satu untuk sistem yang stand-alone dan lebih dari satu untuk sistem jaringan), memori sekunder on-line, memori sekunder off-line, dan media / perangkat komunikasi.
  • Sistem Operasi (Operating Sistem)
  • Basis data (Database)
  • Sistem Pengelola Basis Data (Database Management Sistem atau disingkat DBMS)
  • Pemakai (User), seperti programmer aplikasi, user mahir, user khusus, dan user umum.
  • Aplikasi atau Perangkat Lunak yang lainnya
2.    Abstraksi Data
            Abstraksi data dapat mengacu pada tingkatan/ level dalam bagaimana cara melihat data dalam sebuah system basis data. Tiga level abstraksi data antara lain sebagai berikut.
·         a. Level Fisik (Physical Level)
Pemakai melihat data sebagai gabungan dari struktur dan data nya sendiri, dan berkompeten dalam mengetahui bagaimana representasi fisik dari penyimpanan atau pengorganisasian data (Teks, angka, himpunan bit data, dan lain-lain).
·        b. Level Logik / Konseptual (Conseptual Level)
Menggambarkan data apa yang sebenernya (secara fungsional) disimpan dalam basis data dan hubungannya dengan data yang lain.
·         c. Level Penampakan (View Level)
Untuk pemakai yang hanya membutuhkan sebagian data atau informasi dalam basis data yang kemunculannya dimata pemakai diatur oleh aplikasi n-user.

3.    Struktur Sistem Basis Data Keseluruhan
            Sebuah DBMS umumnya memiliki sejumlah komponen fungsional seperti:

  • File Manager
  • Database Manager
  • Query Processor
  • DML Precompiler
  • DDL Compiler

            Berikut struktur yang menunjukkan keterhubungan antar komponen dalam DBMS dan juga hubungannya dengan para pemakai dan basis datanya sendiri:



=============
Integritas Data 
=============

1.    Definisi Integritas Data                 
          Integritas data merupakan kekonsistensi dan kebenaran data yang disimpan. Antara representasi dunia nyata dan nilai dari data itu harus dilindungi oleh sistem, agar mempunyai arti yang kesungguhnya. Integritas data berguna untuk menjamin validitas data yang terkam ke dalam basis data, karena suatu data sehrusnya mengikuti sejumlah karakteristik dasar sesuai dengan ketentuan yang telah ada.
 
2.    Tipe-Tipe Constraint pada Integritas Data                  
          Tipe-tipe constraint pada integritas data untuk diimplementasikan ke dalam  SQL, antara lain sebagai berikut.
  • NOT NULL, yaitu suatu kolom  tidak diizinkan berisi nilai NULL, harus ada nilainya.
  • UNIQUE,  berfungsi untuk mencegah suatu kolom untuk memiliki dua baris atau lebih berisi data yang sama.
  • PRIMARY  KEY, didefinisikan dalam model relasional sebagai pengenal unik untuk tiap nilai dalam entitas.
  • REFERENTIAL INTEGRITY , dapat memastikan bahwa data pada suatu tabel didefinisikan pada tabel lainnya dan mengikat kedua tabel tersebut dalam hubungan parent/child atau referenced/dependent.
  • CHECK, berfungsi untuk pengecekan apakah sebuah kolom memenuhi sebuah kondisi spesifik yang dievaluasi dengan nilai boolean.
3.    Jenis-Jenis Integritas Basis Data
  • Domain integrity (Integritas jangkauan nilai) -> Tidak ada item data yang melanggar jangkauan nilai di tiap kolom data.
  • Integrity Entity (Integritas Entitas) -> Tidak ada baris data duplikat dalam satu tabel.
  • Integrity Referential (Integritas acuan) -> Menjaga relasi atau korespondensi antartabel.
  • Redundant Data Integrity (Integritas Data Antar Tabel) -> Data di sebuah tabel tidak berulang di tabel lain.
  • 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.



======================
Transaksi dan Concurrency
======================
 
1.    Transaksi
Transaksi dalam basis data adalah program yang di dalam pelaksanaannya akan mengubah basis data. Setiap transaksi harus menunjukan konsistensi basis data. Pada saat awal dan akhir, program harus tetap konsisten.
Tujuan transaksi adalah menjaga database dari kehilangan data dan kerusakan, seperti sistem crash dan pengaksesan data yang sama secara bersamaan oleh dua aplikasi yang berbeda yang menimbulkan gangguan. Untuk menjamin agar integritas data dapat terpelihara maka transaksi harus memiliki sifat-sifat sebagai berikut:
  • 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.
Jenis transaksi yang penting dalam sistem basis data, yaitu:
  • Commit adalah tanda bahwa transaksi sudah selesai dilakukan, atau transaksi yang dilakukan sudah menjadi data.
  • Rollback adalah tanda bahwa transaksi gagal dilakukan, artinya transaksi yang diupdate harus diulangi atau di-undo.
Transaksi yang sudah di commit tidak dapat dibatalkan lagi.  Jika ada kesalahan, maka harus dilakukan transaksi lain yang membalik dampak transaksi sebelumnya.
Status-status yang dapat dicapai oleh sebuah transaksi sejak mulai dilaksanakan hingga selesai atau batal adalah:
  • Aktif (Active), yang merupakan status awal (initial state) sebuah transaksi yang menunjukkan transaksi tersebut masih dieksekusi.
  • ·Berhasil Sebagian (Partially Committed), yaitu keadaan yang dicapai transaksi tepat pada saat operasi terakhir dalam transaksi selesai dikerjakan.
  • Gagal (Failed), yang merupakan keadaan dimana sebuah transaksi terhenti pengeksekusiannya sebelum tuntas sama sekali.
  • Batal (Aborted), yaitu keadaan dimana sebuah transaksi dianggap tidak/belum dikerjakan yang tentu dengan terlebih dahulu diawali dengan mengembalikan semua data yang telah diubah ke nilai-nilai semula. (yang menjadi tanggung jawab DBMS).
·                      Berhasil Sempurna (Committed), keadaan dimana transaksi telah dinyatakan berhasil dikerjakan seluruhnya dan basis data telah merefleksikan perubahan-perubahan yang memang diinginkan transaksi.

2.    Concurrency
Concurrency  adalah banyaknya transaksi yang dijalankan secara bersamaan dalam satu waktu tanpa ada gangguan. Berikut masalah utama pada concurrency: 
  • Lost update problem, ketika dua user mengupdate dua buah data yang sam.
Contoh :
Satuan Waktu
Transaksi A
Transaksi B
1
Retrieve r
2
Retrieve r
3
Update r
4
Update r
          Contoh di atas mengemukakan bahwa transaksi A tidak akan dianggap dan data update pada transaksi A akan di overwrite oleh transaksi B. Hal ini akan menimbulkan lost update problem pada transaksi A.
  • Uncommited dependency problem, ketika user yang satu me-retrieve data dan user yang lain me-rollback data tersebut
Contoh :
Satuan Waktu
Transaksi A
Transaksi B
1
Update r
2
Update r
3
Rollback
           Contoh di atas mengemukakan bahwa transaksi A akan menerima data yang salah karena pada transaksi B saat di update terjadi kesalahan kemudian di rollback.
  • Inconsistent analysis problem, ketika user yang satu meretrieve data dan user yang lain mengupdate data tersebut
Contoh :
Satuan Waktu
Transaksi A
Transaksi B
1
Retrieve r1
2
Retrieve r2
3
Update r1
4
Commit
5
Update r3 = r1 + r2

           Contoh di atas mengemukakan bahwa transaksi A akan menghasilkan data yang salah dan tidak sesuai database karena saat analisis di transaksi A terjadi update data pada salah satu datanya.
Masalah tersebut ditangani dengan proses locking, jika sebuah transaksi ingin record/resource tidak berubah dalam waktu tertentu maka dia bisa meminta lock. Ada dua jenis lock, yakni:
  • Exclusive Lock (Xlock) -> write lock
  • Shared Lock (Slock) -> read lock
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 :
    -Permintaan Xlock transaksi lain pada R ditolak
    -Permintaan Slock transaksi lain pada R diterima
        Ketika melakukan proses locking ini, terdapat suau masalah yang terjadi, biasanya disebut dengan deadlock. Deadlock adalah keadaan ketika atau lebih proses saling menunggu meminta resources untuk waktu yang tidak terbatas lamanya. Cara penanganannya yaitu sebagai berikut:
  • Deteksi dan pecahkan deadlock
  • Deteksi deadlock -> wait-for-graph
  • Pecahkan deadlock -> salah satu dirollback paksa
  • Ostrich Algorithm  -> diabaikan


==================
Back-end Programming
==================

            Back-end Programming adalah kode yang tidak terlihat oleh pengguna dan bekerja dibelakang layar atau server.

1.    Stored Procedure
Stored Procedure adalah sekumpulan perintah SQL yang disusun dalam sebuah prosedur yang memiliki nama dan fungsi tertentu. Struktur badan procedure secara umum:
CREATE OR REPLACE PROCEDURE <nama procedure> AS

            /*Deklarasi variable, type, dan local subprogram*/

BEGIN

            /*Bagian utama prosedur*/

EXCEPTION

            /*Penangan error*/

END <nama procedur>;

2.    Function
Selain Stored Procedure, terdapat juga Function. Sedikit berbeda dengan Stored Procedure, disini ada nilai yang dikembalikan. Struktur badan Function secara umum:
CREATE OR REPLACE FUNCTION <nama fungsi> RETURN <tipe data>

AS

            /*Deklarasi variable, type, dan local subprogram*/

BEGIN

            /*Bagian utama fungsi*/

EXCEPTION

            /*Penangan error*/

RETURN(<Nilai yang dikembalikan>);

END <nama fungsi>;

/

Untuk mengeksekusi stored procedure dan fungsi gunakan perintah :
EXECUTE <nama procedure/fungsi>;
Sedangkan untuk menghapusnya menggunakan perintah
DROP PROCEDURE/FUNCTIOM <nama procedure/function>;

3.    Trigger
Secara keseluruhan trigger hampir sama dengan Procedure dan Function, hanya saja untuk Trigger dioperasikan secara otomatis ketika terdapat aktivitas statement-statement SQL seperti Insert, Update dan Delete. Trigger ini bisa diaktivasi sebelum atau pun sesudah terjadinya satatement-statement tersebut.
Struktur badan Trigger secara umum:
CREATE OR REPLACE TRIGGER <nama trigger>

(BEFORE|AFTER) (INSERT|UPDATE [OF <nama_kolom>, …]|DELETE) ON <nama_tabel>

[FOR EACH ROW] [WHEN (kondisi)]

DECLARE

            /*Deklarasi variable, tipe data*/

BEGIN

            /*Bagian utama trigger*/

END;

/

Trigger ini memiliki status apakah dia aktif atau nonaktif. Untuk mengubah status Trigger berikut sintaksnya:

ALTER TRIGGER <nama_trigger> DISABLE | ENABLE;

dimana DISABLE untuk menonaktifkan Trigger, dan ENABLE untuk mengaktifkan Trigger.

Sintaks untuk menghapus Trigger :

DROP TRIGGER <nama_trigger>;




====
XML
====

1.    Definisi XML
XML (Extensible Markup Language) adalah bahasa markup untuk keperluan umum yang disarankan oleh W3C untuk membuat dokumen markup keperluan pertukaran data antar sistem yang beraneka ragam. XML menyediakan suatu cara terstandarisasi namun bisa dimodifikasi untuk menggambarkan isi dari dokumen.[4] Dengan sendirinya, XML dapat digunakan untuk menggambarkan sembarang view database, tetapi dengan suatu cara yang standar.
2.    Tipe File XML
  • XML, merupakan standar format dari struktur berkas (file).
  • XSL, merupakan standar untuk memodifikasi data yang diimpor atau diekspor.
  • XSD, merupakan standar yang mendefinisikan struktur database dalam XML.
3.    Keunggulan XML
  • Simple, karena XML tidak serumit HTML, strukturnya jelas, dan sederhana.
  • Intelligence, karena XML mampu menangani berbagai komplesitas markup bertingkat-tingkat.
  • Portable, karena memisahkan data dan presentasi
  • Fast, pencarian data cepat
  • Extensible, dapat ditukar/digabung dengan dokumen XML lain.
  • Linking, XML dapat melakukan linking yang lebih baik daripada HTML, bahkan dapat melink satu atau lebih poin dari dalam maupun luar data.
  • Maintenance, XML mudah untuk diatur dan dipelihara, karena hanya berupa data, stylesheet dan link terpisah dari XML.
Seperti halnya HTML, XML juga menggunakan elemen yang ditandai dengan tag pembuka (diawali dengan ‘<’ dan diakhiri dengan ‘>’), tag penutup(diawali dengan ‘</ ‘diakhiri ‘>’) dan atribut elemen(parameter yang dinyatakan dalam tag pembuka misal <form name=”isidata”>). Hanya bedanya, HTML medefinisikan dari awal tag dan atribut yang dipakai didalamnya, sedangkan pada XML kita bisa menggunakan tag dan atribut sesuai kehendak kita. 
 
4.    Kegunaan dari XML
·                             XML adalah segalanya tentang manajemen data  memungkinkan ketersediaan format yang sesuai untuk kita. Untuk mengenal tentang bagaimana XML mampu menangani data-data kita, sebaiknya perhatikan keterangan berikut :
  • XML memungkinkan kita untuk mengumpulkan informasi dan menggunakannya kembali dengan berbagai cara.
  • Data XML tidak dibatasi pada satu format aplikasi. Kita dapat mendisain suatu dokumen XML yang memungkinkan kita untuk mengumpulkan data secara online dan menggunakannya dalam dokumen yang berbeda, database, dan spreadsheet. Sebagai contoh, seandainya perusahaan kita mengumpulkan informasi-informasi penjualan terhadap suatu produk menggunakan dokumen XML yang terisi data. Data XML yang sama bisa digunakan untk membuat arsip pembelian, laporan pengawasan, dan grafik penjualan.
  • Pembuatan informasi yang portabel memerlukan perencanaan dan disain sebelum informasi dikumpulkan. 

========
Referensi
========


Fathansyah. 2012. Basis Data. Bandung: Informatika
https://simbuda.wordpress.com/2013/05/19/integritas-data-dan-transaksi-concurrency/
http://mkr-site.blogspot.co.id/2012/07/apa-itu-xml-dan-gunanya-pada-blogger.html