Post on 16-Apr-2017
Konfigurasi Hybrid Virtualisasi Disk Drive Pada Virtualisasi Server Basis Data
Nama : Ferdy Nirwansyah
NIM : 1412411212
Latar Belakang Database menjadi bagian integral dari kehidupan kita sehari-hari
(Connolly & Begg, 2005)
On Line Transaction Processing (OLTP) & On Line Analytical
Processing (OLAP)
Virtualisasi -> high availability
Performance and tuning dapat meningkatkan kinerja, salah
satunya pada storage environment (Schiesser, 2010)
BAB I - Pendahuluan
Ada dua tipe harddisk, SSD dan HDD
Enterprise storage system yang full SSD masih sangat mahal
Enterprise storage system masih banyak menggunakan HDD
Konfigurasi hybrid storage pada virtualisasi server database
Benchmark -> TPC-C dan TPC-H
Latar Belakang (2)
Perumusan Masalah
Bagaimana meningkatkan kinerja server database
dengan melakukan konfigurasi hybrid storage yang
optimal pada level OS di virtualisasi server?
Bagaimana memanfaatkan semua resources yang ada
pada storage tanpa mengorbankan kinerja dari server
database?
Tujuan Penelitian
Membuat konfigurasi hybrid storage yang tepat untuk mendukung
kinerja server database pada virtualisasi server
Mendapatkan kinerja yang optimal pada enterprise storage system
dengan menggunakan kombinasi harddisk SSD dan HDD agar cost
effective
Ruang Lingkup Konfigurasi 4 buah SSD dengan RAID10
Konfigurasi 8 buah HDD dengan RAID10
Instalasi virtualisasi server -> VMWare
Instalasi server database -> Windows Server 2012
sebagai Virtual Machine (VM)
Instalasi ORACLE 11G XE, SQL Server 2012, MySQL 5.6
dan PostgreSQL 9.4
Instalasi HammerDB 2.19
Menghitung Transaction Per Minutes (TPM) pada TPC-C
dan Query Per Hour (QphH) pada TPC-H
Ruang Lingkup (2)
Ada empat konfigurasi pada Windows Server :
OS -> HDD, database -> SSD, file temporary -> HDD
OS -> SSD, database -> HDD, file temporary -> HDD
OS -> HDD, database -> SSD, file temporary -> SSD
OS -> SSD, database -> HDD, file temporary -> SSD
Virtualisasi (VMware, 2006)
BAB II – Landasan Teori
RAID RAID mempunyai fitur striping, mirroring dan fault tolerance (LaCie, 2011) Membagi atau mereplikasi data ke dalam beberapa hard disk Meningkatkan keandalan data dan/atau meningkatkan kinerja I/O hard disk
(Adaptec, 2005)
SSD VS HDD SSD menyimpan semua data pada chip flash memory
HDD menyimpan datanya pada lapisan-lapisan magnetik
VS
SSD CORSAIR Fource GS 240GB 2.5” Random Read 84 K Random Write 78K.
HDD Seagate Momentus 500 GB 7.2K RPM 2.5” Random Read 105 Random Write 97
Transaction Processing Performance Council (TPC)
Organisasi non-profit yang didirikan pada tahun 1988 Proses transaksi dari database benchmark untuk mendapatkan data kinerja
TPC yang sudah diverifikasi TPC benchmark digunakan untuk mengevaluasi kinerja sistem computer Pada Penelitian ini menggunakan Software HammerDB
Jenis- Jenis TPC TPC-C - On-line transaction processing (1992) TPC-H - Ad-hoc decision support system (1999) TPC-E - Complex on-line transaction processing (2006) TPC-DS - Complex decisions support system (2011) TPC-DI - Data integration (2013) TPCx-HS - Industry's first standard for benchmarking Big Data
(Hadoop) systems (2014)
.
Teknik Hybrid Storage • Membuat konfigurasi dengan melakukan kombinasi dari dua tipe
harddisk
• Memberdayakan semua resources (cost effective)
Beberapa teknik hybrid virtual storage dari berbagai layer : Membuat firmware dengan menggunakan framework
sendiri (Kim, Gupta, Urgaonkar, Berman, &
Sivasubramaniam, 2011), (Mao et al., 2012),
Layer OS Storage (Wu & Reddy, 2009),
Layer virtualisasi (Jo et al., 2010)
Layer database (Do et al., 2011)
Tinjauan Pustaka
Nama Peneliti
& Tahun
Subyek Penelitian
Kekurangan&
KelebihanEvaluasi Kinerja Layer
Jumlah Kapasitas
SSD HDD SSD HDD
(Mao, Jiang, Wu,
Tian, & Feng, 2012)
Hybrid Parity-based Disk Array
Architecture (HPDA)
Keandalan HPDA, pada Mean Time To Data Loss(MTTDL),
lebih tinggi dariHDD atau SSD
dengan RAID 5
HPDAmelebihi SSD maupun HDD dengan RAID 5
Storage 3 2 3 * 120 GB 2 * 500 GB
(Bassil, 2012)
Studi banding pada kinerja sistem atas
DBMS
MSSQL Server 2008, Oracle11g, IBMDB2,
MySQL5.5,dan MS Access
2010
Tidak ada DBMS yang mempuyai
kinerja paling bagus Database Undefi
ned Undefined Undefined 2 TB
(Kim et al., 2011)
HybridStore Ada 2 yang di
provide: (a) Hybrid-Plan (b) HybridDyn
Meningkatkan capacity planning
dan kinerja/lifetime guarantees
Hybrid Store mendekati full SSD
tetapi di atas full HDD
Storage 2+1 2+7 2 * 80 GB + 1 * 32 GB
2 * 750 GB +
7 * 146 GB
(Bausch et al., 2011)
Mengamati kinerja join algoritma di PostgreSQL
pada SSD dan HDD
Konsentrasinya hanya pada database
PostgreSQL
Kinerja point query meningkat
hingga 50 kali.Range query kurang
bagus pada SSDDatabase 1 1 Undefined Undefined
(Do et al., 2011)
Menganalisa SSD untuk
meningkatkan kinerja buffer manager dari
DBMS
Mengatasi dirty pages untuk
dikeluarkan dari buffer pool
Meningkat hingga 9.4x, dan sampai 6.8x lebih dengan
TACStorage 1 8 1 * 140 GB 8 * 400 GB
Tinjauan PustakaNama
Peneliti &
Tahun
Subyek Penelitian
Kekurangan&
KelebihanEvaluasi Kinerja Layer
Jumlah Kapasitas
SSD HDD SSD HDD
(Shaull et al., 2010)
Membuat analytical tool untuk menilai konfigurasi kombinasi dari semua jenis resources
Menganalisa logical volume statistics
collected yang dikumpulkan dari 120
large production system
Kombinasi dari SSD, SCSI, dan SATA menjadi konfigurasi yang lebih baik daripada hanya menggunakan SCSI
Storage Undefined Undefined Undefined Undefined
(Jo et al., 2010)
Hybrid Copy-on-Write (CoW) storage untuk consolidate environment
Membuat kombinasi yang efisien antara
SSD dan HDD
Kinerja di atas yang full HDD tetapi di bawah
full SSDVMWare 1 2 Undefined Undefined
(Wu & Reddy, 2009)
Framework Manajemen hybrid storage yang menggunakan SSD dan HDD
Kombinasi konfigurasi antara SSD dan HDD. Perlu pengujian dan Implementasi lebih lanjut
50% lebih cepat dari yang full HDD Linux 2 1
1 * 16 GB +
1 * 32 GB1 *
250 GB
(Lee, 2009)Mengadakan penelitian dengan tiga model SSD yang berbeda tipe dari Samsung
Menunjukkan teknologi SSD membalikkan trend pelebaran kesenjangan kinerja prosesor dan storage
Single SSD dapat mengalahkan RAID 0 dengan delapan enterprise class 15k-RPM disk drive
Database 1+1+1 11 * 32 GB
+ 1 * 64 GB+ 1 * 128 GB
1 * 73.4 GB
(Park et al., 2009)
Menyajikan keandalan dan teknik pada RAID sistem baru dengan SSD
Mengembangkan metodologi RAID baru yang diadaptasi dari storage SSD
Meningkatkan keandalan SSD 2% dan meningkatkan I/O kinerja SSD 28%
Storage 3 1 Undefined Undefined
Skema Konfigurasi I
Skema Konfigurasi II
Skema Konfigurasi III
Skema Konfigurasi IV
Flowchart Langkah Pengujian
Data & Sumber Data
• Sumber data dari log file yang dihasilkan oleh HammerDB per penelitian
• Dari empat penelitian yang dilakukan, data dimasukkan ke dalam tabel hasil penelitian dengan dua skema, yaitu TPC-C dan TPC-H
TPC-CUser ORACLE SQL Server MySQL PostgreSQL
10 P1DB1U1 P1DB2U1 P1DB3U1 P1DB4U1
50 P1DB1U2 P1DB2U2 P1DB3U2 P1DB4U2
10 P2DB1U1 P2DB2U1 P2DB3U1 P2DB4U1
50 P2DB1U2 P2DB2U2 P2DB3U2 P2DB4U2
10 P3DB1U1 P3DB2U1 P3DB3U1 P3DB4U1
50 P3DB1U2 P3DB2U2 P3DB3U2 P3DB4U2
10 P4DB1U1 P4DB2U1 P4DB3U1 P4DB4U1
50 P4DB1U2 P4DB2U2 P4DB3U2 P4DB4U2
Konfigurasi IV
Konfigurasi I
Konfigurasi II
Konfigurasi II
Metode Analisis
TPC-HMetode Analisis (2)
• Data dari hasil penelitian yang berupa log file mempunyai nilai Power Query Time dari 22 query yang diuji dari 10 dan 100 virtual user
• PostgreSQL hanya 19 query. Ada 3 query yang di skip, yaitu query 17,20 dan 21. PostgreSQL tidak memiliki paralel query atau column store features dan karena itu saat ini tidak memberikan kinerja yang kompetitif untuk beban kerja TPC-H (HammerDB, n.d.-a)
• Data penelitian diolah menggunakan Excel dan diambil average per masing-masing query
• TPC-H Calculator untuk menghitung Nilai QphHnya
TPC-H Calculator
Hasil Penelitian TPC-HUser ORACLE SQL Server MySQL PostgreSQL
10 P1DB1U1 P1DB2U1 P1DB3U1 P1DB4U1
100 P1DB1U2 P1DB2U2 P1DB3U2 P1DB4U2
10 P2DB1U1 P2DB2U1 P2DB3U1 P2DB4U1
100 P2DB1U2 P2DB2U2 P2DB3U2 P2DB4U2
10 P3DB1U1 P3DB2U1 P3DB3U1 P3DB4U1
100 P3DB1U2 P3DB2U2 P3DB3U2 P3DB4U2
10 P4DB1U1 P4DB2U1 P4DB3U1 P4DB4U1
100 P4DB1U2 P4DB2U2 P4DB3U2 P4DB4U2
Konfigurasi IV
Konfigurasi I
Konfigurasi II
Konfigurasi II
BAB IV Hasil & Pembahasan
Persiapan Penelitian• 4 konfigurasi harddisk dengan 4 database dan juga 2 skema yaitu TPC-C
dan TPC-H. Pada setiap skema TPC dilakukan 2 kali percobaan. Total ada 64 percobaan
• TPC-C menggunakan menggunakan metode AWR snapshot driver script dengan menggunakan 5 record tabel warehouse dan rampup time 30 menit serta durasi 10 menit untuk 10 dan 50 virtual user dengan sejuta transaksi per user
• TPC-H menggunakan Scale Factor (SF) 1 untuk 10 virtual user dan 100 virtual user untuk 1 warehouse (Scale Factor digunakanan untuk menentukan jumlah record dari data transaksi, misal SF 10 berarti jumlah data transaksi standart dari skema TPC-H dikali 10)
TPC-C
TPC-H
Proses Load Data TPC-C
Setting TPC-C
Proses Perhitungan TPC-C
Proses Perhitungan TPC-H
Hasil Pengukuran OLTP
Hasil Pengukuran OLTP (2)
Hasil Pengukuran OLAP
Hasil Pengukuran OLAP (2)
Pembahasan OLTPORACLE, • 10 virtual user konfigurasi III di peringkat pertama, kemudian
konfigurasi I di peringkat kedua serta konfigurasi II dan IV di peringkat ketiga dan keempat. Konfigurasi III dapat menaikkan kinerja menjadi 18.87% dibandingkan konfigurasi I
• 50 virtual user urutan kinerja konfigurasi sama dengan 10 virtual user. Konfigurasi III berhasil menaikkan kinerja 119.04% dari konfigurasi I
SQL Server,• kinerja konfigurasi III pada 10 virtual user sedikit mengungguli
konfigurasi I, sementara konfigurasi IV dan II di peringkat ketiga dan keempat
• Untuk 50 virtual user kondisinya sama dengan 10 virtual user. Tidak terlihat kenaikan kinerja yang signifikan dari konfigurasi III ke I. Untuk yang 50 virtual user malah terjadi penurunan kinerja 0.14%.
Pembahasan OLTP (2)MySQL, • 10 virtual user konfigurasi I mengungguli konfigurasi III dengan
perbedaan kinerja 16.44% disusul kemudian konfigurasi II dan IV di urutan ketiga dan keempat
• 50 virtual user, konfigurasi III lebih unggul 5.55% dibandingkan dengan konfigurasi I. Kemudian disusul oleh konfigurasi IV dan II.
PostgreSQL,• 10 virtual user, konfigurasi III di peringkat pertama dengan kenaikan
kinerja 18.43% dibandingkan konfigurasi I. Konfigurasi IV dan II di peringkat ketiga dan keempat
• 50 virtual user konfigurasi III lebih unggul 21.36% dari konfigurasi I. Selanjutnya konfigurasi II dan IV di peringkat ketiga dan keempat
Grafik TPC-C Per Database
Pembahasan OLAPORACLE, • 10 virtual user konfigurasi III di peringkat pertama dengan peningkatan
kinerja 5.64% dari konfigurasi I. Konfigurasi IV dan II di peringkat ketiga dan keempat
• 100 virtual user urutan kinerja konfigurasi adalah konfigurasi III di peringkat pertama dengan peningkatan kinerja 14.02% dari konfigurasi I. Konfigurasi IV dan II di peringkat ketiga dan keempat.
SQL Server,• Kinerja konfigurasi I pada 10 virtual user sedikit mengungguli
konfigurasi III dengan perbedaan kinerja 2.59%, sementara konfigurasi II dan IV di peringkat ketiga dan keempat
• 100 virtual user konfigurasi I mengungguli konfigurasi III dengan perbedaan kinerja 4.87%, konfigurasi II mengungguli konfigurasi IV di peringkat ketiga dan keempat.
Pembahasan OLAP (2)MySQL, • 10 virtual user konfigurasi III mengungguli konfigurasi I dengan
perbedaan kinerja sangat tipis sebesar 1.73% disusul kemudian konfigurasi IV dan II di urutan ketiga dan keempat.
• 100 virtual user, konfigurasi I lebih unggul dibandingkan dengan konfigurasi III. Kemudian disusul oleh konfigurasi IV dan II.
PostgreSQL,• 10 virtual user, konfigurasi III di peringkat pertama kemudian disusul
konfigurasi I di peringkat kedua dan konfigurasi IV dan II di peringkat ketiga dan keempat.
• 100 virtual user konfigurasi I lebih unggul 3.18% dari konfigurasi III. Selanjutnya konfigurasi IV dan II di peringkat ketiga dan keempat
Grafik TPC-H Per Database
• OLTP mendapatkan kinerja yang terbaik pada konfigurasi III
• Pada ORACLE terjadi peningkatan 119.04% untuk 50 virtual user konfigurasi III dibandingkan dengan konfigurasi I
• OLAP, konfigurasi harddisk yang terbaik cukup berimbang antara konfigurasi I dan III. Memerlukan pengujian lebih lanjut untuk mengetahui kinerja yang lebih baik antara konfigurasi I dan III
• Konfigurasi II dan IV tidak disarankan sebagai server database OLTP & OLAP
• SQL Server pada OLAP mendapatkan performa yang paling tinggi, parameter konfigurasi standart dari SQL Server membuat utilisasi penggunaan storage, memory dan processor secara optimal
BAB IV Kesimpulan & Saran
Kesimpulan & Saran (2)• PostgreSQL tidak disarankan digunakan sebagai OLAP karena ada keterbatasan
pada engine databasenya
• Untuk OLAP Perlu dilakukan pengujian lebih lanjut untuk Scale Factor (SF) 10 atau lebih dengan jumlah virtual user lebih banyak
• Rasio harddisk yang digunakan pada penelitian ini adalah 1:2. Dengan rasio 1:1 maka konfigurasi III akan mendapatkan kinerja yang lebih baik terhadap konfigurasi I dibandingkan penelitian ini
• Hasil penelitian ini tidak akan relevan bila digunakan untuk rasio yang
dinaikkan menjadi 1:3 atau 1:4 dan seterusnya