Pemecahan data log dan konversi ke file .csv
Data log yang sudah terpilih kemudian dipecah-pecah agar memudahkan untuk pembacaan oleh program. Pemecahan data log tidak seperti membagi rata menggunakan rumus matematika akan tetapi diambil berdasarkan jumlah baris tertentu. Dari hasil pemecahan diperoleh data sebagai berikut:
Tabel 16. Data hasil pemecahan file access_log
Nomor Nama file log Ukuran (byte) Jumlah Baris 1 a.csv 110 542 665 480 000 2 b.csv 150 217 973 522 838 3 c.csv 147 894 289 475 826 4 d.csv 93 766 392 311 630 5 e.csv 62 261 364 253 348 6 f.csv 67 463 583 280 202 Jumlah 632 146 266 2 323 844 Membersihkan data dan Pemilihan String
Setelah data log dipecah menjadi 6 kelompok, kemudian dengan mengguakan aplikasi yang dikembangkan ke enam data tersebut dibersihkan dan dipilih string yang dibutuhkan, sehingga hasil akhirnya akan diperoleh data transaksi yang bersih.
jumlah Transaksi yang tercatat pada Web Server deptan untuk periode November 2012 Desember 2012 adalah sebagai berikut:
Tabel 17. Tahap Pembersihan Data Transaksi Web deptan
No Jenis Transaksi Berkas Awal Berkas Hasil Jumlah Transaksi Jumlah IP Host 1 Pembersihan tahap 1 access_log.csv data_log_1 2 323 844 34 060 2 Pembersihan tahap 2 data_log_1 data_log_2 1 641 919 34 060 3 Pembersihan tahap 3 data_log_2 data_log_1itemset 360 926 29 452 4 Pembersihan tahap 4 data_log_1itemset data_log_1itemset 115 569 29 452
Berdasarkan tabel 4.2 terlihat ada 4 tahap pembersihan, yaitu:
1. Pembersihan tahap 1 merupakan proses pemasukan data teks csv ke tabel data_log_1, disini hanya dilakukan proses impor saja, pembersihan hanya mengganti tanda petik dengan spasi kosong
2. Pembersihan Tahap 2 merupakan proses pemisahan string request yang ada pada data_log_1, dengan menggunakah Script PHP.
Misalnya diketahui string request =/wap/index.php?option=component&id= 3&gbfrom=16258.
Pada data request tersebut semua string dibelakang tanda tanya (?) akan dibuang dengan perintah seperti berikut : $str_rek = /wap/index.php?option=component&id=3&gbfrom=16258 $pisah_request = explode('?',$str_rek); Setelah perintah tersebut maka akan terbentuk array pisah_request yaitu : $pisah_request[0] = /wap/index.php $pisah_request[1] = option=component&id=3&gbfrom=16258
Setelah data request terbagi dua, maka tinggal dilakukan pemilihan string yang dibutuhkan yaitu $pisah_request[0], sedangkan $pisah_request[1] dibuang. Kemudian 3 huruf sebelah kanan dari $pisah_request[0] disimpan pada fileds type_req dan dijadikan acuan query pembersihan baris data yang mengandung file gambar, audio, video, layout web dan string query. Pembersihan dilakukan dengan perintah SQL berikut :
$$pj_string = strlen($pisah_request[0]);
$type_req = substr($pisah_request[0],$pj_string-3,3);
@bersihkan = mysql_query("delete from data_log_1 where type_req ='css' or type_req ='js' or type_req ='.js' or type_req ='.db' or type_req ='xml' or type_req ='bmp' or type_req ='gif' or type_req ='jpg' or type_req ='jpeg' or type_req ='png' or type_req ='mp3' or type_req ='mp4' or type_req ='swf' or type_req ='sql' or type_req ='ico' ortype_req ='ef=' or type_req ='exe' or type_req ='*' or type_req ='mso' or type_req ='emf' or type_req ='epp' or type_req ='rtf' or type_req ='lt=' or type_req ='wmf' ortype_req ='ms=' or type_req ='%3D' or type_req ='rc=' or type_req ='MYI' ortype_req like '%/' ");
3. Pembersihan tahap 3 yaitu proses pembuangan request yang sama dan dilakukan pada detik yang sama, hal tersebut untuk menghindari duplikasi data.
4. Pembersihan tahap 4 merupakan proses pembuangan data transaksi yang dilakukan oleh host (IP Address) pada hari yang sama dengan akses node yang sama.
Struktur Data Pohon dan Membentuk Node
Struktur data pohon yang terbentuk tidak direpresentasikan dalam bentuk gambar, akan tetapi dalam bentuk susunan direktori. dari hasil penelusuran direktori web Deptan, diperoleh sebanyak 20 924 node, dengan pengurutan data berdasarkan abjad isi_node supaya memudahkan pencarian.
Tabel 18. Daftar Node kode_node isi_node 1 /adm.html 2 /adm.php 3 /adm/admloginuser.php 4 /adm/index.html 5 /adm/index.php 6 /admin 7 /admin-login.asp 8 /admin-login.html 9 /admin-login.php 10 /admin.asp 11 /admin.htm 12 /admin.html 13 /admin.indexadmin.php 14 /admin.php ... ... 20923 /wp-content/themes/make-money-online-theme/scripts/timthumb.php 20924 /wp-content/uploads/2012/01/laporan-kemajuan-program-catatan-akhir-tahun-pertama-desember-2011.pdf
Analisis Database
Berikut ini skema pembentukan tabel untuk keperluan penambangan data:
Gambar 7. Skema pembentukan tabel log
Penambangan data dilakukan terhadap tabel data_log_2 dan data_log_1itemset. data_log_2 digunakan untuk mengetahui runtutan waktu (time series) dalam batasan waktu terkecil adalah detik, sedangkan data_log_1itemset digunakan untuk membentuk transaksi per ip_host sebagai identifikasi sesi (session
identification) dengan batasan waktu terkecil adalah hari atau tanggal (relasi antar
tabel ada pada class diagram).
Analisis Assosiasi
a. Penentuan kaidah asosiasi
Proses analisis yang pertama dilakukan yaitu menentukan kandidat 1itemset untuk 20 transaksi tertinggi dari transaksi node pada tabel data_log_1itemset
dengan nilai Minimum Support (MS) adalah 1% dan nilai Minimum Confidence
(MC) minimum adalah 0.2%, dapat dilihat pada Tabel 4.4
Tabel 19. Hasil Scan / Prunning Pertama kandidat 1itemset
No Kode Node Isi Node Node Count Support (%) Memenuhi Nilai MS
1 8348 /index1.php 10162 8.8 ya 2 8039 /event.php 8841 7.7 ya 3 19262 /respon.php 8128 7.0 ya 4 12223 /pengumuman/cover_es.htm 7097 6.1 ya 5 20890 /wap/index.php 2808 2.4 ya 6 19803 /tampil.php 2505 2.2 ya 7 7530 /dir-alamatskpd/tampil.php 1961 1.7 ya 8 10759 /news/detail.php 1496 1.3 ya 9 7535 /dir_kementerian.php 788 0.7 tidak 10 332 /bbkptgpriok/admin/rb/bab-7-microsoft-excel.pdf 648 0.6 tidak 11 7969 /e-mail/alamat-dinas.htm 639 0.6 tidak 12 2500 /daerah_new/banten/dispertanak_pandeglang/artikel_10a.ht m 626 0.5 tidak 13 7330 /dialog/diskusi.htm 583 0.5 tidak 14 12823 /pengumuman/Mutasi-PNS/mutasi_tugas_pns.pdf 513 0.4 tidak 15 7978 /e-mail/email_pejabat_deptan.htm 492 0.4 tidak 16 7564 /distanbun-sijunjung/admin/rb/bab-7-microsoft-excel.pdf 447 0.4 tidak 17 7474 /dinakkeswan_jateng/detaildata.php 446 0.4 tidak 18 19835 /teknologi/horti/tcabe3.htm 436 0.4 tidak 19 11033 /pedum2012.php 420 0.4 tidak 20 10022 /kln/berita/wto/ttg-wto.htm 390 0.3 tidak Jumlah transaksi akses node keseluruhan adalah 115 569 transaksi dapat dilihat nilai support untuk /index1.php adalah 8.796% artinya 8.796% dari seluruh transaksi dipastikan mengandung node 8.796% /index1.php, dan seterusnya untuk data node lain diperoleh nilai support dengan perhitungan sama.
Menentukan kandidat 2itemset dapat dilakukan dengan mencari keseluruhan kombinasi akses node yang terdapat pada hasil scan 1itemset, sebagai berikut:
Tabel 20. Hasil Scan / Prunning Kedua kandidat 2itemset
No Kode Node Isi Node CountNode Support (%) Memenuhi Nilai MS 1 8348,19262 /index1.php,/respon.php 1751 1.5 ya 2 8039,8348 /event.php,/index1.php 1748 1.5 ya 3 8039,19262 /event.php,/respon.php 1744 1.5 ya 4 8039,12223 /event.php,/pengumuman/cover_es.htm 1525 1.3 ya 5 12223,19262 /pengumuman/cover_es.htm,/respon.php 1519 1.3 ya 6 8348,12223 /index1.php,/pengumuman/cover_es.htm 1514 1.3 ya 7 8039,19803 /event.php,/tampil.php 521 0.5 tidak 8 8348,19803 /index1.php,/tampil.php 380 0.3 tidak 9 19262,19803 /respon.php,/tampil.php 369 0.3 tidak 10 12223,19803 /pengumuman/cover_es.htm,/tampil.php 341 0.3 tidak 11 8348,10759 /index1.php,/news/detail.php 159 0.1 tidak 12 8039,10759 /event.php,/news/detail.php 143 0.1 tidak 13 10759,19262 /news/detail.php,/respon.php 142 0.1 tidak 14 10759,12223 /news/detail.php,/pengumuman/cover_es.htm 128 0.1 tidak 15 8348,7530 /index1.php,/dir-alamatskpd/tampil.php 65 0.1 tidak 16 8039,7530 /event.php,/dir-alamatskpd/tampil.php 64 0.1 tidak 17 12223,7530 /pengumuman/cover_es.htm,/dir-alamatskpd/tampil.php 60 0.1 tidak 18 19262,7530 /respon.php,/dir-alamatskpd/tampil.php 56 0.05 tidak 19 7530,19803 /dir-alamatskpd/tampil.php,/tampil.php 42 0.04 tidak 20 19803,20890 /tampil.php,/wap/index.php 39 0.03 tidak 21 8039,20890 /event.php,/wap/index.php 36 0.03 tidak 22 12223,20890 /pengumuman/cover_es.htm,/wap/index.php 34 0.03 tidak 23 19803,10759 /tampil.php,/news/detail.php 31 0.03 tidak 24 8348,20890 /index1.php,/wap/index.php 29 0.03 tidak 25 20890,7530 /wap/index.php,/dir-alamatskpd/tampil.php 25 0.02 tidak 26 7530,10759 /dir-alamatskpd/tampil.php,/news/detail.php 22 0.02 tidak 27 10759,20890 /news/detail.php,/wap/index.php 19 0.02 tidak 28 19262,20890 /respon.php,/wap/index.php 16 0.01 tidak Berdasarkan tabel 4.5 maka selanjutnya dilakukan proses perhitungan confidence dari kaidah assosiasi yang memenuhi syarat Minimum Support (MS) 1.0% dan
Tabel 21. Hasil perhitungan support dan confidence kaidah assosiasi 2itemset
No Kaidah Assosiasi Support (%) Confidence (%) Memenuhi MS dan MC 1 /respon.php ----> /index1.php 1.5 0.22 ya 2 /pengumuman/cover_es.htm ----> /event.php 1.3 0.21 ya 3 /respon.php ----> /event.php 1.5 0.21 ya 4 /pengumuman/cover_es.htm ----> /respon.php 1.3 0.21 ya 5 /pengumuman/cover_es.htm ----> /index1.php 1.3 0.21 ya 6 /event.php ----> /index1.php 1.5 0.20 ya 7 /event.php ----> /respon.php 1.5 0.20 ya 8 /respon.php ----> /pengumuman/cover_es.htm 1.3 0.19 tidak 9 /event.php ----> /pengumuman/cover_es.htm 1.3 0.17 tidak 10 /index1.php ----> /respon.php 1.5 0.17 tidak 11 /index1.php ----> /event.php 1.5 0.17 tidak 12 /index1.php ----> /pengumuman/cover_es.htm 1.3 0.15 tidak
Nilai support dan nilai confidence 2itemset /respon.php > /index1.php (19262 > 8348) adalah 1.5% dan 0.22% (tabel 4.5), hal ini berarti setiap kali halaman
web atau node /respon.php diakses maka ada kepercayaan sebesar 0.22% bahawa
di dalamnya ada halaman /index1.php.
Sedangkan nilai support dan nilai confidence 2itemset /index1.php >
/respon.php 1.5% dan 0.17%, yang berarti setiap kali halaman web atau node
/index1.php diakses maka ada kepercayaan sebesar 0.17% bahawa di dalamnya ada halaman /respon.php.
Pengembangan Sistem Komputer untuk pengolahan data 1. Perencanaan Sistem
Sistem yang akan dikembangkan diharapkan bisa menggantikan tahapan fungsi manual dalam menganalisis data Clickstream sehingga hasil akhir seperti yang tergambar dalam gambar 3.2 bisa tercapai. Fungsi utama dari sistem yang dikembangkan yaitu dapat memprediksi pengembangan konten Website untuk lebih baik lagi.