PEMBUATAN TOOLS PEMANTAUAN KINERJA BASIS DATA SQL SERVER BERBASIS WEB (STUDI KASUS: PANTAU.ITS.AC.ID) DEVELOPMENT OF WEB-BASE SQL SERVER DATABASE PERFORMANCE MONITORING TOOLS (CASE STUDY: PANTAU.ITS.AC.ID)

TUGAS AKHIR

  • – KS141501

  

PEMBUATAN TOOLS PEMANTAUAN KINERJA BASIS

DATA SQL SERVER BERBASIS WEB (STUDI KASUS:

PANTAU.ITS.AC.ID)

  DEVELOPMENT OF WEB-BASE SQL SERVER DATABASE PERFORMANCE MONITORING TOOLS (CASE STUDY: PANTAU.ITS.AC.ID) ERWIN WILBERT MAPALIEY NRP 5212 100 094 Dosen Pembimbing Radityo Prasetianto Wibowo, S.Kom.,M.Kom. JURUSAN SISTEM INFORMASI Fakultas Teknologi Informasi

  TUGAS AKHIR – KS141501

PEMBUATAN TOOLS PEMANTAUAN KINERJA

BASIS DATA SQL SERVER BERBASIS WEB

(STUDI KASUS: PANTAU.ITS.AC.ID) ERWIN WILBERT MAPALIEY NRP 5212 100 094 Dosen Pembimbing Radityo Prasetianto Wibowo, S.Kom.,M.Kom.

  JURUSAN SISTEM INFORMASI Fakultas Teknologi Informasi Institut Teknologi Sepuluh Nopember Surabaya 2017

  FINAL PROJECT – KS141501

DEVELOPMENT OF WEB-BASE SQL SERVER

DATABASE PERFORMANCE MONITORING

TOOLS (CASE STUDY: PANTAU.ITS.AC.ID)

  ERWIN WILBERT MAPALIEY NRP 5212 100 094 Supervisor Radityo Prasetianto Wibowo, S.Kom.,M.Kom.

  INFORMATION SYSTEMS DEPARTMENT Faculty of Information Technology Tenth Nopember Institute of Technology Surabaya 2017

  

LEMBAR PENGESAHAN

PEMBUATAN TOOLS PEMANTAUAN KINERJA

BASIS DATA SQL SERVER BERBASIS WEB

(STUDI KASUS: PANTAU.ITS.AC.ID)

TUGAS AKHIR

  Disusun untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer pada

  Jurusan Sistem Informasi Fakultas Teknologi Informasi

  Institut Teknologi Sepuluh Nopember Oleh:

  

ERWIN WILBERT MAPALIEY

5212 100 094

  Surabaya, Juli 2017

  

KEPALA

DEPARTEMEN SISTEM INFORMASI

  

LEMBAR PERSETUJUAN

PEMBUATAN TOOLS PEMANTAUAN KINERJA

BASIS DATA SQL SERVER BERBASIS WEB

(STUDI KASUS: PANTAU.ITS.AC.ID)

TUGAS AKHIR

  Disusun untuk Memenuhi Salah Satu Syarat Memperoleh Gelar Sarjana Komputer pada

  Jurusan Sistem Informasi Fakultas Teknologi Informasi

  Institut Teknologi Sepuluh Nopember Oleh:

  

ERWIN WILBERT MAPALIEY

5212 100 094

  Disetujui Tim Penguji : Tanggal Ujian : 7 Juli 2017 Periode Wisuda : September 2017

  

Radityo Prasetianto W, S.Kom., M.Kom. (Pembimbing I)

Faizal Johan Atletiko, S.Kom., M.T. (Penguji I)

  

PEMBUATAN TOOLS PEMANTAUAN KINERJA

BASIS DATA SQL SERVER BERBASIS WEB

(STUDI KASUS: PANTAU.ITS.AC.ID)

Nama Mahasiswa : Erwin Wilbert Mapaliey

  NRP : 5212 100 094 Jurusan : Sistem Informasi Dosen Pembimbing : Radityo Prasetianto W, S.Kom., M.Kom.

  

ABSTRAK

Basis data merupakan teknologi yang sudah menjadi bagian

penting bagi suatu organisasi maupun pelaku bisnis. Basis data

merupakan kumpulan data yang disimpan di dalam komputer

secara sistematis sehingga mudah diakses, dikelola, dan

diperbarui. Secara umum, terdapat tiga aktor utama dalam

penggunaan basis data, yaitu administrator basis data (DBA),

satu atau lebih pengembang aplikasi, dan pengguna. Seorang

administrator basis data bertugas untuk mengatur seluruh

aktivitas yang berkaitan dengan optimalisasi kinerja basis data.

Salah satu cara untuk menentukan apakah basis data sudah

bekerja secara optimal adalah dengan melakukan pemantauan

kinerja basis data. Beberapa vendor DBMS sudah menyediakan

tools ini yang sudah termasuk di dalam produk yang mereka

sediakan. Selain itu, ada pihak luar yang menyediakan tools

pemantauan kinerja basis data ini secara terpisah dan

mendukung multi-platform.

Insitut Teknologi Sepuluh Nopember (ITS) memiliki sebuah

sistem berbasis web yang berfungsi untuk memantau seluruh

aktivitas aplikasi yang digunakan di lingkungan ITS termasuk

basis data, yang memiliki alamat pantau.its.ac.id. Akan tetapi

belum terdapat fungsi pemantauan yang memberikan informasi

  

membuat tools pemantauan kinerja basis data berbasis web

untuk diimplementasikan pada sistem pantau.its.ac.id sehingga

memudahkan DPTSI sebagai pihak yang mengelola sistem

basis data untuk mendapatkan informasi terkait kinerja basis

data dan menentukan langkah yang harus dilakukan agar

mendapatkan kinerja basis data yang efisien dan optimal.

  

Melalui proses pembuatan hingga penggujian didapatkan

kesimpulan bahwa metrik-metrik yang digunakan dapat

diimplementasikan pada sistem berbasis web, dan sistem yang

dibuat dapat menyesuaikan dengan versi basis data yang

berbeda.

  

Kata kunci: Basis Data, Pemantauan Kinerja, SQL Server,

Performance Dashboard

  

DEVELOPMENT OF WEB-BASED SQL SERVER

DATABASE PERFORMANCE MONITORING TOOLS

(CASE STUDY: PANTAU.ITS.AC.ID)

Student Name : Erwin Wilbert Mapaliey

  NRP : 5212 100 094 Department : Information Systems

Supervisoe : Radityo Prasetianto W, S.Kom., M.Kom.

  

ABSTRACT

Database is a technology that has become an important part for

an organization or business. The database is a collection of

data stored in the computer systematically so easily accessible,

managed, and updated. In general, there are three main actors

in database usage, the database administrators (DBA), one or

more application developers, and users. A database

administrator is tasked with managing all activities related to

database performance optimization.

  

One way to determine whether the database is working

optimally is to perform database performance monitoring.

Some DBMS vendors already provide these tools that are

included in their products. In addition, there are another

company provide these database performance monitoring tools

separately and support multi-platform.

  

Tenth Nopember Institute of Technology (ITS) has a web-based

system that can monitor all application activities that used in

  

ITS environment including the database, which has address

pantau.its.ac.id. However, there is no monitoring function that

provides information related to database performance. This

final project aims to create a web-based database performance

monitoring tool that can be implemented on pantau.its.ac.id so

as to facilitate DPTSI as department that manages the database

  

determine the steps to be done in order to get the performance

with efficient and optimal data usage.

Through the process of making up to the testers it can be

concluded that the metrics used can be implemented on a web-

based system, and the system created can adapt to different

database versions

Keywords : Database, Performance Monitoring, SQL Server,

Performance Dashboard

KATA PENGANTAR

  Puji syukur penulis panjatkan ke hadirat Tuhan Yang Maha Esa atas berkat rahmat dan penyertaan-Nya serta telah memberikan kesehatan, kekuatan dan kelancaran bagi penulis dalam menyelesaikan Tugas Akhir ini sebagai salah satu syarat kelulusan pada Jurusan Sistem Informasi, Fakultas Teknologi Informasi, Institut Teknologi Sepuluh Nopember Surabaya. Dengan judul penelitian tugas akhir yaitu:

  

“PEMBUATAN TOOLS PEMANTAUAN KINERJA

BASIS DATA SQL SERVER BERBASIS WEB (STUDI

KASUS: PANTAU.ITS.AC.ID)”

  Dalam penyusunan, pengerjaan, dan penulisan Tugas Akhir ini tidak terlepas dari bantuan, bimbingan, serta dukungan dari berbagai pihak. Oleh karena itu, penulis dengan senang hati ingin menyampaikan rasa terima kasih yang sebesar-besarnya kepada:

  • Keluarga penulis yang selalu memberikan doa, dukungan dan semangat selama saya menjalani kuliah di Sistem Informasi ITS.
  • Bapak Dr. Ir. Aris Tjahyanto, M.Kom. sebagai Ketua Jurusan Sistem Informasi ITS dan Bapak Nisfu Asrul Sani, S.Kom, M.Sc. sebagai Kaprodi S1 Sistem Informasi ITS • Bapak Dr. Eng. Febriliyan Samopa, S.Kom, M.Kom.

  sebagai dosen wali penulis selama menjalani perkuliahan di Jurusan Sistem Informasi ITS. Terima kasih untuk bimbingan dan saran yang membangun selama penulis menjalani perkuliahan

  • Bapak dan ibu dosen laboratorium bidang minat Akuisisi Data dan Diseminasi Informasi.
  • Bapak Radityo Prasetianto Wibowo, S.Kom.,

  M.Kom. sebagai dosen pembimbing yang selalu sabar membimbing penulis selama pengerjaan dan yang telah diberikan untuk membimbing penulis, kritik dan saran yang membangun sehingga Tugas Akhir ini dapat diselesaikan dengan baik.

  • Mas Ricky Asrul Sani sebagai admin dan laboran Lab.

  Akuisisi Data dan Diseminasi Informasi yang telah berbagi pengalaman kepada penulis selama menjadi Asisten Laboratorium dan mengatur jadwal Tugas Akhir dengan baik.

  • Mas Rizky dari pihak DPTSI yang telah memberikan waktu untuk berdiskusi dan membantu penulis sehingga Tugas Akhir ini dapat diimplementasikan.
  • Teman-teman seperjuangan bimbingan Pak Radit dan teman-teman ADDI AMAN yang telah berjuang bersama untuk menyelesaikan tugas akhir ini.
  • SOLA12IS angkatan 2012 Jurusan Sistem Informasi yang selalu memberikan dukungan dan semangat.
  • Semua pihak yang tidak dapat disebutkan satu-persatu yang juga telah banyak membantu dan memberikan semangat dalam menyelesaikan Tugas Akhir ini.

  Penulis menyadari bahwa penulisan laporan Tugas Akhir ini masih jauh dari sempurna. Oleh sebab itu, penulis memohon maaf atas segala kekurangan dan kesalahan yang ada di dalam Tugas Akhir ini. Penulis dengan senang hati menerima saran dan kritik untuk memperbaiki kekurangan dan kesalahan yang ada pada tugas akhir ini. Semoga tugas akhir ini dapat bermanfaat bagi pembaca.

  Surabaya, Juli 2017 Penulis

  

DAFTAR ISI

  ABSTRAK ............................................................................... v ABSTRACT ........................................................................... vii KATA PENGANTAR ............................................................ ix DAFTAR ISI ........................................................................... xi DAFTAR GAMBAR ............................................................. xv DAFTAR TABEL ...............................................................xxiii

  BAB I PENDAHULUAN ........................................................ 1

  1.1. Latar Belakang Masalah ......................................... 1

  1.2. Perumusan Masalah................................................ 3

  1.3. Batasan Masalah ..................................................... 3

  1.4. Tujuan Penelitian.................................................... 4

  1.5. Manfaat Penelitian.................................................. 4

  1.6. Relevansi ................................................................ 4

  BAB II TINJAUAN PUSTAKA .............................................. 7

  2.1. Penelitian Sebelumnya ........................................... 7

  2.1.1. ApexSQL Monitor........................................ 7

  2.1.2. Database Health Monitor ............................. 8

  2.1.3. Solarwinds Database Performance Analyzer ...................................................................... 9

  2.2. Dasar Teori ........................................................... 11

  2.2.1. Database Performance Tuning & Monitoring .................................................................... 11

  2.2.2. SQL Server Performance Dashboard ......... 13

  2.2.3. Dashboard................................................... 17

  2.2.4. ITS Web Monitoring System ..................... 18

  3.1. Tahapan Pelaksanaan Tugas Akhir .......................21

  4.2.1. Metrik-Metrik SQL Server Performance Dashboard yang Digunakan........................29

  5.3. Konfigurasi Aplikasi.............................................57

  5.2. Direktori Aplikasi .................................................56

  5.1. Lingkungan Implementasi ...................................55

  BAB V IMPLEMENTASI ....................................................55

  4.2.5. Desain Antarmuka Sistem .........................49

  4.2.4. Desain Crawler ...........................................47

  4.2.3. Desain Basis Data ......................................44

  4.2.2. Desain Arsitektur Sistem ...........................43

  4.2. Desain Sistem .......................................................29

  3.1.1. Studi Literatur .............................................22

  4.1.3. Kebutuhan Fungsional ...............................28

  4.1.2. Pengguna Sistem .......................................27

  4.1.1. Fungsi Utama Perangkat Lunak .................27

  4.1. Analisis Kebutuhan ..............................................27

  BAB IV PERANCANGAN ..................................................27

  3.1.5. Penyusunan Buku Tugas Akhir ..................25

  3.1.4. Pengujian Tools Pemantauan Kinerja Basis Data.............................................................24

  3.1.3. Perancangan Tools Pemantauan Kinerja Basis Data Berbasis Web ............................22

  3.1.2. Mempelajari Metrik-Metrik SQL Server Performance Dashboard .............................22

  5.4. Pembuatan Aplikasi ..............................................58

  5.4.1. Fungsi crawler ........................................... 58

  5.4.2. Fungsi menampilkan kondisi server basis data ............................................................ 62

  5.4.3. Fungsi menampilkan informasi CPU

   Utilization .................................................. 64

  5.4.4. Fungsi menampilkan informasi Blocking ... 68

  5.4.5. Fungsi menampilkan informasi Missing

   Index .......................................................... 72

  5.4.6. Fungsi menampilkan informasi historis CPU Utilization .......................................... 76

  5.4.7. Fungsi menampilkan informasi historis Blocking ...................................................... 78

  5.4.8. Fungsi menampilkan informasi historis Missing Index ............................................ 82

  5.5. Pengujian Aplikasi ............................................... 86

  5.5.1. System Testing ............................................ 86

  5.5.2. Version Testing .......................................... 86

  BAB VI HASIL DAN PEMBAHASAN ............................... 89

  6.1. Hasil .................................................................... 89

  6.1.1. System Testing ............................................ 89

  6.1.2. Version Testing ........................................ 100

  6.2. Pembahasan ........................................................ 111

  6.2.1. Pembahasan System Testing ..................... 111

  6.2.2. Pembahasan Version Testing ................... 111

  BAB VII KESIMPULAN DAN SARAN ............................ 113

  7.1. Kesimpulan ........................................................ 113

  DAFTAR PUSTAKA ...........................................................115 BIODATA PENULIS ...........................................................119

  

DAFTAR GAMBAR

Gambar 2.1 Tampilan aplikasi ApexSQL Monitor berbasis desktop ..................................................................................... 8Gambar 2.2 Tampilan aplikasi ApexSQL Monitor 2017 berbasis web ............................................................................. 8Gambar 2.3 Tampilan aplikasi Database Health Monitor ........ 9Gambar 2.4 Tampilan aplikasi Solarwinds Database

  Performance Analyzer ............................................................ 10

Gambar 2.5 Tampilan SQL Server Performance Dashboard . 13Gambar 2.6 Tampilan informasi Blocking ............................. 15Gambar 2.7 Tampilan informasi Missing Index Report ......... 15Gambar 2.8 Tampilan informasi penggunaan CPU pada SQL

  Server ..................................................................................... 16

Gambar 2.9 Contoh dashboard untuk menampilkan

  

Performance Indicator ........................................................... 17

Gambar 2.10 Tampilan peta jaringan pada situs

  pantau.its.ac.id

  ....................................................................... 18

Gambar 2.11 Halaman informasi database yang akan dilengkapi fitur monitoring dashboard ................................... 19Gambar 3.1 Metodologi Penelitian ........................................ 21Gambar 3.2 Alur pengembangan aplikasi dengan metode

  

Waterfall ................................................................................. 23

Gambar 4.1 Query pada stored procedure

  MS_PerfDashboard.usp_Blocking ......................................... 33

Gambar 4.2 Query pada stored procedure

  MS_PerfDashboard.usp_MissingIndexStats .......................... 36

Gambar 4.3 Query pada stored procedure

  MS_PerfDashboard.usp_Main_GetCPUHistory .................... 42

Gambar 4.4 Desain Arsitektur Tools Pemantauan Kinerja

  Basis Data Berbasis Web ........................................................43

Gambar 4.5 Skema basis data untuk Tools Pemantauan

  Kinerja Basis Data Berbasis Web ...........................................44

Gambar 4.6 Flowchart proses crawling pada sistem ..............48Gambar 4.7 Tampilan antarmuka kondisi server basis data ...49Gambar 4.8 UI Storyboard antarmuka informasi penggunaan

  CPU saat ini ............................................................................50

Gambar 4.9 Tampilan informasi tentang detail dan penggunaan CPU ....................................................................50Gambar 4.10 UI Storyboard antarmuka informasi adanya

  

Blocking ..................................................................................51

Gambar 4.11 Tampilan informasi Blocking pada dashboard 51Gambar 4.12 Tampilan detail informasi jika terjadi Blocking52Gambar 4.13 UI Storyboard antarmuka informasi detail

  Missing Index

  ..........................................................................52

Gambar 4.14 Tampilan informasi Missing Index pada

  

dashboard ...............................................................................52

Gambar 4.15 Halaman informasi tentang missing index yang terdeteksi pada server .............................................................53Gambar 4.16 UI Storyboard antarmuka informasi historis penggunaan CPU ....................................................................53Gambar 4.17 Tampilan dashboard informasi tentang historis penggunaan CPU pada waktu tertentu ....................................54Gambar 5.1 Direktori situs pantau.its.ac.id beserta sub- direktorinya.............................................................................56Gambar 5.2 Direktori tools pemantauan kinerja basis data berbasis web ...........................................................................57Gambar 5.3 Potongan kode untuk melakukan koneksi ke basis data .........................................................................................57Gambar 5.4 Potongan kode cron.php untuk melakukan koneksi ke masing-masing server basis data ....................................... 59Gambar 5.5 Potongan cron.php untuk melakukan crawling

  CPU Utilization ...................................................................... 59

Gambar 5.6 Potongan cron.php untuk melakukan crawling

  Blocking ................................................................................. 60

Gambar 5.7 Potongan cron.php untuk melakukan crawling

  Missing Index ......................................................................... 61

Gambar 5.8 Tampilan antarmuka kondisi server basis data saat ini ........................................................................................... 62Gambar 5.9 Potongan main.php untuk melakukan koneksi ke server basis data ..................................................................... 63Gambar 5.10 Potongan main.php untuk mendeteksi blocking pada server basis data ............................................................. 64Gambar 5.11 Potongan main.php jika terdeteksi blocking pada server basis data ..................................................................... 64Gambar 5.12 Tampilan antarmuka dashboard ....................... 65Gambar 5.13 Potongan server.php untuk melakukan koneksi ke server basis data ................................................................. 66Gambar 5.14 Potongan server.php untuk menampilkan data

  CPU Utilization

  ...................................................................... 66

Gambar 5.15 Potongan server.php untuk menampilkan informasi CPU Utilization dalam bentuk chart ...................... 68Gambar 5.16 Tampilan antarmuka jika terdeteksi blocking pada server ............................................................................. 68Gambar 5.17 Tampilan antarmuka pada dashboard jika terdeteksi blocking pada server .............................................. 69Gambar 5.18 Potongan server.php untuk menampilkan informasi blocking pada antarmuka dashboard ..................... 70Gambar 5.19 Tampilan antarmuka detail informasi BlockingGambar 5.20 Potongan fungsi untuk memanggil stored

  

procedure untuk Blocking ......................................................71

Gambar 5.21 Potongan blocking_info.php untuk menampilkan hasil fungsi dalam bentuk tabel ..............................................72Gambar 5.22 Tampilan antarmuka pada dashboard jika terdeteksi missing index pada server ......................................72Gambar 5.23 Potongan server.php untuk menampilkan informasi missing index pada antarmuka dashboard ..............73Gambar 5.24 Tampilan antarmuka detail informasi Missing

  Index

  .......................................................................................73

Gambar 5.25 Potongan fungsi untuk memanggil stored

  

procedure untuk Missing Index ..............................................75

Gambar 5.26 Potongan missing_index.php untuk menampilkan hasil fungsi dalam bentuk tabel .......................76Gambar 5.27 Tampilan antarmuka dashboard historis penggunaan CPU ....................................................................76Gambar 5.28 Potongan history_server.php untuk melakukan koneksi ke server basis data....................................................77Gambar 5.29 Potongan history_server.php untuk menampilkan data CPU Utilization ..............................................................77Gambar 5.30 Tampilan antarmuka dashboard historis jika terdapat Blocking ....................................................................78Gambar 5.31 Potongan history_server.php untuk menampilkan data Blocking ..........................................................................79Gambar 5.32 Tampilan antarmuka detail informasi historis untuk Blocking ........................................................................80Gambar 5.33 Potongan fungsi untuk memanggil data historis

  

Blocking ..................................................................................81

Gambar 5.34 Potongan his_blocking_info.php untuk menampilkan hasil fungsi dalam bentuk tabel .......................81Gambar 5.35 Tampilan antarmuka dashboard historis jika terdapat Missing Index ........................................................... 82Gambar 5.36 Potongan history_server.php untuk menampilkan data Missing Index .................................................................. 83Gambar 5.37 Tampilan antarmuka detail informasi historis untuk Missing Index ............................................................... 83Gambar 5.38 Potongan fungsi untuk memanggil data historis

  

Missing Index ......................................................................... 85

Gambar 5.39 Potongan his_missing_index.php untuk menampilkan hasil fungsi dalam bentuk tabel ....................... 85Gambar 6.1 Data waktu crawling berhasil diinputkan ........... 90Gambar 6.2 Data historis metrik CPU Utilization berhasil diinputkan ............................................................................... 90Gambar 6.3 Data historis metrik Blocking berhasil diinputkan

  ................................................................................................ 90

Gambar 6.4 Data historis metrik Missing Index berhasil diinputkan ............................................................................... 91Gambar 6.5 Kondisi server berjalan dengan baik .................. 91Gambar 6.6 Kondisi server sedang offline ............................. 91Gambar 6.7 Kondisi server saat terjadi blocking ................... 92Gambar 6.8 Tampilan informasi metrik CPU Utilization ...... 92Gambar 6.9 Query awal pada stored procedure ..................... 93Gambar 6.10 Query pada stored procedure setelah dilakukan perubahan ............................................................................... 94Gambar 6.11 Tampilan metrik CPU Utilization setelah dilakukan perubahan query .................................................... 95Gambar 6.12 Tampilan antarmuka informasi blocking pada

  

dashboard ............................................................................... 95

Gambar 6.13 Tampilan antarmuka detail informasi blocking 96Gambar 6.14 Tampilan antarmuka jika tidak terjadi blocking

  ................................................................................................96

Gambar 6.15 Tampilan antarmuka informasi missing index pada dashboard ......................................................................96Gambar 6.16 Tampilan antarmuka detail informasi missing

  

index .......................................................................................97

Gambar 6.17 Tampilan antarmuka informasi historis CPU

  

Utilization pada dashboard ....................................................98

Gambar 6.18 Tampilan antarmuka informasi historis Blocking pada dashboard ......................................................................98Gambar 6.19 Tampilan antarmuka detail informasi historis

  

Blocking ..................................................................................99

Gambar 6.20 Tampilan antarmuka informasi historis Missing

  

Index pada dashboard .............................................................99

Gambar 6.21 Tampilan antarmuka detail informasi historis

  Missing Index

  ........................................................................100

Gambar 6.22 Kondisi server dengan SQL Server 2005 berjalan dengan baik ...........................................................................101Gambar 6.23 Tampilan antarmuka dashboard pada server

  SQL Server 2005 ..................................................................101

Gambar 6.24 Kondisi server SQL Server 2005 saat terjadi

  

blocking ................................................................................102

Gambar 6.25 Tampilan antarmuka dashboard Blocking pada

  SQL Server 2005 ..................................................................102

Gambar 6.26 Tampilan antarmuka informasi detail Blocking pada SQL Server 2005 ..........................................................103Gambar 6.27 Tampilan antarmuka dashboard Missing Index pada SQL Server 2005 ..........................................................103Gambar 6.28 Tampilan antarmuka informasi detail Missing

  Index

  pada SQL Server 2005 ................................................104

Gambar 6.29 Kondisi server dengan SQL Server 2008 R2 berjalan dengan baik ............................................................ 104Gambar 6.30 Tampilan antarmuka dashboard pada server

  SQL Server 2008 R2 ............................................................ 105

Gambar 6.31 Kondisi server SQL Server 2008 R2 saat terjadi

  

blocking ................................................................................ 105

Gambar 6.32 Tampilan antarmuka dashboard Blocking pada

  SQL Server 2008 R2 ............................................................ 106

Gambar 6.33 Tampilan antarmuka informasi detail Blocking pada SQL Server 2008 R2 .................................................... 106Gambar 6.34 Tampilan antarmuka dashboard Missing Index pada SQL Server 2008 R2 .................................................... 107Gambar 6.35 Tampilan antarmuka informasi detail Missing

  

Index pada SQL Server 2008 R2 .......................................... 107

Gambar 6.36 Kondisi server dengan SQL Server 2014 berjalan dengan baik .......................................................................... 108Gambar 6.37 Tampilan antarmuka dashboard pada server

  SQL Server 2014 .................................................................. 108

Gambar 6.38 Kondisi server SQL Server 2014 saat terjadi

  

blocking ................................................................................ 109

Gambar 6.39 Tampilan antarmuka dashboard Blocking pada

  SQL Server 2014 .................................................................. 109

Gambar 6.40 Tampilan antarmuka informasi detail Blocking pada SQL Server 2014 ......................................................... 110Gambar 6.41 Tampilan antarmuka dashboard Missing Index pada SQL Server 2014 ......................................................... 110Gambar 6.42 Tampilan antarmuka informasi detail Missing

  

Index pada SQL Server 2014 ............................................... 111

  

Halaman ini sengaja dikosongkan

  

DAFTAR TABEL

Tabel 2.1 Tabel perbandingan antar aplikasi.......................... 10Tabel 4.1 Daftar pengguna sistem dan aktivitas yang dilakukan

  ................................................................................................ 28

Tabel 4.2 Daftar kolom pada

  

MS_PerfDashboard.usp_Blocking yang digunakan ............... 33

Tabel 4.3 Daftar kolom pada

  MS_PerfDashboard.usp_MissingIndexStats

  yang digunakan ................................................................................................ 37

Tabel 4.4 Daftar kolom pada

  MS_PerfDashboard.usp_Main_GetCPUHistory

  yang digunakan ............................................................................... 42

Tabel 4.5 Penjelasan entitas basis data ................................... 45Tabel 5.1 Spesifikasi komputer server localhost .................... 55Tabel 5.2 Teknologi yang digunakan ..................................... 55Tabel 5.3 Tabel versi SQL Server dan Performance Dashboard yang akan dilakukan Version Testing ..................................... 87Tabel 6.1 Fitur pada sistem yang akan diuji ........................... 89Tabel 6.2 Daftar versi yang akan dilakukan Version Testing

  .............................................................................................. 100

  

Halaman ini sengaja dikosongkan

BAB I PENDAHULUAN Pada bagian ini akan diuraikan gambaran umum penelitian yang

  meliputi latar belakang masalah, perumusan masalah, batasan masalah penelitian, dan relevansi terhadap bidang minat penelitian. Setelah menjelaskan tujuan dan manfaat penelitian diharapkan dapat memberikan gambaran awal mengenai penelitian yang akan dilakukan.

1.1. Latar Belakang Masalah

  Penggunaan teknologi basis data saat ini sudah semakin banyak dan berkembang dari tahun ke tahun. Basis data adalah kumpulan data yang disimpan di dalam komputer secara sistematis sehingga kontennya dapat dengan mudah diakses, dikelola, dan diperbarui [1]. Tipe basis data yang paling populer saat ini adalah basis data relasional. Sebuah basis data relasional biasanya terdiri dari satu atau beberapa tabel atau relasi dari baris dan kolom dengan unique key yang mengidentifikasi tiap baris [2]. Terdapat sekurang-kurangnya tiga aktor utama dalam penggunaan basis data, yaitu administrator basis data (DBA), satu atau lebih pengembang aplikasi, dan pengguna [3]. Pada umumnya, seorang administrator basis data bertugas untuk mengatur seluruh aktivitas yang berkaitan dengan optimalisasi kinerja basis data.

  Salah satu cara untuk menentukan apakah basis data yang digunakan sudah bekerja secara optimal adalah dengan melakukan pemantauan kinerja basis data [4]. Pemantauan kinerja basis data adalah tindakan untuk mengukur kinerja basis data secara real-time untuk menemukan masalah yang membuat kinerja basis data tidak optimal dan faktor-faktor lain yang dapat menyebabkan masalah di kemudian hari [6]. Dengan memantau kinerja basis data, seorang administrator basis data juga dapat menentukan area mana dari basis data yang dapat ditingkatkan atau dioptimalkan untuk meningkatkan efisiensi dan kinerja. Beberapa vendor DBMS memiliki tools untuk melakukan pemantauan kinerja dan biasanya sudah tersedia bersama dengan produk basis datanya, seperti Enterprise Management milik Oracle [7] dan SQL Server Performance Dashboard milik Microsoft [8]. Selain itu, ada pihak luar yang hanya menyediakan tools untuk memantau kinerja basis data dan mendukung basis data multi-platform, serta tersedia baik berbasis desktop maupun berbasis web seperti Database Health [9] dan ApexSQL [10]. Semua aplikasi tersebut memiliki fitur- fitur yang sangat baik namun untuk pemakaiannya tergantung kebutuhan dari setiap pengguna. Institut Teknologi Sepuluh Nopember (ITS) memiliki sebuah sistem berbasis web yang berfungsi untuk memantau seluruh aktivitas aplikasi yang digunakan di lingkungan ITS termasuk basis data, yang memiliki alamat pantau.its.ac.id [11]. Sistem ini dibuat agar memudahkan DPTSI selaku pihak yang bertugas mengatur jalannya seluruh sistem teknologi informasi yang ada di ITS dalam melakukan pemantauan dan mengontrol apakah seluruh sistem berjalan dengan baik atau sudah tidak berfungsi, akan tetapi aplikasi ini masih perlu dikembangkan agar memiliki fungsi yang lebih lengkap salah satunya yaitu fungsi untuk melakukan pemantauan kinerja basis data yang terdapat di lingkungan ITS, dengan dilengkapi fitur dashboard yang dapat menampilkan informasi kinerja basis data secara visual. Penelitian ini bertujuan untuk membuat tools pemantauan kinerja basis data berbasis web yang diharapkan dapat digunakan dan diimplementasikan pada situs pantau.its.ac.id berdasarkan metrik-metrik yang terdapat dalam SQL Server Performance Dashboard, dan mempelajari bagaimana informasi terkait kondisi server basis data diproses oleh SQL Server. Dengan adanya tools ini sistem pantau.its.ac.id yang telah ada

  DPTSI dalam mengelola sistem teknologi informasi di lingkungan ITS, terutama dalam pengelolaan kinerja basis data agar kinerja basis data menjadi lebih efisien dan optimal.

1.2. Perumusan Masalah

  Berdasarkan uraian latar belakang, maka rumusan permasalahan yang menjadi fokus dalam penelitian berikut antara lain: 1.

  Bagaimana membuat tools untuk melakukan pemantauan kinerja basis data berbasis web untuk sistem pantau.its.ac.id berdasarkan metrik-metrik pada SQL Server Performance Dashboard?

  2. Bagaimana cara metrik-metrik pada SQL Server Performance Dashboard bekerja untuk memperoleh informasi terkait kondisi server basis data terkini?

3. Bagaimana cara menggunakan metrik-metrik pada

  SQL Server Performance Dashboard untuk diimplementasikan dalam bentuk web?

  4. Apakah tools pemantauan kinerja basis data berbasis web yang dibuat berpengaruh terhadap versi SQL Server yang berbeda? 1.3.

   Batasan Masalah

  Berdasarkan rumusan masalah yang telah disebutkan diatas, agar penelitian ini memperoleh hasil yang optimal, maka batasan masalah dalam penelitian ini antara lain:

  1. Pembuatan tools pemantauan kinerja basis data berbasis web ini mengacu pada metrik-metrik Performance Dashboard diantaranya Blocking, Missing Index , dan CPU Utilization.

  2. Tools reporting yang digunakan adalah SQL Server Performance Dashboard 2012.

  3. DBMS yang akan dilakukan pemantauan kinerja adalah Microsoft SQL Server.

  4. Hasil akhir dari penelitian ini adalah tools pemantauan kinerja basis data berbasis web yang siap diimplementasikan pada aplikasi sistem monitoring web ITS (pantau.its.ac.id).

  1.4. Tujuan Penelitian

  Berdasarkan perumusan masalah dan batasan masalah yang telah disebutkan diatas, maka tujuan akhir dari penelitian ini adalah membuat tools untuk melakukan pemantauan kinerja basis data berbasis web dengan mengacu pada metrik-metrik pengukuran kinerja basis data di dalam SQL Server Performance Dashboard yang kemudian dapat diimplementasikan pada sistem pantau.its.ac.id. Di dalam tools ini juga terdapat fitur dashboard yang dapat menampilkan informasi kinerja basis data secara visual berdasarkan metrik- metrik pengukuran yang digunakan.

  1.5. Manfaat Penelitian

  Manfaat yang diharapkan melalui penelitian ini adalah memudahkan pihak DPTSI selaku badan yang bertugas mengelola seluruh sistem aplikasi dan basis data yang terdapat di lingkungan ITS untuk memantau kinerja basis data yang dimiliki dan memberikan informasi-informasi secara visual yang akurat untuk menentukan langkah yang harus dilakukan pemahaman lebih dalam tentang pemantauan kinerja basis data pada SQL Server.

1.6. Relevansi

  Penelitian ini berkaitan dengan bidang penelitian pada Laboratorium Akuisisi Data dan Diseminasi Informasi (ADDI) dan mata kuliah di Jurusan Sistem Informasi diantaranya Manajemen Admistrasi Basis Data, Desain Basis Data, Pemrograman Berbasis Web, Konstruksi dan Pengujian Perangkat Lunak, Interaksi Manusia dan Komputer, dan Sistem Pendukung Keputusan.

  

Halaman ini sengaja dikosongkan

BAB II TINJAUAN PUSTAKA Pada bagian ini akan dijelaskan mengenai beberapa penelitian

  sebelumnya dan beberapa dasar teori yang menjadi acuan dan landasan dalam melakukan penelitian ini. Landasan teori akan memberikan gambaran tentang konsep dan teknologi apa saja yang digunakan dalam penelitian ini.

2.1. Penelitian Sebelumnya

  Beberapa penelitian sebelumnya yang menjadi acuan dalam mengerjakan penelitian ini adalah sebagai berikut:

2.1.1. ApexSQL Monitor

  ApexSQL Monitor merupakan salah satu aplikasi berbasis desktop buatan ApexSQL yang membantu seorang administrator basis data untuk melakukan pemantauan kinerja basis data SQL Server. Selain itu, ApexSQL Monitor juga dapat menampilkan metrik performa sistem basis data, mengidentifikasi masalah performa dan deadlock, dan menampilkan seluruh informasi performa basis data dalam bentuk dashboard sehingga administrator dapat melihat informasi metrik dan data performa basis data secara visual dan real-time [12].

  Pada tahun 2017, ApexSQL Monitor mengeluarkan versi terbarunya yang berbasis web. Dalam versi terbaru ini juga menampilkan informasi yang berguna untuk melakukan pemantauan SQL Server Instance secara dinamis juga dengan tampilan dashboard yang sudah mengalami pembaruan desain yang memuat informasi yang penting seperti alert dan

  availability [13].

Gambar 2.1 Tampilan aplikasi ApexSQL Monitor berbasis desktopGambar 2.2 Tampilan aplikasi ApexSQL Monitor 2017 berbasis web 2.1.2.

   Database Health Monitor

  Database Health Monitor merupakan tools pemantauan kinerja basis data untuk SQL Server berbasis desktop. Tools ini dikembangkan oleh Steve Stedman pada tahun 2011 dengan mengacu pada SSRS Report sebagai dasar dalam data yang membutuhkan tampilan visual untuk mengetahui bagaimana performa SQL Server Instance mereka [9].

Gambar 2.3 Tampilan aplikasi Database Health Monitor 2.1.3.

   Solarwinds Database Performance Analyzer

  Solarwinds Database Performance Analyzer merupakan aplikasi monitoring basis data berbasis web buatan Solarwinds. Aplikasi ini mendukung pemantauan performa basis data multi-

  

platform . Beberapa DBMS yang didukung diantaranya

  Microsoft SQL Server, Oracle, MySQL, IBM DB2, dan SAP ASE. Melalui aplikasi ini, administrator basis data dapat melihat performa basis data secara visual karena adanya fitur

  

dashboard . Aplikasi ini juga memungkinkan seorang

  administrator basis data melakukan optimasi dimana saja dan kapan saja karena berbasis web dan mendukung Cloud

  Monitoring [14].

Gambar 2.4 Tampilan aplikasi Solarwinds Database Performance Analyzer

  Dari ketiga aplikasi untuk melakukan pemantauan kinerja basis data tersebut yang dijadikan acuan untuk melakukan pembuatan tools pemantauan kinerja basis data, penulis melakukan perbandingan untuk melihat persamaan dan perbedaan antar aplikasi dengan tools pemantauan kinerja basis data yang akan dibuat dalam penelitian ini. Perbandingan antar aplikasi tersebut dapat dilihat pada tabel 2.1 berikut.

Tabel 2.1 Tabel perbandingan antar aplikasi

  Jenis DBMS yang Fitur Aplikasi Aplikasi didukung Dashboard

  Aplikasi ApexSQL Desktop, Microsoft

  Ya Monitor Aplikasi SQL Server

  Web (2017) Database

  Aplikasi Microsoft Solarwinds Database Performance Analyzer