• Tidak ada hasil yang ditemukan

BAB II TINJAUAN PUSTAKA

N/A
N/A
Protected

Academic year: 2022

Membagikan "BAB II TINJAUAN PUSTAKA"

Copied!
112
0
0

Teks penuh

(1)

TINJAUAN PUSTAKA

2.1 Tinjauan 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 vendor- vendor penciptanya. Maka sebagai jawaban atas permasalahan diatas peneliti

(2)

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 Teori

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

Gambar 2.1 – Database

(3)

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 mengenai basis Data komputer. Catatan yang mirip dengan basis Data

(4)

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 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 Data untuk kedua arti tersebut.

(5)

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 dalam DBMS biasanya dibagi oleh berbagai aplikasi.

(6)

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 manajemen 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 mudah. Sebelum adanya DBMS, Data pada umumnya disimpan dalam bentuk

(7)

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 redudansi sering terjadi dalam flat file. Redudansi adalah kejadian

(8)

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 Dasar 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 banyak cara untuk mengorganisasi skema, atau memodelkan struktur database:

(9)

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 Perangkat Untuk Membuat 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 Software

Low Level Software.

(10)

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. Operational 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 database: 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 database, atau informasi database.

(11)

3. Data warehouse: Sebuah data warehouse menyimpan data dari saat ini dan tahun- tahun sebelumnya - data yang diambil dari berbagai database operasional dari sebuah organisasi.

4. Distributed 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 database: 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. External database: 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. Hypermedia 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 video, audio dll.

(12)

8. Navigational database: Dalam navigasi database, queries menemukan benda terutama dengan mengikuti referensi dari objek lain.

9. In-memory databases: 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-oriented databases: 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. Real-time databases 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.

Sebagai contoh, pasar saham berubah dengan cepat dan dinamis. Real-

(13)

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 Database: 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 Data, dikerjakan dalam Database, antara sumber (source) dan tujuan (target).

(14)

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).

Gambar 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

(15)

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).

Gambar 2.5 - Teknik Multi Master Replication

2.3.3 Konsep Dasar 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 sesuai dengan penggunaannya, seperti pemrosesan transaksi online dan DSS

(16)

(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 pemrosesan query yang dilakukan oleh banyak pengguna karena data

(17)

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 Jenis-jenis Replikasi

Adapun jenis-jenis Replikasi adalah Sebagai Berikut:

(18)

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

(19)

Datanya sedikit B. Replikasi Transaksional

Gambar 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.

C. Replikasi Merge

(20)

Gambar 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

(21)

2.4 Microsoft SQL Server

Gambar 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 clustering.

(22)

2.4.1 Sejarah Microsoft 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 mengeluarkan SQL Server 2000 yang merupakan versi yang banyak digunakan.

(23)

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 PostgreSQL

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 Universitas California pada Berkeley Computer Science Department. PostgreSQL

(24)

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 :

Complex Queries

Foreign Keys

Triggers

Views

Transactional Integrity

Multiversion Concurrency Control Selain itu, PostgreSQL telah mendukung teknologi lama dengan menambahkan fitur- fitur baru pada :

1. Data Types 2. Functions 3. Operators

4. Aggregate Functions 5. Index Methods

6. Procedural Languages 2.5.1 Sejarah Postgre SQL

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

(25)

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, PHP, C++, Phyton, Java dan masih banyak lagi. Postgres juga mempunayai

(26)

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

Gambar 2.11 – PhpPgAdmin Sumber : (PHPpgadmin, 2013)

(27)

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 PostgreSQL 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/.

(http://phppgadmin.sourceforge.net/doku.php)

(28)

2.6 Apache

Gambar 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 naungan Apache Software Foundation.

(29)

2.6.1 Sejarah 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 Sumber : (Wikipedia, 2013)

(30)

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 dalam MySQL) untuk mendukung halaman web yang dihasilkan

(31)

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

Gambar 2.14 – Debian OS Logo Sumber : (Wikipedia, 2013)

(32)

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. Debian 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 dari Universitas Purdue, Amerika Serikat, pada tanggal 16 Agustus 1993. Nama

(33)

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".

Rilis versi terbaru Debian, 2009, diberi nama kode "Lenny". deb adalah perpanjangan

(34)

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.

(https://id.wikipedia.org/wiki/Debian)

(35)

2.9 ODBC (Open Database Connectivity)

Gambar 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 dan juga DBMS, bertindak sebagai interpreter antara aplikasi dan juga driver basis

(36)

Data, sementara driver basis Data mengandung detail-detail mengenai SMBD tertentu. Sehingga, dengan cara seperti ini, para Programmer dapat menulis aplikasi basis Data, tanpa harus memahami sistem manajemen basis Data tertentu, mengingat semuanya telah ditangani oleh ODBC. Akan tetapi, para pembuat driver basis Data ODBC hanya harus mengetahui bagaimana caranya memasukkan driver basis Data ke dalam pustaka inti ODBC. Dengan begitu, ODBC ini dapat disebut sebagai sistem yang modular.

ODBC memiliki beberapa komponen utama, yakni sebagai berikut:

ODBC API: sekumpulan panggilan fungsi, kode-kode kesalahan dan sintaksis SQL yang mendefinisikan bagaimana Data dalam sebuah DBMS diakses.

Driver basis Data ODBC: driver (yang berupa dynamic link library) yang mampu memproses panggilan fungsi ODBC untuk sebuah DBMS tertentu.

ODBC Driver Manager: yang bertugas untuk memuat driver basis Data ODBC yang dibutuhkan oleh aplikasi.

Pengguna sistem operasi Windows dapat mengonfigurasikan ODBC dengan menggunakan utilitas ODBC yang terdapat di dalam Control Panel. Utilitas ini mengizinkan mereka untuk mendefinisikan DSN (Data Source Name) untuk basis Data yang hendak diakses dan juga driver yang digunakan untuk mengakses basis Data tersebut. Untuk mengonfigurasikan ODBC dengan utilitas ini, mereka dapat

(37)

aplikasi untuk dapat berinterakse dengan sebuah basis Data yang disimpan baik secara lokal di dalam mesin yang sama maupun di dalam server jaringan.

Sesuai dengan namanya, ODBC adalah sebuah Database terbuka yang dapat diakses oleh beberapa aplikasi. Dalam sebuah aplikasi jaringan, pada umumnya ODBC inilah yang membuat sebuah aplikasi dikatakan menjadi sebuah aplikasi jaringan ( Client – Server ).

Dengan menggunakan ODBC maka hanya perlu menetapkan satu kali aturan saja untuk dapat berhubungan dengan file Database yang digunakan.

Ada 3 jenis pengaturan koneksi Data base (Data Source Name atau DSN) yang dapat dibuat baik di komputer Server maupun klien.

1. User DSN : adalah ODBC yang hanya berlaku untuk pengguna yang membuat DNS tersebut dan hanya bisa digunakan pada komputer dimana ODBC tersebut dibuat.

2. System DSN : adalah ODBC yang bisa digunakan oleh semua pengguna (user) pada komputer dimana ODBC tersebut dibuat.

3. File DSN : adalah ODBC yang dapat digunakan bersama (share/sharing) dalam suatu jaringan, sepanjang komputer pengguna mempunyai ODBC yang sesuai dengan File DSN tersebut. Jenis – jenis file yang dapat digunakan sebagai Data Source antara lain file dengan ekstensi ‘ *.xls ‘ atau ‘ *.mdb ‘ atau ‘ *.dbf ‘ atau tabel dan Database Visual Foxpro serta masih banyak yang lainnya. Setelah Database kita buat, langkah

(38)

selanjutnya adalah membuat sebuah koneksi yang menghubungkan Database tersebut dengan aplikasi lainnya

(https://id.wikipedia.org/wiki/Open_Database_Connectivity)

2.10 Pentaho Data Integration

Gambar 2.16 – Pentaho Logo Sumber : (Sam Dean, 2008)

Pentaho adalah kumpulan aplikasi Business Intelligence (BI) yang berkembang dengan pesat dan bersifat free open source software (FOSS) yang berjalan di atas platform Java. Aplikasi-aplikasi Pentaho dikembangkan oleh Pentaho corp yang berpusat di Orlanda, Amerika Serikat. Selain sifatnya gratis dan adopsi yang semakin hari semakin luas, dukungan Pentaho bisa didapatkan dari Pentaho corp dalam bentuk Service Level Agreement (SLA) dan dipaketkan dalam versi Enterprise Edition yang sifatnya annual subscription atau perlu kontrak tahunan. Selain itu jika menggunakan community edition yang gratis, maka bisa mendapatkan support dari banyak system integrator Pentaho di seluruh dunia termasuk di Indonesia.

(http://ri32.wordpress.com/2013/12/14/integrasi-data-menggunakan-pentaho/)

(39)

Pentaho sebenarnya merupakan koleksi dari beberapa aplikasi yang menunjang jalanya sebagai berikut :

2.10.1 Pentaho Reporting

Gambar 2.17 - Pentaho Reporting

Adalah aplikasi perancangan Ad Hoc Report di Pentaho.

Engine reporting yang bisa di-embed di aplikasi Java.

Multi Platform.

Dapat mengambil source dari berbagai relational engine. Lihat link berikut untuk Database relasional yang didukung oleh Pentaho Reporting.

Dapat mengambil Source OLAP yang didukung driver OLAP4J seperti Mondrian, SQL Server Analysis Service, PALO Molap, SAP BW, dan lainnya.

Memiliki kemampuan mengambil Source Pentaho Data Integration step.

Ini menjadikan Source yang dapat diambil hampir menjadi tidak terbatas.

(40)

Dilengkapi designer yang intuitif dan koleksi chart yang lengkap untuk keperluan analisa.

Output dalam format : Format PDF, Excel, HTML dan CSV.

2.10.2 Pentaho Analysis / Mondrian OLAP Engine

Gambar 2.18 - Pentaho Analysis / Mondrian OLAP Engine

OLAP engine open Source terpopuler dan digunakan di berbagai produk BI open Source (Pentaho dan Jasper).

• Multi Platform.

• Mondrian merupakan tipe ROLAP (Relational OLAP) dimana semua perintah Data query diterjemahkan via SQL dan ditujukan kepada Datamart.

Mendukung Datamart dengan rancangan multi dimensional Star Schema maupun Snowflake Schema.

• Mendukung query MDX (Multidimensional Expression) sebagai standar

(41)

• Didukung oleh beberapa aplikasi interface baik web based maupun desktop seperti JPivot, Pentaho Reporting, Pentaho Analysis Tools, dan Pentaho Analyzer.

• Semua interface di atas memiliki kemampuan drill down / roll up serta drill through untuk melihat detil penyusun sel-sel nilai analisis.

2.10.3 Pentaho Data Integration / Kettle

Gambar 2.19 - Pentaho Data Integration / Kettle

Kettle adalah aplikasi ETL (Extract, Transformation and Load) open Source yang sangat populer, dan merupakan salah satu yang terbaik di pasar BI dunia saat ini. Khusus di Indonesia, Kettle telah banyak digunakan sebagai tool standar untuk pengolahan Data. Khususnya ketika pengembangan ERP atau sistem transaksional "kalah" cepat dengan perkembangan proses bisnis yang super dinamis.

(42)

Kettle merupakan bagian dari aplikasi Pentaho. Proyek ini berdiri sendiri dan merupakan inisiatif dari Matt Casters sebelum diakuisisi oleh Pentaho pada tahun 2006. Matt sampai saat ini tetap aktif sebagai project leader dari Kettle.

Sejak diakuisisi, Kettle berubah nama menjadi Pentaho Data Integration (PDI).

Kettle terdiri dari 4 aplikasi, yaitu :

Spoon, yaitu aplikasi grafis berbasis swing yang digunakan untuk merancang file skema job dan transformation

Pan, yaitu script yang digunakan untuk menjalankan file skema transformation melalui terminal / command line

Kitchen, yaitu script yang digunakan untuk menjalankan file skema job melalui terminal / command line

Carte, yaitu temporary web Server yang digunakan untuk mengeksekusi job/transformation secara cluster atau parallel

Kesemua aplikasi tersebut di atas dijalankan melalui shell atau batch script yang berkaitan.

Fitur-fitur Kettle :

1. Memiliki utilitas grafik yang dapat digunakan merancang control flow umum maupun data flow (aliran Data).

(43)

2. Multi platform - karena dikembangkan di atas Java yang notabene berjalan di banyak platform sistem operasi.

3. Bersifat concurrent, dalam arti row-row Data diambil oleh suatu step dan diserahkan ke step lain secara parallel.

4. Scalable - dapat beradaptasi dengan penambahan kapasitas memori RAM atau pun storage (scale up) dan dapat node komputer / cluster (scale out).

5. Koleksi step transformation dan job yang cukup banyak

6. Extensible, kita dapat membuat step transformation dan job baru dengan sistem plugin.

7. Dukungan luas berbagai produk Database yang terkenal di pasaran baik itu proprietary maupun free open source seperti Oracle, SQL Server, MySQL, PostgreSQL dan lain sebagainya.

2.10.4 Pentaho Data Mining / Weka

Gambar 2.20 - Pentaho Data Mining / Weka

Utilitas Data mining yang sangat populer dan digunakan untuk predictive analysis

• Multi Platform.

(44)

Mendukung Data sumber / source berformat ARFF (Attribute- Relation File Format), XRRF (XML attribute Relation File Format), CSV (Comma Separated Value), maupun table / view dari

relasional Database.

• Mendukung standar PMML (Predictive Model Markup Language).

Mendukung Data nominal dan numerik (continue maupun discrete).

Mendukung algoritma yang cukup banyak untuk operasi dasar Data mining seperti Classification, Clustering dan Association.

Algoritma tersebut diantaranya adalah J48, M5P, SimpleCart, SimpleKMeans, Apriori, dsbnya.

Utilitas grafis yang membantu pengolahan dan pemahaman Data mulai dari preprocessing, Data visualization dalam bentuk plot maupun curve, tree visualization, dsbnya.

2.10.5 Pentaho BI Server / Platform

Gambar 2.21 - Pentaho BI Server / Platform

Server BI yang berjalan sebagai web application portal yang terdiri dari layanan web service, workflow pada space JVM (Java Virtual Machine), dan sebagai user interface untuk laporan operasional maupun analisis.

Multi Platform.

(45)

Workflow berupa integrasi dari produk Pentaho yang telah disebutkan sebelumnya (Pentaho Data Integration, Pentaho Reporting, dan Pentaho Analysis) dalam bentuk solution.

Scheduler berjalan di atas platform BI ini untuk melakukan proses batching, misalkan mengirim laporan dalam bentuk PDF ataupun Excel secara periodik.

Script JSP (Java Server Pages) dapat dengan mudah diintegrasikan ke dalam platform.

• User dapat memiliki space sendiri untuk menyimpan report dan tipe solution lainnya.

• Ad hoc report yang bisa digunakan untuk membuat rancangan report on the fly tanpa keterlibatan IT.

(46)

BAB III

METODOLOGI PENELITIAN

3.1 Alur Penelitian

Berikut merupakan Diagram Alur Pengerjaan Tugas Akhir Implementasi Replikasi Database MS.SQL Server – PostgreSQL untuk penerapan Single Sign On (SSO):

Gambar 3.1 – Diagram Alur Pengerjaan Tugas Akhir

(47)

3.2 Tahapan dan Cara Penelitian

Berdasarkan latar belakang dan perumusan masalah yang terdapat dalam bab sebelumnya dapat diketahui perancangan yang dilakukan untuk Implementasi Replikasi Database MS.SQL Server – PostgreSQL untuk penerapan Single Sign On (SSO) adalah sebagai berikut :

a. Perancangan model jaringan.

b. Analisa kebutuhan sistem.

c. Penyediaan Hardware dan Software pendukung.

d. Perancangan kerja sistem.

e. Instalasi, konfigurasi dan uji coba sistem.

3.3 Analisis

Berkaitan dengan tinjauan umum pada bab sebelumnya, replikasi antara dua database dengan DBMS yang berbeda memerlukan sebuah system penjembatan untuk menghubungkan antara DBMS MS.SQL Server dengan PostgreSQL yang secara nyata berbeda jenis, dalam hal ini peneliti telah mencoba replikasi menggunakan fitur bawaan MS.SQL Server 2008, yang nyatanya tidak di dukung untuk di padukan dengan DBMS lain selain IBM dan Oracle, di kutip dari laman resmi Microsoft, kemudian peneliti mencoba menggunakan aplikasi Pentaho Data Integration (Kettle) , perangkat lunak open source Utilitas ETL (Extract, Transform and Load) open source dengan Design GUI yang intuitif. Mendukung Multi Platform, dan terdapat Script ETL yang dapat disimpan dalam bentuk filesystem maupun repository. Mendukung multi pipelining sehingga load balance maupun

(48)

optimasi pekerjaan data warehouse, mendukung clustering (master-slave) engine ETL, Terdiri atas lebih dari 200 steps yang mencakup job (workflow kontrol) dan transformation (data worfklow). Mendukung Apache Virtual Filesystem (Apache VFS) sehingga filesystem seperti HTTP Webdav, FTP, SFTP, dan lain sebagainya.

Kemudian peneliti memutuskan menggunakan aplikasi ini sebagai penjembatan pada implementasi replikasi. karena adanya kemudahan dalam penggunaan dan tersedianya banyak akses DBMS yang di dukung oleh Pentaho, sehingga peneliti dapat melakukan implementasi replikasi dengan baik pada aplikasi pentaho ini. pada implementasi peneliti mencoba memaksimalkan penggunaan data pada MS.SQL Server serta data hasil replikasi pada DBMS PostgreSQL, dengan melakukan perpindahan akses database secara otomatis apabila terjadi gangguan pada salah satu database yang di replikasi, sehingga nantinya website akan menampilkan dari database mana data login user di ambil dan di gunakan MS.SQL Server atau PostgreSQL. Hal ini dimaksudkan untuk memanfaatkan cadangan data yang berada pada database hasil replikasi sekaligus mengurangi dampak buruk bila terjadi gangguan pada salah satu database, bagi jalannya kegiatan baik yang menggunakan aplikasi maupun database tersebut.

3.4 Rancangan Implementasi Replikasi Database MS.SQL Server – PostgreSQL untuk penerapan Single Sign On (SSO).

Berikut merupakan rancangan penelitian Implementasi Replikasi Database MS.SQL Server – PostgreSQL untuk penerapan Single Sign On (SSO) yang akan

(49)

3.4.1 Rancangan Topologi Jaringan Komputer

Berikut merupakan rancangan topologi yang digunakan yaitu, Server Database MS.SQL Server Pada komputer Host, Server Database PostgreSQL pada mesin virtual, dan Client yang mengakses dari komputer host.

Gambar 3.2 - Rancangan Jaringan Komputer Sistem

Rancangan topologi jaringan diatas merupakan gambaran dari rancangan jaringan yang akan di terapkan pada sistem yang akan di buat. Rancangan jaringan diatas dirancang dengan menggunakan metode virtualisasi, dimana sebagian komputer yang ada tersebut hanyalah sebuah komputer virtual yang ada dalam software virtual manager. Dalam implementasi ini software virtual manager yang digunakan adalah Oracle Virtual Box. komputer – komputer yang saling terbuhung tersebut salah satunya merupakan komputer virtualisasi

(50)

yang didalamnya sudah terpasang operasi system Linux dan database dengan DBMS Postgre SQL, Hal ini di maksudkan untuk menggambarkan pengaturan jaringan secara virtual ke dalam sebuah objek visual agar dapat mempermudah pemahamannya.

3.4.2 Rancangan Link Database Management Sistem dengan ODBC

Open Database Connectivity (disingkat menjadi 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. Sehingga ODBC mempermudah hubungan antar database dengan menggunakan fitur DSN (Data Source Name) yang dapat mengizinkan aplikasi untuk dapat berinteraksi dengan sebuah basis data yang disimpan baik secara lokal di dalam mesin yang sama maupun di dalam server jaringan. Berikut rancangan link ODBC untuk database MS.SQL Server dan PostgreSQL.

(51)

Gambar 3.3 - Rancangan Link Database Server dengan ODBC

Pada perancangan link database server diatas, ODBC memerlukan data berupa inputan database yang dituju, alamat server, username dan password dari database serta port yang digunakan, dari inputan tersebut menghasilkan system dsn yang bisa di gunkan untuk mengakses database melalui aplikasi pentaho. Masing masing database di buatkan System dsn sendiri untuk memperjelas tujuan dari link menuju ke database mana.

3.4.3 Rancangan Replikasi Database

Berikut rancangan replikasi yang akan digunakan pada database yang di replikasikan.

(52)

Gambar 3.4 - Rancangan Replikasi Database

Gambar diatas merupakan gambar visual yang menggambarkan proses kerja replikasi satu arah dari MS.SQL Server dengan PostgreSQL sebagai Client penerima data replikasi. Dimana Pentaho Data Integration (Kettle) sebagai System yang menjembatani hubungan dari kedua database tersebut sehingga nantinya replikasi dapat terwujud. Ketika terdapat inputan dalam database MS.SQL server maka Pentaho akan membaca dan melakukan replikasi dengan inputan yang sama pada database PostgreSQL yang berada pada linux, begitupun bila terjadi update data pada database MS.SQL Server Pentaho akan melakukan replikasi data update pada database PostgreSQL.

3.4.4 Rancangan Alur kerja Website dengan Single Sign On (SSO)

Berikut merupakan Diagram alur dari Website dengan single sign on (sso) untuk menjelaskan proses jalannya single sign on pada Website.

Pentaho Data Integration (Kettle) Sistem Replikasi System DSN

(ODBC)

System DSN (ODBC)

(53)

Gambar 3.5 – Diagram Alur kerja Website dengan SSO

Dari Diagram Alur diatas menjelaskan, apabila user mengakses halaman website dengan single sign on, maka website yang di akses akan melakukan pengecekan session terlebih dahulu pada browser, apabila user pernah melakukan prosses login sebelumnya dan belum melakukan logout maka session masih dapat digunakan dan website akan mengarah pada halaman terlogin dengan menggunakan session yang sudah ada, namun apabila pada

(54)

browser tidak di temukan session maka website akan di arahkan pada halaman awal from login untuk user yang belum terdaftar, di halaman ini terdapat pilihan melakukan login atau mendaftar, jika User sudah memiliki akun yang terdaftar maka dapat langsung memasukkan NPM dan Password pada form login, setelah user menekan tombol masuk maka proses pengecekkan login berupa NPM dan Password dimulai, apabila data di temukan maka session akan dibuat dan disimpan pada browser, setelah itu website akan diarahkan pada halaman terlogin dengan session akun yang terdaftar tadi, dalam hal ini session akan tersimpan di browser sampai user menekan tombol keluar dimana session akan dihapus dari browser dan user kembali di arahkan pada halaman login awal.

Apabila user belum memiliki akun berupa NPM dan password maka di awal halaman yang belum terlogin terdapat pilihan daftar, dengan menekan tombol daftar user akan di arahkan pada form klarifikasi untuk mengisi NPM, Nama dan Password. Jika sudah maka data akan dicek dahulu benar atau salah, jika salah user akan di arahkan pada halaman daftar lagi untuk mengulangi input data, jika benar maka data akan disimpan pada database MS.SQL Server, dan User kembali di arahkan pada halaman awal form login.

3.4.5 Use Case Diagram Website dengan Single Sign On (SSO).

Untuk menggambarkan sebuah proses yang dilakukan dari seorang aktor, digambarkan pada skema yang disebut Use case diagram agar pemahaman

(55)

penjabaran dari sebuah proyek terlihat lebih detail. Berikut adalah Use Case Diagram dari implementasi sistem Websites dengan Single Sign On (SSO).

Gambar 3.6 – Use Case Diagram Implementasi Sistem

Penjelasan :

Actor User : User melakukan “Login” atau “Daftar”

3.4.6 Activity Diagram Website dengan Single Sign On (SSO).

Dari use case diatas terdapat pula penjelasan aktifitas – aktifitas yang telah di buat. Berikut activity Diagram dari use case implementasi sistem yang dibahas pada sub bab 3.5 diatas.

(56)

3.4.6.1 Activity Diagram Daftar

Gambar 3.7 – Activity Diagram dari Use Case Melakukan Daftar

Penjelasan :

User : User Masuk Halaman daftar kemudian mengisi Form Pendaftaran NPM, Nama dan Password, kemudian menekan tombol Simpan.

(57)

System : System Menampilkan detai dari form daftar, Kemudian menampikan pemberitahuan data tersimpan

3.4.6.2 Activity Diagram Login

Gambar 3.8 - Activity Diagram dari Use Case Melakukan Login

User mengakses halaman awal kemudian memasukkan NPM dan Password kemudian System memeriksa apakah data yang di masukkan benar, jika salah maka System akan mengembalikan User ke halaman login namun jika benar ada maka akan masuk ke halaman login.

(58)

3.4.7 Rancangan Website dengan Single Sign On (SSO) Website

Pada penerapan Single Sign On (SSO) peneliti menggunakan aplikasi web menggunakan bahasa pemrograman PHP v5.0 dan ODBC Driver sebagai penghubung ke DBMS yaitu MS.SQL Server dan PostgreSQL, Ada tiga rancangan interfaces pada implementasi ini.

Web-a.com (Halaman Klarifikasi!), Merupakan Website Utama yang digunakan sebagai pusat pembuatan akun dan pemasok data kedalam MS.SQL Server yang terhubung melalui ODBC Driver, dimana nantinya data yang masuk akan di replikasi ke PostgreSQL Konsep kerjannya dimulai dengan Form Login dimana terdapat fungsi pendaftaran dan login user. Dimana nantinya semua pendaftaran akun akan dipusatkan pada halaman ini. Fungsi login juga bertugas sebagai pembuat session untuk single sign on yang akan di gunakan pada Website B dan Website C. dan memberi informasi dari database mana data login di ambil apakah SQL Server atau PostgreSQL.

Websatu.com, Merupakan Website kedua yang menjadi cabang dari Web-a.com dimana session websatu.com berupa NPM dan password diambil dari Web-a.com, Websatu.com berada di host dan domain berbeda, konsep kerjannya dimulai dari halaman login dimana setiap User yang melakukan login dari Websatu.com akan di arahkan pada Web- a.com (klarifikasi) untuk membuat akses Single Sign On dengan membuat

(59)

mengakses penuh Websatu.com dan Webdua.com yang sudah terintergrasi secara Single Sign On (SSO) pada web-a.com

Webdua.com, Merupakan Website Ketiga yang merupakan cabang dari Web-a.com , konsep kerjanya sama dengan Websatu.com, namun webdua.com berada pada host dan domain berbeda, Webdua.com ini di buat untuk meyakinkan bahwa Single Sign On benar-benar bekerja pada tiga Website yang di buat.

Karena rancangan pada website dengan Single Sign On (SSO) di buat untuk keperluan login user saja sehingga berikut merupakan rancangan interfaces website dengan Single Sign On (SSO) yang akan di terapkan.

3.4.7.1 Rancangan Antarmuka Halaman Awal (Login User) Berikut merupakan halaman depan Website dengan Single Sign On (SSO)

Gambar 3.9 – Rancangan Antarmuka halaman awal Website SSO

(60)

Halaman awal website yang akan di gunakan untuk penerapan single sign on (SSO), Pada Halaman ini terdapat form yang berisi table inputan login untuk user, dimana bila user sudah terdaftar dapat langsung melakukan login dengan memasukkan NPM dan Password kemudian menekan tombol masuk untuk login. Sedangkan untuk user yang belum memiliki akun atau belum terdaftar dapat melakukan pendaftaran dengan menekan tombol daftar, dan akan di arah ke form klarifikasi pendaftaran.

Akan terdapat tiga web semacam ini dalam System yang peneliti buat dengan nama dan letak host serta domain yang berbeda, yaitu web-a.com sebagai website pusat klarifikasi SSO, websatu.com sebagai website kedua dengan fungsi SSO, webdua.com sebagai website ketiga dengan fungsi SSO juga, sehingga kerja Single Sign On antar website ini dapat dibuktikan dengan membuka tiga web secara bersamaan untuk menguji jalannya single sign on pada keseluruhan website yang saling terintegrasi.

3.4.7.2 Rancangan Antarmuka Halaman Klarifikasi

Berikut merupakan antar muka halaman klarifikasi Website dengan Single Sign On (SSO)

Gambar

Gambar 2.6 – Replication Snapshot  Sumber : (MSDN Microsoft, 2003)
Gambar 2.7 – Transactional Replication  Sumber : (MSDN Microsoft, 2003)
Gambar 2.8 – Replication Merge  Sumber : (MSDN Microsoft, 2003)
Gambar 2.15 – Open Database Connectivity  Sumber : (Wikipedia, 2012)
+7

Referensi

Dokumen terkait

terealisasi ( realized ) atas Utang Luar Negeri dalam mata uang asing pada

Mengingat banyaknya faktor yang berpengaruh terhadap struktur modal perusahaan maka penelitian ini akan meneliti pengaruh ukuran perusahaan ( firm size ), risiko

This paper discusses spectral analysis of microtremor data recorded using four-station triangular array of SPAC method and the inversion of the associated dispersion

Lain hal jika rata-rata skor tes awal kelompok kontrol berbeda secara signifikan dengan rata-rata skor tes awal kelompok eksperimen, maka harus dilakukan pengolahan data

Dengan demikian, hasil pengujian ini tidak sesuai dengan teori legitimasi yang menyatakan bahwa semakin lama umur suatu perusahaan atau semakin lama suatu perusahaan berdiri

Of the total USD 24.7 million net income of the Company in 2015, USD 8 million is allocated as cash dividend, amounting to USD 2.3 million for mandatory reserves and USD

Modul LCD berukuran 16 karakter x 2 baris dengan fasilitas backlighting memiliki 16 pin yang terdiri dari 8 jalur data, 3 jalur kontrol dan jalur-jalur catu daya,

Puji syukur penulis kepada Allah SWT yang telah memberikan berkah dan rahmat-Nya sehingga penulis dapat menyelesaikan penyusunan skripsi yang berjudul Pengaruh Pemberian