PENERAPAN SINGLE SIGN ON (SSO)
SKRIPSI
Disusun oleh :
FAHMI PERMANA
NPM. 0934010151
J URUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
PENERAPAN SINGLE SIGN ON (SSO)
SKRIPSI
Diajukan Untuk Memenuhi Sebagai Persyaratan Dalam Memperoleh Gelar Sarjana Komputer
Jurusan Teknik Informatika
Disusun oleh :
FAHMI PERMANA
NPM. 0934010151
J URUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
” IMPLEMENTASI REPLIKASI DATABASE
MICROSOFT SQL SERVER – POSTGRESQL UNTUK
PENERAPAN SINGLE SIGN ON (SSO) ”
Disusun O leh :
FAHMI PERMANA
NPM. 0934010151
Telah disetujui untuk mengikuti Ujian Negar a Lisan Gelombang IV Tahun Akademik 2013/2014
Pembimbing Utama Pembimbing Pendamping
I Made Suar tana, S.Kom, M.Kom Kafi Ramadhani, S.Kom NPT. 38604 130 347 1
Mengetahui,
Ketua J urusan Teknik Infor matika Fakultas Teknologi Industri UPN ”Veteran” J awa Timur
MICROSOFT SQL SERVER – POSTGRESQL
UNTUK PENERAPAN SINGLE SIGN ON (SSO) ”
Disusun Oleh : FAHMI PERMANA
NPM. 0934010151
Telah dipertahankan di hadapan dan diterima oleh Tim Penguji Skr ipsi J ur usan Teknik Infor matika Fakultas Teknologi Industri
Univer sitas Pembangunan Nasional ”Veteran” J awa Timur Pada Tanggal 14 Desember 2012
Kafi Ramadhani, S.Kom Rizky Par lika, S.Kom, M.Kom
NPT. 38604 130 347 1 NPT. 3 8006 040 198
FAKULTAS TEKNOLOGI INDUSTRI
Jl. Rungkut Madya Gunung Anyar Surabaya 60294 Tlp. (031) 8706369, 8783189
KETERANGAN REVISI
Kami yang bertanda tangan di bawah ini menyatakan bahwa mahasiswa berikut :
Nama : Fahmi Permana
NPM : 0934010151
Program Studi : Teknik Informatika
Telah mengerjakan REVISI SKRIPSI Ujian Lisan Gelombang IV TA 2013/2014 dengan judul :
“ IMPLEMENTASI REPLIKASI DATABASE MICROSOFT SQL SERVER – POSTGRE SQL UNTUK PENERAPAN SINGLE SIGN ON (SSO) “
Surabaya, Januari 2014 Dosen penguji yang memeriksa revisi 1. Budi Nugroho, S.Kom, M.Kom
NPT. 38006 050 205 1 { }
2. Rizky Par lika, S.Kom, M.Kom
ABSTRAK
1.6 Metodelogi Penelitian ... 5
1.7 Sistematika Penulisan ... 6
BAB II TINJ AUAN PUSTAKA 2.1 Tinjauan Umum ... 8
2.2 Landasan Teori ………... 9
2.2.1 Database ... 9
2.2.2 Asal Mula Istilah Database ...12
2.3 Replikasi ………... 20
2.3.1 Teknik Single Master Replicated ... 21
2.3.2 Teknik Multi Master Replicated... 21
2.3.3 Konsep Dasar Replikasi ... 22
2.3.4 Jenis-jenis Replikasi ... 24
2.4 Microsoft SQL Server ………... 28
2.9 ODBC (Open Database Connectivity) ………... 42
2.10 Pentaho Data Integration ( Kettle ) ………... 45
2.10.1 Pentaho Reporting ………….……... 46
2.10.2 Pentaho Analysis / Mondrian OLAP Engine ……... 47
2.10.3 Pentaho Data Integration / Kettle ………... 48
2.10.4 Pentaho Data Mining / Weka …………... 50
3.2 Tahapan dan Cara Penelitian ... 54
3.3 Analisis ... 54
3.4 Rancangan Implementasi Replikasi Database MS.SQL Server – PostgreSQL untuk Penerapan Single Sign On (SSO) ... 55
3.4.1 Rancangan Implementasi Jaringan Komputer ... 56
3.4.2 Rancangan Link Database Management System dengan ODBC ... 57
3.4.3 Rancangan Replikasi Database ... 58
3.4.4 Rancangan Alur Kerja Website dengan Single Sign On (SSO) ... 59
3.4.5 Use Case Diagram Website dengan Single Sign On (SSO) ………... 61
3.4.6 Activity Diagram Website dengan Single Sign On (SSO) ………... 62
3.4.6.1 Activity Diagram Daftar ………...63
3.4.6.2 Activity Diagram Login ... 64
3.4.7 Rancangan Website dengan Single Sign On (SSO) …... 65
3.6.1 Skenario Uji Coba Dataset waktu dan kecepatan
Replikasi ………. 71
3.6.2 Skenario Uji Coba Pemanfaatan Database hasil Replikasi …... 71
3.6.3 Skenario Uji Coba Website dengan Single Sign On …... 72
BAB IV IMPLEMENTASI DAN UJ I COBA 4.1 Implementasi Sistem...73
4.1.1 Penerapan Jaringan Komputer Pada Implementasi ……... 73
4.1.2 Implementasi Pembuatan Database dan Tabel …... 75
4.1.3 Implementasi Instalasi Paket pada Debian 7 …... 76
4.2 Implementasi Perancangan Virtual Host dan Domain ……….. 78
4.3 Implementasi Antar muka Websites dengan Single Sign On (SSO) 79 4.3.1 Implementasi Antar muka Web-a.com ... 79
4.3.2 Implementasi Antar muka Websatu.com ... 81
4.3.3 Implementasi Antar muka Webdua.com ... 81
4.4 Hasil Implementasi Replikasi Database dengan DBMS MS.SQL Server dan PostgreSQL ... 82
4.4.1 Implementasi Perancangan Link DBMS dengan ODBC ... 82
4.5.1 Uji Coba Data Set Waktu dan Kecepatan Replikasi
Pada Pentaho ... 98 4.5.2 Uji Coba Pemanfaatan Database Hasil Replikasi ... 103 4.5.3 Uji Coba implementasi Pendaftaran pada Website SSO…. 104 4.5.4 Uji Coba Implementasi Login Website SSO ... 107 4.5.5 Uji Coba implementasi Logout Website SSO ... 110 BAB V KESIMPULAN DAN SARAN
Halaman
Gambar 2.1 - Database ... 9
Gambar 2.2 - Database Management System (DMS) ... 12
Gambar 2.3 - Replikasi Database ... 20
Gambar 2.4 - Teknik Single Master Replication ... 21
Gambar 2.5 - Teknik Multi Master Replication ... 22
Gambar 2.6 - Replikasi Snapshot ... 25
Gambar 2.7 - Replikasi Transactional ... 26
Gambar 2.8 - Replikasi Merge ... 27
Gambar 2.9 - Microsoft SQL Server ... 28
Gambar 2.10 - PostgreSQL ... 30
Gambar 2.11 - PhpPgAdmin ... 33
Gambar 2.12 - Apache ... 35
Gambar 2.13 - XAMPP ... 36
Gambar 2.14 - Debian Logo OS ... 38
Gambar 2.15 - Open Database Connectivity ... 42
Gambar 2.16 - Pentaho Logo ... 45
Gambar 2.20 - Pentaho Data Mining / Weka ... 50
Gambar 2.21 - Pentaho BI Server / Platform ... 51
Gambar 3.1 - Diagram Alur Pengerjaan Tugas Akhir ... 53
Gambar 3.2 - Rancangan Jaringan Komputer ... 56
Gambar 3.3 - Rancangan link database server dengan ODBC... 58
Gambar 3.4 - Rancangan Replikasi Database ... 59
Gambar 3.5 - Diagram Alur Kerja Website dengan SSO ... 60
Gambar 3.6 - Use Case Diagram Implementasi Sistem ... 62
Gambar 3.7 - Activity Diagram dari use case melakukan daftar... 63
Gambar 3.8 - Activity Diagram dari use case melakukan login ... 64
Gambar 3.9 - Rancangan Antar Muka Halaman Awal Website SSO ... 66
Gambar 3.10 - Rancangan Antar Muka Halaman Klarifikasi ... 68
Gambar 3.11 - Rancangan Antar Muka Halaman Login ... 69
Gambar 3.12 - Skenario uji coba ... 71
Gambar 4.1 - Pengaturan Jaringan Virtualbox ... 74
Gambar 4.2 - Ping IP Address debian 7 dari windows 7 ... 75
Gambar 4.3 - Installasi Paket Pada Debian 7 ... 76
Gambar 4.7 - Form Daftar ... 81
Gambar 4.8 - Antar Muka Halaman Websatu.com ... 81
Gambar 4.9 - Antar Muka Halaman Webdua.com ... 82
Gambar 4.10 - MS.SQL Server ODBC 1 ... 83
Gambar 4.11 - MS.SQL Server ODBC 2 ... 83
Gambar 4.12 - MS.SQL Server ODBC 3 ... 84
Gambar 4.13 - MS.SQL Server ODBC 4 ... 84
Gambar 4.14 - PostgreSQL ODBC 1 ... 85
Gambar 4.15 - PostgreSQL ODBC 2 ... 85
Gambar 4.16 - Tranformations Spoon ... 86
Gambar 4.17 - Database Connection Pentaho - MS.SQL Server ... 87
Gambar 4.18 - Connection to database MS.SQL Server Ok ... 87
Gambar 4.19 - Database Connection Pentaho - PostgreSQL ... 88
Gambar 4.20 - Connection to database PostgreQSL Ok ... 88
Gambar 4.21 - Design table input Pentaho ... 89
Gambar 4.22 - Konfigurasi table input ... 90
Gambar 4.23 - Design Tabel Insert/Update ... 91
Gambar 4.27 - Hasil Jalannya Job Keseluruhan Transformation ... 94
Gambar 4.28 - Job Scheduling ... 94
Gambar 4.29 - Hasil Jalannya Script pada Command Prompt ... 96
Gambar 4.30 - Task Scheduler Windows ... 96
Gambar 4.31 - Task Scheduler Windows - General Tab ... 97
Gambar 4.32 - Task Scheduler Windows - Action Tab ... 98
Gambar 4.33 - Login Via MS.SQL Server... 103
Gambar 4.34 - Login Via PostgreSQL ... 104
Gambar 4.35 - Daftar Websatu.com ... 105
Gambar 4.36 - Daftar Webdua.com ... 105
Gambar 4.37 - User Tersimpan ... 106
Gambar 4.38 - Gagal Daftar ... 106
Gambar 4.39 - NPM Masih Kosong ... 107
Gambar 4.40 - Nama Masih Kosong ... 107
Gambar 4.41 - Password Masih Kosong ... 107
Gambar 4.42 - Hasil Uji Coba 1 - Login Websatu.com ... 108
Gambar 4.43 - Hasil Uji Coba 1 - Login Webdua.com ... 108
Gambar 4.47 - Hasil Uji Coba 2 - Logout Websatu.com ... 111
Gambar 4.48 - Hasil Uji Coba 2 - Logout Webdua.com ... 111
Gambar 4.49 - Hasil Uji Coba 2 - Logout Webtiga.com ... 112
Gambar 4.50 - Hasil Uji Coba 2 - Reload Logout Webdua.com ... 112
Halaman Tabel 4.1 - Data Hasil Uji Coba Replikasi ... 99 Tabel 4.2 - Penjelasan Log Grid ... 102
DAFTAR KODE PROGRAM
Halaman Kode Program 4.1 - Pengaturan interfaces jaringan OS Linux Debian 7 ... 73 Kode Program 4.2 - Query MS.SQL Sever ... 75 Kode Program 4.3 - Query PostgreSQL ... 76
Kode Program 4.4 - Pengaturan Virtual Host Dan Domain di System Windows . 78 Kode Program 4.5 - Pengaturan Virtual Host Dan Domain di XAMPP ... 78
Syukur Alhamdulillaahi rabbil ‘alamin terucap atas ke hadirat ALLAH SWT dan atas segala limpahan Kekuatan-Nya sehingga dengan segala keterbatasan waktu, tenaga, pikiran dan keberuntungan yang dimiliki penulis, akhirnya penulis dapat menyelesaikan Skripsi yang berjudul “IMPLEMENTASI REPLIKASI DATABASE MS.SQL SERVER – POSTGRESQL UNTUK PENERAPAN SINGLE SIGN ON (SSO)” tepat pada waktunya.
Skripsi dengan beban 4 SKS ini disusun guna diajukan sebagai salah satu syarat untuk menyelesaikan program Strata Satu (S1) pada jurusan Teknik Informatika, Fakultas Teknologi Industri, UPN ”VETERAN” Jawa Timur.
Melalui Skripsi ini peneliti merasa mendapatkan kesempatan emas untuk memperdalam ilmu pengetahuan yang diperoleh selama berada di bangku perkuliahan, terutama berkenaan tentang penerapan teknologi informasi. Namun, penyusun menyadari bahwa Skripsi ini masih jauh dari Kesempurnaan. Oleh karena itu penyusun sangat mengharapkan saran dan kritik dari para pembaca untuk pengembangan lebih lanjut.
Surabaya, 06 Januari 2014
Ucapan terima kasih ini saya persembahkan sebagai perwujudan rasa syukur atas selesainya Laporan Skripsi ini. Ucapan Beribu Terima Kasih saya tujukan kepada :
1. Allah SWT., karena berkat Rahmat dan HidayahNya saya dapat menyusun dan menyelesaikan Laporan Skripsi ini hingga selesai tepat waktu.
2. Bapak Prof. Dr. Ir. Teguh Soedarto, MP selaku Rektor Universitas Pembangunan Nasional “Veteran” Jawa Timur.
3. Bapak Sutiyono, MT selaku Dekan Fakultas Teknologi Industri UPN “Veteran” Jawa Timur.
4. Ibu Dr. Ir. Ni Ketut Sari, MT. selaku Ketua Jurusan Teknik Informatika UPN “Veteran” Jawa Timur yang telah dengan sabar membimbing dengan segala kerendahan hati dan selalu memberikan kemudahan dan kesempatan bagi saya untuk berkreasi.
5. Ibu Yisti, S.Kom. Selaku PIA Tugas Akhir Teknik Informatika UPN “Veteran” Jawa Timur.
6. Bapak Achmad Junaidi, S.Kom, M.Kom yang sudah memberikan Konsep dan Judul Tugas Akhir ini, serta dengan senang membimbing, membantu dan mengarahkan saya sampai skripsi ini selesai. Terimakasih banyak pak.
memberikan petunjuk, masukan, bimbingan, dorongan serta kritik yang bermanfaat sejak awal hingga terselesainya Skripsi ini. Terimakasih Banyak Pak.
9. Bapak Kafi Ramadhani S.Kom selaku dosen pembimbing Pendamping (Pembimbing II) yang telah memberikan banyak ide, petunjuk, masukan, bimbingan, dorongan serta bantuan yang sangat berarti dan bermanfaat bagi tugas akhir ini. Serta bersedia meluangkan waktu untuk membimbing dan membantu sampai larut malam dan jam istirahat di kantin, banyak memberi semangat serta motivasi sampai skripsi ini selesai. Terimakasih Banyak Pak. 10.Keluarga Tercinta, Terutama Bapak dan Ibuku tersayang, dan Adik yang
selalu memberi keceriaan, di saat pikiran penat. Terima kasih atas semua Do’a, Dukungan serta Harapan-harapanya pada saat penulis sehingga dapat menyelesaikan skripsi dan laporan ini dengan baik.
11.Kawan-kawan TFC 2009 dan seluruh teman jurusan Teknik Informatika angkatan 2009 yang telah membantu dalam penyelesaian Laporan Skripsi ini. Rakhmat, Bambang, Rizal, Nanang, Risko, Wisnu, Made, Dwiki, Gede, Citra, Hillman, Agil, Indra (Pengok) Yang telah memberikan bantuan,dorongan dan doa, maaf yang tak bisa penulis sebutkan namanya mungkin lupa hehe. Terima Kasih yang tak terhingga untuk kalian semua. Semoga Allah SWT yang membalas semua kebaikan dan bantuan tersebut.
Pembimbing 2 : Kafi Ramadhani S.Kom
Penyusun : Fahmi Permana.
ABSTRAK
Penyimpanan dan pertukaran informasi menjadi hal yang perlu dalam dunia teknologi. Database pun menjadi sebuah hal penting keberadaannya dalam perjalanan pertukaran informasi, hal ini membuat DBMS (Database Management
System) di buat bermacam-macam jenis, dengan banyaknya jenis DBMS hal ini
menjadi halangan dalam hubungan antar DBMS. Hubungan antar DBMS sendiri umumnya di butuhkan karena perlunya salinan data dari database utama untuk menjaga atau menyelamatkan database atas kehilangan data maupun kerusakan
database. Hal semacam ini biasa disebut dengan Replikasi.
Replikasi database dengan DBMS berbeda jenis dilakukan dengan
Pentaho Data Integration. Untuk menjaga konsistensi data, pemanfaatan sumber data cadangan pada aplikasi berbasis web dengan Single Sign On (SSO) juga
dilakukan, karna dengan adanya replikasi kedua database memiliki data yang sama.
Implementasi Replikasi pada database dengan DBMS berbeda yakni
MS.SQL Server – PostgreSQL, memberikan jawaban atas integrasi dari dua database dengan DBMS berbeda jenis, Memudahkan user dalam membuat
salinan data pada database berbeda DBMS. Penerapan Single Sign On (SSO) pada
system login aplikasi berbasis web dengan data yang di ambil dari database hasil replikasi, menjadi jawaban untuk meminimalisir dampak buruk bagi jalannya
kegiatan apabila terjadi gangguan pada salah satu database tersebut. Karena Data salinan / hasil replikasi memiliki data yang sama pada keduanya.
Kata Kunci : Database, Replikasi, Single Sign On (SSO), Virtual Host, Virtual
BAB I
PENDAHULUAN
1.1 Latar Belakang
Kemajuan tekonologi saat ini begitu berpengaruh terhadap perkembangan
dunia. Penyimpanan dan pertukaran informasi menjadi hal yang sangat mudah
dilakukan, dengan adanya database server setiap informasi dapat dengan detail di
simpan dan di tata sesuai kegunaan, begitupun pekerjaan yang berhubungan dengan
olah data dan informasi dapat diselesaikan dengan cepat dan aman dengan adanya
database server.
Database pun menjadi sebuah hal penting dalam perjalanan pertukaran
informasi, sehingga membuat DBMS (Database Management System) memiliki
bermacam-macam jenis sesuai dengan fitur dan kegunaannya masing-masing,
begitupun dengan kelebihan dan kekurangannya masing-masing. Karena adanya
perbedaan jenis dari satu database dan database lainnya terkadang muncul
permasalahan lain dimana pengaksesan database atau hubungan antara DBMS satu
dengan yang lain menjadi hal yang perlu dilakukan, untuk mempermudah pertukaran
informasi itu sendiri.
Namun dengan banyaknya jenis DBMS dengan vendor-vendor penciptanya
masing-masing tentu saja hal ini menjadi masalah baru dalam hubungan antar DBMS
jenis tersebut. Oleh karena itu dibutuhkan sebuah system yang mampu
menghubungkan DBMS yang berbeda jenis tersebut agar dapat digunakan sebagai
acuan penyelesaian masalah tersebut.
Hubungan antar DBMS sendiri biasanya di butuhkan karena perlunya salinan
data atau file copy dari database utama untuk menjaga atau menyelamatkan database
atas kehilangan data maupun kerusakan database. Hal semacam ini dilakukan dengan
cara Replikasi, metode Replikasi digunakan untuk melipat gandakan semua
perubahan yang terjadi pada suatu server database ke server lain yang berbeda. Dua
hal penting dari Replikasi adalah menciptakan backup dari server utama untuk
menghindari kehilangan Data jika master mengalami kerusakan dan untuk
memiliki salinan dari server utama dalam menjalankan reporting dan analisis kerja
tanpa mengganggu jalannya kegiatan yang berhubungan dengan database.
Replikasi, seperti migrasi atau sinkronisasi data, dikerjakan dalam database,
antara sumber (source) dan tujuan (target).
Dengan adanya Replikasi, hubungan antar DBMS yang berbeda jenis dapat
terwujud, namun akan lebih baik apabila terdapat sebuah system yang dapat mengatur
konsistensi penggunaan database ini, sehingga apabila terdapat sebuah aplikasi
penunjang lain yang akan berhubungan dengan database semisal aplikasi berbasis
web dengan kemampuan Single Sign On (SSO) yang dapat memudahkan user dengan
adanya login/logout otomatis pada aplikasi lain yang juga terintegrasi SSO , tidak
akan mengalami masalah apabila membutuhkan data dari database yang sudah di
mengambil data mengalami gangguan, maka system akan otomatis menghubungkan
nya dengan database lain yang merupakan salinan / hasil Replikasi dari database
pusat tersebut, sehingga dapat meminimalisir dampak buruk bagi jalannya kegiatan
baik yang melalui aplikasi maupun database tersebut.
Setelah mengamati hal diatas, maka peneliti berinisiatif untuk mengambil judul
tugas akhir “IMPLEMENTASI REPLIKASI DATABASE MICROSOFT SQL
SERVER – POSTGRESQL UNTUK PENERAPAN SINGLE SIGN ON (SSO)”.
Dimana nantinya hubungan antara DBMS berbeda jenis atau secara khusus dalam hal
ini adalah Microsoft SQL Server dan PostgreSQL, akan dapat dilakukan.
1.2 Rumusan Masalah
Adapun permasalahan yang akan dibahas adalah sebagai berikut :
a. Bagaimana mengatasi perbedaan database management dan melakukan
sinkronisasi data pada Ms. SQL Server – PostgreSQL menggunakan
Replikasi ?
b. Bagaimana penerapan Single Sign On (SSO) pada aplikasi berbasis web
menggunakan data yang berasal dari database yang sudah di Replikasi ?
1.3 Batasan Masalah
Adapun batasan-batasan masalah yang dibuat agar dalam pengerjaan tugas
akhir ini dapat berjalan degan baik adalah sebagai berikut :
b. Replikasi menggunakan aplikasi Pentaho Database Integration v5.
c. Replikasi yang diterapkan berupa Replikasi Transaksional.
d. Data pada yang di gunakan dalam Replikasi, diambil dari data NPM dan
Nama Mahasiswa peserta praktikum BDL laboratorium jaringan
komputer UPN “Veteran” Jatim.
e. Penerapan Single Sign On (SSO) menggunakan pemrograman berbasis
web PHP.
1.4 Tujuan
Tujuan dari tugas akhir ini, yaitu:
a. Menerapkan Replikasi Database pada DBMS berbeda yaitu MS.SQL
Server – PostgreSQL.
b. Menerapkan Single Sign On (SSO) pada Aplikasi berbasis Web PHP
menggunakan data yang berasal dari database yang sudah di Replikasi.
c. Memanfaatkan Database yang di Replikasi sebagai sumber data
cadangan pada aplikasi berbasis web PHP untuk keperluan login user.
1.5 Manfaat
Manfaat yang diperoleh dalam Penerapan Replikasi Database Ms.SQLServer –
PostgreSQL untuk Sigle Sign On (SSO) ini, adalah:
a. Tugas Akhir ini nantinya dapat digunakan sebagai acuan untuk
mempermudah melakukan Replikasi Database pada DBMS berbeda yaitu
b. Dengan adanya penerapan Single Sign On (SSO) pada aplikasi berbasis
web PHP, nantinya akan memudahkan user untuk melakukan
pengaksesan banyak aplikasi web yang terhubung langsung dengan
database yang di Replikasi dengan hanya sekali login.
c. Memaksimaalkan pemanfaatan Data hasil Database yang di Replikasi
sebagai sumber cadangan data.
d. Menunjang dan memudahkan kinerja pengguna database dalam bertukar
informasi atau data.
1.6 Metodelogi Penelitian
Beberapa metode dan teknik yang dipergunakan dalam pengumpulan dan
pengolahan Data tugas akhir ini antara lain :
a. Library Research
Pada tahap ini, mempelajari dan membaca buku diktat, referensi, buletin
perpustakaan sebagai acuan yang berkaitan dengan permasalahan yang
akan dibahas.
b. Observation
Pada tahap ini akan melakukan pengamatan dan mencari informasi dari
pakar–pakar yang berpengalaman secara langsung di lapangan untuk
memperoleh Data yang di butuhkan.
c. Perancangan dan Pembuatan Sistem
berikutnya adalah pembuatan sistem yang benar, agar sesuai dengan
rancangan. Pada tahap ini juga dilakukan perancangan diagram alur yang
akan digunakan untuk implementasi dalam perangkat lunak dan system
yang akan dibuat.
d. Pengujian dan Evaluasi Perangkat Lunak
Tahap ini dulakukan pengujian pada perangkat lunak yang telah dibuat,
pengevaluasian hasil yang diperoleh serta perbaikan system (revisi), jika
hasil belum sesuai dengan tujuan yang diharapkan.
e. Pembuatan Naskah Skripsi
Pada tahap ini dilakukan pendokumentasian dari semua tahap agar dicatat
dipelajari untuk pengembangan lebih lanjut. Memaparkan dasar-dasar
teori dan metode yang terlibat di dalamnya, diantaranya desain perangkat
lunak dan implementasinya, hasil pengujian sistem termasuk juga
perbaikan.
1.7 Sistematika Penulisan
Pada penyusunan laporan tugas akhir, sistematika pembahasan diatur dan
disusun dalam enam bab, dan tiap-tiap bab terdiri dari sub-sub bab. Untuk
memberikan gambaran yang lebih jelas, maka diuraikan secara singkat mengenai
materi dari bab-bab dalam penulisan tugas akhir ini sebagai berikut:
BAB I PENDAHULUAN :
Bab ini berisi latar belakang, perumusan masalah, batasan masalah,
pembuatan tugas akhir ini.
BAB II TINJAUAN PUSTAKA :
Bab ini menjelaskan mengenai landasan teori-teori pendukung
pembuatan tugas akhir ini.
BAB III METODELOGI PENELITIAN :
Bab ini berisi tentang analisis dan perancangan sistem dalam
pembuatan Tugas Akhir IMPLEMENTASI REPLIKASI DATABASE
MS.SQL SERVER – POSTGRESQL UNTUK PENERAPAN SINGLE
SIGN ON (SSO).
BAB IV IMPLEMENTASI DAN UJI COBA :
Berisi tentang implementasi sistem secara keseluruhan mulai dari
implementasi data yang diperlukan, uji coba terhadap sistem yang
telah selesai dibuat dan hasil dari pengujian sistem yang selanjutnya
dievaluasi.
BAB V PENUTUP :
Bab ini berisi kesimpulan dan saran dari penulis untuk pengembangan
sistem.
DAFTAR PUSTAKA :
Pada bagian ini akan dipaparkan tentang sumber-sumber literatur yang
2.1 Tinjaua n Umum
Universitas Pembangunan Nasional “Veteran” Jatim Memiliki Database utama
yang menggunakan DBMS Microsoft SQL Server, dimana dalam database tersebut
tersimpan rapi beragam informasi yang berhubungan dengan akademik. Terdapat
juga beragam aplikasi berbasis web yang berhubungan langsung dengan DBMS Ms.
SQL Server tersebut, seperti halnya siamik yang menggunakan ASP.net sebagai
aplikasi berbasis web yang berhubungan langsung dengan database dalam satu
vendor yang sama yakni Microsoft. Tentu hal ini akan menjadi rumit apabila suatu
saat diperlukan akses terhadap database tersebut namun melalui DBMS atau aplikasi
lain di luar vendor microsoft, seperti database dengan DBMS PostgreSQL dan
Aplikasi Web berbasis PHP.
Hubungan antar DBMS di butuhkan karena perlunya salinan data atau file copy
dari database utama untuk menjaga atau menyelamatkan database atas kehilangan
data maupun kerusakan database. Hal semacam ini dilakukan dengan cara Replikasi,
Replikasi digunakan untuk melipat gandakan semua perubahan yang terjadi pada
suatu server database ke server lain yang berbeda. Database memiliki peranan
penting dalam proses pengolahan informasi dan data, namun salah satu
kelemahannya adalah terdapat banyaknya jenis DBMS yang dibangun sesuai
memutuskan untuk menerapkan Replikasi dari database dengan DBMS yang berbeda
yaitu MS.SQL Server dengan PostgreSQL menggunakan bantuan aplikasi Pentaho
Data Integration yang memungkinkan terjadinya Replikasi antara DBMS berbeda
tersebut, disertai peningkatan system yang ada dengan penerapan Single Sign On
(SSO) pada aplikasi berbasis web PHP yang terhubung dengan database yang di
Replikasi untuk memudahkan user sekaligus meminimalisir dampak buruk bagi
jalannya kegiatan baik yang menggunakan aplikasi maupun database tersebut.
2.2 Landasan Teor i
Beberapa teori dasar untuk menunjang penyelesaian tugas akhir ini, antara lain
teori dasar jaringan komputer, Pengertian Database dan DBMS, Replikasi serta teori
dasar lain sebagai berikut :
2.2.1 Database
Gamba r 2.1 – Database
Menurut Inmon (2005), database adalah sekumpulan data yang saling
berhubungan yang disimpan (biasanya dengan redudansi yang terkontrol dan
terbatas) berdasarkan skema. Sebuah database dapat melayani single atau
multiple applications.
Menurut Connolly dan Begg (2010), database adalah sekumpulan data
tersebar yang berhubungan secara logis, dan penjelasan dari data ini dirancang
untuk memenuhi kebutuhan informasi dari suatu organisasi.
Menurut Gottschalk dan Saether dalam jurnal (2010), database adalah
sekumpulan data yang terorganisir untuk mendukung banyak aplikasi secara
efisien dengan memusatkan data dan mengontrol data redundant.
Berdasarkan definisi-definisi yang dijabarkan oleh para ahli di atas, maka
dapat disimpulkan Pangkalan Dataatau basis Data (bahasa Inggris: database),
atau sering pula dieja basis Data, adalah kumpulan informasi yang disimpan di
dalam komputer secara sistematik sehingga dapat diperiksa menggunakan
suatu Program komputer untuk memperoleh informasi dari basis Data
tersebut. Perangkat lunak yang digunakan untuk mengelola dan
memanggil kueri (query) basis Data disebut sistem manajemen basis
Data (database management system, DBMS). Sistem basis Data dipelajari
dalam ilmu informasi.
Istilah "basis Data" berawal dari ilmu komputer. Meskipun kemudian
artinya semakin luas, memasukkan hal-hal di luar bidang elektronika, artikel ini
sebenarnya sudah ada sebelum revolusi industri yaitu dalam bentuk buku besar,
kuitansi dan kumpulan Data yang berhubungan dengan bisnis.
Konsep dasar dari basis Data adalah kumpulan dari catatan-catatan, atau
potongan dari pengetahuan. Sebuah basis Data memiliki penjelasan terstruktur
dari jenis fakta yang tersimpan di dalamnya: penjelasan ini disebut skema.
Skema menggambarkan obyek yang diwakili suatu basis Data, dan hubungan di
antara obyek tersebut. Ada banyak cara untuk mengorganisasi skema, atau
memodelkan struktur basis Data: ini dikenal sebagai model basis Data atau
model Data. Model yang umum digunakan sekarang adalah model relasional,
yang menurut istilah layman mewakili semua informasi dalam bentuk
tabel-tabel yang saling berhubungan dimana setiap tabel-tabel terdiri dari baris dan kolom
(definisi yang sebenarnya menggunakan terminologi matematika). Dalam
model ini, hubungan antar tabel diwakili denga menggunakan nilai yang sama
antar tabel. Model yang lain seperti model hierarkis dan model
jaringan menggunakan cara yang lebih eksplisit untuk mewakili hubungan antar
tabel.
Istilah basis data mengacu pada koleksi dari Data-Data yang saling
berhubungan, dan perangkat lunaknya seharusnya mengacu sebagai sistem
manajemen basis data (database management system/DBMS). Jika konteksnya
sudah jelas, banyak administrator dan Programer menggunakan istilah basis
2.2.2 Asal Mula Istilah Database
Istilah “database” berawal dari ilmu komputer. Meskipun kemudian
artinya semakin luas, memasukkan hal-hal yang di luar bidang elektronika,
artikel mengenai Database komputer. Catatan yang mirip dengan Database
sebenarnya sudah ada sebelum revolusi industri yaitu dalam bentuk buku besar,
kuitansi danm kumpulan Data yang berhubungan dengan bisnis.
(http://thekicker96.wordpress.com/pengertian-database/)
2.2.3 Database Management System (DBMS)
Gambar 2.2 – Database Management System (DBMS)
Sumber : (Muhammad Subhan, 2007)
Menurut Kimball dan Ross (2002), Database Management System
(DBMS) adalah sebuah aplikasi komputer yang tujuan utamanya menyimpan,
mengambil, dan memodifikasi data dalam cara yang sangat terstruktur. Data
Menurut Connolly dan Begg (2010), Database Management System
(DBMS) adalah sebuah sistem software yang memungkinkan pengguna untuk
mendefinisikan, membuat, me-maintain, dan mengontrol akses ke database.
Berdasarkan definisi-definisi yang dijabarkan oleh para ahli di atas, maka
dapat disimpulkan Database Management System (DBMS) adalah sebuah
sistem software atau aplikasi komputer yang memungkinkan pengguna untuk
mendefinisikan, membuat, me-maintain, mengontrol akses, memodifikasi,
menyimpan, dan mengambil data dalam cara yang terstruktur serta mengontrol
akses ke database.
Sistem mana jemen basis Data (Bahasa Inggris: database management
system, DBMS), atau kadang disingkat SMBD, adalah suatu sistem atau
perangkat lunak yang dirancang untuk mengelola suatu basis Data (database)
dan menjalankan operasi terhadap Data yang diminta banyak pengguna.
Contoh tipikal SMBD adalah akuntansi, sumber daya manusia, dan sistem
pendukung pelanggan, SMBD telah berkembang menjadi bagian standar di
bagian pendukung (back office) suatu perusahaan (C.J. Date, 2009). Contoh
DBMS adalah Oracle, SQL Server 2000/2003, MS Access, MySQL dan
sebagainya. DBMS merupakan perangkat lunak yang dirancang untuk dapat
melakukan utilisasi dan mengelola koleksi Data dalam jumlah yang besar.
DBMS juga dirancang untuk dapat melakukan manipulasi Data secara lebih
masih ada aplikasi yang menimpan Data dalam bentuk flat secara langsung.
Menyimpan Data dalam bentuk flat file mempunyai kelebihan dan kekurangan.
Penyimpanan dalam bentuk ini akan mempunyai manfaat yang optimal jika
ukuran filenya relatif kecil, seperti file passwd pada sistem operasi Unix dan
Unix-like. File passwd pada umumnya hanya digunakan untuk menyimpan
nama yang jumlahnya tidak lebih dari 1000 orang. Selain dalam bentuk flat file,
penyimpanan Data juga dapat dilakukan dengan menggunakan Program bantu
seperti spreadsheet. Penggunaan perangkat lunak ini memperbaiki beberapa
kelemahan dari flat file, seperti bertambahnya kecepatan dalam pengolahan
data. Namun demikian metode ini masih memiliki banyak kelemahan,
diantaranya adalah masalah manajemen dan keamanan Data yang masih
kurang. Penyimpanan data dalam bentuk DBMS mempunyai banyak manfaat
dan kelebihan dibandingkan dengan penyimpanan dalam bentuk flat file atau
spreadsheet, diantaranya :
1. Performa yang dapat dengan penyimpanan dalam bentuk DBMS
cukup besar, sangat jauh berbeda dengan performance data yang
disimpan dalam bentuk flat file. Disamping memiliki unjuk kerja
yang lebih baik, juga akan didapatkan efisiensi penggunaan media
penyimpanan dan memori
2. Integritas data lebih terjamin dengan penggunaan DBMS. Masalah
berulangnya data atau kumpulan data yang sama dalam sebuah
database yang mengakibatkan pemborosan media penyimpanan.
3. Independensi. Perubahan struktur database dimungkinkan terjadi
tanpa harus mengubah aplikasi yang mengaksesnya sehingga
pembuatan antarmuka ke dalam data akan lebih mudah dengan
penggunaan DBMS.
4. Sentralisasi. Data yang terpusat akan mempermudah pengelolaan
database. kemudahan di dalam melakukan bagi pakai dengan
DBMS dan juga kekonsistenan Data yang diakses secara
bersama-sama akan lebiih terjamin dari pada Data disimpan dalam bentuk
file atau worksheet yang tersebar.
5. Keamanan. DBMS memiliki sistem keamanan yang lebih fleksibel
dari pada pengamanan pada file sistem operasi. Keamanan dalam
DBMS akan memberikan keluwesan dalam pemberian hak akses
kepada pengguna.
2.2.4 Konsep Dasa r Database
Konsep dasar database adalah kumpulan dari catatan, atau potongan dari
pengetahuan (Anhar, 2010). Sebuah database memiliki penjelasan terstruktur
dari jenis fakta yang tersimpan di dalamnya: penjelasan ini disebut skema. Ada
ini dikenal sebagai database model atau model data. Model yang umum
digunakan sekarang adalah model relasional, yang menurut istilah yaitu
mewakili semua informasi dalam bentuk tabel yang saling berhubungan dimana
setiap tabel terdiri dari baris dan kolom (definisi yang sebenarnya
menggunakan terminologi matematika). Dalam model ini, hubungan antar tabel
diwakili dengan menggunakan nilai yang sama antar tabel.
2.2.5 Perangka t Untuk Membua t Database
Database dapat dibuat dan diolah dengan menggunakan suatu program
komputer, yaitu yang biasa disebut dengan software (perangkat lunak).Software
yang digunakan untuk mengelola dan memanggil kueri (query) Database
disebut Database Management System (DBMS), (Connolly, 2002). atau jika
diterjemahkan kedalam bahasa indonesia berarti “Sistem Manajemen Basis
Data”.
DBMS terdiri dari dua komponen, yaitu Relational Database
Management System (RDBMS) dan Overview of Database Management System
(ODBMS). RDBMS meliputi Interface Drivers, SQL Engine, Transaction
Engine, Relational Engine, dan Storage Engine. Sedangkan ODBMS meliputi
Language Drivers,Query Engine, Transaction Engine, dan Storage Engine.
Sedangkan level dari softwarenya sendiri, terdapat dua level software
yang memungkinkan untuk membuat sebuah Database antara lain :
• High Level Softwar e
Yang termasuk di dalam High Level Software, antara lain Microsoft SQL
Server, Oracle, Sybase, Interbase, XBase, Firebird, MySQL, PostgreSQL,
Microsoft Access, dBase III, Paradox, FoxPro, Visual FoxPro, Arago, Force,
Recital, dbFast, dbXL,Quicksilver, Clipper, FlagShip, Harbour, Visual dBase,
dan Lotus Smart Suite Approach.
Sedangkan yang termasuk di dalam Low Level Software antara lain
Btrieve dan Tsunami Record Manager.
2.2.6 Tipe Database
Terdapat 12 tipe Database (S. Attre,2002), antara lain :
1. Oper ational database: Database ini menyimpan data rinci yang
diperlukan untuk mendukung operasi dari seluruh organisasi. Mereka
juga disebut subject- area databases (SADB), transaksi database, dan
produksi database. Contoh: database pelanggan, database pribadi,
database inventaris, akuntansi database.
2. Analytical data base: Database ini menyimpan data dan informasi
yang diambil dari operasional yang dipilih dan eksternal database.
Mereka terdiri dari data dan informasi yang dirangkum paling dibutuhkan
oleh sebuah organisasi manajemen dan End-user lainnya. Beberapa orang
menyebut analitis multidimensi database sebagai database, manajemen
3. Data war ehouse: Sebuah data warehouse menyimpan data dari saat
ini dan tahun- tahun sebelumnya - data yang diambil dari berbagai
database operasional dari sebuah organisasi.
4. Distr ibuted database: Ini adalah database-kelompok kerja lokal dan
departemen di kantor regional, kantor cabang, pabrik-pabrik dan lokasi
kerja lainnya. Database ini dapat mencakup kedua segmen yaitu
operasional dan user database, serta data yang dihasilkan dan digunakan
hanya pada pengguna situs sendiri.
5. End-user data base: Database ini terdiri dari berbagai file data yang
dikembangkan oleh end-user di workstation mereka. Contoh dari ini
adalah koleksi dokumen dalam spreadsheet, word processing dan bahkan
download file.
6. Exter nal data base: Database ini menyediakan akses ke eksternal,
data milik pribadi online - tersedia untuk biaya kepada pengguna akhir
dan organisasi dari layanan komersial. Akses ke kekayaan informasi dari
database eksternal yang tersedia untuk biaya dari layanan online
komersial dan dengan atau tanpa biaya dari banyak sumber di Internet.
7. Hyper media databases on the web: Ini adalah kumpulan dari
halaman-halaman multimedia yang saling berhubungan di sebuah situs
web. Mereka terdiri dari home page dan halaman hyperlink lain dari
multimedia atau campuran media seperti teks, grafik, gambar foto, klip
8. Navigational data base: Dalam navigasi database, queries
menemukan benda terutama dengan mengikuti referensi dari objek lain.
9. In-memor y databa ses: Database di memori terutama bergantung
pada memori utama untuk penyimpanan data komputer. Ini berbeda
dengan sistem manajemen database yang menggunakan disk berbasis
mekanisme penyimpanan. Database memori utama lebih cepat daripada
dioptimalkan disk database sejak Optimasi algoritma internal menjadi
lebih sederhana dan lebih sedikit CPU mengeksekusi instruksi.
10. Document-or iented databa ses: Merupakan program komputer yang
dirancang untuk aplikasi berorientasi dokumen. Sistem ini bisa
diimplementasikan sebagai lapisan di atas sebuah database relasional atau
objek database. Sebagai lawan dari database relasional, dokumen berbasis
database tidak menyimpan data dalam tabel dengan ukuran seragam
kolom untuk setiap record. Sebaliknya, mereka menyimpan setiap catatan
sebagai dokumen yang memiliki karakteristik tertentu. Sejumlah bidang
panjang apapun dapat ditambahkan ke dokumen. Bidang yang dapat juga
berisi beberapa bagian data.
11. Rea l-time data bases Real-time: Database adalah sistem pengolahan
dirancang untuk menangani beban kerja negara yang dapat berubah
terus-menerus. Ini berbeda dari database tradisional yang mengandung data
yang terus- menerus, sebagian besar tidak terpengaruh oleh waktu.
Real-time processing berarti bahwa transaksi diproses cukup cepat bagi hasil
untuk kembali dan bertindak segera. Real-time database yang berguna
untuk akuntansi, perbankan, hukum, catatan medis, multi-media, kontrol
proses, sistem reservasi, dan analisis data ilmiah.
12. Relational Data base: Database yang paling umum digunakan saat
ini. Menggunakan meja untuk informasi struktur sehingga mudah untuk
mencari.
2.3 Replikasi
Gambar 2.3 – Replikasi Database
Sumber : (Nanto, 2012)
Replikasi adalah suatu teknik untuk melakukan copy dan pendistribusian data
dan objek-objek database dari satu database ke database lain dan melaksanakan
sinkronisasi antara database sehingga konsistensi data dapat terjamin (Wahyuningsih,
2011), Dua hal penting dari replikasi adalah menciptakan backup dari server utama
untuk menghindari kehilangan data jika master mengalami kerusakan dan untuk
memiliki salinan dari server utama untuk menjalankan reporting dan analisis kerja
tanpa mengganggu jalannya bisnis. Replikasi, seperti migrasi atau sinkronisasi
2.3.1 Teknik Single Master Replicated
Dengan metode ini, salah satu komputer berfungsi sebagai master dan
yang lainnya berfungsi sebagai slave. Pada prosesnya, komputer yang
digunakan sebagai server akan dapat read dan write ke dalam database.
Sedangkan komputer yang berfungsi sebagai slave, hanya akan read saja
kedalam database tersebut. Apabila kita melakukan perubahan data pada
master, maka otomatis data pada slave akan berubah. Tetapi jika kita
melakukan perubahan data pada slave, database pada master tidak akan
berubah. (Eddy Purwanto,2012).
Gamba r 2.4 - Teknik Single Master Replication
2.3.2 Teknik Multi Master Replicated
Dengan metode ini, salah satu komputer berfungsi sebagai master server
dan yang lainnya berfungsi sebagai master server juga. Pada prosesnya, setiap
komputer akan dapat write dan read data didalam database. Apabila kita
master server 2 akan berubah. Begitu juga jika kita melakukan perubahan data
pada master server 2 , database pada master server 1 akan berubah . Artinya
setiap master 1 dan master 2 akan dapat mengubah dan menambah data pada
database yang akan didistribusikan. (Eddy Purwanto,2012).
Gamba r 2.5 - Teknik Multi Master Replication
2.3.3 Konsep Dasa r Replikasi
Replikasi adalah suatu teknik untuk melakukan copy dan pendistribusian
data dan objek-objek database dari satu database ke database lain dan
melaksanakan sinkronisasi antara database sehingga konsistensi data dapat
terjamin. (Wahyuningsih, 2011).
Dengan menggunakan teknik replikasi ini, data dapat didistribusikan ke
lokasi yang berbeda melalui koneksi jaringan lokal maupun internet. Replikasi
juga memungkinkan untuk mendukung kinerja aplikasi, penyebaran data fisik
(Desiscion Support System) atau pemrosessan database terdistribusi melalui
beberapa server.
Keuntungan replikasi tergantung dari jenis replikasi tetapi pada umumnya
replikasi mendukung ketersediaan Data setiap waktu dan dimanapun
diperlukan.
Adapun keuntungan lainnya adalah :
1. Memungkinkan beberapa lokasi menyimpan data yang sama. Hal ini
sangat berguna pada saat lokasi-lokasi tersebut membutuhkan data yang
sama atau memerlukan server yang terpisah dalam pembuatan aplikasi
laporan.
2. Aplikasi transaksi online terpisah dari aplikasi pembacaan seperti proses
analisis database secara online, data smarts atau data warehouse.
3. Memungkinkan otonomi yang besar. Pengguna dapat bekerja dengan
mengcopy Data pada saat tidak terkoneksi kemudian melakukan
perubahan untuk dibuat Database baru pada saat terkoneksi
4. Data dapat ditampilkan seperti layaknya melihat data tersebut dengan
menggunakan aplikasi berbasis Web
5. Meningkatkan kinerja pembacaan
6. Membawa Data mendekati lokasi individu atau kelompok pengguna. Hal
ini akan membantu mengurangi masalah karena modifikasi Data dan
dapat didistribusikan melalui jaringan dan data dapat dibagi berdasarkan
kebutuhan masing-masing unit atau pengguna.
7. Penggunaan replikasi sebagai bagian dari strategi standby server.
Replikasi dapat digunakan apabila sebuah organisasi atau perusahaan
didukung oleh hardware dan aplikasi sofware dalam sebuah sistem yang
terdistribusi. Aplikasi yang berbeda mempunyai kebutuhan yang berbeda untuk
otonomi dan konsistensi data. Replikasi diperlukan dalam sistem terdistibusi
apabila berikut ini:
1. Mengcopy dan mendistribusikan Data dari satu atau lebih lokasi
2. Mendistribusikan hasil copy data berdasarkan jadwal
3. Mendistribusikan perubahan data ke Server lain
4. Memungkinkan beberapa pengguna di beberapa lokasi untuk melakukan
perubahan dan kemudian menggabungkan Data yang telah dimodifikasi
5. Membangun aplikasi Data yang menggunakan perlengkapan online
maupun offline
6. Membangun aplikasi Web sehingga pengguna dapat melihat volume data
yang besar.
2.3.4 J enis-jenis Replikasi
A. Replikasi Snapshot
Gambar 2.6 – Replication Snapshot
Sumber : (MSDN Microsoft, 2003)
Replikasi yang memiliki copy-copy yang sama persis di seluruh
tujuan replikasi. Replikasi ini akan bekerja secara periodik sehigga
subscriber-subscriber mungkin tidak memiliki informasi yang paling
baru.
Mend istribusikan da ta yang dapat dilih at p ada s a a t
t e r t e n t u t a n p a m e l a k u k a n u p d a t e . B i a s a n y a d i g u n a k a n
p a d a s a a t m e m e r l u k a n t a m p i l a n d a t a , seperti : d aftar h arga,
katalog, data yang digunakan untuk pengambilan keputusan.
Data-data ini sifatnya hanya ‘read only’. Replikasi ini membantu pada saat:
• Data sebagian besar statis dan tidak sering berubah.
• D a p a t m e n e r i m a c o p y d a t a y a n g t e l a h
• Datanya sedikit
B. Replikasi Transaksional
Ga mbar 2.7 – Transactional Replication
Sumber : (MSDN Microsoft, 2003)
Replikasi yang mereplikasikan transaksi-transaksi satu persatu,
bukan keseluruhan kelompok data. Replikasi ini terjadi secara
kontinu/periodik, yang membuat prosedur tersebut lebih baik
dibandingkan Replikasi snapshot karena dapat memelihara kekonsistenan
transaksi yang terjadi.
Ga mbar 2.8 – Replication Merge
Sumber : (MSDN Microsoft, 2003)
Replikasi yang memproses perubahan secara baris-per baris. Baris
baris ini bisa di kelompokkan menjadi sebuah logical record. Pada
Replikasi snapshot dan transaksional, subscriber-subscriber biasanya
tidak melakukan perubahan data. Namun, pada Replikasi Merge dapat
melakukan perubahan data pada subcriber, yaitu dengan Immediate
2.4 Microsoft SQL Server
Ga mbar 2.9 – Microsoft SQL Server
Sumber : (MSDN Microsoft, 2012)
Microsoft SQL Server adalah sebuah sistem manajemen basis data
relasional (RDBMS) produk dari Microsoft. Bahasa Query utamanya adalah
Transact-SQL yang merupakan implementasi dari SQL standar ANSI/ISO yang
digunakan oleh Microsoft dan Sybase. Umumnya SQL Server digunakan di dunia
bisnis yang memiliki basis Data berskala kecil sampai dengan menengah, tetapi
kemudian berkembang dengan digunakannya SQL Server pada basis data besar.
Microsoft SQL Server dan Sybase/ASE dapat berkomunikasi lewat jaringan
dengan menggunakan protokol TDS (Tabular Data Stream). Selain dari itu,
Microsoft SQL Server juga mendukung ODBC (Open Database Connectivity), dan
mempunyai driver JDBC untuk bahasa pemrograman Java. Fitur yang lain dari SQL
Server ini adalah kemampuannya untuk membuat basis Data mirroring dan
2.4.1 Seja rah Micr osoft SQL Server
Pada tahun 1988, Microsoft mengeluarkan versi pertama dari SQL
Server. Pada saat itu masih didesign untuk platform OS/2 dan dan dideveloperi
bersama antara Microsoft dengan Sybase. selama awal tahun1990-an, Microsoft
mulai untuk membuat versi baru dari SQL Server untuk platform NT-nya.
Selama proses development tersebut Microsoft memutuskan bahwa Microsoft
SQL Server ini harus bisa terintegrasi dengan kuat dengan operasi NT-nya.
Pada tahun 1993, windows NT 3.1 dan SQL Server 4.2 untuk NT dirilis oleh
Microsoft. Target Microsoft untuk mengkombinasikan antara performa
Database Server yang tinggi serta kemudahan cara penggunaan dan
administrasi rupanya tercapai melalui SQL Server ini. Microsoft terus berhasil
memasarkan SQL Server dan menjadi Database Server yang terkenal. Pada
tahun 1994, Microsoft dan Sybase secara resmi menngakhiri kerjasamanya. Di
tahun 1995 Microsoft merilis versi 6.0 dari SQL Server. Versi ini merupakan
versi yang paling penting karena sebagian besar merupakan hasil tulis ulang
dan juga redesign dari core technology sebelumnya. Versi 6.0 ini menawarkan
peningkatan pada performa, built-in replication dan juga administrasi yang
tersentralisasi. Pada tahun 1996, Microsoft merilis SQL Server 6.5 Enterprise
Edition. SQL Server 7.0 dirilis Microsoft pada tahun 1998 dan Database
engine-nya ditulis ulang agar lebih optimal. Akhirnya tahun 2000 Microsoft
Versi SQL Server 2000 ini berbasis pada framework yang ada pada versi 7.0
sebelumnya.
Sedangkan versi terbaru dan yang paling terakhir untuk saat ini adalah
SQL Server 2012 , dengan penambahan berbagai fitur - fitur yang dapat
memudahkan user untuk membuat database.
(http://mugi.or.id/blogs/9llagank/archive/2011/06/25/apa-itu-microsoft-sql-server.aspx)
2.5 Postgr eSQL
Gambar 2.10 – PostgreSQL
Sumber : (Wikipedia, 2013 )
PostgreSQL merupakan sebuah Object-Relational Database Management
System (ORDBMS) berdasarkan pada PostgreSQL Versi 4.2 yang dikembangkan di
sebagi pelopor bagi banyak software DBMS lain yang kemudian menjadi komersial.
(Yoga Prihastomo, 2008).
PostgreSQL memiliki lisensi GPL (General Public License) dan oleh karena itu
PostgreSQL dapat digunakan, dimodifikasi dan didistribusikan oleh setiap orang
tanpa perlu membayar lisensi (free of charge) baik untuk keperluan pribadi,
pendidikan maupun komersil. PostgreSQL merupakan DBMS yang open-source yang
mendukung bahasa SQL secara luas dan menawarkan beberapa fitur-fitur modern
seperti :
Selain itu, PostgreSQL telah mendukung teknologi lama dengan menambahkan
fitur-fitur baru pada :
Postgres pada awalnya dikembangkan oleh mahasiswa dan staff
Programmer University of California, Berkeley, dibawah arahan Professor
Michael Stonebraker. Sofware ini mulanya dinamai Postgres, tetapi karena
banyak tambahan untuk fungsi fungsi SQL maka pada tahun 1995 namanya
sekarang adalah PostgreSQL. Pada saat pertama dikembangkan postgres
dianggap tidak memenuhi stardar ANSI-SQL92 -standar Database berskala
besar- , karena tujuannya hanya menjadikan postgres sebagai Database yang
mempunyai banyak feature dan keluwesan yang tinggi. Karena merasa
mendapat tantangan postgres berusaha untuk memenuhi standar tersebut, dan
akhirnya postgres mampu juga untuk mencapai satndar ANSI-SQL. Tetapi
yang lebih gila lagi ternyata kemampuan postgres melebihi standar ANSI_SQL,
yang berarti kemampuan postgres melebihi Database lain standar ANSI-SQL92
yang diantarannya adalah Oracle. Wajar jika Postgres dinobatkan Linux Award
sebagai Database pilihan dan menempatkan Oracle pada tembat ke-dua.
Perbedaan yang paling mendasar antara postgres dengan sistem relasional
standar adalah, kemampuan postgres yang memungkinkan user untuk
mendefinisikanSQL-nya sendiri, terutama untuk pembuatan function. Hal ini
dimungkinkan karena informasi yang tersimpan pada postgres tidak hanya tabel
dan kolom melainkan tipe, fungsi, car akses, dan informasi lain. Kesemuanya
itu dihimpun dalam bentuk class yang memungkinkan user untuk merubahnya.
Dengan model class ini postgres lebih mudah dikembangkan ditingkat user dan
bisa mendefinisikan sebuah tabel sebagai turunan tabel lain. Dimana pada
Database konvensional hal itu hanya bisa dilakukan dengan mengganti Source
code nya atau menggunakan modul tambahan . Kelebihan lain dari postgres
adalah dukungan antar muka dari berbagai bahasa pemrograman seperti Perl,
kemampuan untuk membuat konektifitas dengan Database lain seperti pgdump,
Interbase, pgaccess dan hampir semua Database pada Linux. Karena
kemampuan itulah wajar jika bagi yang telah mencoba postgres menjadi
kecanduan dan sulit untuk pindah ke Database lain termasuk penulis. Saat ini
postgres telah banyak digunakan oleh berbagai perusahaan besar, Rumah Sakit
Pertamina adalah salah satu yang telah menggunakan Postgres.
PostgreSQL adalah sebuah object-relational Database Management
system (ORDBMS) yang bersifat open Source. PostgreSQL adalah Database
yang powerful dan tidak kalah dengan Database komersil sekelasnya Oracle,
Sybase maupun Informix. PostgreSQL yang mendukung standar SQL92 dan
SQL99 ini juga mendukung bahasa pemrograman C, C++, Java, Tcl, Perl,
Python, PHP, dst. (http://renzegth.wordpress.com/postgresql/)
2.5.2 PHP PgAdmin
Gamba r 2.11 – PhpPgAdmin
phpPgAdmin adalah alat bantu administrasi Database berbasis web yang
dibuat khusus untuk mengelola Database PostgreSQL. Sama halnya dengan
phpmyadmin yang popular terlebih dahulu, user hanya cukup Dengan
mengakses localhost seperti pada Phpmyadmin, phpPgAdmin akan muncul
dengan jendela baru.
Untuk mengakses Database PostgreSQL lewat phpPgAdmin Pertama
harus melakukan login ke Server PostgreSQL dengan klik pada
tautan Postgr eSQL di bawah bagian "Servers" pada menu sebelah kiri, dan klik
tombol Login. Jika sudah melakukan login, pilih Database yang ingin anda
kelola dengan mengembangkan menu "PostgreSQL" di bawah "Servers" pada
sebelah kiri halaman. Database akan muncul, klik pada nama Database yang
akan dikelola.
Kemudian bisa memulai menggunakan semua fungsi yang tersedia untuk
mengelola Database anda dengan aplikasi yang canggih tetapi mudah
digunakan ini. Halaman resmi pengembang PhpPgAdmin adalah
http://phppgadmin.Sourceforge.net/.
2.6 Apache
Ga mbar 2.12 – Apache
Sumber : (Wikipedia, 2013)
Server HTTP Apache atau Server Web/WWW Apache adalah Server web
yang dapat dijalankan di banyak sistem operasi (Unix,BSD, Linux, Microsoft
Windows dan Novell Netware serta platform lainnya) yang berguna untuk melayani
dan memfungsikan situs web. Protokol yang digunakan untuk melayani fasilitas
web/www ini menggunakan HTTP.
Apache memiliki fitur-fitur canggih seperti pesan kesalahan yang dapat
dikonfigur, autentikasi berbasis basis Data dan lain-lain. Apache juga didukung oleh
sejumlah antarmuka pengguna berbasis grafik (GUI) yang memungkinkan
penanganan Server menjadi mudah.
Apache merupakan perangkat lunak sumber terbuka dikembangkan oleh
komunitas terbuka yang terdiri dari pengembang-pengembang dibawah
2.6.1 Seja rah Apache
Pada awal mulanya, Apache merupakan perangkat lunak sumber
terbuka yang menjadi alternatif dari Server web Netscape (sekarang dikenal
sebagai Sun Java System Web Server). Sejak April 1996 Apache
menjadi Server web terpopuler di Internet. Pada Mei 1999, Apache digunakan
di 57% dari semua web Server di dunia. Pada November 2005 persentase ini
naik menjadi 71%. (sumber: Netcraft Web Server Survey, November 2005).
Asal mula nama Apache berasal ketika sebuah Server web populer yang
dikembangkan pada awal 1995 yang bernama NCSA HTTPd 1.3 memiliki
sejumlah perubahan besar terhadap kode sumbernya (patch). Saking banyaknya
patch pada perangkat lunak tersebut sehingga disebut sebuah Server yang
memiliki banyak patch ("a patchy" Server). Tetapi pada halaman FAQ situs
web resminya, disebutkan bahwa "Apache" dipilih untuk menghormati suku
asli Indian Amerika Apache (Indé), yang dikenal karena keahlian dan strategi
perangnya. Versi 2 dari Apache ditulis dari awal tanpa mengandung kode
sumber dari NCSA. (https://id.wikipedia.org/wiki/Apache_HTTP_Server)
2.7 XAMPP
Gambar 2.13 – XAMPP
XAMPP (/ˈ zæmp/ atau /ˈ ɛ ks.æmp/) adalah perangkat lunak bebas, yang
mendukung banyak sistem operasi, merupakan kompilasi dari beberapa Program.
Fungsinya adalah sebagai Server yang berdiri sendiri (localhost), yang terdiri atas
Program Apache HTTP Server, MySQLDatabase, dan penerjemah bahasa yang
ditulis dengan bahasa pemrograman PHP dan Perl. Nama XAMPP merupakan
singkatan dari X (empat sistem operasi apapun), Apache, MySQL, PHP dan Perl.
Program ini tersedia dalam GNU General Public License dan bebas, merupakan web
Server yang mudah digunakan yang dapat melayani tampilan halaman webyang
dinamis. Untuk mendapatkanya dapat mendownload langsung dari web resminya.
XAMPP dikembangkan dari sebuah tim proyek bernama Apache Friends, yang
terdiri dari Tim Inti (Core Team), Tim Pengembang (Development Team) & Tim
Dukungan (Support Team)
XAMPP adalah singkatan yang masing-masing hurufnya adalah:
X: Program ini dapat dijalankan dibanyak sistem operasi, seperti Windows, Linux,
Mac OS, dan Solaris.
A: Apache, merupakan aplikasi web Server Tugas utama Apache adalah
menghasilkan halaman web yang benar kepada user berdasarkan kode PHP yang
dituliskan oleh pembuat halaman web. jika diperlukan juga berdasarkan kode PHP
yang dituliskan,maka dapat saja suatu Database diakses terlebih dahulu (misalnya
M: MySQL, merupakan aplikasi Database Server. Perkembangannya disebut SQL
yang merupakan kepanjangan dari Structured Query Language. SQL merupakan
bahasa terstruktur yang digunakan untuk mengolah Database. MySQL dapat
digunakan untuk membuat dan mengelola Database beserta isinya. Kita dapat
memanfaatkan MySQL untuk menambahkan, mengubah, dan menghapus Data yang
berada dalam Database.
P: PHP, bahasa pemrograman webBahasa pemrograman PHP merupakan bahasa
pemrograman untuk membuat web yang bersifat server-side scripting. PHP
memungkinkan kita untuk membuat halaman web yang bersifat dinamis. Sistem
manajemen basis Data yang sering digunakan bersama PHP adalah MySQl. namun
PHP juga mendukung sistem manajement Database Oracle, Microsoft
Access, Interbase, d-base, PostgreSQL, dan sebagainya.
P: Perl, bahasa pemrograman.
(http://www.apachefriends.org/en/xampp.html)
2.8 OS Linux Debian
Ga mbar 2.14 – Debian OS Logo
Debian (dɛ biə n) adalah sistem operasi komputer yang tersusun dari paket-paket
perangkat lunak yang dirilis sebagai perangkat lunak bebas dan terbuka dengan
lisensi mayoritas GNU General Public License dan lisensi perangkat lunak bebas
lainnya. Debia n GNU/Linux memuat perkakas sistem operasi GNU dan kernel
Linux merupakan distribusi Linux yang populer dan berpengaruh. Debian
didistribusikan dengan akses ke repositori dengan ribuan paket perangkat lunak yang
siap untuk instalasi dan digunakan.
Debian terkenal dengan sikap tegas pada filosofi dari Unix dan perangkat lunak
bebas. Debian dapat digunakan pada beragam perangkat keras, mulai dari komputer
jinjing dan desktop hingga telepon dan Server. Debian fokus pada kestabilan dan
keamanan. Debian banyak digunakan sebagai basis dari banyak distribusi
GNU/Linux lainnya.
Sistem operasi Debian merupakan gabungan dari perangkat lunak yang
dikembangkan dengan lisensi GNU, dan utamanya menggunakan kernel Linux,
sehingga populer dengan nama Debian GNU/Linux. Sistem operasi Debian yang
menggunakan kernel Linux merupakan salah satu distro Linux yang populer dengan
kestabilannya. Dengan memperhitungkan distro berbasis Debian, seperti Ubuntu,
Xubuntu, Knoppix, Mint, dan sebagainya, maka Debian merupakan distro Linux yang
paling banyak digunakan di dunia.
Debian pertama kali diperkenalkan oleh Ian Murdock, seorang mahasiswa
Debian berasal dari kombinasi nama Ian dengan mantan-kekasihnya Debra Lynn:
Deb dan Ian.
Pada awalnya, Ian memulainya dengan memodifikasi distribusi SLS
(Softlanding Linux System). Namun, ia tidak puas dengan SLS yang telah
dimodifikasi olehnya sehingga ia berpendapat bahwa lebih baik membangun sistem
(distribusi Linux) dari nol (Dalam hal ini, Patrick Volkerding juga berusaha
memodifikasi SLS. Ia berhasil dan distribusinya dikenal sebagai "Slackware").
Proyek Debian tumbuh lambat pada awalnya dan merilis versi 0.9x pada tahun
1994 dan 1995. Pengalihan arsitektur ke selain i386 dimulai ditahun 1995. Versi 1.x
dimulai tahun 1996.
Ditahun 1996, Bruce Perens menggantikan Ian Murdoch sebagai Pemimpin
Proyek. Dalam tahun yang sama pengembang debian Ean Schuessler, berinisiatif
untuk membentuk Debian Social Contract dan Debian Free Software Guidelines,
memberikan standar dasar komitmen untuk pengembangan distribusi debian. Dia juga
membentuk organisasi "Software in Public Interest" untuk menaungi debian secara
legal dan hukum.
Di akhir tahun 2000, proyek debian melakukan perubahan dalam archive dan
managemen rilis. Serta pada tahun yang sama para pengembang memulai konferensi
dan workshop tahunan "debconf".
Di April 8, 2007, Debian GNU/Linux 4.0 dirilis dengan nama kode "Etch".
dari paket perangkat lunak Debian format dan nama yang paling sering digunakan
untuk paket-paket binari seperti itu.
Paket debian adalah standar Unix pada arsip yang mencakup dua gzip, tar
bzipped atau lzmaed arsip: salah satu yang memegang kendali informasi dan lain
yang berisi Data. Program kanonik untuk menangani paket-paket tersebut adalah
dpkg, paling sering melalui apt/aptitude.
Beberapa paket Debian inti tersedia sebagai udebs ("mikro deb"), dan biasanya
hanya digunakan untuk bootstrap instalasi Linux Debian. Meskipun file tersebut
menggunakan ekstensi nama file udeb, mereka mematuhi spesifikasi struktur yang
sama seperti biasa deb. Namun, tidak seperti rekan-rekan mereka deb, hanya berisi
paket-paket udeb fungsional penting file. Secara khusus, file dokumentasi biasanya
dihilangkan. udeb paket tidak dapat diinstal pada sistem Debian standar.
Paket debian juga digunakan dalam distribusi berbasis pada Debian, seperti
Ubuntu dan lain-lain. Saat ini telah terdapat puluhan distribusi Linux yang berbasis
kepada debian, salah satu yang paling menonjol dan menjadi fenomena
adalah Ubuntu.
2.9 ODBC (Open Database Connectivity)
Ga mbar 2.15 – Open Database Connectivity
Sumber : (Wikipedia, 2012)
ODBC adalah sebuah standar terbuka untuk konektivitas antar mesin basis
Data. Standar ini menyediakan API yang dapat digunakan untuk menjalankan dan
mengoneksikan sebuah aplikasi dengan sebuah sistem manajemen basis Data
(SMBD). Para desainer ODBC membuatnya dengan tujuan agar ODBC terbebas dari
penggunaan bahasa pemrograman tertentu, sistem manajemen basis Data tertentu,
dan sistem operasi tertentu.
Spesifikasi ODBC menawarkan API prosedural untuk menggunakan query
dengan bahasa SQL untuk mengakses sebuah Basis Data. Sebuah implementasi
ODBC, akan menyediakan satu aplikasi atau lebih, pustaka inti ODBC, dan juga
"driver basis Data". Pustaka inti ODBC, yang bersifat independen terhadap aplikasi