خطوات الاستخدام
1. تحديد نوع الحجم (volumeType): اختر نوع EBS المناسب لاستخدامك. الأنواع الشائعة هي: gp2 (عام ذو أداء متوازن)، gp3 (أحدث جيل مع أداء أساسي 3000 IOPS)، io1/io2 (أداء عالي مخصص للتطبيقات الحرجة)، st1 (مخزن ذو إنتاجية عالية)، وsc1 (أقل تكلفة للوصول البطيء). يؤثر هذا الاختيار بشكل كبير على طريقة حساب IOPS الفعّالة.
2. إدخال الحجم بالجيجابايت (sizeGB): حجم وحدة التخزين التابعة لـ EBS. كل نوع حجم له علاقة مختلفة مع IOPS. على سبيل المثال، في gp2، كل جيجابايت يمنح 3 IOPS أساسية (بحد أقصى 16000 IOPS) مع قدرة على الاندفاع (burst) حتى 3000 IOPS اعتماداً على حجم الحجم. في gp3، الأداء الأساسي هو 3000 IOPS بغض النظر عن الحجم، لكن IOPS الإضافية يمكن توفيرها بدفع تكلفة إضافية. في io1/io2، IOPSيتم توفيرها يدوياً.
3. إدخال IOPS المقدمة (provisionedIOPS): فقط لأنواع الحجم التي تسمح بالتوفير اليدوي (io1, io2, gp3). في gp2 هذا الحقل غير مستخدم لأن IOPS تحسب تلقائياً. في io1/io2، تحتاج إلى إدخال عدد IOPS الذي تريد توفيره (بين 100 وحد أقصى يعتمد على الحجم). في gp3، يمكنك إدخال IOPS إضافية فوق الـ 3000 الأساسية (حتى 16000 IOPS). إذا كان النوع لا يدعم التوفير اليدوي (مثل gp2, st1, sc1)، يتم تجاهل هذا الإدخال.
4. حساب IOPS الفعّالة: يعتمد الحساب على النوع: - gp2: IOPS الفعالة = أدنى(3 × sizeGB, 16000) + (الاندفاع إذا كان الحجم أقل من 1000 جيجابايت، ولكن عادةً ما تكون IOPS الفعالة هي الأدنى بين (3×sizeGB) و 16000 مع إمكانية الاندفاع إلى 3000 لأحجام صغيرة). - gp3: IOPS الفعالة = 3000 + provisionedIOPS_extra (بشرط ألا يتجاوز 16000). - io1/io2: IOPS الفعالة = provisionedIOPS (مع حد max يُحسب كـ 50 × sizeGB لـ io1 و 1000 × sizeGB لـ io2). - st1: IOPS تعتمد على الحجم: IOPS الفعالة = (sizeGB / 125) × 500 (بحد أقصى 500 لكل حجم، مع اندفاع). - sc1: IOPS الفعالة = (sizeGB / 125) × 250 (بحد أقصى 250).
5. الناتج والاستخدام: بعد الحساب، تظهر IOPS الفعالة، والتي يمكن استخدامها لتقييم أداء الحجم لتطبيقات مثل قواعد البيانات أو التخزين المؤقت. لاحظ أن IOPS ليست سوى عامل واحد؛ الإنتاجية (throughput) مهمة أيضاً. يمكن استخدام النتيجة لضبط حجم EBS أو نوعه لتحسين التكلفة والأداء.
أمثلة محلولة
تطبيقات عملية على أداء حجم EBS بخطوات الحل كاملة.
الحل
بالنسبة لـ gp2، يتم حساب IOPS الأساسية كـ 3 × الحجم بالجيجابايت. لذا 3 × 500 = 1500 IOPS. نظراً لأن الحجم أقل من 1000 جيجابايت، يمكن للحجم الاندفاع إلى 3000 IOPS باستخدام رصيد الاندفاع (burst credits). لكن IOPS الأساسية هي 1500، لكن الاندفاع يعطي قدرة مؤقتة. في الواقع، IOPS الفعالة المستدامة هي 1500 IOPS، ولكن يمكن الوصول إلى 3000 IOPS لفترة محدودة. الحاسبة تعطي IOPS الأساسية (1500) وتحذر من الاندفاع. لذا الإجابة: 1500 IOPS أساسية مع قدرة اندفاع حتى 3000 IOPS.
الحل
بالنسبة لـ io2، أقصى IOPS يمكن توفيرها هو 1000 × الحجم بالجيجابايت، أي 1000 × 200 = 200,000 IOPS. لكن أيضاً هناك حد أقصى يعتمد على نوع الحجم: io2 يمكن أن يصل إلى 256,000 IOPS للحجوم الكبيرة جداً. لكن هنا 5000 IOPS أقل بكثير من الحد الأقصى، لذا يمكن توفير 5000 IOPS. وبما أن الحجم 200 جيجابايت، تحتاج أيضاً إلى التأكد من أن الإنتاجية مناسبة (كل IOPS يحتاج إلى حد أدنى من الإنتاجية). IOPS الفعالة ستكون 5000 IOPS. السعر سيكون أعلى من gp3 لكن الأداء أكثر اتساقاً. لذا الإجابة: نعم، يمكن توفير 5000 IOPS، والـ IOPS الفعالة = 5000.
أمثلة محسوبة
قيم مُدخَلة ونتيجة محسوبة فعليًا بواسطة أداء حجم EBS.
مرجع — قرص gp2 بسعة 500 جيجابايت
- نوع الحجم
- gp2
- IOPS المحدد
- 0
- حجم القرص (جيجابايت)
- 500
مرجع — gp3 بتوسيع محدد
- نوع الحجم
- gp3
- IOPS المحدد
- 1,000
- حجم القرص (جيجابايت)
- 500
مرجع — سقف io1 بحسب الحجم
- نوع الحجم
- io1
- IOPS المحدد
- 6,000
- حجم القرص (جيجابايت)
- 100
مرجع — بلوغ السقف الأقصى
- نوع الحجم
- gp2
- IOPS المحدد
- 0
- حجم القرص (جيجابايت)
- 10,000
قيم مُدخَلة قياسية
- نوع الحجم
- gp3
- IOPS المحدد
- 150
- حجم القرص (جيجابايت)
- 50
قيم مُدخَلة مرتفعة
- نوع الحجم
- io2
- IOPS المحدد
- 185
- حجم القرص (جيجابايت)
- 85
قيم مُدخَلة منخفضة
- نوع الحجم
- io1
- IOPS المحدد
- 110
- حجم القرص (جيجابايت)
- 10