التطبيقات والمتطلبات

مكتمل

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

تعمل تطبيقات أخرى على استرداد البيانات لتتمكن من اتخاذ القرار. ومن الأمثلة على ذلك نظام المعلومات المهنية. يمكن لنظام المعلومات المهنية معالجة الملايين من العمليات واستنتاج اتجاهات المبيعات. يمكن استخدام هذه المعلومات لتمكين قرارات المخزون والتسويق التي يمكن اتخاذها من قبل بائع التجزئة.

يمكن للتطبيقات أيضًا استخراج المعلومات للتحليل. على سبيل المثال، اكتشفت Google1 أن اتجاهات البحث عن كلمات رئيسية معينة ترتبط ارتباطا وثيقا بزيارات الأطباء بحثا عن أعراض تشبه الأنفلونزا.

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

متطلبات التطبيق

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

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

  • الأداء: يجب أن تكون أنظمة التخزين قادرة على التعامل مع توقعات التطبيق للأداء. ويمكن تقسيم هذا بشكل عام إلى المتطلبات التالية:

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

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

  • التسامح مع الخطأ: التسامح مع الخطأ هو مصطلح عام يشير إلى العديد من سمات النظام. ويمكن وصفها من حيث المتطلبات التالية:

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

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

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

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

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


المراجع

  1. ⁧⁧جينسبرغ، جيريمي وموهيبي، ماثيو. ه وباتل، راجان. س وبرامر، لينيت وسمولينسكي، مارك. س وبريليانت، لاري (2009). الكشف عن أوبئة الأنفلونزا باستخدام بيانات محرك البحثNature