43
5 5 BAB II TINJAUAN PUSTAKA Bab ini membahas mengenai teori dan konsep dasar penunjang topik pembahasan, permodelan data, dan topik lainnya yang memiliki relevansi dengan Rancang Bangun Sistem Terdistribusi Pada Apotek. 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan peralatan di Balai Riset dan Standardisasi Indrustri Palembang dilakukan oleh Aman Eriko pada Tahun 2013. Penelitian dilakukan oleh Aman Eriko untuk mempelajari dan menganalisis database yang sedang berjalan dan merancang sebuah sistem database untuk mendukung kebutuhan data dalam proses pencatatan administrasi pada laboratorium dengan sistem database yang lebih terstruktur dan terdistribusi. Metode penelitian yang digunakan diantaranya metode pengumpulan data dan metode implementasi. Metode pengumpulan data meliputi studi pustaka, wawancara dengan pihak-pihak yang terlibat pada Balai Riset dan Standardisasi Indrustri Palembang dan observasi secara langsung proses bisnis yang terjadi dan implemenetasi yang digunakan. Metode implementasi yang digunakan adalah metode System Development Life Cycle atau biasa disebut Macro Life Cycle. Hasil yang dicapai dari perancangan ini adalah menghasilkan sebuah database yang terstruktur dan terdistribusi dengan masing-masing bagian, membantu perusahaan untuk memperoleh informasi tentang permasalahan dan menyelesaikan masalah yang ada dalam sistem pengolahan penjualan, persediaan, pembelian, dan produksi. Penelitian dan Perancangan Implementasi Fragmentasi Horizontal Sistem Basis Data Terdistribusi pada Modul Penjualan Hasil Produksi Unit Usaha Pabrik Gula Cinta Manis Palembang yang ditulis oleh Robiantoro pada Tahun 2013 menggunakan metode deskriptif dan pengembangan sistem dengan metode Prototyping. Kesimpulan dari penelitian dan perancangan tersebut adalah membuatan Sistem Informasi Modul Penjualan Hasil Produksi di Unit Usaha

BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

Embed Size (px)

Citation preview

Page 1: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

5

5

BAB II

TINJAUAN PUSTAKA

Bab ini membahas mengenai teori dan konsep dasar penunjang topik

pembahasan, permodelan data, dan topik lainnya yang memiliki relevansi dengan

Rancang Bangun Sistem Terdistribusi Pada Apotek.

2.1 State of the art

Perancangan basis data terdistribusi untuk barang dan peralatan di Balai

Riset dan Standardisasi Indrustri Palembang dilakukan oleh Aman Eriko pada

Tahun 2013. Penelitian dilakukan oleh Aman Eriko untuk mempelajari dan

menganalisis database yang sedang berjalan dan merancang sebuah sistem

database untuk mendukung kebutuhan data dalam proses pencatatan administrasi

pada laboratorium dengan sistem database yang lebih terstruktur dan terdistribusi.

Metode penelitian yang digunakan diantaranya metode pengumpulan data dan

metode implementasi. Metode pengumpulan data meliputi studi pustaka,

wawancara dengan pihak-pihak yang terlibat pada Balai Riset dan Standardisasi

Indrustri Palembang dan observasi secara langsung proses bisnis yang terjadi dan

implemenetasi yang digunakan. Metode implementasi yang digunakan adalah

metode System Development Life Cycle atau biasa disebut Macro Life Cycle. Hasil

yang dicapai dari perancangan ini adalah menghasilkan sebuah database yang

terstruktur dan terdistribusi dengan masing-masing bagian, membantu perusahaan

untuk memperoleh informasi tentang permasalahan dan menyelesaikan masalah

yang ada dalam sistem pengolahan penjualan, persediaan, pembelian, dan

produksi.

Penelitian dan Perancangan Implementasi Fragmentasi Horizontal Sistem

Basis Data Terdistribusi pada Modul Penjualan Hasil Produksi Unit Usaha Pabrik

Gula Cinta Manis Palembang yang ditulis oleh Robiantoro pada Tahun 2013

menggunakan metode deskriptif dan pengembangan sistem dengan metode

Prototyping. Kesimpulan dari penelitian dan perancangan tersebut adalah

membuatan Sistem Informasi Modul Penjualan Hasil Produksi di Unit Usaha

Page 2: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

6

Pabrik Gula Cinta Manis dengan menggunakan Fragmentasi Horisontal. Sistem

Basis Data Terdistribusi dapat meningkatkan kinerja staff penjualan untuk

melakukan pengolahan data, selain itu dapat menghemat waktu dan tenaga untuk

pengolahan data serta meminimalkan resiko kehilangan data atau informasi.

Perancangan Sistem Replikasi Basis Data Terdistribusi Data Center yang

dilakukan oleh Abdul Mubarak, Armin Lawi dan Muhhamad Niswar pada Tahun

2012. Mereka berpendapat bahwa sistem yang mereka rancang berbasis jaringan

untuk replikasi basis data masing-masing SKPD sehingga dapat membantu dan

mempermudah dalam akses data dan informasi, sistem ini mampu melakukan

replikasi basis data antara SKPD dan Data Center sehingga terjadi penyetaraan

data serta pemusatan data dalam satu server. Sistem ini memudahkan pihak

pelaksana tugas dalam SKPD dan juga pihak eksekutif dalam membuat keputusan

karena dengan satu akses dapat mencari semua data yang dibutuhkan bisa

tersedia. Diharapkan kepada pihak Pemerintah Daerah untuk menyiapkan sebuah

server yang berkapasitas besar baik dalam hal media penyimpanan maupun

processor, juga diharapkan dapat menyediakan infrastruktur dan layanan jaringan

komputer yang berkapasitas besar sehingga proses transfer data bisa lebih cepat.

Sistem ini masih memiliki kekurang dalam hal keamanan sistem jaringan, jadi

diharapkan pada peneliti selanjutnya dapat fokus pada bagaimana sistem

keamanan dari sistem tersebut, sehingga nantinya sistem ini bisa digunakan lebih

baik dan sepenuhnya mendukung e-Government di Indonesia.

Penelitian Implementasi Basis Data Terdistribusi Menggunakan MySQL

pada PT Thamrin Brothers Palembang Tahun 2012 yang ditulis oleh Efri Darwis,

S.Kom., Merry Agustina, M.M., M.Kom., dan A. Mutaqin Bakti, M.M., M.Kom.,

menggunakan metode penelitian Action Research dan Decision Maker.

Implementasi basis data terdistribusi pada penelitian ini mendistribusikan

beberapa data dari pusat ke cabang atau sebaliknya. Pendistribusian data

dilakukan guna menyamakan persepsi dan sinkronisasi data sehingga antara data

yang di pusat dan cabang akan selalu sama. Data yang didistribusikan yaitu

seluruh data yang selalu mengalami update setiap hari. Metode distribusi data

yang dilakukan dalam penelitian ini yaitu dengan replikasi. Replikasi dilakukan

Page 3: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

7

untuk menyamakan struktur data komputer pusat dengan data komputer cabang

sehingga antara pusat dan cabang memiliki persepsi data yang sama. Output dari

penelitian adalah basis data terdistribusi yang digunakan PT Thamrin Brothers

Palembang yang saling terintegrasi secara terdistribusi antara cabang-cabang di

seluruh wilayah Sumatera Selatan dan dapat dikembangkan untuk kepentingan

operasional perusahaan.

Penelitian Sistem Basis Data Terdistribusi juga dilakukan oleh Felix

Andreas Sutanto dan Jeffry Alfa Razak pada Tahun 2010 dalam jurnalnya yang

berjudul Model Fragmentasi Sistem Basis Data Terdistribusi Studi Kasus Sistem

Member Warnet. Penelitiannya membahas mengenai penerapan sistem

terdistribusi pada sistem member warnet, sehingga member warnet dapat

menggunakan keanggotaannya untuk mendapatkan potongan harga pada semua

warnet cabang yang dimiliki oleh pengusaha warnet tersebut. Penerapan sistem

basis data terdistribusi didasarkan atas pemikiran skalabilitas dan perkembangan

dimasa yang akan datang, baik perkembangan jumlah member maupun

perkembangan jumlah cabang pada bisnis warnet tersebut. Sistem terdistribusi

merupakan suatu bentuk arsitektur dimana komputer-komputer yang berdiri

secara otonom dapat saling berkomunikasi dan berbagi resource tanpa

memperdulikan di mana komputer itu berada dan platform yang digunakan.

Penelitian ini menerapkan metode fragmentasi horizontal dengan basis data

homogen yang untuk selanjutnya akan dikembangkan kembali dengan

fragmentasi vertikal atau replikasi dengan menggunakan basis data yang

heterogen.

Perancangan Sistem Informasi Managemen Apotek yang ditulis oleh

Ngurah Budiartha pada Tahun 2007. Perancangan Sistem Informasi Managemen

Apotek dibuat menggunakan bahasa pemrograman PHP dan basis data MySQL.

Rancangan sistem yang dirancang digunakan untuk internal perusahaan. Sistem

membahas mengenai pengolahan data master obat, data transaksi penjualan,

transaksi pembelian, transaksi pemesanan, transaksi peracikan obat, transaksi

pembuatan resep, dan transaksi retur. Keuntungan diterapkannya Sistem Informasi

Manajemen Apotek adalah didapatkannya keuntungan dalam proses pelaporan

Page 4: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

8

dan pencarian informasi stok yang lebih cepat dan akurat. Pelaporan dan

pencarian yang lebih cepat dapat meningkatkan mutu pelayanan kepada

konsumen. Peningkatan mutu pelayanan tersebut membuktikan pentingnya sistem

informasi manajemen apotek di dalam megelola sebuah apotek.

2.2 Pengertian Apotik

Apotek adalah tempat menjual dan membuat atau meramu obat. Apotek

merupakan tempat apoteker melakukan praktik profesi farmasi sekaligus menjadi

peritel. Apotek berasal dari kata bahasa Yunani apotheca yang secara harfiah

berarti penyimpanan. Tugas dan fungsi utama dari apotek adalah.

1. Tempat pengabdian profesi apoteker yang telah mengucapkan sumpah

jabatan.

2. Sarana farmasi yang telah melakukan peracikan, pengubahan bentuk,

pencampuran dan penyerahan obat atau bahan obat.

3. Sarana penyalur kebutuhan farmasi yang menyebarkan obat yang

diperlukan masyarakat secara meluas dan merata.

Pengelolaan apotek dapat beroprasi setelah mendapat ijin Kemenkes. Pengelolaan

dan perizinan apotek diatur oleh Permenkes No.26/Menkes/Per/11/1981. Terdapat

kegiatan rutin yang berlangsung secara terus menerus dalam pengolahan data

obat pada apotek. Kegiatan tersebut adalah pembelian, penjualan, retur beli dan

retur jual serta pelaporan. Apotek berkewajiban menyediakan, menyimpan dan

menyalurkan hasil farmasi yang bermutu baik dan terjamin mutu kualitasnya.

Hasil farmasi yang disalurkan oleh apotek meliputi obat, bahan obat, obat asli

Indonesia atau impor.

2.2.1 Penyimpanan Obat Pada Apotek

Kegiatan penyimpanan difokuskan pada tujuan agar tetap terjaminnya

kualitas obat sekaligus mendukung jalannya proses pelayanan sesuai dengan yang

ditetapkan. Kegiatan penyimpanan barang ditetapkan menjadi dua sistem, yaitu:

1. First In First Out (FIFO) dimana barang yang baru diterima disimpan

dibagian belakang dari barang yang diterima sebelumnya.

Page 5: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

9

2. First Expired First Out (FEFO) barang ditempatkan dan dikelompokkan

berdasarkan tanggal kadaluarsa barang.

Barang disimpan pada tempat yang bersih, tidak lembab, tidak terkena

matahari langsung, dan disusun sistematis (cair atau padat, sesuai alphabet).

2.3 Pengertian Sistem

Sistem berasal dari bahasa Yunani (sustema) yang memiliki arti

bermacam-macam hal menjadi suatu keseluruhan dengan bagian-bagian yang

tersusun. Sistem yaitu masing-masing unit dan keseluruhannya yang merupakan

kesatuan yang saling bergantung, saling menentukan, dan membutuhkan. Menurut

Jogiyanto H.M (2006) Sistem adalah suatu jaringan kerja dari prosedur-prosedur

yang saling berhubungan, berkumpul bersama-sama untuk melakukan suatu

kegiatan atau untuk menyelesaikan suatu sasaran tertentu. Menurut Djekky Djoht

(2000) Sistem adalah agregasi atau pengelompokan beberapa objek-objek yang

dipersatukan oleh beberapa bentuk interaksi yang tetap atau saling tergantung,

sekelompok unit yang berbeda yang dikombinasikan sedemikian rupa oleh alamat

atau oleh seni sehingga membentuk suatu keseluruhan yang integral dan

berfungsi, beroperasi, atau bergerak dalam satu kesatuan. Sedangkan menurut

Umar Fahmi Achmadi (2008) sistem adalah tatanan yang menggambarkan adanya

rangkaian berbagai komponen yang memiliki hubungan serta tujuan bersama

secara serasi yang bekerja atau berjalan dalam jangka waktu tertentu dan

terencana.

2.4 Blok Elemen Sistem

Sistem terdiri dari kompenen-komponen yang disebut dengan istilah Blok

Bangunan (Building Block), Blok Masukan (Input Blok), Block Model (Model

Block), Block Keluaran (Output Block), Blok Teknologi, (Tecnology Block), Blok

Basisdata (Database Block), dan Blok Kendali (Controls Block).

Page 6: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

10

1. Blok Masukan (Input Block)

Masukan (input) mewakili data yang masuk ke dalam sistem informasi,

input merupakan metode-metode dan media untuk menangkap data yang

akan dimasukkan yang berupa dokumen-dokumen dasar.

2. Blok Model (Model Block)

Terdiri dari kombinasi prosedur, logika model matematika yang akan

memanipulasi data input dan data yang tersimpan di basis data dengan cara

yang sudah tertentu untuk menghasilkan keluaran yang diinginkan.

3. Blok Keluaran (Output Block)

Produk dari sistem informasi adalah keluaran yang merupakan informasi

yang berkualitas dan dokumentasi yang berguna untuk semua tingkatan

manajemen serta semua pemakai sistem.

4. Blok Teknologi (Technology Block)

Teknologi merupakan kotak alat (tool box) dalam sistem informasi,

Teknologi digunakan untuk menerima input, menjalankan model,

menyimpan, dan mengakses data, menghasilkan dan mengirimkan

keluaran dan membantu pengendalian dari sistem secara keseluruhan.

Teknologi terdiri dari tiga bagian utama, yaitu teknisi (humanware atau

brainware), perangkat lunak (software) dan perangkat keras (hardware).

5. Blok Basis Data (Database block)

Merupakan kumpulan dari data yang saling berhubungan satu dengan yang

lainnya, tersimpan dalam perangkat keras komputer dan digunakan

perangkat lunak untuk memanipulasinya dengan menggunakan perangkat

lunak paket yang disebut dengan DBMS (Database Management Sistem).

6. Blok Kendali (Controls Block)

Mengendalikan sistem agar terhindar dari hal-hal yang tidak diinginkan

(kesalahan-kesalahan, tidak efisien, dan lain sebagainya) dengan

merancang pengendalian untuk meyakinkan bahwa hal-hal yang dapat

merusak sistem dapat dicegah dan diatasi.

Page 7: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

11

Gambar 2.1 Blok Sistem Informasi

2.5 Klasifikasi Sistem

Sistem dapat diklasifikasikan dari beberapa sudut pandang diantaranya

adalah.

1. Sistem Abstrak dan Sistem Fisik

Sistem Abstrak adalah sistem yang berupa pemikiran atau ide-ide yang

tidak tampak secara fisik. Sistem Fisik adalah sistem yang ada secara

fisik.

2. Sistem Alamiah dan Sistem Buatan Manusia

Sistem Alamiah adalah sitem yang terjadi melalui proses alam. Sistem

Buatan Manusia adalah sistem yang dirancang oleh manusia. Sistem

buatan manusia yang melibatkan interaksi antara manusia dengan mesin

disebut dengan human machine system atau ada yang menyebut dengan

machine system.

3. Sistem Tertentu dan Sistem Tak Tentu

Sistem Tertentu beroperasi dengan tingkah laku dengan tingkah laku yang

sudah banyak diprediksi. Sistem Tak Tentu adalah sistem yang kondisi

masa depannya tidak dapat diprediksi karena mengandung unsur

probabilitas.

4. Sistem Terbuka dan Sistem Tertutup

Sistem Tertutup adalah sistem yang tidak berhubungan dan tidak

terperngaruh dengan lingkungan luar. Sistem Terbuka adalah sistem yang

berhubungan dan terpengaruh oleh lingkungan luar.

Page 8: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

12

2.6 Sistem Terdistribusi

Informasi dalam sebuah perusahaan atau instansi merupakan sesuatu yang

sangat penting guna mendukung perkembangan perusahaan. Kurangnya

mendapatkan informasi dalam waktu tertentu mengakibatkan perusahaan atau

instansi akan mengalami ketidakmampuan mengontrol sumber daya yang pada

akhirnya akan mengalami kekalahan dalam persaingan dengan lingkungan

persaingannya. Hampir semua sistem berbasis komputer yang besar saat ini

menggunakan sistem terdistribusi (sistem tersebar). Sistem terdistribusi adalah

sistem dimana pemrosesan informasi didistribusiikan pada beberapa komputer dan

tidak terbatas hanya pada satu mesin saja. Sistem terdistribusi memiliki banyak

kesamaan dengan rekayasa perangkat lunak lainnya tetapi ada isu-isu khusus yang

harus diperhitungkan ketika merancang tipe sistem terdistribusi. Dewasa ini,

masih banyak sistem besar yang masih menggunakan sistem tersentral yang

berjalan pada satu mainframe dengan terminal-terminal yang terhubung

kepadanya. Sistem tersebut banyak memiliki kelemahan karena terminal-terminal

hanya sedikit memiliki kemampuan pemrosesan data dan semua tergantung pada

komputer di sentral.

Menurut Harsiti (2009), ciri-ciri basis data terdistribusi yaitu:

1. Data disimpan di sejumlah tempat.

2. Prosessor pada tempat yang berbeda tersebut dihubungan dengan jaringan

komputer.

3. Sistem basis data terdistribusi bukan terdiri dari sekumpulan file yang

berada pada berbagai tempat tetapi pada sebuah basis data di berbagai

tempat.

4. Setiap tempat secara mandiri memproses permintaan user yang

membutuhkan akses ke data di tempat tersebut dan juga mampu untuk

memproses data yang tersimpan di tempat lain.

Hingga saat ini terdapat 3 tipe sistem utama dalam basis data terdistribusi, yaitu:

1. Sistem personal yang tidak terdistribusi dan dirancang untuk satu

workstation saja.

Page 9: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

13

2. Sistem Embedded yang berjalan pada satu prosessor atau pada kelompok

prosessor yang terintegrasi.

3. Sistem Terdistribusi di mana perangkat lunak sistem berjalan pada

kelompok prosessor yang bekerja sama dan terintegrasi secara fleksibel,

dengan dihubungkan oleh jaringan. Contohnya sistem ATM Bank atau

Sistem penjualan tiket.

Menurut Coulouris et.al (1994), enam karakteristik yang penting untuk sistem

terdistribusi yaitu:

1. Resource Access and Sharing

Kemampuan menggunakan hardware, software atau data di mana dan

kapanpun. Karakteristik ini juga yang menentukan siapa saja yang dapat

mengakses sebuah resource dalam sebuah sistem terdistribusi. Salah satu

contohnya dalam sebuah web, terdapat htaccess yang hanya dapat diakses

oleh user yang telah memiliki grant access terhadap file tersebut.

2. Openness (Keterbukaan)

Sebuah keterbukaan dalam sistem terdistribusi memiliki pengertian

kemampuan sebuah sistem dalam mengembangkan fleksibilitas terhadap

peningkatan kinerja sebuah sistem. Seperti penambahan module baru dan

ketersediaan extension/plugin yang dapat terkoneksi dengan sistem lain.

Contoh karakteristik ini misalkan sebuah aplikasi web banking yang dapat

terhubung dengan sistem web milik perusahaan finance.

3. Concurrency

Semua proses dalam sistem terdistribusi dilakukan secara concurrency

(secara bersama). Concurrency yang dimaksud dalam hal ini dilakukan

untuk mencegah inkonsistensi dan ketidakpastian sebuah data dan proses.

Sebagai contoh dalam sebuah aplikasi web yang diakses oleh banyak user.

Ketika server melakukan sebuah update. Maka semua user yang

mengakses halaman web tersebut akan langsung mendapatkan update

terbaru tersebut.

Page 10: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

14

4. Scalability

Scalabilitas memiliki pengertian bahwa sebuah sistem terdistribusi harus

dapat ditingkatkan kinerjanya tanpa mengubah komponen-komponen di

dalamnya. Sebagai contoh sebuah aplikasi web yang digunakan oleh user

yang terlalu banyak, maka untuk meningkatkan kinerja dari web tersebut

agar tidak terjadi overload atau down system maka perlu dilakukan

upgrade processor dan RAM. Ketika proses upgrade tersebut, komponen

dalam web tidak perlu diubah.

5. Fault Tolerance (Toleransi Kesalahan)

Kesalahan pasti terjadi dalam sebuah sistem. Kesalahan disebabkan karena

masalah jaringan, power supply, bencana alam atau human error. Sebuah

sistem terdistribusi dirancang memliki kemampuan untuk menangani hal-

hal tersebut. Contoh dalam hal ini adalah dibangunnya sebuah clustering

server. Ketika server utama mengalami down karena beberapa penyebab

kesalahan, maka extended server langsung membackup sistem utama dan

menggantikannya.

6. Transparency

Transparansi secara umum tidak berlaku untuk user biasa yang

mengutamakan fungsionalitas, apakah ia sedang menggunakan sistem

yang terdistribusi atau tidak, namun secara khusus bagi seorang pengelola

baik itu developer atau administrator sistem sangat perlu untuk

mengetahui arsitektur dari sistem yang sedang digunakan karena untuk

mempermudah bagi mereka dalam mengembangkan dan memelihara

sistem tersebut.

2.7 Arsitektur Sistem Terdistribusi

Terdapat dua pendekatan alternatif untuk membagi fungsi pada proses

DBMS yang berbeda. Dua arsitektur alternatif DBMS terdistribusi adalah Client-

Server dan Collaboration Server.

Page 11: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

15

2.7.1 Client Server

Sistem client server mempunyai satu atau lebih proses client dan satu atau

lebih proses server, sebuah proses client dapat mengirim query ke sebuah proses

server seperti pada Gambar 2.2. Client bertanggung jawab pada antar muka untuk

user, sedangkan server mengatur data dan mengeksekusi transaksi sehingga

proses client berjalan pada sebuah personal komputer dan mengirim query ke

sebuah server yang berjalan pada mainframe.

Gambar 2.2 Arsitektur Client Server

Arsitektur ini relatif sederhana untuk diiplemetasikan karena adanya pemisahan

fungsi yang jelas dan server yang tersentralisasi, sehingga pengguna akan lebih

nyaman menggunakan antarmuka grafis pada client. Caching pada server

diperlukan untuk memperlancar layanan server dan mengurangi overhead

komunikasi.

2.7.2 Collaboration Server

Arsitektur client-server tidak mengijinkan satu query mengakses banyak

server karena proses client harus dapat membagi sebuah query ke dalam beberapa

subquery untuk dieksekusi pada tempat yang berbeda dan kemudian membagi

jawaban ke subquery. Proses client cukup komplek dan terjadi overlap dengan

server, sehingga perbedaan antara client dan server menjadi jelas. Alternatif yang

digunakan untuk mengurangi perbedaan tersebut yaitu dengan sistem

Collaboration Server. Arsitektur sistem ini terdapat sekumpulan server basis data

Page 12: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

16

yang menjalankan transaksi data lokal yang bekerjasama mengeksekusi transaksi

pada beberapa server seperti pada Gambar 2.3. Server menerima query yang

membutuhkan akses ke data pada server lain, sistem membangkitkan subquery

yang dieksekusi server lain dan mengambil hasilnya bersama-sama untuk

menggabungkan jawaban menjadi query asal.

Gambar 2.3 Arsitektur Collaboration Server

2.8 Tipe Basis Data Terdistribusi

Terdapat dua tipe dalam basis data terdistribusi. Tipe basis data

terdistribusi yaitu:

1. Homogen yaitu sistem dimana setiap tempat menjalankan tipe DBMS

yang sama.

2. Heterogen yaitu sistem dimana setiap tempat yang berbeda menjalankan

DBMS yang berbeda, baik Relational DBMS (RDBMS) atau non

relational DBMS. Gambaran basis data terdistribusi yang heterogen dapat

dilihat pada Gambar 2.4.

Page 13: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

17

Gambar 2.4 Database Terdistribusi Heterogen

2.9 Penyimpanan Data Sistem Terdistribusi

Penyimpanan data pada DBMS terdistribusi, relasi disimpan pada

beberapa tempat. Pengaksesan relasi yang disimpan pada remote side

mengakibatkan mahalnya biaya untuk melewatkan pesan tersebut dan untuk

menguranginya maka sebuah relasi dipartisi atau difragmentasi ke beberapa

tempat dengan fragmen dikirim ke tempat di mana fragmen tersebut sering

diakses atau replika pada setiap tempat di mana relasi tersebut menjadi kebutuhan

yang utama.

2.9.1 Fragmentasi

Fragmentasi terdiri dari relasi yang dibagi ke relasi atau fragmen yang

lebih kecil dan mengirim fragmen ke beberapa tempat. Terdapat dua macam

fragmentasi, fragmentasi horizontal dan fragmentasi vertikal. Fragmentasi

horisontal, setiap fragmen terdiri dari sebuah subset baris dari relasi asal.

Fragmentasi vertikal, setiap fragment terdiri dari sebuah subset kolom dari relasi

asal. Fragmentasi horisontal dan vertikal diilustrasikan pada Gambar 2.5.

Gambar 2.5 Ilustrasi Fragmentasi Vertikal dan Horizontal

Sebuah relasi bila difragmentasi, harus meliputi relasi asal dari fragmen, yaitu:

Page 14: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

18

1. Fragmentasi Horisontal yaitu union dari fragmen horisontal harus sama

dengan relasi asal. Fragmen biasanya dibutuhkan disjoint.

2. Fragmentasi Vertikal yaitu koleksi fragmen vertikal dekomposisi lossless-

join. Sistem harus menyediakan id_tupel yang unik untuk setiap tupel

dalam relasi asli untuk menjamin fragmentasi vertikal lossless-join. Field

ini ditambahkan ke setiap fragmen vertikal jika relasi asal tambahan id-

tupel sebagai kunci, sehingga dekomposisinya lossless-join.

2.9.2 Replikasi

Replikasi berarti menyimpan beberapa copy sebuah relasi atau fragmen

relasi. Keseluruan relasi dapat direplikasi pada satu atau lebih tempat. Sebagai

contoh, jika relasi R difragmentasi ke R1, R2 dan R3, kemungkinan terdapat

hanya satu copy R1, di mana R2 adalah replikasi pada dua tempat lainnya dan R3

replikasi pada semua tempat. Replikasi dapat diilustrasikan pada Gambar 2.6 di

bawah ini.

Gambar 2.6 Ilustrasi Replikasi

Kegunaan replikasi antara lain adalah:

1. Meningkatkan ketersediaan data, jika sebuah tempat yang berisi replika

melambat, maka dapat menemukan data yang sama pada tempat lain.

Demikian juga jika copy lokal dari relasi yang di remote tersedia, maka

tidak terpengaruh saluran komunikasi yang gagal.

2. Evaluasi query yang lebih cepat, query dapat mengeksekusi lebih cepat

menggunakan copy local dari relasi termasuk ke remote site.

Page 15: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

19

2.10 Replikasi Data

Raplikasi Data dapat dicontohkan jika Table A direplikasi dan salinan dari

table tersebut tersimpan dalam dua atau lebih server. User dapat memiliki

replikasi penuh (full replication), jika salinan dari table A tersebut disimpan

pada semua server yang ada di dalam sistem. Keuntungan dan kerugian metode

replikasi antara lain:

1. Ketersediaan yang tinggi (Availability)

Ketersediaan yang tinggi jika sebuah server yang berisi tabel A mengalami

kerusakan, maka table yang sama masih dapat kita peroleh dari server

yang lain.

2. Peningkatan proses paralel (Increased Parallelism)

Peningkatan proses paralel pada kasus di mana pengaksesan ke table A

pada umumnya hanya berupa proses pembacaan data, maka pemrosesan

query pada server-server yang melibatkan tabel A tersebut dapat di

eksekusi secara paralel (bersamaan).

3. Peningkatan beban pengubahan data (Increased Overhead On Update)

Sistem harus dapat menjaga konsistensi semua salinan dari tabel A

tersebut. Artinya jika table A diubah, maka perubahan tersebut harus di

jalankan ke semua lokasi yang memiliki salinan tabel A.

Replikasi akan memperbaiki performansi dari operasi query (pembacaan data) dan

meningkatkan ketersediaan data khususnya untuk transaksi-transaksi pembacaan

(read-only).

2.11 MYSQL

MySQL adalah aplikasi open source multi threaded sistem manajemen

basis data relasional yang dibuat oleh Michael Monty Widenius pada Tahun 1995.

Tahun 2000 MySQL dirilis di bawah model dual lisensi yang mengijinkan

masyarakat untuk menggunakan secara gratis di bawah GNU General Public

Lisensi (GPL). Fitur yang menonjol adalah kecepatan. Perbandingan dari beberapa

basis data termasuk MySQL, Oracle, MsSQl, IBM DB2, dan Sybase ASE-

MySQL seluruhnya terkait kerja untuk skalabilitas terbesar. SQL atau Structur

Page 16: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

20

Query Language merupakan bahasa query standar yang digunakan untuk

mengakses basis data relasional (Kadir,2003:101), sedangkan MySQL adalah

sebuah sistem database.

Kelebihan dari MySQL adalah dapat berjalan di berbagai sistem operasi,

dapat digunakan secara gratis, bersifat multi-user, memiliki kecepatan dalam

menangani query sederhana, memiliki tipe data yang banyak, keamanan data,

dapat menangani basis data dalam skala besar, dapat melakukan koneksi dengan

client menggunakan protokol TCP/IP, UNIX, dan NT, serta memiliki struktur

tabel yang fleksibel.

2.12 Data Flow Diagram (DFD)

Data Flow Diagram atau diagram alir data (DFD/DAD) adalah sebuah

teknis grafis yang mengambarkan aliran informasi dan transformasi yang di

aplikasikan pada saat bergerak dari input menjadi output. DFD dikenal sebagai

grafik aliran data atau bubble chart (Pressman, 2002 : 364). Tujuan perancangan

Data Flow Diagram (DFD) yaitu:

a. Untuk memberikan indikasi mengenai bagaimana data ditransformasikan

pada saat data bergerak melalui sistem.

b. Untuk mengambarkan fungsi-fungsi (subsistem) yang mentransformasikan

aliran data.

Page 17: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

21

Gambar 2.7 Simbol DFD atau DAD

1.13 Standard Operational Procedure (SOP)

Standard Operating Procedure (SOP) adalah dokumen tertulis yang

memuat prosedur kerja secara rinci, tahap demi tahap, dan sistematis. SOP

memuat serangkaian instruksi secara tertulis tentang kegiatan rutin atau berulang-

ulang yang dilakukan oleh sebuah organisasi. SOP juga dilengkapi dengan

referensi, lampiran, formulir, diagram dan alur kerja. SOP sering juga disebut

sebagai manual SOP yang digunakan sebagai pedoman untuk mengarahkan dan

mengevaluasi suatu pekerjaan.

Fungsi dari SOP adalah untuk menjelaskan secara detail mengenai proses

kerja yang berlangsung secara rutin yang harus diikuti dalam suatu perusahaan

atau organisasi. Tujuan dari SOP adalah sebagai berikut:

Page 18: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

22

1. Menjaga konsistensi dan tingkat kinerja petugas atau tim dalam organisasi

atau unit.

2. Mengetahui dengan jelas peran dan fungsi setiap posisi dalam organisasi.

3. Memperjelas alur tugas, wewenang dan tanggung jawab dari petugas

terkait.

4. Melindungi organisasi dan staf dari malpraktek atau kesalahan

administrasi lainnya.

5. Menghindari kegagalan atau kesalahan, keraguan, duplikasi dan

inefisiensi.

Bentuk simbol flowchart yang digunakan dalam pembuatan SOP dapat

dilihat pada Tabel 2.1.

Tabel 2.1 Simbol Flowchart

No Lambang Nama Keterangan

1.

Terminal Menunjukkkan awal atau

akhir suatu proses

2.

Manual Operation Melakukan proses secara

manual

3.

Manual Input Menunjukan proses

masukan data manual

4.

Display Menampilkan data

5.

Process Menunjukkan proses

pelaksanaan instruksi

6.

Decision

Menunjukkkan proses

pemilihan alternatif atau

pengecekan kondisi

7.

Predefined Process Menunjukkan proses

yang telah didefinisikan

Page 19: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

23

8.

On-page Connector

Merupakan penghubung

pada satu halaman

9.

Off-page Connector Merupakan penghubung

pada halaman lain

10.

Document

Merupakan dokumen

(arsip) dari hasil proses

11.

Arrow Merupakan arah aliran

proses

Flowchart merupakan gambaran dengan menggunakan simbol.

Berdasarkan Tabel 2.1 setiap simbol menggambarkan proses tertentu. Flowchart

dapat memperjelas urutan poses suatu kegiatan, sehingga ketika ada penambahan

proses maka dapat dilakukan dengan lebih mudah.

2.14 Perancangan Basis Data

Perancangan basis data merupakan proses menciptakan perancangan untuk

basis data yang akan mendukung operasi dan tujuan perusahaan. Perancangan

suatu basis data menggunakan metodologi-metodologi yang membantu dalam

tahap perancangan basis data. Metodologi perancangan adalah pendekatan

struktur dengan menggunakan prosedur, teknik, alat, serta bantuan dokumen

untuk membantu dan memudahkan dalam proses perancangan. Penggunaan teknik

metode disain ini dapat membantu dalam merencanakan, mengatur, mengontrol,

dan mengevaluasi database development project. Perancangan basis data

dilakukan melalui 3 tahap, yaitu konseptual, logikal dan fisikal.

2.14.1 Perancangan Basis Data Konseptual

Perancangan basis data konseptual adalah proses membangun model

informasi yang digunakan di dalam perpustakaan, bebas dari semua pertimbangan

Page 20: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

24

fisikal. Menurut Connolly dan Begg (1998), perancangan konseptual basis data

adalah proses membangun sebuah model dari informasi yang digunakan oleh

perusahaan. Langkah-langkah perancangan basis data konseptual yaitu:

1. Identifikasi tipe entity

Tipe entity adalah sekumpulan objek yang diindentifikasi oleh sebuah

perusahaan atau perorangan yang mempunyai sifat-sifat yang sama dan

mempunyai keberadaan yang independent, entitas tersebut bisa berupa

entitas strong dan weak.

2. Identifikasi tipe relationship.

3. Identifikasi dan hubungan atribut dengan tipe Entity atau Relationship.

4. Menentukan atribut domain.

5. Menentukan kandidat dan atribut primary key.

6. Mempertimbangkan kegunaan dari konsep Enhanced Modeling.

Penggunaan konsep Enchaned Modeling seperti spesialisasi, generalisasi,

agregasi, dan komposisi.

7. Periksa model untuk redundancy.

8. Validasikan model konseptual lokal yang bertentangan dengan transaksi

pengguna.

9. Mengulang model data konseptual lokal dengan pengguna.

2.14.2 Perancangan Basis Data Logikal

Perancanan basis data logikal adalah proses membangun model informasi

yang dibangun perusahaan berdasarkan dari beberapa model data yang spesifik,

tetapi bebas dari fakta DBMS dan pertimbangan fisikal lainnya. Menurut

Connolly dan Begg (1998), perancangan logikal basis data merupakan proses

membangun sebuah model informasi yang digunakan dalam sebuah perusahaan

berdasarkan pada sebuah model data yang spesifik, tetapi tidak bergantung pada

sebuah DBMS tertentu dan pertimbangan-pertimbangan fisik lainnya. Langkah

pokok dari perancangan basis data logikal untuk relational model mencakup:

1. Membuat dan memvalidasi model data logikal lokal untuk setiap bagian,

membuat dan memvalidasi model data logikal global. Sebuah model data

Page 21: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

25

logikal termasuk Entity Relationship Diagram (ERD), skema relational,

dan dokumen pendukung, seperti kamus data yang terbentuk dalam

pengembangan model.

2. Membangun dan memvalidasi model data logikal global. Menggabungkan

tiap model data logikal lokal ke dalam satu model data logikal global yang

menggambarkan keseluruhan perusahaan.

2.14.3 Perancangan Basis Data Fisikal

Perancangan basis data fisikal adalah proses memproduksi sebuah

deskripsi mengenasi implementasi dari basis data yang berada di secondary

storage, mendeskripsikan relasi dasar, organisasi file, dan indeks yang digunakan

untuk pengaksesan data yang efisien dan penggabungan beberapa batasan dan

sistem keamanan. Perancangan fisik basis data merupakan proses yang

menghasilkan sebuah deskripsi implementasi dari basis data pada secondary

storage yang menggambarkan relasi dasar, organisasi file, dan indeks yang

digunakan untuk mencapai akses yang efisien ke data, dan penggabungan batasan

integritas dan ukuran keamanan. 6 tahap secara gasir besar dalam membangun

desain fisik basis data yaitu:

Page 22: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

26

1. Mengubah model data logikal global untuk target DBMS

Bertujuan menghasilkan sebuah sistem basis data relational dari model

data logikal global yang dapat diimplementasikan dalam target DBMS.

2. Merancang representasi fisik

Bertujuan menentukan organisasi file yang optimal untuk menyimpan

relasi dasar dan indeks yang diperlukan untuk mencapai performance yang

diinginkan, untuk itu akan ditentukan relasi dan tuple mana yang ada pada

secondary storage

3. Perancangan user view

Bertujuan merancang user view yang diidentifikasikan selama

pengumpulan kebutuhan-kebutuhan dan tahap analisis dari siklus aplikasi

basis data relational.

4. Perancangan mekanisme keamanan

Bertujuan merancang mekanisme keamanan untuk basis data seperti yang

ditentukan oleh user. Relational DBMS secara umum menyediakan dua

tipe keamanan basis data yaitu:

a. Keamanan sistem yang mencakup akses dan penggunaan basis data

pada level sistem, seperti username dan password.

b. Keamanan data yang mencakup akses dan penggunaan objek basis data

(seperti relasi dan view) dan aksi yang dapat dilakukan user terhadap

objek.

5. Mempertimbangkan adanya pengontrolan redundancy

Bertujuan untuk menentukan apakah redundancy dalam batasan yang

terkendali dengan menggunakan teknik normalisasi akan meningkatkan

performance dari sistem.

6. Memonitor dan menyesuaikan sistem operasi

Bertujuan untuk mengawasi sistem operasional dan meningkatkan kinerja

dari sistem untuk memperbaiki kebutuhan perancangan yang tidak sesuai

atau merefleksikan perubahan.

Page 23: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

27

2.15 Derajat Relasi

Perancangan basis data mengenal istilah ratio cardinalitas yang mengatur

tentang hubungan atau relasi antar entitas. Hubungan antar entitas tersebut terdiri

dari tiga buah relasi, yaitu sebagai berikut:

1. Relasi Satu Ke Satu (one to one)

Relasi satu ke satu yaitu hubungan satu entitas A dihubungkan dengan

maksimum satu entitas B saja, peleburan ini didasarkan pada penyertaan

atribut ke salah satu tabel yang entitasnya memiliki derajat minimum

paling besar. Relasi satu ke satu ditunjukan pada Gambar 2.8.

2. Relasi Satu ke banyak (one to many)

Relasi dikatakan one-to-many bila setiap entitas pada himpunan entitas A1

dapat berhubungan dengan banyak entitas pada himpunan entitas B1 dan

B2, tetapi tidak sebaliknya, di mana setiap entitas pada himpunan entitas B

berhubungan dengan paling banyak dengan satu entitas pada himpunan

entitas A. Relasi ini merupakan relasi yang paling umum terjadi dalam

database. Relasi one-to-many ini boleh membentuk tabel baru dan boleh

juga tidak. Relasi one to many dapat digambarkan pada Gambar 2.9.

Gambar 2.8 Relasi One to One

Page 24: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

28

3. Relasi Banyak ke Banyak (many to many)

Merupakan hubungan saling memiliki lebih dari satu dari setiap instansi

entitas terhadap instansi entitas lainnya. Selain relasi antara dua entitas,

terdapat juga hubungan terhadap entitasnya sendiri yang disebut dengan

recursive relationship (self-relation). Hubungan ini dapat mempunyai tipe

biner. Relasi dikatakan many-to-many bila sebuah record pada tabel A

berhubungan dengan lebih dari satu record di tabel B dan record di tabel

B berhubungan dengan lebih dari satu record di tabel A seperti yang

ditunukan oleh Gambar 2.10.

Gambar 2.9 Relasi One to Many

Gambar 2.10 Relasi many to many

Page 25: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

29

2.16 Key

Key adalah sebuah atau gabungan dari beberapa atribut atau field yang

dapat membedakan semua record dalam table secara unik. Key artinya apabila

suatu atribut dijadikan sebagai key maka tidak boleh ada dua atau lebih baris data

dengan nilai yang sama untuk atribut tersebut.

Pembuatan program basis data harus disertai dengan penentuan kunci di

mana kunci tersebut sangat berperan penting dalam menentukan keunikan dari

suatu atribut dalam tabel atau entitas yang berelasi. Beberapa jenis kunci dalam

basis data adalah sebagai berikut:

1. Super Key

Super Key merupakan satu atau lebih atribut yang dapat membedakan

setiap baris data dalam sebuah tabel secara unik.

2. Candidate Key

Candidate Key merupakan kumpulan atribut minimal yang dapat

membedakan setiap baris data dalam sebuah tabel secara unik. Sebuah

Cadidate Key tidak boleh berisi atribut atau kumpulan atribut yang telah

menjadi super key yang lain. Candidate Key pastilah Super Key, tetapi

belum tentu sebaliknya.

3. Primary Key

Primary Key adalah satu atribut atau satu set minimal atribut yang tidak

hanya mengidentifikasi secara unik suatu kekadian spesifik, tetapi juga

dapat mewakili setiap kejadian dari suatu entity. Setiap kunci kandidat

dapat menjadi kunci primer tetapi sebaliknya sebaiknya dipilih satu saja

yang dapat mewakili secara menyeluruh terhadap entity yang ada.

4. Alternate Key

Alternate Key adalah Candidate Key yang tidak dijadikan Primary Key

dan merupakan kunci kandidat yang tidak dipakai sebagai kunci primer.

Kunci alternatif ini sering digunakan untuk kunci pengurutan misalnya

dalam laporan.

Page 26: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

30

5. Composite Key

Composite Key adalah Key yang terdiri dari dua atribut atau lebih, dimana

atribut-atribut tersebut bila berdiri sendiri tidak menjadi indentitas record,

namun bila dirangkaikan menjadi satu kesatuan yang dapat

mengidentifikasikan record secara unik.

6. Foreign Key

Foreign Key adalah non-key pada sebuah relasi yang juga menjadi primary

key atribut pada relasi lainnya. Foreign Key biasanya digunakan sebagai

penghubung antara record-record dari kedua relasi tersebut.kunci tamu

ditempatkan pada entity anak dan sama dengan kunci primer induk yang

direlasikan. Hubungan antara entity induk dengan anak adalah hubungan

satu lawan banyak (one to many relationship).

2.17 Normalisasi

Normalisasi adalah suatu proses untuk mengubah suatu tabel yang

memiliki masalah tertentu ke dalam dua buah tabel atau lebih, yang tidak lagi

memiliki masalah tersebut. Masalah tersebut biasanya merupakan suatu

ketidakkonsistenan (tidak normal) apabila dilakukan penghapusan (delete),

pengubahan (update) dan pembacaan (retrieve) pada suatu basis data. Tahapan

Normalisasi yaitu:

1. Tahapan Normalisasi Bentuk Pertama

Bentuk Normal ini dilakukan pada form tabel yang memiliki redudansi

yang tinggi dan ada atribut yang memiliki nilai data null, sehingga

normalisasi ini dilakukan untuk mengelompokkan setiap atribut yang

bernilai tunggal untuk setiap baris dan menghilangkan field yang bernilai

null.

id_barang Nama_barang Harga Jenis

76164217 Marlboro 14500 Rokok

89960013 Choki-choki 13000 Coklat

89970250 Big Cola 3000 Minuman

Tabel 2.2 Normalisasi Bentuk Pertama (1nf)

Page 27: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

31

2. Tahapan Normalisasi Bentuk Kedua

Syarat dilakukannya Normalisasi kedua adalah apabila tabel tersebut telah

berada pada bentuk normal pertama dan semua atribut bukan kunci (key)

memiliki dependensi sepenuhnya terhadap kunci primer.

id_barang Nama_barang Harga Jenis

76164217 Marlboro 14500 Rokok

89960013 Choki-choki 13000 Coklat

89970250 Big Cola 3000 Minuman

3. Tahapan Normalisasi Bentuk Ketiga

Syarat dilakukannya Normalisasi bentuk kedua adalah apabila tabel

tersebut telah berada pada bentuk normal kedua dan semua atribut bukan

kunci tidak memiliki dependensi transitif terhadap kunci primer.

id_barang Harga Jenis

76164217 14500 Rokok

89960013 13000 Coklat

89970250 3000 Minuman

Jenis

Rokok

Coklat

Minuman

id_barang Nama_barang

76164217 Marlboro

89960013 Choki-choki

89970250 Big Cola

id_barang Nama_barang

76164217 Marlboro

89960013 Choki-choki

89970250 Big Cola

Tabel 2.3 Normalisasi Bentuk Kedua (2nf) (1)

Tabel 2.4 Normalisasi Bentuk Kedua (2nf) (2)

Tabel 2.5 Normalisasi Bentuk Ketiga (3nf) (1)

Tabel 2.6 Normalisasi Bentuk Ketiga (3nf) (2)

Tabel 2.7 Normalisasi Bentuk Ketiga (3nf) (3)

Page 28: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

32

2.18 DDL (Data Definition Language)

DDL MySQL termasuk dalam perintah membuat, merubah dan

menghapus struktur dalam database. Statement DDL mendefinisikan struktur dari

MySQL database dan menentukan tipe data apa saja yang dapat disimpan ke

database serta bagaimana menyimpan data. Secara khusus statement DDL

berfungsi untuk:

1. Membuat dan menghapus database (Create Database, Drop Database)

2. Membuat, memperbaiki atau merubah, dan menghapus tabel (Create

Table, Alter Table, Rename Table, Drop Table)

3. Membuat dan menghapus index (Create Index, Drop Index)

DDL digunakan untuk mendefinisikan kerangka database. Statement DDL

antara lain yaitu Create, Alter, dan Drop. Berikut adalah penjelasan dari statement

DDL.

2.18.1 Create

Perintah Create digunakan untuk membuat database atau tabel baru pada

suatu sintaks MySQL. Contoh penggunaan sintaks Create dalam membuat

database baru adalah sebagai berikut.

CREATE DATABASE nama_database;

Kode Program 2.1 Sintaks Pembuatan Database

contoh penggunaan sintaks Create adalah sebagai berikut:

CREATE DATABASE db_kasir;

Kode Program 2.2 Contoh Penggunaan Sintaks Pembuatan Database

Sintaks lain yang menggunakan perintah Create adalah untuh membuat

tabel baru. Sintaks yang digunakan adalah sebagai berikut:

CREATE TABLE <nama_tabel>(

<Nama_kolom_1><tipe_data(ukuran)>,

<Nama_kolom_2><tipe_data(ukuran)>,

...,

<Nama_kolom_n><tipe_data(ukuran)>

);

Kode Program 2.3 Sintaks Pembuatan Tabel

Page 29: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

33

Contoh penggunaan sintaks Create tabel adalah sebagai berikut:

CREATE TABLE infoprib(

NIPvarchar(10),

Nama varchar(50),

Tgl_lahir date,

Alamat varchar(50)

);

Kode Program 2.4 Contoh Sintaks Pembuatan Tabel

2.18.2 Alter

Statement Alter digunakan untuk mengubah struktur tipe data suatu tabel

ataupun nama kolom dari tabel tersebut. Sintaks yang digunakan adalah sebagai

berikut:

ALTER TABLE <nama_tabel>

CHANGE<nama_kolom_lama><nama_kolom_baru>

<tipe_data>;

Kode Program 2.5 Sintaks Alter Tabel

Contoh penggunaan sintaks Alter adalah:

ALTER TABLE barang

CHANGE Nama Stok

Varchar(50);

Kode Program 2.6 Contoh Sintaks Alter Tabel

2.18.3 Drop

Statement Drop digunakan untuk menghapus tabel maupun menghapus

database, perintah Drop dapat juga digunakan untuk menghapus kolom suatu

tabel dengan digabungkan dengan statement alter. Statemen Drop memiliki

banyak contoh sintaks diantaranya adalah untuk menghapus database seperti yang

ditunjukkan oleh sintaks berikut:

DROP <nama_database>;

Kode Program 2.7 Sintaks Drop Database

Page 30: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

34

Sintaks untuk menghapus tabel:

DROP <nama_tabel>;

Kode Program 2.8 Sintaks Drop Tabel

2.19 DML (Data Manipulation Language)

DML merupakan perintah SQL yang berhubungan dengan manipulasi atau

pengolahan data record pada tabel. Perintah dasar DML antara lain Select, Insert,

Delete, Update.

2.19.1 Select

Perintah Select berfungsi untuk mendapatkan daftar row (record) pada satu

atau lebih tabel dan bisa diikutkan dengan sintaks query union dan subquery

lainnya. Gambaran umum sintaks select sebagai berikut:

SELECT [ALL | DISTINCT]

[FROM table_references]

[WHERE where_condition]

[CHARACTER SET charset_name]

Kode Program 2.9 Daftar Perintah Select

Beberapa penjelasan dari sintaks Select di atas adalah:

1. Select

Merupakan sintaks utama yang berfungsi untuk menerima daftar row

(record) yang ada pada tabel dengan diikuti dengan nama field (column)

dan parameter yang mengikutinya.

SELECT * FROM `nama_tabel`

Kode Program 2.10 Contoh Perintah Select

2. All Distinct

Perintah All berfungsi menambahkan aturan khusus untuk menampilkan

semua record. Perintah All adalah perintah default jika tidak memasukkan

perintah Distinct.

SELECT ALL `nama_kolom` FROM `nama_tabel`

Kode Program 2.11 Contoh Perintah SELECT ALL

Page 31: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

35

Perintah Distinct berfungsi untuk menambahkan aturan khusus untuk

menampilkan daftar record dengan record unik saja (tidak ada record

dengan nilai sama). Biasanya digunakan untuk menampilkan record pada

field tertentu.

SELECT DISTINCT `nama_kolom` FROM `nama_tabel`

Kode Program 2.12 Contoh Perintah Select Distinct

3. From

Perintah From berfungsi untuk memilih tabel yang digunakan sebagai

referensi pada perintah Select.

SELECT `nama_kolom` FROM `nama_tabel`

Kode Program 2.13 Contoh Perintah Select From

4. Where

Perintah Where berfungsi untuk menambahkan parameter tertentu pada

sintaks yang diketik.

SELECT `nama_kolom` FROM `nama_tabel` WHERE `nama_kolom`

=‘nilai’

Kode Program 2.14 Contoh Perintah Select ... Where

5. Charset

Perintah Charset berfungsi untuk menampilkan daftar baris (record)

dengan character set tertentu yang dideklarasikan pada sintaks.

SELECT `nama_kolom` FROM `nama_tabel` CHARSET

Kode Program 2.15 Contoh Perintah Select Charset

2.19.2 Insert

Perintah Insert berfungsi untuk memasukkan baris (record) baru ke dalam

tabel. Gambaran umum sintaks Insert yaitu:

INSERT[INTO] tbl_name [(col_name,...)]

{VALUES | VALUE} ({expr | DEFAULT},...),(...),...

[ ON DUPLICATE KEY UPDATE

col_name=expr

[, col_name=expr] ... ]

Kode Program 2.16 Daftar Lengkap Perintah Insert

Page 32: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

36

Beberapa penjelasan pada sintaks INSERT adalah sebagai berikut:

1. Insert

Merupakan sintaks utama pada sintaks memasukan baris atau kolom.

Berfungsi untuk memasukkan data (record) pada tabel.

INSERT INTO `nama_tabel` (`nama_kolom_1`, `nama_kolom_2`,

…) VALUES (‘nilai_1’, ‘nilai_2’, …)

Kode Program 2.17 Contoh Perintah Insert

2. Into

Perintah Into berfungsi untuk menentukan tabel tujuan untuk memasukkan

row (record) baru.

INSERT INTO `nama_tabel` (`nama_kolom_1`, `nama_kolom_2`,

…) VALUES (‘nilai_1’, ‘nilai_2’, …)

Kode Program 2.18 Contoh Perintah Insert Into

3. Values

Perintah Values berfungsi untuk menentukan nilai yang dimasukkan ke

dalam tabel. Urutan nilai yang dimasukkan harus sesuai dengan urutan

field pada perintah Into.

INSERT INTO `nama_tabel` (`nama_kolom_1`, `nama_kolom_2`,

…) VALUES (‘nilai_1’, ‘nilai_2’, …)

Kode Program 2.19 Contoh Perintah Insert Values

4. On Duplicate Key Update

Perintah On Duplicate Key Update berfungsi untuk melakukan update

(penggantian) pada record sebelumnya jika ada record yang memiliki nilai

primary key yang sama. Perintah ini harus menyertakan ekspresi untuk

mengganti nilai primary key yang lama.

INSERT INTO `nama_tabel` (`nama_kolom_1`, `nama_kolom_2`,

…) VALUES (‘nilai_1’, ‘nilai_2’, …) ON DUPLICATE KEY

UPDATE `nama_tabel` = `nama_tabel` + 3

Kode Program 2.20 Contoh Perintah Insert On Duplicate Key Update

Page 33: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

37

2.19.3 Update

Perintah Update berfungsi untuk melakukan pembaharuan (update) nilai

pada baris (row) yang sudah ada pada tabel. Gambaran umum sintaks update

adalah sebagai berikut:

UPDATE table_references

SET col_name1={expr1|DEFAULT} [, col_name2={expr2|DEFAULT}] ...

[WHERE where_condition]

Kode Program 2.21 Daftar Lengkap Perintah UPDATE

Beberapa Penjelasan pada sintaks Update adalah sebagai berikut:

1. Update

Merupakan sintaks utama dalam sintaks perubahan data. Berfungsi untuk

melakukan pembaharuan (update) nilai pada baris (row) yang sudah ada

pada tabel.

UPDATE `nama_tabel` SET `nama_kolom` = `nilai_baru_1`

Kode Program 2.22 Contoh Sintaks Update

2. Set

Perintah Set berfungsi untuk menentukan kolom (field) mana saja yang

akan di-update beserta nilai baru yang akan dimasukkan pada tabel.

Perintah ini juga dapat melakukan update pada beberapa field sekaligus

dalam sekali update.

UPDATE `nama_tabel` SET `nama_kolom_1` = ‘nilai_baru_1’,

`nama_kolom_2` = ‘nilai_baru_2’, ..., `nama_kolom_n` =

‘nilai_baru_n’ WHERE `nama_kolom_acuan` = ‘nilai_acuan’

Kode Program 2.23 Contoh Sintaks Update Set

3. Where

Perintah Where berfungsi untuk menentukan kolom dan nilai acuan untuk

menentukan update data. Perintah ini akan meng-update semua record

dengan nilai yang ditentukan pada tabel dan field, jika tidak ada kolom dan

nilai yang ditentukan.

UPDATE `nama_tabel` SET `nama_kolom_1` = ‘nilai_baru_1’,

`nama_kolom_2` = ‘nilai_baru_2’, ..., `nama_kolom_n` =

‘nilai_baru_n’ WHERE `nama_kolom_acuan` = ‘nilai_acuan’

Kode Program 2.24 Contoh Perintah Update Where

Page 34: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

38

2.19.4 Delete

Perintah Delete berfungsi untuk menghapus record dengan nilai dari field

tertentu dari suatu tabel. Semua record akan terhapus jika tidak memasukkan nilai

where tertentu pada perintah Delete. Gambaran umum sintaks Delete yaitu:

DELETE

FROM tbl_name[.*] [, tbl_name[.*]] ...

[WHERE where_condition]

Kode Program 2.25 Daftar Lengkap Perintah Delete

Beberapa Pejelasan pada sintaks Delete adalah sebagai berikut:

1. Delete

Merupakan sintaks utama dalam sintaks hapus data record. Berfungsi

untuk melakukan penghapusan record dengan nilai dari field tertentu

dari suatu tabel.

DELETE FROM `nama_tabel`

Kode Program 2.26 Contoh Perintah Delete

2. From

Perintah From berfungsi untuk menentukan tabel mana yang record-nya

akan dihapus.

DELETE FROM `nama_tabel`

Kode Program 2.27 Contoh Perintah Delete From

3. Where

Perintah Where berfungsi untuk menentukan nilai acuan pada field untuk

menentukan record mana yang akan dihapus.

DELETE FROM `nama_tabel` WHERE `nama_kolom` =

`nilai_acuan`

Kode Program 2.28 Contoh Perintah Delete Where

2.20 DCL (Data Control Language)

DCL merupakan perintah SQL yang berhubungan dengan pengaturan hak

akses user MySQL, baik terhadap server, database, tabel, maupun field. Perintah

dasar DCL antara lain Grant dan Revoke.

Page 35: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

39

2.21 Kontrol Replikasi

Skenario replikasi kontrol harus memiliki algortima yang jelas karena

algoritma tersebut harus menjaga konsistensi data yang terdapat pada database

tersebut. Cara untuk meminimalisasi terjadinya inkonsistensi adalah dengan cara

melihat apakah ada atau tidak salinan data yang identik satu sama lain. Dua

pendekatan untuk mengontrol replikasi adalah.

2.21.1 Kontrol Replikasi Sinkron

Mode replikasi sinkron memungkinkan pertukaran data secara real-time

sehingga sinkronisasi suatu data akan terjaga, saat ada transaksi operasional yang

sedang menulis sesuatu ke database sumber, maka saat yang bersamaan penulisan

juga dilakukan terhadap database target yang ada di lokasi remote. Keseluruhan

proses penulisan pada database sumber dan database target harus selesai terlebih

dahulu sebelum beranjak ke transaksi operasional selanjutnya dan diberi

acknowledge untuk keduanya jika telah selesai. Mode replikasi sinkron

membutuhkan pertimbangan performansi sistem yang tinggi. Selain itu jarak

antara database sumber dan database target juga menjadi prasyarat utama.

Keuntungan dari mode replikasi ini adalah menyediakan recovery yang konsisten

dan lengkap untuk semua jangka waktu. Kelebihan dan kekurangan menggunakan

replikasi sinkron antara lain:

1. Semua copy data selalu teridentifikasi.

2. Data terkini secara cepat di-update ke seluruh replika melalui jaringan.

3. Baik digunakan untuk integritas data.

Teknik dasar untuk menjamin transaksi menghasilkan satu hasil dan tidak

bergantung pada akses terhadap data atau replika data yang digunakan dalam

perhitungan transaksi. Teknik pertama disebut voting, transaksi harus menulis

mayoritas data dan replikanya dan membaca minimal satu replika yang dianggap

paling mutakhir. Replikasi Sinkron contoh jika 10 replika data dan 7 replika

ditulis oleh transaksi update, maka 4 data lainnya juga harus ditulis. Setiap replika

mempunyai nomor versi. Replika dengan nomor versi tertinggi dianggap paling

Page 36: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

40

mutakhir. Teknik ini akan terjadi banyak proses pembacaan, padahal proses

pembacaan sangat diperlukan pada transaksi berikutnya.

Teknik kedua disebut read-any write-all, artinya untuk proses pembacaan

cukup melibatkan satu replika, tetapi ketika proses tulis harus melibatkan semua

replika. Proses pembacaan dapat dilakukan dengan cepat apalagi pembacaan data

lokal, tetapi proses tulis lebih lama. Teknik ini lebih populer, karena proses baca

lebih sering dibutuhkan dibandingkan proses tulis.

2.21.2 Kontrol Replikasi Asinkron

Mode Replikasi Asinkron memungkinkan pertukaran data secara buffering

dalam artian bahwa data akan diletakkan dalam sebuah penampung sementara

terlebih dahulu, kemudian pada jangka waktu tertentu akan direplikasi ke disk

target. Data yang direplikasi ke disk target tidak membutuhkan acknowledgement

agar penulisan transaksi operasional pada disk sumber dapat berlangsung kembali,

sehingga mode replikasi ini tidak menjamin sinkronisasi suatu data pada dua

pihak yang terlibat karena jika suatu saat terjadi crash pada salah satu pihak dan

data belum sempat direplikasi maka data yang terdapat pada kedua pihak tidak

bisa dikatakan sebagai sebuah data yang sinkron. Performansi sistem dapat

meningkatkan, namun lebih memiliki banyak risiko, jika hal ini terjadi maka

recovery yang cukup rumit dilakukan, namun tidak menjamin data hasil recovery

adalah data yang benar dan konsisten karena ada kemungkinan hilangnya

beberapa data. Keuntungan dari mode replikasi ini adalah efektivitas biaya.

Kelebihan dan kekurangan Replikasi Asinkron antara lain:

1. Mentoleransi data yang tidak konsisten.

2. Perkembangan data terkini yang tertunda tidak langsung terupdate.

3. Integritas data rendah.

2.22 Algoritma Replikasi Kontrol

Algoritma replikasi kontrol telah dipelajari dan diusulkan dalam banyak

literatur. Algoritma replikasi kontrol fokus pada pendekatan penyediaan kontrol

replikasi sinkron. Algoritma dapat dikatergorikan dalam dua ketegori kontrol

Page 37: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

41

yakni terpusat dan tersdistribusi. Dalam pendekatan tersentralistik atau terpusat,

kontrol diberikan ke satu lokasi, sementara dalam pendekatan terdistribusi kontrol

adalah bersama di antara lokasi. Definisi dari arsitekur replicated database

environment (DBE) adalah sebagai berikut.

2.22.1 Pertimbangan Arsitekutural

Database dapat sepenuhnya atau sebagian direplikasi. Sebuah database

yang direplikasi menyimpan satu salinan lengkap dari database di setiap server

database. Database yang sebagian direplikasi, di sisi lain tidak menyimpan dari

beberapa tabel database pada setiap situs, sebaliknya beberapa tabel atau beberapa

fragmen tabel akan disalin dan disimpan pada dua atau lebih situs.

Gambar 2.11 Ilustrasi Penempatan Replikasi Data

2.22.2 Algoritma Replikasi Master-Slave

Algortima Master-Slave diusulkan pertama kali oleh C. Ellis. Gambar

2.11 menunjukan ada satu lokasi yang berperan sebagai master server dan dan

slave server. Algoritma Master berjalan hanya pada satu lokasi dan dia bertanggu

jawab untuk mendeteksi adanya konflik data, sedangkan algoritma slave

menyimpan salinan data dari master. Server slave atau cadangan terletak pada

beberapa lokasi yang berbeda. Dua fase untuk menjalankan algoritma ini yaitu

fase transaksi peneriman atau penolakan dan fase transaksi aplikasi. C. Ellis

menggunakan diagram notasi yang dikenal sebagai net evaluation. Kotak

mewaliki peristiwa, lingkaran mewaliki negara, panah besar mewakili tugas dan

panah kecil mewakili transisi atau perpindahan. Sebuah titik di samping panah

Page 38: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

42

besar menunjukan satu pesan yang di kiri sebagai salah satu tindakan dalam tugas,

sementara itu tiga titik (elipsis) menunjukan broadcast seperti yang dapat dilihat

pada Gambar 2.12 berikut.

Gambar 2.12 Algoritma Replikasi Master-Slave

2.22.3 Tahap Transaksi Penerimaan atau Penolakan terpusat

Transaksi lokal memonitoring dan mengirimkan permintaak ke slave atau

cadangan saat suatu situs meminta untuk menjalankan transaksi. Slave

mengirimkan permintaan untuk master dan bertanya apakah dapat menjalankan

transaksi ini setelah menerima permintaan. Kotak Berlabel “Ext REQ” pada

Gambar 2.12 menunjukan proses penerimaan atau penolakan. Pendeteksian

konflik saat transaksi berjalan, master mempertahankan antrian tertunda dari

tansaksi tersebut, antrian ini membuat master dapat memilih apakah transaksi

tersebut dapat diterima atau tidak. Master menerima permintaan dari slave, maka

master akan memeriksa konflik yang terjadi pada transaksi dan semua transaksi

yang sudah diantriannya, jika permintaan baru tidak bertentangan atau konflik

dengan transaksi yang sudah ada diantrian maka master memperbolehkan

transaksi tersebut ke dalam antrian transaksi berikutnya dan mengirimkan “ACK

+”. Master akan mersepon dengan mengirim “ACK-” ke pada slave jika terjadi

konflik satu dengan yang lainnya maka slave akan menolak transaksi respon dari

master tidak menguntukngkan atau bernilai minus.

Page 39: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

43

2.23 Topologi Distribusi Data

Sistem database terdistribusi hanya mungkin dibangun dalam sebuah

jaringan komputer. Topologi dalam sebuah sistem jaringan komputer dikenal

untuk menentukan bagaimana konfigurasi atau keterhubungan antara satu simpul

jaringan (node/site) dengan simpul-simpul lainnya. Setiap simpul dalam kaitannya

dengan sistem database terdistribusi mewakili sebuah server yang memiliki disk

dengan sistem database sendiri (lokal). Setiap server akan membentuk sebuah

LAN (Local Area Network) untuk mengakomodasi sejumlah workstation dan

sekaligus user lokal. Bentuk dari Topologi Distribusi Data antara lain:

1. Fully Connected Network

Fully Connected Network memiliki keuntungan jika salah satu node rusak,

node yang lainnya masih dapat berjalan tetapi berbiaya mahal dalam

membangun toplogi. Kerugian dari Fully Connected Network adalah

kontrol management data tidak terjamin. Topologi Fully Connected

Network dapat dilihat pada Gambar 2.13.

Gambar 2.13 Fully Connected Network

2. Partialy Connected Network

Partialy Connected Network memiliki keuntungan reliability yang rendah,

dan biaya trafik jaringan dapat diminimalisasikan. Topologi Partialy

Connected Network dapat dilihat pada Gambar 2.14.

Page 40: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

44

Gambar 2.14 Partialy Connected Network

3. Tree Structured Network

Tree Structured Network memiliki keuntungan yaitu bersifat tersentralisasi

sehingga kontrol management lebih terjamin. Kerugiannya jika node pusat

(A) rusak, semua akan rusak. Topologi Tree Structured Network dapat

dilihat pada Gambar 2.15.

Gambar 2.15 Tree Structured Network

4. Ring Network

Ring Network memiliki keuntungan jika rusak satu node, node lain masih

berjalan, tetapi memiliki kerugian kontrol management kurang terjamin

karena bersifat desentralisasi. Topologi Ring Network dapat dilihat pada

Gambar 2.16.

Page 41: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

45

Gambar 2.16 Ring Network

5. Star Network

Star Network memiliki keuntungan dalam hal control management yang

lebih terjamin, karena bersifat sentral dan reliability yang rendah.

Kerugian Star Network adalah jika pusat rusak, node lainnya juga rusak.

Topologi Star Network dapat dilihat pada Gambar 2.17.

Gambar 2.17 Star Network

Perbedaan utama di antara topologi di atas terletak pada:

1. Biaya Instalasi, yaitu biaya dalam membangun hubungan (link) antar

simpul.

2. Biaya Komunikasi, yaitu waktu dan biaya dalam pengoperasian sistem

berupa pengiriman data dari satu simpul ke simpul lainnya.

3. Kehandalan, yaitu dalam hal frekuensi atau tingkat kegagalan komunikasi

yang terjadi.

Page 42: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

46

4. Ketersediaan, yaitu tingkat kesiapan data yang dapat diakses sebagai

antisipasi kegagalan komunikasi.

Sebagaimana yang ditunjukkan pada penjelasan di atas, dapat disimpulkan

setiap simpul atau server memiliki basis data sendiri-sendiri, yang terpisah secara

geografis tetapi harus menyatu secara fungsional. Terdapat 2 jenis transaksi dalam

sebuah database terdistribusi yang mungkin terjadi yaitu:

1. Transaksi Lokal yaitu transaksi yang mengakses database di server yang

sama dengan server dari mana transaksi tersebut dijalankan.

2. Transaksi Global yaitu transaksi yang membutuhkan pengaksesan data di

server yang berbeda dengan server di mana transaksi tersebut dijalankan,

atau transaksi dari sebuah server yang membutuhkan pengaksesan data ke

sejumlah server lainnya.

2.24 PHP (Hypertext Preprocessor)

PHP merupakan bahasa pemograman yang bersifat server script atau

server side dan tersembunyi di dalam server. PHP pertama kali diciptakan oleh

Rasmus Lerdorf pada Tahun 1994. PHP dapat digunakan pada semua sistem

operasi antara lain Linux, Unix (termasuk variannya HP-UX, Solaris, dan Open

BSD), Microsoft Windows, Mac OS, RICS OS. PHP juga mendukung banyak

Webserver seperti Apache, Microsoft Internet Information Server (MIIS),

Personal Web Server (PWS), Netcape and iPlanet servers, Oreilly Website Pro

Server, audium, xitami, Omni HTTPD.

2.24 JavaScript

Java Script adalah bahasa skrip yang populer di internet dan dapat bekerja

di sebagian besar penjelajah web populer seperti Internet Explorer (IE), Mozilla

Firefox, Netscape dan Opera. Kode JavaScript dapat disisipkan dalam halaman

website dengan penggunaan tag SCRIPT. JavaScript pertama kali dikembangkan

oleh Brendan Eich dari Netscape dibawah nama Mocha, yang nantinya namanya

diganti menjadi LiveScript, dan akhirnya menjadi JavaScript. Navigator

sebelumnya telah mendukung Java untuk lebih bisa dimanfaatkan para

Page 43: BAB II TINJAUAN PUSTAKA 2.1 State of the art II.pdf · 2.1 State of the art Perancangan basis data terdistribusi untuk barang dan ... berjudul Model Fragmentasi Sistem Basis Data

47

programmer nonjava. Maka dikembangkanlah bahasa pemrograman bernama

LiveScript untuk mengakomodasi hal tersebut. Bahasa pemrograman inilah yang

akhirnya berkembang dan diberi nama JavaScript. JavaScript bisa digunakan

untuk banyak tujuan, misalnya untuk membuat efek rollover baik di gambar

maupun teks, dan yang penting juga adalah untuk membuat AJAX. JavaScript

adalah bahasa yang digunakan untuk AJAX.

2.25 JQuery

JQuery adalah javascript library, JQuery mempunyai semboyan “write

less, do more”. JQuery dirancang untuk memperingkas kode-kode Javascript.

JQuery adalah javascript library yang cepat dan ringan untuk menangani

dokumen HTML, menangani event, membuat animasi dan interakasi Ajax.