لماذا تستمر أقراص التخزين الصلبة في أجهزة NAS المنزلية في الاستيقاظ من وضع الاستعداد أثناء فترة الخمول؟

إيفا وونغ هي كاتبة تقنية و ومهندسة هاوية في ZimaSpace. مهووسة بالتكنولوجيا مدى الحياة ولديها شغف بالمختبرات المنزلية والبرمجيات مفتوحة المصدر، تتخصص في تبسيط المفاهيم التقنية المعقدة إلى أدلة عملية وسهلة الفهم. تؤمن إيفا بأن الاستضافة الذاتية يجب أن تكون ممتعة وليست مخيفة. من خلال دروسها، تمكّن المجتمع من تبسيط إعدادات الأجهزة، بدءًا من بناء أول نظام تخزين شبكي NAS وحتى إتقان حاويات Docker.

يستيقظ قرص NAS المنزلي من وضع الاستعداد عندما يرسل له كومة التخزين أمرًا لا يمكن إكماله أثناء توقف الأطباق. لا يحتاج الزناد لأن يكون نقل ملف. يمكن أن يكون البحث في دليل، حفظ قاعدة بيانات، استعلام صحة، أو تحقق مجدول كافيًا لجعل القرص يعود إلى حالة تشغيلية.

لهذا السبب قد يبدو جهاز NAS مشغولًا عندما لا يستخدمه أحد. يصف الخمول البشري الواجهة الأمامية للنظام؛ يعتمد وضع الاستعداد للقرص الصلب على ما إذا كانت الطلبات تصل إلى الجهاز الفعلي. عندما تختلف هاتان التعريفان لـ"الخمول"، تظهر عمليات بدء الدوران المتكررة غير مفسرة رغم أن كل حدث استيقاظ له سبب إدخال/إخراج محدد.

يستيقظ القرص عندما يحتاج طابور أوامره إلى الوسيط

في وضع الاستعداد، يتوقف القرص الصلب الميكانيكي عن الدوران لكنه يظل قادرًا على الاستجابة للمضيف. تميز ضوابط طاقة ATA الموثقة بواسطة hdparm وضع الاستعداد عن الحالات النشطة أو الخاملة وتصف مؤقتًا يعتمد على غياب نشاط القرص.

بمجرد أن يحتاج الطلب إلى قطاعات على الوسيط، يجب على القرص تسريع المغزل، استقرار الدوران، والاستعداد قبل إكمال الأمر. الصوت المسموع عند البدء وتأخير الاستجابة المؤقت يأتيان من هذا الانتقال الميكانيكي. حركة المرور الشبكية مهمة فقط عندما تؤدي في النهاية إلى عمليات إدخال/إخراج تخزينية تصل إلى القرص النائم.

وقت الخمول البشري لا يعني وقت خمول جهاز الكتلة

يمكن للوحة التحكم أن تبلغ بعدم وجود مستخدمين نشطين بينما يستمر نظام التشغيل في تفريغ البيانات المؤقتة، تحديث الطوابع الزمنية، تدوير السجلات، أو حفظ حالة التطبيق. قد تكون هذه العمليات صغيرة بما يكفي لتختفي من رسم بياني لمعدل النقل، لكن القرص الصلب لا يطبق حدًا أدنى لحجم الملف قبل الاستيقاظ.

يمكن لذاكرة التخزين المؤقت إخفاء بعض عمليات القراءة، لكنها لا تستطيع امتصاص كل عملية إلى أجل غير مسمى. يجب على فشل التخزين المؤقت جلب الكتلة المطلوبة، بينما يجب في النهاية كتابة الذاكرة المتسخة إلى التخزين الدائم. ما إذا كانت هذه العمليات تصل إلى القرص الصلب يعتمد على مكان الملف، حالة التخزين المؤقت، سلوك نظام الملفات، والخدمات المرتبطة بالمجموعة.

ثلاثة مسارات خلفية شائعة تصل إلى قرص صلب نائم

تصبح نشاطات الخلفية أدلة مفيدة فقط بعد ربطها بمسار حقيقي على التخزين الميكانيكي. يمكن أن يصدر نفس صوت بدء الدوران من ثلاثة أنواع مختلفة من العمل، ويترك كل منها نمط توقيت مختلف.

التنشيطات المجدولة تنتج فواصل استيقاظ منتظمة

يمكن للمؤقت أن يبدأ التحقق من النسخ الاحتياطي، التنظيف، المزامنة، صيانة قاعدة البيانات، أو خدمة أخرى حتى عندما يبدو واجهة NAS المنزلي هادئًا. نموذج مؤقت systemd ينشط الخدمات المرتبطة من جداول التقويم أو الجداول الأحادية. لذلك يجب مقارنة القرص الذي يستيقظ بفاصل زمني شبه ثابت مع مؤقتات النظام وجداول التطبيقات قبل اعتبار الحدث عشوائيًا.

حالة التطبيق المستمرة تحول الأحداث إلى عمليات كتابة

تاريخ أتمتة المنزل، سجلات المصادقة، إحصائيات DNS، سجلات الحاويات، وقواعد بيانات القياسات يمكن أن تحول الأحداث غير المرئية إلى عمليات كتابة على القرص. قد يكون الخدمة في انتظار المستخدمين بينما لا تزال تسجل تغييرات الحالة. إذا كان أي جزء من سجلها أو قاعدة بياناتها أو دليلها المؤقت أو حجم الحاوية موجودًا في مجموعة أقراص HDD، فإن التزامًا صغيرًا يمكن أن ينهي وضع الاستعداد.

الاكتشاف والصيانة يعيدان زيارة البيانات المخزنة

اكتشاف الوسائط، فحوصات الصور المصغرة، فهرسة البحث، تنظيف اللقطات، فحص أنظمة الملفات، والتحقق من النسخ الاحتياطي يعيدون زيارة التخزين الموجود لأسباب مختلفة. بعضها يفحص الأسماء والبيانات الوصفية؛ والبعض الآخر يجب أن يقرأ محتويات الملفات أو كتل المصفوفة. قد يكون ناتجهم صغيرًا، لكن مسار الإدخال قد يتطلب أن يصبح قرص واحد أو أكثر جاهزًا.

بضع كيلوبايت يمكن أن تسبب تشغيلًا ميكانيكيًا كاملاً

تكلفة الاستيقاظ تحددها حالة القرص، وليس كمية البيانات المطلوبة. قراءة كتلة بيانات وصفية غير مخزنة مؤقتًا وقراءة بداية فيديو كبير كلاهما يتطلب من قرص HDD في وضع الاستعداد أن يدور أولاً. قد ينتهي الطلب الأصغر بسرعة بعد الانتقال، مما يترك حدثًا واضحًا ميكانيكيًا لكنه بالكاد يظهر في إحصائيات عرض النطاق الترددي.

هذا التفاوت يفسر لماذا تعتبر رسوم سرعة النقل كاشفات استيقاظ ضعيفة. فهي تركز على البايتات المستمرة في الثانية، بينما يمكن أن يتسبب تشغيل القرص في استيقاظه بطلب قصير واحد فقط. عدد عمليات الإدخال/الإخراج، توقيت الأوامر، والكتلة الأولى التي تم الوصول إليها أكثر إفادة من أقصى معدل نقل عند تشخيص سلوك الاستعداد.

يمكن أن تصبح مراقبة الصحة جزءًا من عبء العمل

قد تطلب خدمة المراقبة درجة الحرارة، أو الهوية، أو عدادات الأخطاء، أو معلومات الاختبار الذاتي بجدول زمني. النتيجة تعتمد على الأمر ومسار الاتصال الكامل: قد لا تحافظ الأجهزة المتصلة مباشرة عبر SATA، أو HBA، أو وحدة تحكم RAID، أو جسر USB على فحوصات حالة الطاقة بنفس الطريقة.

تعرف دليل smartctl وضع عدم الفحص الواعي لوضع الاستعداد الذي يمكنه إيقاف الاستعلام عندما يكون الجهاز في حالة طاقة منخفضة محددة. هذا الخيار موجود لأن المراقبة ليست تلقائيًا سلبية. يجب اختبار خدمة الاستطلاع كمصدر محتمل للإيقاظ بدلاً من افتراض أنها غير ضارة لأنها تجمع فقط بيانات الصحة.

تحدد طوبولوجيا التخزين عدد الأقراص التي تستيقظ

يصل طلب الملف إلى نظام الملفات ومجموعة التخزين قبل أن يصل إلى محرك أقراص صلبة فردي. يمكن لموقع البيانات الوصفية، والتقسيم، والتكافؤ، والنسخ المتماثل، والتخصيص أن تجعل عملية منطقية واحدة تشمل عدة أعضاء. لذلك، عدد الأقراص التي تستيقظ هو خاصية لمسار الإدخال/الإخراج الفعلي، وليس فقط حجم الملف أو اسم المشاركة.

من غير الدقيق أيضًا افتراض أن كل طلب من المصفوفة يوقظ كل قرص. قد تلبي البيانات الوصفية المخزنة مؤقتًا عملية بحث، ويمكن للتخطيطات التي تحتفظ بالملفات على أعضاء يمكن الوصول إليهم بشكل مستقل أن تحد من المجموعة النشطة. الحد الصحيح يأتي من مراقبة الأجهزة التي تتلقى الأوامر أثناء الحدث.

وضع الاستعداد لمحرك الأقراص الصلبة HDD ليس توفير طاقة رابط SATA

يمكن لعدة آليات طاقة أن تعمل في نفس الخادم دون وصف نفس الحالة الفيزيائية. وضع الاستعداد لمحرك الأقراص الصلبة HDD يتعلق بآلية التشغيل، وإدارة طاقة رابط SATA تتعلق باتصال المضيف بالجهاز، ووضع السكون للنظام يغير نشاط مجموعة أوسع من المكونات. توثق وثائق libata لإدارة طاقة رابط SATA في نواة لينكس سياسة طاقة الواجهة بشكل منفصل عن وضع الاستعداد لمحرك الأقراص.

الحالة أو الآلية. المكون المتأثر. حالة طبق القرص الصلب. انتقال يمكن ملاحظته.
قرص صلب نشط أو في وضع الخمول. القرص. يدور. يبدأ الإدخال/الإخراج بدون تأخير ميكانيكي للتشغيل.
وضع استعداد القرص الصلب. القرص. متوقف. أمر يعتمد على الوسائط يسبب التشغيل.
إدارة طاقة رابط SATA. رابط الاتصال. لا يحدده حالة الرابط. نشاط الرابط يعيد الواجهة إلى حالة طاقة أعلى.
وضع السكون للنظام. منصة الخادم. يعتمد على المنصة. مصدر استيقاظ النظام المكون يعيد تشغيل المكونات.

صف الاستعداد فقط يفسر مباشرة الصوت المألوف لإعادة تشغيل الأطباق. قد يوفر حالة رابط SATA منخفضة الطاقة للواجهة بينما يستمر القرص في الدوران، لذا لا يمكن لإعداد طاقة الرابط وحده تأكيد حدوث سبات القرص الصلب.

تعتمد تكرارية الاستيقاظ على التوقيت بين الإدخال/الإخراج ووضع الاستعداد.

غالبًا ما تنتج عمليات التشغيل المتكررة عن تزامن فترتين مستقلتين. إذا دخل القرص وضع الاستعداد بعد عشر دقائق هادئة ولكن خدمة ما تصل إلى المجموعة كل خمس عشرة دقيقة، يمكن لكل تشغيل خدمة أن يسبب استيقاظًا منفصلًا. نفس الخدمة ستنتج انتقالات ميكانيكية أقل إذا كان القرص لا يزال يدور عند وصول طلبها.

لا يلغي مهلة أطول عمليات الإدخال والإخراج الأساسية؛ بل يغير ما إذا كانت الطلبات المنفصلة تحدث في فترة دوران واحدة أو عبر دورات استعداد متعددة. لذلك، المقارنة المفيدة هي الفجوة الحقيقية بين طلبات الجهاز مقابل تأخير الاستعداد المكون، إلى جانب مواصفات إدارة الطاقة ودعم بدء وإيقاف التشغيل من الشركة المصنعة للقرص.

تتبع أول طلب يصل إلى القرص.

الحدث السببي هو أول أمر مرتبط بالانتقال، وليس الخدمة التي تظهر أعلى إجمالي تدفق بعد ذلك. سجل وقت الاستيقاظ، ثم قم بمحاذاته مع التنشيطات المجدولة، واتصالات العملاء، وسجلات التطبيقات، ومدخلات ومخرجات الجهاز. تسجل واجهة blktrace في Linux أحداث طلبات طبقة الكتل ويمكنها تأكيد ما إذا وصلت النشاطات إلى جهاز معين.

  • تحقق من أن القرص الصلب دخل وضع الاستعداد بدلاً من أن يصبح هادئًا فقط.
  • سجل أول طلب للجهاز وطابعه الزمني.
  • قارن الطابع الزمني مع المؤقتات، ونوافذ الصيانة، وإعادة اتصال العميل.
  • قم بربط الملف أو الحجم الذي تم الوصول إليه مرة أخرى بخدمته.
  • كرر الملاحظة قبل تغيير عدة إعدادات في وقت واحد.

يشير الجدول الزمني المتكرر إلى عمل مدفوع بالمؤقت، بينما يشير حدث مرتبط بإعادة اتصال العميل إلى اكتشاف المشاركة أو وصول التطبيق. إذا لم يكن للاستيقاظ سجل خدمة مطابق لكنه يظهر في تتبع الكتلة، فالخطوة التالية هي تحديد العملية أو طبقة التخزين العليا التي قدمت الطلب.

قلل الاستيقاظ بفصل الحالة النشطة عن البيانات الباردة

يمكن وضع قواعد بيانات التطبيقات، والسجلات، والفهارس، والملفات المؤقتة على تخزين SSD بحيث لا تصل عملياتها الصغيرة المتكررة إلى مجموعة الأقراص الصلبة. يعمل هذا فقط عندما يتحرك مسار الكتابة النشط الكامل. ترك سجل واحد، أو دليل ذاكرة مؤقتة، أو مخزن بيانات وصفية على وحدة ميكانيكية يمكن أن يحافظ على نمط الاستيقاظ الأصلي.

لذاكرة القراءة المؤقتة وذاكرة الكتابة الخلفية حدود مختلفة: لا تزال القراءة غير المخزنة مؤقتًا تصل إلى المجموعة، ويجب في النهاية تفريغ البيانات المؤقتة المتسخة. الهدف ليس وعد النوم الدائم بل مطابقة وضع التخزين وتوقيت الاستعداد مع عبء العمل. تؤثر تلك الخيارات أيضًا على استهلاك طاقة NAS 24/7 دون تحديد سبب أي عملية دوران فردية.

الأسئلة الشائعة

هل أي حزمة شبكة توقظ قرص NAS HDD في وضع الاستعداد؟

لا. يمكن معالجة الحزمة بواسطة الذاكرة، أو خدمة مقيمة على SSD، أو مكدس الشبكة دون لمس القرص الصلب. يستيقظ القرص فقط عند معالجة الطلب إذا نتج عن ذلك إدخال/إخراج يتطلب الجهاز النائم أو تخطيط تخزين يشمله.

هل يجب تعطيل مراقبة SMART للحفاظ على أقراص HDD في وضع السكون؟

ليس تلقائيًا. تظل بيانات صحة القرص ذات قيمة، ويعتمد سلوك الاستيقاظ على الاستعلام الدقيق ومسار وحدة التحكم. اختبر أولاً ما إذا كان المراقب يستخدم فحص طاقة واعٍ بالاستعداد وما إذا كان وقت الاستطلاع يتطابق مع حدث الاستيقاظ الملحوظ.

هل سيوقف مؤقت الاستعداد الأطول عمليات الدوران المتكررة؟

يمكنه تقليل دورات الدوران المنفصلة عندما تصل الطلبات الخلفية بشكل متكرر أكثر من المهلة الجديدة، لكنه لا يزيل تلك الطلبات. قِس فترة الإدخال/الإخراج أولاً، ثم اختر مهلة تعكس عبء العمل والحدود التشغيلية الموثقة للقرص.

هل يضمن تخزين SSD المؤقت بقاء مجموعة الأقراص الصلبة في وضع السكون؟

لا. يمكن أن تصل أخطاء التخزين المؤقت، وتفريغ الكتابة الخلفية، وصيانة المصفوفة، والوصول إلى البيانات الوصفية، والفحوصات غير المخزنة مؤقتًا إلى الأقراص الصلبة. عادةً ما يخلق مستوى SSD مخصص لحالة التطبيق النشطة حدًا أوضح، لكن يجب تأكيد النتيجة على طبقة جهاز الكتلة.

مركز التكنولوجيا والذكاء الاصطناعي

المزيد للقراءة

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.