آیآپس (IOPS) چیست؟
آیآپس (IOPS) در واقع واحد سنجش ورودی/خروجی وسایل ذخیرهسازی مثل هارد دیسک (HDD) ، درایوهای حالت جامد (SSD) و SAN است. همانند بنچمارک های متفاوت، عدد مربوط به IOPS توسط کارخانههای تولید وسایل ذخیرهساز HPE در هنگام عرضه محصول ارائه میشود که الزاما همان عملکرد در شرایط دنیای واقعی نیز در دسترس نخواهد بود.
برای درک بهتر از مشخصات هر وسیله ذخیرهسازی بهتر است که حداقل سه ویژگی مختلف آن مد نظر گرفته شود.
IOPS، زمان پاسخدهی و حجمکاری بدون در نظر گرفتن زمان پاسخدهی و حجمکاری است. در واقع IOPS اهمیت خاصی ندارد. در حالت اختصاصی میتوان IOPS را به سرعت در دقیقه یک موتور در ماشین تشبیه کرد. یک موتور قدرت گردش 10 هزار دور در دقیقه را دارد.
انجام این مقدار گردش در حالی که موتور دنده در حالت خلاص قرار گرفته اهمیت خاصی ندارد. گرچه موتوری بتواند اسب بخار و البته گشتاور خاصی را با استفاده از ده هزار دور در دقیقه به کار گیرد میتوان به قدرت آن موتور پی برد.
IOPS مخفف چیست؟
IOPS مخفف Input/Output Operations Per Second میباشد. به زبان ساده یک واحد اندازه گیری حداکثر میزان خواندن و نوشتن بر روی تجهیزات ذخیره سازی اطلاعات است.
در سال 1999 سو استفاده از IOPS در بین شرکتهای تولید کننده سختافزار اوج گرفته بود که در نهایت باعث به وجود آمدن مشکلات زیادی شد. برای حل این مشکل شرکت اینتل بنچمارک IOmeter را برای اندازهگیری ویژگیهای مختلف وسایل ذخیرهسازی منتشر کرد.
سازمان Storage Performance Council نیز توانست بنچمارکی به نام SPC-1 Benchmark Suite را منتشر کند که یکی از دقیقترین بنچمارکهای موجود است.
SPC-1 از تولیدکنندگان درخواست میکند تا تمام مشخصات مربوط به دستگاههای ذخیرهسازی خود را اعلام کنند. استانداردهایی که در محیطکاری استفاده میشوند. در این میان باید میزان IOPS و زمان پاسخدهی به دقت مشخص شود تا از تقلب و ارائه اعداد غیر واقعی جلوگیری شود. در نتیجه تست و بنچمارک SPC-1 نتیجهای واقعگرا از IOPS، زمان پاسخدهی، پایداری داده و عملکرد در وسیله ذخیرهسازی است.
همچنین این تست با توجه به دریافت قیمت قطعات استفاده شده در ساخت وسیله ذخیرهسازی انجام میشود و در نهایت ارزش خرید نسبت به هر IOPS نیز ارائه میشود. مقدار دقیق IOPS در هر سیستم بسته به تنظیمات مختلف میتواند بسیار متفاوت باشد. شاید مهمترین نوع تست IOPS دسترسی به دادهها به صورت ترتیبی و یا تصادفی است.
گرچه تستهای دیگری نیز وجود دارند. از عوامل محیطی موثر روی نتیجه تست SPC-1 میتوان به کانفیگ سیستم ، سیستم عامل و … اشاره کرد.
یکی از ویژگیهای عملکرد اصلی مورد آزمایش قرار میگیرد، عملیات دسترسی به صورت ترتیبی و تصادفی است که قبلا نیز به آن اشاره شده است. دسترسی ترتیبی در مکانهای مختلف وسیله ذخیرهسازی به صورت پیوسته انجام میشود.
این دسترسی معمولا برای انتقال فایلهای بزرگ مثل ۱۲۸ کیلوبایت وجود دارد. عملیات دسترسی تصادفی به صورت غیر پیوسته انجام میشود و این دسترسی معمولا برای انتقال فایلها با حجم پایین تر مثل ۴ کیلوبایت استفاده میشود. متداولترین تستها برای اندازهگیری عملکرد به شرح زیر است:
اندازه | توضیحات |
Total IOPS | عداد کل عملیاتهای ورودی-خروجی در یک ثانیه |
Random Read IOPS | تعداد میانگین عملیاتهای خواندن ورودی-خروجی تصادفی در یک ثانیه |
Random Write IOPS | تعداد میانگین عملیاتهای نوشتن ورودی-خروجی تصادفی در یک ثانیه |
Sequential Read IOPS | تعداد میانگین عملیاتهای خواندن ورودی-خروجی ترتیبی در یک ثانیه |
Sequential Write IOPS | تعداد میانگین عملیاتهای نوشتن ورودی-خروجی ترتیبی در یک ثانیه |
برای هارد دیسکها و دیگر وسایل ذخیرهسازی اطلاعات به صورت الکترومغناطیسی، عدد مربوط به IOPS بیشتر به زمان جستجوی تصادفی بستگی دارد (Seek Time). در سمت مقابل و برای درایوهای حالت جامد یا SSD عدد مربوط به IOPS بیشتر به کنترلر داخلی دستگاه و البته سرعت رابط حافظه بستگی دارد.
در هر دو مدل از وسایل ذخیرهسازی اعداد مربوط به IOPS ترتیبی معمولا بیشترین سرعت که وسیله ذخیرهسازی مورد نظر میتواند از آن پشتیبانی کند را نمایش میدهد. معمولا این عدد به مگابایت ذکر میشود. در جدول زیر میانگین سرعت IOPS هارد دیسک و درایوهای حالت امد را مشاهده میکنید:
دستگاه | نوع | IOPS | رابط |
5,400 rpm SATA drives |
HDD | ~15-50 IOPS | SATA 3 Gbit/s |
7,200 rpm SATA drives |
HDD | ~75-100 IOPS | SATA 3 Gbit/s |
10,000 rpm SATA drives |
HDD | ~125-150 IOPS | SATA 3 Gbit/s |
10,000 rpm SAS drives |
HDD | ~140 IOPS | SAS |
15,000 rpm SAS drives |
HDD | ~175-210 IOPS | SAS |
دستگاه | نوع | IOPS | رابط |
Samsung SM863 960 GB | SSD | 79893 Read IOPS
30496 Write IOPS |
SATA |
Samsung PM863 960 GB | SSD | 79825 Read IOPS
22639 Write IOPS |
SATA |
Toshiba HK3R2 960GB | SSD | 75899 Read IOPS
19055 Write IOPS |
SATA |
Samsung 845C Evo 480 GB | SSD | 74253 Read IOPS
15507 Write IOPS |
SATA |
Micon M510DC 480 GB | SSD | 73206 Read IOPS
23917 Write IOPS |
SATA |
Micron M500DC 480 GB | SSD | 72820 Read IOPS
37041 Write IOPS |
SATA |
Intel S3500 480 GB | SSD | 65362 Read IOPS
12534 Write IOPS |
SATA |
SanDisk Cloudspeed Eco 960 GB |
SSD | 59874 Read IOPS
16991 Write IOPS |
SATA |
اهمیت اندازه گیری IOPS
ممکن است این سوال برای کاربران بهوجود بیاید که اندازهگیری IOPS چقدر مهم است؟ از آنجایی که عمدتاً از این روش جهت اندازهگیری هارد درایوهای SATA، SAS، SSD و SAN Storage استفاده میشود، دانستن میزان IOPS یک دستگاه ذخیرهساز در قیمت خرید تجهیزات ذخیرهسازی تأثیرگذار است.
عمدتاً هرچه میزان ای اُپس ذخیرهساز HPE بیشتر باشد، بههمان نسبت نیاز به تجهیزات پیشرفتهتر و هزینهی بیشتر دارد.
همچنین برای مدیران یک شبکه و افرادی که در زمینه فروش سرور hpe و ذخیرهساز فعالیت دارند، دانستن عدد IOPS و میزان تأخیر در شبکه باعث میشود تا میزان عملکرد شبکه و کارآیی سرور را در آینده تخمین بزنند. متأسفانه بسیاری از شرکت و سازمانها بدون درک نیازهای خود و نوع فعالیت اقدام به خرید ذخیرهساز میکنند، بدون اینکه IOPS موردنیاز خود را در نظر بگیرند.
فاکتور دیگری که اهمیت اندازهگیری IOPS را مشخص میکند، دریافت رتبهبندی از سایت گوگل است. طبق اعلام این کمپانی، هرچقدر یک وبسایت سرعت بالاتری در بارگذاری داشته باشد، رتبه بهتری دریافت میکند. در نتیجه IOPS مشخص میکند که یک هارد دیسک تا چه اندازه میتواند سریع و سخت کار کند. که این نکتهی بسیار مهمی برای مدیران یک وبسایت است.
توجه داشته باشید که در هنگام خرید تجهیزات ذخیره ساز، اطلاع داشتن از مقدار IOPS، زمان پاسخدهی و حجمکاری از اهمیت بالایی برخورد است.
روش محاسبه IOPS
هر دیسک در ذخیره ساز سیستم دارای حداکثر مقدار IOPS علمی است که براساس یک فرمول مشخص میشود. عملکرد دیسک و IOPS به سه عامل اصلی بستگی دارند:
سرعت چرخشی (Rotational Speed): اندازه گیری دور در دقیقه یا سرعت چرخشی یکی از عواملی است که در عملکرد دیسک و IOPS تأثیر دارد. معمولاً ذخیرهساز ها دارای سرعت چرخشی 7200، 10000 یا 15000 دور در دقیقه هستند که دو مورد آخر رایج تر است. امکان سرعت چرخش دیسک از این مقادیر بالاتر وجود ندارد و معمولاً مقادیر بالاتر در محاسبه IOPS استفاده نمیشود.
میانگین تأخیر (Average latency): مدت زمانی که طول میکشد تا قستمی از دیسک در طی عملیات خواندن/نوشتن در دسترس قرار گیرد.
میانگین زمان جستجو (Average seek time): زمانیکه برای حرکت یا جستجو از یک خط به خط دیگر دیسک در موقعیت خواندن یا نوشتن در نظر گرفته میشود. این زمان معمولاً با میلیثانیه مشخص میشود و مضربی از ۱۰ میلیثانیه است.
برای رسیدن به این عدد باید میانگین رسیدن موقعیت جستوجو خواندن به خواندن یا حرکت نوشتن هارد برای رسیدن به موقعیت نوشتن را در نظر گرفت.
برای محاسبه محدوده IOPS از فرمول زیر استفاده کنید:
عد 1 را بر مجموع میانگین زمان تأخیر(latency) برحسب میلی ثانیه و میانگین زمان جستوجو (seek time) برحسب میلیثانیه تقسیم کنید.
(1÷ average latency in ms + average seek time in ms)
بهعنوان مثال:
هارد درایو SATA، 2.5 اینچی مدل Western Digital VelociRaptor
سرعت چرخشی: ۱۰۰۰۰ دور در دقیقه
میانگین latency: تاخیر 3 میلیثانیه (003 seconds)
میانگین seek time: زمان خواندن 4.2R زمان نوشتن 4.7W= عدد 4.45 میلیثانیه (0.0045 seconds)
IOPS محاسبه شده برای این دیسک: 1 ÷ (003+0.0045) = در حدود 133 IOPS
بنابراین این مدل هارد درایو 133 IOPS را پشتیبانی میکند. این را با جدول زیر مقایسه کنید، خواهید دید که مقدار IOPS 133 توسط درایوهای 10K RPMمشخص شده است.
اندازه گیری IOPS در ویندوز و معرفی ابزار آن
برای اندازهگیری IOPS در محیط ویندوز چندین برنامه وجود دارد که عبارتند از:
- نرمافزار Performance Monitor: این نرمافزاری است که در خود ویندوز وجود دارد و آخرین ورژن آن در windows 10 ارائه شده است. برای استفاده از این ابزار کافی است که Run را باز کرده و دستور Performance Monitor را تایپ کنید. یا میتوانید از طریق کنترل پنل، در گزینهی System and Security کلیک کنید و با باز شدن صفحه Administrative Tools، Performance Monitor را میتوانید انتخاب کنید.
- نرمافزار CrystalDiskMark: برای اندازهگیری عملکرد درایو در خواندن و نوشتن میتوانید از نرمافزار CrystalDiskMark استفاده کنید.
- نرمافزار PowerShell: این نرمافزاری نیز تحت ویندوز است با این تفاوت که عملکرد آن بهصورت خط فرمان و شبیه Command Prompt است و در محیط DOS انجام میگیرد. این برنامه که از Command Prompt قدرتمندتر توسط مایکروسافت در هر سری از سیستم عاملهای این کمپانی قرار دارد.kvم
- نرم افزار Horizon View: این نرمافزار نیز تحت ویندوز است که مانند یک ماشین مجازی عمل میکند. عمدتاً کارآیی آن براساس بلاک management است که برای اندازهگیری IOPS باید تنظیمات ماند جدول زیر باشد:
-
Windows server 2088 R2 64-bit Supported operating systems Windows server 2012 R2 64-bit 10 GB Memory 4vVPU Virtual CPUs 70GB Hard disk space required توجه داشته باشید که برای استفاده از نرمافزار Horizon view باید یک تنظیمات مشخص در نظر بگیرید که حداکثر تنظیمات در جدول زیر مشخص شده است:
Maximum Item ۲,۰۰۰ Maximum number of connections for single connection server (PCoIP or RDS) ۱۰,۰۰۰ Maximum number of connection for 7 connection servers (PCoIP or RDS) ۲,۰۰۰ Blast Secure Gateway connections to remote desktops using HTML Access ۵۰.۰۰۰ Maximum number of desktops in a cloud pod ۲۵ Maximum Number of pods in cloud pod architecture ۵ Maximum Number of sites in cloud pod architecture ۱۲۵ Maximum view connection servers in a cloud pod architecture ۱ Clusters per desktop pool ۳۲ Hosts per cluster ۴ Maximum monitors with PCoIP ۲ Maximum Monitors with 3D Rendering enabled ۱۶ Maximum Monitors with RDP 7 ۳ Maximum 4K monitors with - نرم افزار VMware ESXi: نرم افزار Vmware ESXi که با نام ESX نیز شناخته میشود توسط کمپانی VMwareو بهمنظور مجازیسازی سخت افزارهای سرور تولید شده است. این نرمافزار که آخرین وژن از مجموعه VMware Hypervisor است در آخرین آپدیت خود عملکردی مانند سیستم عامل دارد و همچنین دارای هسته مرکزی نیز است. بهدلیل قابلیت بسیار ویژه این نرمافزار در شبیه سازی محیطهای سختافزاری از این برنامه عمدتاً در سازمانهای بزرگ و دیتاسنترها بهمنظور محاسبه و اندازه گیری IOPS استوریج (Storage) استفاده میشود.