منصة البيانات

ترحيل قواعد البيانات والنسخ المتزامن: قائمة القرارات

نادرًا ما يفشل ترحيل قواعد البيانات في النسخ نفسه، بل في قرار لم يتخذه أحد: ما الذي يُعدّ إنجازًا، وكم من التوقف كان مقبولًا فعلًا، وماذا يعني التراجع بعد أن يستقبل النظام الجديد أول كتابة. تتناول هذه القائمة تلك القرارات بالترتيب الذي يتعذّر بعده الرجوع عن كل منها.

01أين يفشل الترحيل فعلًا

الترحيل يفشل في القرارات لا في النقل

نسخ البيانات بين محركات قواعد البيانات مسألة لها حلول معروفة. الأدوات موجودة وتعمل، ونادرًا ما يتعثر الترحيل عند النسخ.

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

02القرار الأول

ما الذي ينتقل فعلًا

أكثر الأخطاء شيوعًا في تحديد النطاق افتراض أن الجواب «كل شيء»، والجواب الصحيح غالبًا غير ذلك.

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

03القرار الثاني

مدة التوقف المقبولة هي التي تحدّد الأسلوب

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

04القرار الثالث

كيف تثبتون أن البيانات وصلت

مطابقة عدد الصفوف ضرورية لكنها لا تكفي. فالترحيل الذي يفشل دون أن يلاحظ أحد يكون عدد صفوفه متطابقًا عادةً.

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

القرار الرابع

ماذا يعني التراجع

لا يعود التراجع ممكنًا منذ أن تستقبل الوجهة أول كتابة

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

فالسؤال ليس «هل لدينا خطة تراجع؟» بل: ما آخر لحظة نستطيع فيها العودة، وما الذي يجب أن يكون صحيحًا عندها، ومن صاحب القرار. ويُكتب ذلك قبل ليلة التحويل. وإن كان الجواب «لا نستطيع العودة بعد الثانية فجرًا» فهو جواب مقبول، والمشكلة في الجواب الذي لم يُكتب.

05القرار الخامس

التمرين المسبق

التحويل الذي جُرّب مرة على بيانات بحجم الإنتاج يختلف كثيرًا عن تحويل يُنفَّذ أول مرة ليلة التحويل.

  • يُجرَّب على بيانات بحجم الإنتاج لا على جزء منها، لأن المطلوب اختبار الزمن، والزمن لا يزيد بنسبة ثابتة مع الحجم.
  • يُقاس زمن كل خطوة، وتُكتب الأرقام وتُقارن بالنافذة المتاحة.
  • يُنفّذه من سينفّذ التحويل فعلًا، وفي ساعة مماثلة لموعده لا في وقت مريح.
  • يشمل التحقق، ليُقاس زمنه ويُعرف أنه ممكن داخل النافذة.
  • يشمل التراجع مرة على الأقل، ليُقاس جواب «آخر لحظة آمنة» بدل افتراضه.
  • ويتضمن توجيه التطبيق إلى الوجهة، لأن الترحيل الذي لم يتصل به أي تطبيق نسخٌ للبيانات فقط، لا تمرين كامل.

06القرار السادس

توزيع الأدوار ليلة التحويل

الدور
قائد التحويل
مسؤول عن
التسلسل والوقت وقرار المضي أو التوقف
ما يحدث إن لم يُسنَد الدور
ينتظر الجميع أن يقرّر غيرهم، وتُغلق النافذة
الدور
مالك قاعدة البيانات
مسؤول عن
خطوات الترحيل نفسها والتحقق منها
ما يحدث إن لم يُسنَد الدور
تُنفَّذ خطوات مرتين أو تُتخطى لأن كلًّا ظنّ أن الآخر نفّذها
الدور
مالك التطبيق
مسؤول عن
إعادة توجيه التطبيق وتأكيد عمله على الوجهة
ما يحدث إن لم يُسنَد الدور
تُرحَّل القاعدة كما ينبغي، لكن لا شيء يتصل بها
الدور
مالك التحقق
مسؤول عن
تشغيل الفحوص المتفق عليها وإعلان النجاح أو الإخفاق
ما يحدث إن لم يُسنَد الدور
يتحول التحقق إلى «تبدو سليمة»، وهذا ليس فحصًا
الدور
اعتماد الإدارة المستفيدة
مسؤول عن
تأكيد أن النظام صالح للاستخدام، من خارج الفريق التقني
ما يحدث إن لم يُسنَد الدور
ناجح تقنيًا، ويُكتشف معطلًا صباح الاثنين

07أسئلة المشترين

ما يسألنا عنه العملاء

إجابات مباشرة عن الأسئلة التي تتكرر في محادثات التقييم والشراء. وما لم تجدوه هنا، اسألونا عنه في النموذج أدناه.

كم يستغرق ترحيل قاعدة البيانات؟

النسخ عادةً أقصر الأجزاء وأسهلها تقديرًا. ما يحدّد الجدول الزمني هو جرد ما يتصل بالقاعدة، وإعادة كتابة ما يخصّ المحرك تحديدًا، والتمارين المسبقة. والترحيل الموصوف بأنه «عطلة نهاية أسبوع» هو عادةً عطلة تحويل تسبقها أسابيع من التحضير، والتحضير هو ما ينبغي أن يُقدَّر وقته بعناية.

هل نحتاج نسخًا متزامنًا أم يكفي النسخ الاحتياطي والاستعادة؟

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

ما الذي يسوء عادةً؟

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

هل يمكن الترحيل بلا توقف إطلاقًا؟

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

الخطوة التالية

طبّقوا القائمة على ترحيلكم

صِفوا لنا المصدر والوجهة ونافذة التوقف التي تتوقعونها. والفرق بين ما تتوقعونه وما يُظهره التمرين هو ما نناقشه معكم عادةً.

أو مباشرةً

+966-11-2180999 [email protected]

أبراج التعاونية، البرج الشمالي، الطابق السابع، طريق الملك فهد، العليا، ص.ب. ٥٦٨٣٥، الرياض ١١٥٦٤، المملكة العربية السعودية

أو خدمات ترحيل قواعد البيانات

خانة إلزامية

يراجع فريق الرياض طلبكم ويرد عليكم مختص في أيام العمل السعودية، بالعربية أو الإنجليزية. نستخدم بياناتكم للرد عليكم فقط. إشعار الخصوصية

نشر بواسطة إنتركي. آخر تحديث . إنتركي مسجلة في الرياض بالسجل التجاري رقم 1010156897.