Perencanaan Kapasitas Infrastruktur e-Bisnis Perencanaan Infrastruktur Program Magister Teknologi Informasi Universitas Indonesia © Program Magister Teknologi Informasi - UI 1 e-Business Definition Definisi dari perspektif TI: Praktek pengoperasian secara terintegrasi proses-proses bisnis yang terlibat dalam penciptaan nilai tambah dengan memanfaatkan teknologi informasi dan komunikasi (TIK) secara ekstensif. © Program Magister Teknologi Informasi - UI 2 e-Commerce & e-Business e-Commerce adalah puncak dari “gunung es” ebisnis. e-Commerce tidak mungkin tanpa kemampuan ebisnis konsumen e-Commerce e-Bisnis © Program Magister Teknologi Informasi - UI 3 e-Commerce Requirement Akses dari mana saja & kapan saja (24 jam x 7 hari) Layanan multi-channel yang terpadu Respons seketika Status transaksi dapat dilacak, diubah, bahkan dibatalkan Data transaksi yang akurat Self-service dan personalisasi © Program Magister Teknologi Informasi - UI 4 e-Business Roles Proses bisnis yang terpadu (seamless) dengan Integrasi antara aplikasi-aplikasi yang terlibat Manajemen alur-kerja dan proses yang terpadu (layanan satu atap) Kolaborasi antar perusahaan yang menjadi mata rantai value chain © Program Magister Teknologi Informasi - UI 5 Capacity Planning Kriteria mutu layanan online: kinerja (response time), ketersediaan (prosentase downtime), skalabilitas, dan keamanan Situs dengan kinerja rendah - melampaui batas psikologis 8 detik – akan ditinggalkan pengunjung Situs dengan ketersediaan rendah dapat berakibat: jatuhnya reputasi/citra dimata publik dan kehilangan peluang bisnis Skalabilitas situs dalam melayani banyak pengunjung sekaligus menentukan kinerja dan ketersediaan situs Teknologi pengamanan yang tidak memadai menjadikan pengunjung enggan/takut bertransaksi © Program Magister Teknologi Informasi - UI 6 Architecture Capacity Elemen-elemen utama QoS dalam perancangan infrastruktur e-Bisnis Konsumen Manajemen Service Level Agreement Pilihan Teknologi & Standar Plafon Biaya (Anggaran) Response time < 8 detik Ketersediaan > 99.5% Oracle DBMS, SSL, dsb. Kapasitas Memadai Instalasi Rp 100 juta Pemeliharaan < Rp 20 juta/tahun © Program Magister Teknologi Informasi - UI 7 Quantitative Approach Misal sasaran 99% availability, berarti hanya boleh down selama 87,6 jam dalam setahun (1% dari 8.760 jam setahun) Pendekatan: merancang arsitektur fisik situs berdasarkan pola penggunaan Menentukan konfigurasi server-server, kapasitas (bandwidth) jaringan, ukuran server-server, skalabilitas, keandalan, jenis software, dsb. Sumber data: log akses server, pengukuran waktu download (response), statistik jumlah akses per hari, jam-jam tersibuk, dsb. © Program Magister Teknologi Informasi - UI 8 Quantitative Approach Tahapan: Kategorisasi pengguna berdasarkan perilakunya Karakterisasi beban kerja situs per sesi Pemodelan kinerja situs Hitung parameter-parameter model kinerja Perkirakan trend pertumbuhan/perubahan beban Perkirakan kinerja situs © Program Magister Teknologi Informasi - UI 9 Performance Modeling Proses umum pemodelan: © Program Magister Teknologi Informasi - UI 10 e-Site Reference Models Model-model dalam analisa/perencanaan kapasitas: Model Bisnis Karakteristik Bisnis Model Fungsional Struktur Navigasi dan Fungsi Model Pengguna Pola Perilaku Pengguna Model Sumber Daya Arsitektur Situs dan Beban Layanan © Program Magister Teknologi Informasi - UI 11 Reference Models Model Bisnis Pola B2C, B2B, C2C, dsb. Kategori bisnis online: ritel, lelang, e-market, dsb. Model Pengguna Pola navigasi pengunjung situs Metrik perilaku Model Sumber Daya Model kinerja (utilisasi CPU, dsb.) Model beban kerja (rata-rata jumlah request, jumlah akses tertinggi dalam sehari, dsb.) © Program Magister Teknologi Informasi - UI 12 Functional Model Sebagai peta untuk analisa struktur navigasi Model Fungsional Lelang Online Pendaftaran Penjual & Pembeli Penawaran Pembukaan (setup) Lelang Evaluasi Penawaran & Penutupan Lelang Penjadwalan & Pengiklanan Transaksi (settlement) © Program Magister Teknologi Informasi - UI 13 Customer Behavior Model Pola navigasi per sesi: Pola urutan akses fungsi-fungsi: login, lihat katalog, cari produk, pesan, mengecek pesanan, dsb. Pola navigasi seorang pengunjung dapat berbeda antara sesi (kunjungan) satu dengan sesi (kunjungan) berikutnya. Model-model: Customer Behavior Model Graph (CBMG) Customer Visit Model (CVM) © Program Magister Teknologi Informasi - UI 14 CBMG © Program Magister Teknologi Informasi - UI 15 CBMG Data Collection Data diperoleh dari log akses pada server web Sesi: urutan akses oleh client (alamat IP) yang sama Batas antar sesi untuk client yang sama: berdasarkan minimum jarak waktu antar akses, kalau melebihi berarti sudah masuk sesi berikutnya Web Server Web Browser HTML collection HTTP request HTML file Access log file © Program Magister Teknologi Informasi - UI 16 CBMG Computation Program: filter, merge, link HTTP logs Page request logs Session log CBMG Dari data urutan akses setiap sesi dihitung probabilitas transisi dari satu titik navigasi (fungsi) ke titik navigasi (fungsi) lain: P(i,j) = Ci,j / Σ Ci,k untuk k = 1, …, n • Ci,j adalah jumlah transisi dari i ke j dalam data • n adalah jumlah titik navigasi © Program Magister Teknologi Informasi - UI 17 CBMG Matrix Matriks CBMG: probabilitas transisi antar titik navigasi © Program Magister Teknologi Informasi - UI 18 Why CBMG? Mengukur tingkat penggunaan fungsi-fungsi Contoh: Jumlah search per sesi: 1 + 0,6 + 0,62 + 0,63 + … = 2,5 CBMG Entry 0.6 1.0 Home 1.0 Search © Program Magister Teknologi Informasi - UI 1.0 Browse 0.4 19 Customer Visit Model CVM: daftar frekuensi akses untuk setiap fungsi (titik navigasi) per sesi Juga dihitung dari data log akses server Web Digunakan untuk membuat model beban kerja © Program Magister Teknologi Informasi - UI 20 Zipf’s Law Frekuensi akses mengikuti hukum distribusi Zipf: berbanding terbalik dengan ranking popularitas = k/r untuk suatu konstanta k © Program Magister Teknologi Informasi - UI 21 CVM Computation Penentuan jumlah sesi dalam tabel CVM: Berdasarkan kategori pengunjung, atau Dengan teknik clustering (pengelompokan data) sesi Setiap data sesi direpresentasikan sebagai vektor yang komponennya adalah fungsi-fungsi atau titik navigasi Misalnya vektor dengan 6 komponen [login, registrasi, search, pesan, cek-pesanan, logout], contoh datanya: [1,1,1,0,0,1], [0,0,2,0,0,0], [1,0,0,0,1,1], dst. Dapat menggunakan teknik k-means clustering berdasarkan jarak antar vektor © Program Magister Teknologi Informasi - UI 22 K-means Clustering 1 2 k=3 3 4 © Program Magister Teknologi Informasi - UI 23 CVM Nilai dalam tabel CVM adalah nilai rata-rata tiap cluster atau kategori pengunjung. Contoh CVM dengan jumlah cluster k = 4 © Program Magister Teknologi Informasi - UI 24 Why CVM? CVM dapat membantu mengetahui: Rata-rata berapa kali suatu fungsi diakses per sesi (kunjungan) Berapa probabilitas seorang pengunjung melakukan transaksi pembelian dalam satu kunjungan Berapa jumlah request (dokumen yang diakses) yang diterima server web rata-rata per sesi Berapa rata-rata transaksi yang terjadi per hari Berapa prosentase pengunjung yang meninggalkan situs dalam keadaan keranjang belanjaan (shopping cart) terisi © Program Magister Teknologi Informasi - UI 25 Workload Model Pemodelan beban berdasarkan arsitektur fisik dimana fungsi-fungsi dijalankan dan CVM Contoh: Web Server Application Server Client Browser Database Server Secure Web Server Payment Server e-Commerce Site © Program Magister Teknologi Informasi - UI 26 CVM Example Contoh CVM sederhana: Tipe Sesi: Baca daftar iklan properti Prosentase: 5% Pasang iklan properti Cari iklan properti 19% 76% Melibatkan web server dan application server Melibatkan web server Show list Entry 1.0 Submit form 0.19 Search keyword 1.0 1.0 Show results 1.0 Get status 1.0 Melibatkan web, application, dan database server © Program Magister Teknologi Informasi - UI 27 Client Server Interaction Diagram Contoh CSID sederhana: [p,m] p: probabilitas dalam satu sesi m: ukuran data dalam kilo bytes © Program Magister Teknologi Informasi - UI 28 CSID Dari CSID dapat dihitung Probabilitas DB server akan digunakan dalam suatu sesi: 1,0 x 0,95 x 0,8 = 0,76 Berapa kali rata-rata server apklikasi akan digunakan dalam suatu sesi: 1 x (0,95 x 0,2) + 2 x (0,95 x 0,8) = 1,71 kali Berapa rata-rata jumlah kbytes per sesi yang melalui jaringan lokal (LAN) yang menghubungkan server-server situs: 0,05 x (m1+m2) + 0,19 x (m1+m3+m4+ m5) + 0,76 x (m1+m3+m6+m7+m8+m9) © Program Magister Teknologi Informasi - UI 29 Performance Analysis Perkiraan kapasitas berdasarkan CSID Jumlah maksimum sesi paralel yang dapat dilayani tanpa delay untuk LAN dengan bandwidth 100 Mbps ≈ 10.000 kbyte/second (termasuk datagram packet overhead) Misalnya rata-rata kbyte persesi adalah 15 kbytes maka kapasitas jaringan adalah 10.000/15 = 666,66 sesi paralel internet router LAN 100Mbps Web server Application server © Program Magister Teknologi Informasi - UI DB server 30 Performance Analysis Perkiraan kapasitas berdasarkan CSID Kapasitas server aplikasi Misalnya utilisasi CPU setiap penggunaan adalah 0,5%, maka kapasitas application server adalah: 100 / (1,71 x 0,5) = 116,96 sesi paralel (lebih kecil dari kapasitas network) © Program Magister Teknologi Informasi - UI 31 Capacity Planning Perencanaan kapasitas infrastruktur e-Bisnis: Memahami/memodelkan karakteristik beban sistem untuk mengetahui tingkat saturasi layanan sistem Mengantisipasi peningkatan beban dengan memperlambat tercapainya saturasi layanan Penyebab peningkatan beban kerja: Perubahan/perkembangan model bisnis Perubahan/penambahan fungsi layanan Perubahan perilaku konsumen (trend, promosi, dsb.) Perombakan infrastruktur TI © Program Magister Teknologi Informasi - UI 32 e-Business Capacity Plan Rencana kapasitas infrastruktur e-Bisnis disesuaikan dengan rencana pengembangan lanjut sistem e-Bisnis Rencana evolusi model bisnis Rencana evolusi fungsi layanan Perkiraan evolusi perilaku konsumen Rencana evolusi infrastruktur Perencanaan model bisnis & fungsi layanan Perencanaan perilaku konsumen Tiga proses perencanaan utama Perencanaan sumber daya TI © Program Magister Teknologi Informasi - UI 33 Business Aspect Aspek bisnis perencanaan kapasitas: Hasil analisis strategi Karakterisasi Bisnis Business plan Use Case Rencana Pengembangan Bisnis Model Bisnis Analisis Fungsional Struktur dan fitur situs Rencana Penambahan Fungsi-fungsi Model Fungsional © Program Magister Teknologi Informasi - UI 34 Customer Aspect Analisis aspek konsumen: Membuat model perilaku: CBMG Memperkirakan/merancang perubahan-perubahan pada CBMG Karakterisasi Perilaku Konsumen Penambahan/ Pengubahan Fitur Rencana Pengubahan Perilaku Konsumen Trend dan statistik CBMG © Program Magister Teknologi Informasi - UI 35 Resource-Level Aspect Aspek infrastruktur: Karakterisasi Lingkungan TI Rencana Perubahan Infrastruktur TI Deskripsi Infrastruktur TI Deskripsi Beban Kerja Karakterisasi Beban Kerja Pemodelan Biaya Model Biaya Kalibrasi dan Validasi Analsis Skenario © Program Magister Teknologi Informasi - UI Prakiraan Beban Kerja Model Beban Kerja Pemodelan Kinerja Model Kinerja 36 Workload Forecasting Prakiraan beban kerja Prakiraan Kuantitatif Prakiraan Kualitatif Pengumpulan Informasi Survei Pasar, Intuisi, Pertimbangan, Rencana Bisnis, dsb. Data Historis: Benchmarking, Log, dsb Teknik-teknik Prakiraan (time-series analysis) Skenario Bisnis Perkiraan Demand dan Beban Kerja © Program Magister Teknologi Informasi - UI 37 Capacity Planning Perencanaan kapasitas infrastruktur e-Bisnis Membuat rencana modifikasi/upgrading komponenkomponen infrastruktur secara bertahap Pengambilan keputusan teknis infrastruktur: Menggunakan Model Kinerja sistem untuk mempertimbangkan keputusan: Scaling Up Penggantian besar dengan mesin berkapasitas lebih Scaling Out Penambahan mesin dengan kapasitas yang sama (mirroring, replikasi, mesin paralel, dsb.) © Program Magister Teknologi Informasi - UI 38