Apa itu IOPS (input/output operations per second)?

IOPS (input/output operations per second) adalah satuan standar untuk mengukur jumlah maksimum operasi baca/tulis ke lokasi penyimpanan yang tidak berdekatan. IOPS dibaca sebagai “EYE-OPS”.
Secara sederhana, IOPS adalah ukuran kecepatan baca/tulis perangkat penyimpanan. Ini mengacu pada jumlah operasi input/output (I/O) yang dapat diselesaikan oleh perangkat dalam satu detik dan menyediakan tolok ukur standar untuk mengukur serta menilai kinerja perangkat penyimpanan, seperti hard disk drive (HDD), solid-state drive (SSD), flash drive, dan storage area network (SAN).

Semakin tinggi angka IOPS, semakin besar potensi perangkat penyimpanan untuk memiliki performa lebih baik dan akses data lebih cepat. Namun, nilai ini tidak merujuk pada volume data yang diproses oleh perangkat.

Bersama dengan transfer rate, yang mengukur seberapa cepat data dapat ditransfer dari lokasi penyimpanan yang berdekatan, IOPS dapat digunakan untuk mengukur kinerja penyimpanan. Jika transfer rate diukur dalam byte, maka IOPS diukur dalam bentuk bilangan bulat.

Penjelasan IOPS, latensi, dan throughput

Throughput mengukur jumlah unit informasi yang dapat diproses oleh suatu sistem dalam periode waktu tertentu. Ini bisa merujuk pada jumlah operasi I/O per detik tetapi umumnya diukur dalam byte per detik.
Latensi mengukur waktu antara pengiriman permintaan dan penerimaan respons. Dalam konteks IOPS, latensi adalah waktu yang dibutuhkan untuk menyelesaikan satu permintaan I/O dari sudut pandang aplikasi.

IOPS, latensi, dan throughput masing-masing tidak dapat memberikan gambaran akurat tentang performa suatu perangkat penyimpanan jika diukur secara terpisah. Namun, dengan menggabungkan ketiga metrik ini dan mempertimbangkan faktor lain seperti kedalaman antrean (queue depth), ukuran blok data, atau performa workload, administrator jaringan dapat memperoleh gambaran yang lebih baik tentang kinerja penyimpanan. Selain itu, mengukur IOPS dan latensi bersama-sama dapat membantu memprediksi seberapa besar beban yang dapat ditangani oleh jaringan sebelum terjadi degradasi performa.

Untuk apa IOPS digunakan?

IOPS sering digunakan oleh vendor penyimpanan untuk menggambarkan performa SSD, HDD, dan SAN. Metrik ini digunakan untuk mengukur operasi baca/tulis baik secara berurutan maupun acak.
Sequential IOPS mengacu pada jumlah rata-rata operasi I/O baca/tulis berurutan yang dapat ditangani perangkat per detik, sedangkan Random IOPS mengacu pada jumlah rata-rata operasi I/O baca/tulis acak yang dapat ditangani perangkat per detik.

Ada juga metrik Total IOPS, yang mengacu pada total jumlah operasi I/O baca/tulis yang terjadi dalam satu detik, baik itu operasi berurutan maupun acak.

Mengukur IOPS

Dulu, IOPS sering diukur menggunakan alat pengujian bernama Iometer, yang dikembangkan oleh Intel pada tahun 1998. Iometer digunakan untuk menentukan puncak IOPS di bawah berbagai kondisi baca/tulis. Alat ini cocok untuk sistem tunggal maupun cluster, dengan mengukur performa operasi I/O di bawah beban terkendali. Intel menghentikan pengembangan Iometer pada tahun 2001 dan menyerahkannya kepada Open Source Development Labs. Sejak 2003, Iometer menjadi proyek berbasis komunitas dengan banyak anggota yang berupaya meningkatkannya.
IOPS juga dapat dihitung tanpa Iometer, tetapi hasilnya bervariasi tergantung pada kategori performa workload yang digunakan. IOPS dapat dihitung menggunakan kalkulator IOPS online yang menentukan nilai berdasarkan kecepatan putaran drive, rata-rata waktu pencarian baca, dan rata-rata waktu pencarian tulis.

IOPS pada SSD vs. HDD

HDD menggunakan rumus standar untuk menentukan IOPS, tetapi SSD bekerja dengan cara yang berbeda. Pada HDD, IOPS bergantung pada waktu pencarian (seek time), sedangkan pada SSD, performa terutama ditentukan oleh controller internal perangkat.
Performa SSD juga berubah seiring waktu, biasanya mencapai puncaknya lebih awal sebelum mengalami penurunan.

Namun, bahkan setelah SSD mencapai kondisi stabil, performanya tetap lebih unggul dibandingkan HDD dalam hal IOPS. Secara umum, nilai IOPS SSD dapat berkisar dari puluhan ribu hingga ratusan ribu, sedangkan nilai IOPS HDD hanya berkisar dari beberapa ratus hingga beberapa ribu.

HDD juga mengalami latensi yang lebih tinggi dan waktu baca/tulis yang lebih lama, memiliki banyak komponen bergerak, serta lebih rentan terhadap kejadian fisik seperti guncangan dan getaran. Karena alasan ini, SSD memberikan performa yang lebih andal dan menjadi media penyimpanan pilihan untuk aplikasi yang memerlukan akses data cepat.

Apakah angka IOPS penting?

Sebagai ukuran kinerja, IOPS dapat dibandingkan dengan putaran per menit (rpm) pada mesin mobil. Jika kendaraan dalam keadaan netral, menyebutkan bahwa mesin dapat berputar hingga 10.000 rpm pada saat itu tidak memberikan informasi yang berarti. Tanpa mempertimbangkan ukuran blok data, ukuran I/O, aktivitas baca/tulis, atau aliran I/O, IOPS sebagai ukuran tunggal tidak banyak menjelaskan performa sebenarnya.
Meskipun sering dipromosikan oleh vendor perangkat penyimpanan sebagai tolok ukur kinerja yang berguna, seberapa relevan IOPS sebagai ukuran kinerja masih diperdebatkan. Singkatnya, IOPS berguna untuk memahami jumlah maksimum operasi I/O yang dapat dilakukan oleh perangkat penyimpanan dalam satu detik—atau potensi performa—tetapi tidak untuk menggambarkan performa aktualnya.

Selain itu, angka IOPS dapat bervariasi secara signifikan tergantung pada workload yang digunakan. Oleh karena itu, menilai kinerja sistem penyimpanan hanya berdasarkan IOPS sangat tidak disarankan. Secara umum, terdapat tiga jenis performa workload: random, sequential, dan kombinasi keduanya. Penggunaan Redundant Array of Independent Disks (RAID) juga dapat memengaruhi perhitungan IOPS karena setiap operasi tulis akan menghasilkan beberapa kali penulisan ke storage array.

Karena angka IOPS dipengaruhi oleh ukuran blok data, performa workload, serta faktor lain seperti queue depth, kecil kemungkinan vendor menggunakan variabel yang distandarisasi saat mencantumkan angka IOPS. Bahkan jika mereka menggunakan sistem standar dengan ukuran blok yang tetap dan kombinasi baca/tulis yang ditentukan, angka tersebut tetap tidak memiliki arti kecuali jika sesuai dengan workload tertentu.

Terakhir, untuk memberikan tolok ukur IOPS, vendor menguji kecepatan perangkat dalam lingkungan ideal. Namun, skenario di dunia nyata jarang ideal, sehingga perangkat jarang mencapai angka IOPS yang dipublikasikan oleh pabrikan. Hal ini menyebabkan perbedaan antara angka IOPS yang diperoleh dalam kondisi nyata dan angka IOPS yang diukur serta diterbitkan oleh produsen—alasan lain mengapa tidak disarankan untuk hanya mengandalkan IOPS dalam menilai performa penyimpanan.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *