laporan kerja praktek - Digilib ITS - Institut Teknologi Sepuluh ...

34 downloads 251 Views 69KB Size Report
SKRIPSI. DESAIN DAN IMPLEMENTASI SISTEM DATABASE TERDISTRIBUSI. UNTUK ... Desain database tersentralisasi yang digunakan oleh PT. BJTI.
SKRIPSI

DESAIN DAN IMPLEMENTASI SISTEM DATABASE TERDISTRIBUSI UNTUK PERENCANAAN BONGKAR MUAT PETIKEMAS (STUDI KASUS DI PT. BERLIAN JASA TERMINAL INDONESIA, SURABAYA)

Oleh: IRFAN WAHYUDIN NRP: 1202 109 007

JURUSAN MATEMATIKA FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT TEKNOLOGI SEPULUH NOPEMBER SURABAYA 2006

SKRIPSI DESAIN DAN IMPLEMENTASI SISTEM DATABASE TERDISTRIBUSI UNTUK PERENCANAAN BONGKAR MUAT PETIKEMAS (STUDI KASUS DI PT. BERLIAN JASA TERMINAL INDONESIA, SURABAYA) dipersiapkan dan diusulkan oleh IRFAN WAHYUDIN NRP. 1202 109 007 telah dipertahankan di depan tim penguji pada tanggal: 03 Agustus 2006 Susunan Tim Penguji Pembimbing,

Anggota Tim Penguji

Budi Setiyono, S.Si, MT. NIP. 132 161 183

1. DR. M. Isa Irawan, MT NIP. 131 843 894

2. Drs. Sutrisno, MIKomp NIP. 131 629 805

3. Drs. Lukman Hanafi, M.Sc NIP. 131 782 039 Tugas Akhir ini telah diterima sebagai salah satu persyaratan untuk memperoleh gelar Sarjana Matematika Surabaya, Agustus 2006 Ketua Jurusan Matematika FMIPA ITS

Drs. Lukman Hanafi, M.Sc NIP. 131 782 039

ii

ABSTRAK

Proses bongkar muat petikemas di PT. BJTI, Surabaya yang sangat sibuk, membutuhkan suatu sistem database yang reliable, dan mempunyai tingkat data availability yang tinggi. Desain database tersentralisasi yang digunakan oleh PT. BJTI saat ini belum mampu untuk memenuhi kriteria di atas. Sistem database terdistribusi adalah jawaban untuk permasalahan tersebut. Sistem ini mendistribusikan keseluruhan atau hanya sebagian data saja ke tiap-tiap site di suatu organisasi atau perusahaan, sesuai dengan kebutuhan data di tiap-tiap site tersebut. Sehingga pemrosesan data tidak lagi bergantung pada beroperasi atau tidaknya satu server database. Dalam mendesain dan mengimplementasikan sistem database terdistribusi untuk perencanaan bongkar muat petikemas, penulis menggunakan metode replikasi parsial dalam mendistribusikan data ke setiap site database. Dengan replikasi parsial, data di setiap site database tidak perlu didistribusikan seluruhnya, akan tetapi hanya sebagiannya saja, tergantung dari kebutuhan data dari suatu site database. Dalam penelitian ini, database didistribusikan ketiga site di PT. BJTI Surabaya yang terkait dengan proses perencanaan bongkar muat petikemas. Di mana ketiga site tersebut adalah kantor pusat PT. BJTI Surabaya, kantor dermaga Berlian, dan pintu gerbang(gate) dermaga. Untuk site kantor pusat dan kantor dermaga Berlian karena data perencanaan bongkar muat petikemas dibutuhkan seluruhnya, maka distribusi data dilakukan seluruhnya. Akan tetapi pada site gate dermaga Berlian karena data yang dibutuhkan hanya yang terkait dengan proses cek fisik petikemas, maka data yang didistribusikan hanya data yang terkait dengan pemrosesan tersebut sehingga data tidak didistribusikan seluruhnya. Kemudian metode yang digunakan oleh setiap site database untuk mempropagasikan data antara satu sama lain, adalah metode propagasi data asynchronous. Metode propagasi data ini memungkinkan terjadinya disconnected computing, yaitu suatu proses komputasi yang terkait dengan pemrosesan data tanpa harus tergantung pada beroperasi atau tidaknya suatu server database. Kata Kunci: Sistem Database Terdistribusi, Replikasi Data, Propagasi Data, Manajemen Konflik.

iii

DAFTAR ISI

Nama

Halaman

JUDUL ….…..………………………………………………………….

i

LEMBAR PENGESAHAN…………………………………………....

ii

ABSTRAK ….………………………………………………………….

iii

KATA PENGANTAR …………………………………………………

iv

DAFTAR ISI ……………………………….…………………………..

vi

DAFTAR GAMBAR ……………………………….………………….

vii

DAFTAR TABEL …………………………………………..………….

xi

BAB I

PENDAHULUAN ………………………….………………

1

1.1. Latar Belakang ……………………………….…………….

1

1.2. Rumusan Masalah …………………………………………

3

1.3. Batasan Masalah .………………………………………….

3

1.4. Metode Penelitian…….. …………………………………..

4

1.5. Tujuan dan Manfaat Penelitian……………………………

5

1.6. Sistematika Penelitian.. …………………………………...

5

BAB II

DASAR TEORI …………………………….………………. 7

2.1. Sistem Database……………………………………………

7

2.2. Database Management System(DBMS)…………………...

8

2.3. Objek Database…………………………………………….

8

2.3.1. Tabel…………………………………………………

8

2.3.2. Trigger………………………………………………..

9

vi

2.3.3. Tablespace……………………………………………

9

2.3.4. Integrity Constraint…………………………………..

10

2.3.5. Sequence………………………………………………

10

2.3.6. Materialized View…………………………………….

11

2.3.7. Procedure dan Stored Procedure………………………

12

2.3.8. Paket…………………………………………………… 12 2.3.9. Database Link………………………………………….. 13 2.4. Database Oracle……………………………………………… 14 2.5. Arsitektur Sistem Database…………………………………... 15 2.5.1. Sistem Database Tersetralisasi………………………

16

2.5.2. Sistem Database Client Server………………………

17

2.6. Sistem Database Terdistribusi……………………………..

18

2.6.1. Pendekatan untuk mendistribusikan relasi…………..

20

2.6.1.1. Replikasi……………………………………….

20

2.6.1.2. Fragmentasi Data………………………………

21

2.6.1.2. Replikasi dan Fragmentasi Data……………….

25

2.6.2. Propagasi Data, Concurency Control and Processing, Manajemen Konflik………………………………….

26

2.6.2.1. Propagasi Data pada Replikasi Database………

26

2.6.2.1.1. Asynchronous…………………………....

26

2.6.2.1.2. Synchronous……………………………...

28

2.6.2.2. Concurency Control……………………………

29

2.6.2.2.1. Two Phase Commit………………………

30

vii

BAB III

2.6.2.2.2. Locking Protocols………………………

32

2.6.2.2.3. Timestamp Ordering……………………..

35

2.6.2.3. Manajemen Konflik…………………………….

36

2.6.2.3.1. Manajemen Konflik Keunikan Data………

36

2.6.2.3.2. Manajemen Konflik Update Data…………

37

2.6.2.3.3. Manajemen Konflik Penghapusan Data…..

38

ANALISA KEBUTUHAN DAN DESAIN SISTEM……

40

3.1. Gambaran Modul Perencanaan Bongkar Muat Petikemas Ekspor dan Impor………………………………....................... 42 3.2. Gambaran Proses Bisnis Perencanaan Bongkar Muat Petikemas.. 44 3.2.1. Gambaran Proses Bisnis Perencanaan Bongkar Muat Petikemas di kantor pusat....………………………

44

3.2.2. Gambaran Proses Bisnis Perencanaan Bongkar Muat Petikemas di kantor dermaga Berlian……..………

45

3.2.3. Gambaran Proses Bisnis Perencanaan Bongkar Muat Petikemas di gate dermaga Berlian..………………

47

3.3. Kebutuhan Informasi di tiap Site……………………………….

50

3.3.1. Kebutuhan Informasi di Kantor Pusat…………………….

50

3.3.2. Kebutuhan Informasi di Kantor Dermaga Berlian……….

50

3.3.3. Kebutuhan Informasi di gate dermaga Berlian……………

51

3.4. Desain Jaringan………………………………………………….

52

3.4.1. Jalur Koneksi untuk Propagasi Data Antar Site…………..

53

3.4.2. Metode Propagasi Data…………………………………..… 54

viii

3.5. Desain Database…………………………………………………. 56 3.6. Desain User……………………………………………………… 79 3.7. Manajemen Konflik……………………………………………… 80 3.7.1. Manajemen Konflik Keunikan Data………………………. 80 3.7.2. Manajemen Konflik Update Data..……………………….

81

3.7.3. Manajemen Konflik Penghapusan Data…………………… 82 3.8. Desain Antarmuka Aplikasi……………………………………… 83 3.8.1. Desain Antarmuka untuk Menampilkan dan Memproses Data………………………………………………………… 83 3.8.2. Desain Antarmuka untuk Perencanaan Bongkar Muat…….. 85 3.8.3. Desain Antarmuka untuk Operasi Gate…………………….. 89 3.8.4. Desain Antarmuka untuk Login ke Aplikasi……………… 89 BAB IV

IMPLEMENTASI DAN UJI COBA SISTEM.......…………. 91

4.1. Kebutuhan Perangkat Lunak dan Perangkat Keras untuk Implementasi…………………………………………………….. 91 4.2. Pra Implementasi…………………………………………………. 92 4.2.1. Instalasi Software…………………………………………… 92 4.2.2. Instalasi jaringan Komputer………………………………… 93 4.3. Implementasi Sistem Database Terdistribusi…………………….. 94 4.3.1. Pembuatan Skema dan Tablespace…………………………. 94 4.3.2. Setting Site hq1.com dan hq2.com…………………………. 98 4.3.3. Setting Site gate.com……………………………………….. 100 4.3.4. Implementasi Manajemen Konflik Keunikan Data………… 104

ix

4.3.5. Implementasi Manajemen Konflik Update Data………….. 110 4.3.6. Implementasi Manajemen Konflik Penghapusan Data……

112

4.4. Implementasi Aplikasi…………………………………………..

113

4.5. Uji Coba Sistem…………………………………………………

121

4.5.1. Propagasi Data…………………………………………….

121

4.5.2. Uji Coba Manajemen Konflik……………………………..

127

4.5.2.1. Uji Coba Manajemen Konflik Keunikan Data……….. 127 4.5.2.2. Uji Coba Manajemen Konflik Update Data………….. 129 4.5.2.3. Uji Coba Manajemen Konflik Penghapusan Data…….. 133 4.5.3. Uji Coba Performansi………..…………………………….. 134 4.5.4. Hasil Uji Coba Propagasi Data dan Manajemen Konflik…. 137 BAB V

PENUTUP…………………………………...............………….

140

5.1. Kesimpulan………………………………………………………. 140 5.2. Saran……………………………………………………………... 141 DAFTAR PUSTAKA………………………………..……………………….. 142 LAMPIRAN……………………………………………………………………143

x

DAFTAR GAMBAR

Gambar 2.1

Fitur Advance Replication pada Oracle 9i……………………….. 15

Gambar 2.2

Desain sistem database terdistribusi……………………………… 19

Gambar 2.3

Mekanisme propagasi data secara asynchronous pada Oracle………………………………………………………. 27

Gambar 2.4

Mekanisme propagasi data secara synchronous pada Oracle…….. 29

Gambar 3.1

Layout stowage/bayplan di suatu kapal………………………….. 41

Gambar 3.2

Diagram proses bisnis perencanaan bongkar muat petikemas di kantor pusat PT. BJTI, Surabaya……………………………… 44

Gambar 3.3

Diagram proses bisnis perencanaan bongkar muat petikemas di dermaga Berlian……………………………………………….. 46

Gambar 3.4

Diagram proses bisnis perencanaan bongkar muat petikemas di gate dermaga Berlian…………………………………………... 48

Gambar 3.5

Desain jaringan computer wireless di PT. BJTI, Surabaya………. 52

Gambar 3.6

Desain jaringan…………………………………………………… 53

Gambar 3.7

Model propagasi data antar site database…………………………. 55

Gambar 3.8

CDM untuk perencanaan bongkar muat petikemas………………. 57

Gambar 3.9

PDM untuk perencanaan bongkar muat petikemas………………. 58

Gambar 3.10 Distribusi data di tiap-tiap site database………….………………. 74 Gambar 3.11 CDM untuk perencanaan bongkar muat petikemas di site gate.com…………………………………………………… 75 Gambar 3.12 PDM untuk perencanaan bongkar muat petikemas

xi

di site gate.com…………………………………………………… 76 Gambar 3.13 Mekasnisme manajemen konflik keunikan data…………………. 80 Gambar 3.14 Mekasnisme manajemen konflik penghapusan data……………… 82 Gambar 3.15 Desain antarmuka untuk menampilkan dan memproses data.......... 84 Gambar 3.16 Desain antarmuka untuk perencanaan bongkar muat petikemas ................................................................................ 85 Gambar 3.17 Layout penampang suatu kapal........................................................ 86 Gambar 3.18 Form untuk perencanaan bongkar muat(BAYPLAN)..................... 87 Gambar 3.19 Desain antarmuka untuk operasi gate.............................................. 89 Gambar 3.20 Desain antarmuka untuk login ke sistem......................................... 90 Gambar 4.1

Proses deployment template untuk materialized view..................... 101

Gambar 4.2

Penggalan template deployment script untukpembuatan user administrator di gate.com....................................................... 102

Gambar 4.3

Penggalan template deployment script untuk pembuatan refresh group di gate.com................................................................ 101

Gambar 4.4

Penggalan template deployment script untuk pembuatan objek replikasi di gate.com.............................................................. 103

Gambar 4.5

Form untuk login ke sistem............................................................. 114

Gambar 4.6

Form MDIUtama............................................................................. 115

Gambar 4.7

Bagian pertama form CONTAINER............................................... 115

Gambar 4.8

Bagian kedua form CONTAINER.................................................. 116

Gambar 4.9

Form untuk mengadministrasi voyage.............................................. 117

Gambar 4.10 Form untuk memasukkan data petikemas dari file BAPLIE............ 117

xii

Gambar 4.11 Layout posisi yang dapat diisi petikemas di suatu kapal.................. 118 Gambar 4.12 Form CUSTOMER........................................................................... 119 Gambar 4.13 Form GATE...................................................................................... 120 Gambar 4.14 Form untuk mencari data petikemas milik pengguna jasa................ 121 Gambar 4.15 Proses login ke site hq1.com............................................................. 122 Gambar 4.16 Proses input data pelayaran nomer 244 kapal Sinar Solo................. 124 Gambar 4.17 Proses input data petkemas bongkar nomer 244 kapal Sinar Solo................................................................................ 124 Gambar 4.18 Form CONTAINER yang menampilkan data petikemas impor dari kapal Sinar Solo, pada site hq2.com.......................................... 125 Gambar 4.19 Form YARDPLAN yang digunakan untuk proses perencanaan bongkar data petikemas impor dari kapal Sinar Solo, pada site hq2.com............................................................................. 126 Gambar 4.20 Informasi konflik keunikan data di tabel ISOCODE. dimasukkan di tabel CONF_REPORT site hq1.com...................... 128 Gambar 4.21 Informasi konflik keunikan data di tabel ISOCODE, dimasukkan di tabel CONF_REPORT site hq2.com....................... 128 Gambar 4.23 Data CODE_ISO 3333 yang dimasukkan pertama kali dan yang menyebabkan konflik di site hq2.com.................................... 129 Gambar 4.24 Data CODE_ISO 3333 yang dimasukkan pertama dan yang menyebabkan konflik di site hq1.com............................................. 129 Gambar 4.25 Posisi awal petikemas dengan id MLCU3451676 di kapal Yong Wang........................................................................ 130

xiii

Gambar 4.26 Posisi petikemas dengan id MLCU3451676 di kapal Yong Wang setelah diupdate di site hq1.com.................................. 131 Gambar 4.27 Posisi petikemas dengan id MLCU3451676 di kapal Yong Wang setelah diupdate di site hq2.com.................................. 131 Gambar 4.28 Informasi waktu perubahan data petikemas MLCU3451676 pada site hq1.com............................................................................. 132 Gambar 4.29 Informasi waktu perubahan data petikemas MLCU3451676 pada site hq2.com............................................................................. 132 Gambar 4.30 Data petikemas GSTU7774730 yang sudah ditandai untuk dihapus(nilai REMOVE_DATE terisi)............................................ 133 Gambar 4.31 Diagram hasil uji coba performansi di site hq1.com........................ 136 Gambar 4.32 Diagram hasil uji coba performansi di site hq2.com........................ 136 Gambar 4.33 Diagram hasil uji coba performansi di site gate.com........................ 137

xiv

DAFTAR TABEL

Tabel 2.1

Relasi account…………………………………………………..

22

Tabel 2.2

Fragmen account1………………………………………………

22

Tabel 2.3

Fragmen account2………………………………………………

23

Tabel 2.4

Relasi deposit dengan id-tuples…………………………………

24

Tabel 2.5

Fragmen deposit1……………………………………………….

25

Tabel 2.6

Fragmen deposit2……………………………………………….

25

Tabel 2.7

Transaksi T1…………………………………………………….

33

Tabel 2.8

Transaksi T2…………………………………………………….

33

Tabel 2.9

Eksekusi dua transaksi T1 dan T2 tanpa 2PL……………………

34

Tabel 2.10

Eksekusi dua transaksi T1 dan T2 dengan 2PL………………….

35

Tabel 3.1

Database link di tiap-tiap site database…………………………

54

Tabel 3.2

Struktur tabel ACC_USER……………………………………..

59

Tabel 3.3

Contoh isi tabel ACC_USER…………………………………..

59

Tabel 3.4

Struktur tabel AGEN_LAYAR…………………………………

60

Tabel 3.5

Contoh isi tabel AGEN_LAYAR………………………………

60

Tabel 3.6

Struktur tabel BERTH………………………………………….

60

Tabel 3.7

Contoh isi tabel BERTH………………………………………..

60

Tabel 3.8

Struktur tabel CONTAINER……………………………………

61

Tabel 3.9

Contoh isi tabel CONTAINER…………………………………

62

Tabel 3.10

Struktur tabel CRANE………………………………………….

62

Tabel 3.11

Contoh isi tabel CRANE……………………………………….

63

xv

Tabel 3.12

Struktur tabel DISC_LOAD……………………………………

63

Tabel 3.13

Contoh isi tabel DISC_LOAD………………………………….

63

Tabel 3.14

Struktur tabel ISOCODE……………………………………….

64

Tabel 3.15

Contoh isi tabel ISOCODE……………………………………..

64

Tabel 3.16

Struktur tabel OPERATOR……………………………………..

65

Tabel 3.17

Contoh isi tabel OPERATOR…………………………………..

65

Tabel 3.18

Struktur tabel PORTS……………………………………………

65

Tabel 3.19

Contoh isi tabel PORTS…………………………………………

66

Tabel 3.20

Struktur tabel PROFILE_VESSEL……………………………..

66

Tabel 3.21

Contoh isi tabel PROFILE_VESSEL……………………………

67

Tabel 3.22

Struktur tabel TPK……………………………………………….

67

Tabel 3.23

Contoh isi tabel TPK…………………………………………….

68

Tabel 3.24

Struktur tabel VESSEL…………………………………………..

68

Tabel 3.25

Contoh isi tabel VESSEL………………………………………..

69

Tabel 3.26

Struktur tabel VOYAGE…………………………………………

69

Tabel 3.27

Contoh isi tabel VOYAGE………………………………………. 70

Tabel 3.28

Struktur tabel EMKL…………………………………………….. 70

Tabel 3.29

Contoh isi tabel EMKL…………………………………………..

70

Tabel 3.30

Struktur tabel PORTS_ASAL……………………………………

71

Tabel 3.31

Contoh isi tabel PORTS_ASAL…………………………………. 71

Tabel 3.32

Struktur tabel PORTS_TUJUAN………………………………… 71

Tabel 3.33

Contoh isi tabel PORTS_TUJUAN……………………………… 71

Tabel 3.34

Struktur tabel VOYAGE sebelum difragmentasi………………… 77

xvi

Tabel 3.35

Struktur tabel VOYAGE setelah difragmentasi………………….. 77

Tabel 3.36

Struktur tabel DISC_LOAD sebelum difragmentasi……………... 77

Tabel 3.37

Struktur tabel DSIC_LOAD setelah difragmentasi………………. 77

Tabel 3.38

Struktur tabel EMKL sebelum difragmentasi…………………….. 78

Tabel 3.39

Struktur tabel EMKL setelah difragmentasi……………………… 78

Tabel 3.40

Struktur tabel VESSEL sebelum difragmentasi………………….. 78

Tabel 3.41

Struktur tabel VESSEL setelah difragmentasi……………………. 78

Tabel 3.42

Daftar tabel di database…………………………………………… 79

Tabel 4.1

Spesifikasi perangkat keras yang digunakan untuk implementasi.......................................................................... 91

Tabel 4.2

Struktur tabel TEMP………………………………………………

Tabel 4.3

Informasi tentang pelayaran nomer 244 kapal Sinar Solo………... 123

Tabel 4.4

Hasil uji coba query di site hq1.com……………………………… 135

Tabel 4.5

Hasil uji coba query di site hq2.com……………………………… 135

Tabel 4.6

Hasil uji coba query di site gate.com……………………………… 136

Tabel 4.7

Hasil uji coba query di site gate.com……………………………… 137

xvii