Back to Question Center
0

سيمالت عناوين المواقع مع مفاتيح الابتدائية القديمة إلى مفاتيح أساسية جديدة

1 answers:

لدينا قاعدة بيانات حصلنا عليها عن طريق الزحف، حيث يحتوي كل صف على مفتاح أساسي X ، ورقم فريد Y تم الحصول عليه من إجراء الزحف (المفتاح الأساسي ل المصدر الأصلي). لأسباب تاريخية، نحن نستخدم X لإنشاء عناوين ورل لكل كائن (ه. ز. هتب: // إكسامبل. كوم / أوبجيكت / X ).

كانت قاعدة البيانات هذه في ميسكل، ونحن نهاجر البيانات إلى بوستغريز. تحقيقا لهذه الغاية، قررنا الزحف إلى المصدر الأصلي من الصفر (لأسباب أخرى تعتبر) إلى قاعدة البيانات الجديدة - ipad app teleprompter. وهذا يعني أن لدينا الآن مفتاح أساسي جديد Z المرتبطة أرقام فريدة من نوعها Y .

المشكلة هي أنه إذا قمنا بترحيل قاعدة البيانات على الإنتاج، تصبح الروابط هتب: // إكسامبل. كوم / أوبجيكت / Z ، والتي تشير إلى كائن مختلف عن هتب: // إكسامبل. كوم / أوبجيكت / X (منذ X! = Z => مختلفة Y .

بطبيعة الحال نحن لا نريد أن يحدث هذا منذ 1. فإن محركات البحث تشير إلى الكائن الخطأ و 2. X1-> Y1 ، نقطة البداية إلى الكائن Z1-> Y2 = Y1 .

تشير هذه المشكلة بالفعل إلى أننا نريد عناوين ورل التي تم إنشاؤها من Y . والسؤال الآن هو كيفية إجراء هذا الترحيل.

أرى نهجين للمشكلة:

  1. باستخدام قاعدة البيانات القديمة، إنشاء إعادة توجيه الارتباط إلى ارتباط يعتمد فقط على Y هتب: // إكسامبل. كوم / أوبجيكت / X -> هتب: // إكسامبل. كوم / object1 / Y ، انتظر 1 شهر، ثم ترحيل قاعدة البيانات مع تغيير في عناوين ورل لتلك التي تستخدم Y .

  2. إنشاء عمود جديد في قاعدة البيانات الجديدة old_pk ، وإجراء ترحيل من قاعدة البيانات القديمة إلى قاعدة البيانات الجديدة، عن طريق إدراج القديم X Y ، ثم إلى هتب: // إكسامبل. كوم / أوبجيكت / X -> هتب: // إكسامبل. كوم / object_ / Y (لتجنب هذه المشاكل في المستقبل)

1. لديه عيب أن الإنتاج بأكمله يجب أن تنتظر الروابط للهجرة، ولن يحافظ على عناوين ورل القديمة للأبدية. 2 لديه العيب سيستغرق وقتا للهجرة منذ قاعدة البيانات تحتوي على +600. 000، وسوف تحتوي قاعدة البيانات الجديدة على البيانات القديمة. أنا أكثر ميلا إلى 2. ، ولكن أود أن أرى رأيا ثانيا:

  1. هل هذا المنطق منطقي؟
  2. هل هناك نهج أخرى لا نراها؟
February 14, 2018
سيمالت عناوين المواقع مع مفاتيح الابتدائية القديمة إلى مفاتيح أساسية جديدة
Reply