• Tidak ada hasil yang ditemukan

OPTIMASI QUERY PADA SISTEM INFORMASI PENCATATAN AKTIFITAS PERUBAHAN DATA NILAI MAHASISWA

N/A
N/A
Protected

Academic year: 2021

Membagikan "OPTIMASI QUERY PADA SISTEM INFORMASI PENCATATAN AKTIFITAS PERUBAHAN DATA NILAI MAHASISWA"

Copied!
9
0
0

Teks penuh

(1)

Hal

67 dari 101

OPTIMASI QUERY PADA SISTEM INFORMASI

PENCATATAN AKTIFITAS PERUBAHAN DATA NILAI

MAHASISWA

1Nilaliliana Prihatin, 2Dwi Sakethi, 3Febi Eka Febriansyah

1Jurusan Ilmu Komputer FMIPA Unila 2Jurusan Ilmu Komputer FMIPA Unila 3Jurusan Ilmu Komputer FMIPA Unila

email : 1[email protected], 2[email protected], 3[email protected]

Abstract

A large amount of data can affect the search process the data in a database. The greater the amount of data, then the data search process will take longer. In a process of value management, activity data changes the value of an activity that is often overlooked by managers value. This system is used to listing activites done by student grades manager.The recording process will make the amount of data increases and pencarianya time it will take substantial time. The prior research explained that relational operators combined with indexing strategy in sub query has a better performance compared to using the other methods. This research using indexing strategy and nested query for activity listing information system for student grades data changes. The process of system testing conducted several experiments such as comparing data using index and data that did not use the index (table scan) to several conditions, namely the data on the amount of 517, 980, 2369, and 4221. Nested query testing and regular query or query were tested directly using the same amount of data and applied on subjects data search. Indexing strategy that is applied to the big amount of data will generate faster execution time than a search without indexing strategy, in contrary to the small amount of data indexing strategy does not really affect the search process. The use of nested query in the subjects data search will be faster than the search time regular query or query directly.

Key word: query optimazation, index, nested query.

1. Pendahuluan

Pada sistem informasi, perubahan data sangat mungkin dilakukan oleh pengelola nilai. Perubahan data dilakukan ketika data tidak sesuai dengan keadaan yang semestinya. Sistem informasi pencatatan aktifitas perubahan data akan membantu pengelola nilai mengingat aktifitas perubahan yang pernah dilakukan. Banyayaknya perubahan data yang dilakukan akan membuat data yang terkumpul akan sangat banyak dan memerlukan waktu lebih lama untuk proses pencarian data, sehingga optimasi penting dilakukan ketika proses pencarian.

1.1 Query optimizer

Query optimization adalah suatu proses untuk menganalisis query, menentukan sumber-sumber

apa saja yang digunakan oleh query tersebut dan apakah penggunaan dari sumber tersebut dapat dikurangi tanpa merubah output. Query optimization dapat juga dikatakan sebuah prosedur untuk meningkatkan strategi evaluasi dari suatu query untuk membuat evaluasi tersebut menjadi lebih efektif.Input dari optimizer adalah sebuah tree yang sudah mengalami proses parsing di dalam

query parser. Tree tersebut biasanya disebut dengan parse tree. Sedangkan output dari optimizer

adalah berupa rencana eksekusi (execution plan) yang siap untuk dikirimkan ke dalam kode query

generator dan query processor untuk diproses untuk mendapatkan hasil akhir dari query tersebut

(2)

Hal

68 dari 101

1.2 Query performent

Menurut penelitian Oktavia dan Sujarwo [2] yang berjudul “Evaluation of Sub Query

Performance in SQL Server” dijelaskan bahwa penggunaan index pada tabel dapat meningkatkan

performa query. Tabel yang digunakan dalam percobaan menggunakan dua pengindeksan. Eksperimen yang telah dilakukan menunjukkan bahwa menggunakan operator relasional dikombinasikan dengan strategi pengindeksan di sub query memiliki kinerja yang lebih baik dibandingkan dengan menggunakan metode yang sama tanpa strategi pengindeksan dan juga metode lainnya.

1.3 Index

Index adalah objek pada MySQL yang berisi data yang terurut dari nilai-nilai pada satu atau lebih field dalam suatu tabel. Penggunaan index pada database merupakan salah satu teknik pembuatan database yang baik. Cecilia Dan Mihai [3] mengemukakan bahwa index pada tabel

memungkinkan SQL server untuk mendapatkan hasil pencarian tanpa mencari seluruh data di dalam tabel. Tabel dengan menggunakan index adalah cara terbaik untuk mengurangi logical read

and disk input/output karena menyediakan mekanisme pencarian terstruktur

Cara penulisan untuk membuat index dalam database dapat dilihat seperti berikut:

CREATE UNIQUE INDEX index_name

ON tabel_name (column1, column2, ….);

1.4 Query nested

Nested query atau query bersarang adalah query yang memiliki query lain di dalamnya. Sub Query

merupakan pernyataan Select yang merupakan bagian dari pernyataan Insert, Select. Nested query digunakan untuk menangani masalah dalam query yang kompleks, bahkan nilai yang akan dilakkan perintah select atau insert tidak diketahui[4].

1.5 Pencatatan

Menurut Kamus Besar Bahasa Indonesia (KBBI) catat atau mencatat adalah menuliskan sesuatu untuk peringatan (dalam sebuah buku catatan); menuliskan apa yang sudah ditulis atau diucapkan orang lain; menyalin; memasukkan ke dalam daftar; memperoleh atau mencapai hasil; memasukkan (suara atau ujaran) ke dalam pita perekam. Dalam KBBI pencatatan didefinisikan sebagai proses, cara perbuatan mencatat[5].

1.6 Trigger

Trigger adalah blok SQL atau prosedur yang berhubungan dengan tabel, view, skema atau database yang dijalankan secara implicit pada saat terjadi sebuah event. Trigger berisi program

yang dihubungkan dengan suatu tabel atau view yang secara otomatis melakukan suatu aksi ketika suatu baris di dalam tabel atau view dikenai oprerasi insert, update atau delete. Trigger dibuat sesuai dengan keperluan [6].

2. Metodologi

Dalam penelitian ini pengembang menggunakan metodologi pengembangan sistem Waterfall.

Waterfall model adalah “Linear Sequential Model”. Model ini kadang-kadang disebut dengan

(3)

Hal

69 dari 101

menunggu selesainya tahap sebelumnya dan berjalan berurutan. Waterfall menunjukkan sebuah pendekatan sistematis untuk pengembangan perangkat lunak [7]. Model ini dimulai dari level kebutuhan sistem lalu menuju ke tahap analisis, desain, coding, testing, dan maintenance.

Gambar 1 Fase-Fase Pengembangan Sistem Waterfall [8].

2.1 Data Flow Diagram Level 1

PROSES MENEJEMEN DATA MASTER PENGELOLA

DATA TABEL MASTER

CATATAN DATA PERUBAHAN

DATA JURUSAN DATA PERUBAHAN

DATA FAKULTAS

DATA MAHASISWA DATA MASTER

DATA MASTER

Gambar 2. Data Flow Diagram Level 0

Gambar 2 merupakan Data Flow Diagram (DFD) dari sistem yang dibuat. Dalam DFD pada Gambar 2 pengelola data dapat melakukan proses kelola data master. Data master yang dimaksud berupa: data catatan perubahan data, data mahasiswa, data jurusan, data fakultas, dan data nilai.

2.2 Entity Relationship Diagram

Entity relationship diagram (ERD) merupakan gambaran hubungan data yang di buat pada sebuah database yang diimplementasikan pada sistem .ERD yang digunakan disajikan pada Gambar 3.

(4)

Hal

70 dari 101

Fakultas Jurusan matakuliah

Nilai mahasiswa

Table_log

Kode_fakultas Nama_fakultas Kode_jurusan Nama_jurusan Kode_makul Nama_makul sks

npm nama Kode_nilaia nilai ip Browser ttl Jenis_kelamin agama npm Kode_makul makul semester sks semester nilai pengambilan ip browser memiliki memiliki memiliki memiliki 1 N 1 N 1 N N 1

Gambar 3. Entity Relationship Diagram (ERD)

3. Hasil Dan Pembahasan

Sistem informasi pencatatan aktifitas perubahan data nilai merupakan sistem yang dibuat untuk mempermudah pengelola nilai mengingat aktifitas yang pernah dilakukan pada saat mengelola nilai. Sistem pencatatan aktifitas perubahan data akan mencatat semua perubahan aktifitas yang dilakukan oleh pengelola nilai. Nilai yang disimpan dan dirubah akan tercatat sehingga pengelola nilai akan mengetahui aktifitas yang pernah dilakukan meskipun aktifitas itu telah dilakukan dalam jangka waktu yang sangat lama.

Optimasi yang dilakukan pada sistem pencatatan aktifitas perubahan data nilai menggunakan pengideksan dalam pengelolaan datanya, sehingga proses pencarian data akan lebih cepat, Sedangkan dalam proses query membandingkan query nested dan query yang biasa digunakan tanpa menggunakan nested.

3.1 Implementasi Sistem

Berikut merupakan source code pembuatan index yang diimplementasikan pada sistem informasi pencatatan aktifitas perubahan data.

CREATE INDEX nci ON log_nilai (npm, nilai, tanggal_perubahan, kejadian, ip);

Kode 3.2.1 Pembuatan Index Berikut potongan program dari proses pencarian data mata kuliah:

(5)

Hal

71 dari 101

$query=mysql_query

("SELECT mahasiswa.nama_mahasiswa, mahasiswa.npm, matakuliah.kopel, matakuliah.matakuliah

FROM mahasiswa, matakuliah, nilai WHERE mahasiswa.npm = nilai.npm AND matakuliah.kopel = nilai.kopel AND matakuliah.$pencarian='$cari'"); $cek=mysql_num_rows($query);

Kode 3.2.2 Query Pencarian Data Mata Kuliah

Berikut potongan program dari proses pencarian data mata kuliah menggunakan

query nested:

$query=mysql_query

("SELECT mahasiswa.nama_mahasiswa, mahasiswa.npm FROM mahasiswa WHERE npm IN

(SELECT nilai.npm FROM nilai WHERE kopel IN (SELECT matakuliah.kopel FROM matakuliah WHERE $pencarian='$cari'));");

$cek=mysql_num_rows($query);

Kode 3.2.3 Query Nested Pencarian Data Mata Kuliah

3.2 Hasil Pengujian

Berikut ini merupakan tabel hasil perbandingan waktu pengujian yang dihasilkan oleh sistem dengan jumlah data 517, 980, 2369 dan 4221 data.

Keterangan:

waktu pencarian lebih cepat

Tabel 1. Waktu Hasil Pengujian Terhadap 517 Data

No

Input

Index

Non Index

1

1217051048

0.003971

0.004034

2

1217051048

0.005584

0.004825

3

1217051048

0.004821

0.003818

4

1217051048

0.003801

0.003741

5

1217051048

0.004019

0.003926

6

1217051048

0.003782

0.003867

7

1217051048

0.003539

0.003858

8

1217051048

0.003709

0.004052

9

1217051048

0.004029

0.004512

10

1217051048

0.003569

0.003534

11

1217051020

0.004133

0.00417

12

1217051020

0.003564

0.00332

13

1217051020

0.003650

0.00379

14

1217051020

0.003901

0.00418

No

Input

Index

Non Index

15

1217051020

0.003453

0.00380

(6)

Hal

72 dari 101

Tabel 2 Waktu Hasil Pengujian Terhadap 980 Data

No

Input

Index

Non Index

1

1217051048

0.005201

0.005599

2

1217051048

0.005473

0.006576

3

1217051048

0.005489

0.005546

4

1217051048

0.006231

0.005692

5

1217051048

0.005822

0.005502

6

1217051048

0.006463

0.005609

7

1217051048

0.007914

0.005378

8

1217051048

0.005374

0.005012

9

1217051048

0.005671

0.007251

10

1217051048

0.004843

0.006186

11

1217051020

0.006573

0.004714

12

1217051020

0.005688

0.004751

13

1217051020

0.005272

0.006878

14

1217051020

0.005177

0.005177

15

1217051020

0.004683

0.005012

Rata-rata

0.0057248

0.0056588

Tabel 3. Waktu Hasil Pengujian Terhadap 2369 Data

No

Input

Index

Non Index

1

1217051048

0.010263

0.010306

2

1217051048

0.009477

0.011059

3

1217051048

0.009089

0.009694

4

1217051048

0.010797

0.010216

5

1217051048

0.009902

0.010673

6

1217051048

0.009561

0.009095

7

1217051048

0.008798

0.010259

8

1217051048

0.010833

0.010844

9

1217051048

0.008924

0.010210

10

1217051048

0.010851

0.009922

11

1217051020

0.009868

0.010722

12

1217051020

0.009531

0.009786

13

1217051020

0.010401

0.009255

14

1217051020

0.009071

0.010071

15

1217051020

0.011114

0.093758

Rata-rata

0.009898667

0.015725027

(7)

Hal

73 dari 101

Tabel 4 Waktu Hasil Pengujian Terhadap 4221 Data

No

Input

Index

Non index

1

1217051048

0.015149

0.015501

2

1217051048

0.015372

0.017426

3

1217051048

0.016162

0.014864

4

1217051048

0.016366

0.015244

5

1217051048

0.015352

0.016957

6

1217051048

0.014631

0.015928

7

1217051048

0.014703

0.015126

8

1217051048

0.014778

0.015264

9

1217051048

0.015658

0.015812

10

1217051048

0.016463

0.016175

11

1217051020

0.014867

0.013875

12

1217051020

0.015053

0.014851

13

1217051020

0.015625

0.014262

14

1217051020

0.014178

0.016566

15

1217051020

0.014677

0.020794

Rata-rata

0.015268933

0.015909667

Berdasarkan hasil perbandingan tabel 1, 2, 3 dan 4 menunjukan bahwa pada data yang berukuran lebih besar penggunaan index lebih efektif di banding dengan penggunaan non index pada saat pencarian data.

3.3 Perbandingan Query Nested

Berikut ini waktu hasil pengujian pencarian data mata kuliah dengan menggunakan query biasa dan nested. Data yang dipakai dalam percobaan adalah data mahasiswa dengan jumlah data 923, data mata kuliah dengan jumlah data 146 dan data nilai dengan jumlah data 236. Data masukan untuk pengujian adalah nama mata kuliah dan kode mata kuliah.

.

Keterangan:

Waktu yang tercepat

Tabel 5 Waktu Hasil Pengujian Query

No

Index

Non Index

Nested+Index Nested

1

0.026981

0.055583

0.002718

0.002966

2

0.002726

0.002667

0.002762

0.004921

3

0.003413

0.002605

0.004626

0.002908

4

0.003146

0.002835

0.002623

0.002709

5

0.002627

0.002366

0.002583

0.005367

6

0.003663

0.002419

0.002663

0.002917

7

0.002701

0.002589

0.002731

0.003067

8

0.002771

0.002671

0.003276

0.004081

9

0.002693

0.002543

0.002835

0.002778

10

0.002647

0.005023

0.002712

0.003532

11

0.002583

0.002647

0.002453

0.003402

(8)

Hal

74 dari 101

12

0.003124

0.002444

0.003317

0.002979

13

0.003061

0.002579

0.002656

0.004496

14

0.004454

0.002721

0.002875

0.003369

15

0.002722

0.002398

0.003079

0.002418

Rata-Rata

0.0046208 0.006272667

0.002927267 0.003460667

Dari tabel 5 terlihat bahwa waktu pencarian pada data yang tidak menggunakan index lebih sedikit dibandingkan dengan yang lainya, tetapi tidak konsisten. Rata-rata waktu pencarian menunjukan bahwa pencarian data menggunakan query nested dan index lebih baik karena data yang didapatkan konsisten

3.4 Tampilan Sistem

1. Halaman Tambah Data Catatan

Pada halaman tambah data catatan, pengelola nilai dapat menambahkan data aktifitas yang baru saja dilakukan ke dalam sistem.

Gambar 4. Halaman Tambah Data Catatan 2. Halaman pencarian data aktifitas menggunakan index

Halaman pencarian ini akan mencari data catatan dengan menggunakan index sebagai optimasinya.

Gambar 5. Halaman Pencarian Data Aktifitas Menggunakan Index 3. Halaman Pencarian Data Aktifitas Tanpa Menggunakan Index

(9)

Hal

75 dari 101

Gambar 6. Halaman Pencarian Data Aktifitas Tanpa Menggunakan Index

4. Simpulan

Berdasarkan hasil pengujian dan analisis pada Optimasi query pada sistem informasi pencatatan aktifitas perubahan data nilai, maka didapatkan kesimpulan sebagai berikut:

1. Penggunaan index untuk optimasi query pada database akan berfungsi pada jumlah data diatas 2000 record.

2. Penggunaan query nested yang di gabungkan dengan penggunaan index akan membantu mempercepat waktu pencarian pada data lebih dari 1000 record.

3. Sistem informasi pencatatan aktifitas perubahan data dapat membantu pengelola nilai mencatat aktifitas yang dilakukan.

5.Referensi

[1] Ermattita. 2009. Analisis Opimasi Query Pada Data Mining, Jurnal System Informasi

(JSI), Vol.1, No. 1. Universitas Sriwijaya: Palembang.

[2] Oktavia Dan Sujarwo. 2014. Evaluation Of Sub Query Performance In Sql Server. Bina Nusantara University

[3]

Cecilia dan Mihai. 2011. Increasing Database Performance Using Indexes. Database Sytems Jurnal Vol.II, No. 2.

[4] Maulani, Berry, A. Haidar Mirza, Dan Maria Ulfa. 2015. Analisis Perbandingan

Optimasi Query Nested Join Dan Hash Join Pada Aplikasi Pencarian Data Berbasis Web.Jurnal Ilmiah Vol. 1, No. 1. Universitas Bina Darma. Palembang

[5] Tim penyusun kamus. 2005. Kamus Besar Bahasa Indonesia edisi ke tiga. Jakarta. Balai pustaka.

[6]

Kustiahningsih, Yeni dan Devie Rosa Anamisa. 2011. Pemrograman basis data

berbasisi web menggunakan PHP dan MySQL. Yogyakarta : graha ilmu

[7]

Presman,R.S.2014. Software Engineering: A Practitioner’s Approach. Newyork:

Mcgraw-Hill.

[8]

Satzinger, John, Robert Jackson, Stephen Burd. 2009. System Analys And Design:

In A Changing World Fifthedition. Thomson Course Technology. Canada.

Gambar

Gambar 1  Fase-Fase Pengembangan Sistem Waterfall [8].
Gambar 3. Entity Relationship Diagram (ERD)
Tabel 1. Waktu Hasil Pengujian Terhadap 517 Data
Tabel 3. Waktu Hasil Pengujian Terhadap 2369 Data
+3

Referensi

Dokumen terkait

Pemasaran produk Natrium Difosfat Heptahidrat yang berfungsi sebagai bahan pembantu dalam pembuatan detergent sangat diperlukan untuk konsumsi dalam

Oleh karena usaha klinik kesehatan bersama merupakan institusi yang relatif baru diselenggarakan di Indonesia, sehingga dalam sistem hukum di Indonesia dapat dilihat ada

Tujuan utama dari penelitian yang dilakukan adalah melakukan pengenalan pola isyarat tangan statis dalam bahasa Indonesia. Pengenalan pola isyarat tangan statis dalam bentuk

Dengan perbedaan tersebut dapat diketahui tidak terdapat sisi negatif yang menjadi keharaman bisnis multi level marketing (MLM) terhadap sistem pembiayaan haji dan umrah

Seleksi calon siswa kelas 1 (satu) SMU/SMLB/MA dilakukan berdasarkan peringkat Nilai Ujian Nasional SLTP/SLTPLB/MTs atau Nilai Ujian Persamaan Tamat SLTP atau Daftar Nilai

Berdasarkan hasil penelitian diketahui bahwa pada kepuasan siswa terhadap pelayanan kesehatan UKS di SMPN Se- Kecamatan Mlati ditinjau dari Sub variabel jaminan ruang

Kegunaan penelitian yang dilakukan dari aspek praktis bagi PT Waskita Adhi Sejahtera diharapkan dapat dijadikan bahan masukan dalam membantu manajemen strategis perusahaan

Penelitian ini mengkaji perihal kualitas kinerja perusahaan.Fokus pengkajian adalah faktor-faktor yang berhubungan dengan kualitas kinerja perusahaan yang meliputi