كيفية تكوين صداقات مع النظام المصرفي Progress OpenEdge و Oracle DBMS

منذ عام 1999 ، يستخدم مصرفنا النظام المصرفي المتكامل BISKVIT القائم على منصة Progress OpenEdge لخدمة المكتب الخلفي ، والذي يستخدم على نطاق واسع في جميع أنحاء العالم ، بما في ذلك القطاع المالي. يتيح لك أداء DBMS قراءة ما يصل إلى مليون سجل أو أكثر في الثانية في قاعدة بيانات واحدة (DB). لدينا Progress OpenEdge لخدمة حوالي 1,5 مليون ودائع للأفراد وحوالي 22,2 مليون عقد للمنتجات النشطة (قروض السيارات والرهون العقارية) ، كما أننا مسؤولون عن جميع التسويات مع المنظم (CB) و SWIFT.

كيفية تكوين صداقات مع النظام المصرفي Progress OpenEdge و Oracle DBMS

باستخدام Progress OpenEdge ، نواجه حقيقة أننا بحاجة إلى تكوين صداقات مع Oracle DBMS. في البداية ، كانت هذه الحزمة "عنق الزجاجة" لبنيتنا التحتية - حتى قمنا بتثبيت وتكوين Pro2 CDC - منتج تقدم يسمح لك بإرسال البيانات من Progress DBMS إلى Oracle DBMS مباشرةً ، في وضع الاتصال بالإنترنت. في هذا المنشور ، سنخبرك بالتفصيل ، مع كل المزالق ، عن كيفية تكوين أصدقاء OpenEdge و Oracle بشكل فعال.

كيف كان: تحميل البيانات إلى QCD عبر تبادل الملفات

أولاً ، بعض الحقائق حول بنيتنا التحتية. يبلغ عدد المستخدمين النشطين لقاعدة البيانات حوالي 15. يبلغ حجم جميع قواعد البيانات الإنتاجية ، بما في ذلك النسخ المتماثلة والاحتياطية ، 600 تيرابايت ، وأكبر قاعدة بيانات هي 16,5 تيرابايت. في الوقت نفسه ، يتم تجديد قواعد البيانات باستمرار: في العام الماضي وحده ، تمت إضافة حوالي 120 تيرابايت من البيانات الإنتاجية. يدعم النظام 150 خادمًا أماميًا x86. قواعد البيانات مستضافة على 21 خادم منصة IBM.

كيفية تكوين صداقات مع النظام المصرفي Progress OpenEdge و Oracle DBMS
تم دمج الأنظمة الأمامية والعديد من أنظمة ABS والخدمات المصرفية مع OpenEdge Progress (IBS BISKVIT) عبر ناقل Sonic ESB. يتم تحميل البيانات إلى QCD من خلال تبادل الملفات. حتى وقت معين ، واجه هذا الحل مشكلتين كبيرتين في وقت واحد - الأداء المنخفض لتحميل المعلومات إلى مستودع بيانات الشركة (CWD) ووقت طويل لإجراء تسوية البيانات (التسوية) مع الأنظمة الأخرى.
كيفية تكوين صداقات مع النظام المصرفي Progress OpenEdge و Oracle DBMS
لذلك ، بدأنا في البحث عن أداة يمكنها تسريع هذه العمليات. كان حل كلتا المشكلتين هو منتج Progress OpenEdge الجديد - Pro2 CDC (تغيير التقاط البيانات). لذا ، لنبدأ.

تثبيت التقدم OpenEdge و Pro2Oracle

تقدم Oracle OpenEdge Developer Kit Classroom Edition ، والذي يمكن أن يكون تحميل مجانا. أدلة تثبيت OpenEdge الافتراضية:

DLC: C: ProgressOpenEdge
WRK: C: OpenEdgeWRK

تتطلب عمليات ETL تراخيص Progress OpenEdge الإصدار 11.7+ - وهي OE DataServer لنظام Oracle و 4GL Development System. هذه التراخيص مضمنة مع Pro2. للتشغيل الكامل لـ DataServer لـ Oracle باستخدام قاعدة بيانات Oracle بعيدة ، يتم تثبيت عميل Oracle الكامل.

على خادم Oracle ، تحتاج إلى تثبيت إصدار Oracle Database 12+ وإنشاء قاعدة بيانات فارغة وإضافة مستخدم (دعنا نسميها مركز السيطرة على الأمراض).

لتثبيت Pro2Oracle ، قم بتنزيل توزيعة جديدة من مركز التنزيل برمجيات التقدم. فك ضغط الأرشيف في دليل ج: Pro2 (لتكوين Pro2 على نظام Unix ، يتم استخدام نفس التوزيع ويتم تطبيق نفس مبادئ التكوين).

إنشاء قاعدة بيانات النسخ المتماثل cdc

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

نقوم بإنشاء قاعدة بيانات منفصلة cdc.

إجراء لإنشاء قاعدة

  1. في خادم قاعدة البيانات ، نقوم بإنشاء دليل لقاعدة بيانات cdc - على سبيل المثال ، على الخادم / قاعدة البيانات / cdc /.
  2. قم بإنشاء وهمية لقاعدة بيانات cdc: procopy $ DLC / فارغة cdc
  3. تمكين الدعم للملفات الكبيرة: proutil cdc -C EnableLargeFiles
  4. نقوم بإعداد البرنامج النصي لبدء قاعدة بيانات cdc. يجب أن تكون معلمات البدء مماثلة لمعلمات بدء قاعدة البيانات المنسوخة.
  5. نبدأ قاعدة بيانات cdc.
  6. الاتصال بقاعدة بيانات cdc وتحميل مخطط Pro2 من ملف cdc.df، الذي تم تضمينه مع Pro2.
  7. قم بإنشاء المستخدمين التالين في قاعدة بيانات cdc:

pro2adm - للاتصال من لوحة إدارة Pro2 ؛
pro2etl - لتوصيل عمليات ETL (ReplBatch) ؛
pro2cdc - لتوصيل عمليات CDC (CDCBatch) ؛

تفعيل OpenEdge Change Data Capture

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

إجراء مثال لقاعدة بيانات البسكويت

  1. نسخ من الدليل ج: Pro2db ملف cdcadd.st إلى دليل قاعدة بيانات البسكويت الأصلي.
  2. نصف في cdcadd.st نطاقات حجم ثابت للمناطق "ReplCDCArea" и "ReplCDCArea_IDX". يمكنك إضافة مناطق تخزين جديدة عبر الإنترنت: السجق الملحق bisquit cdcadd.st
  3. تنشيط OpenEdge CDC:
    proutil bisquit -C enablecdc area "ReplCDCArea" indexarea "ReplCDCArea_IDX"
  4. يجب إنشاء المستخدمين التاليين في قاعدة البيانات المصدر لتحديد العمليات الجارية:
    أ. pro2adm - للاتصال من لوحة إدارة Pro2.
    ب. pro2etl - لتوصيل عمليات ETL (ReplBatch).
    ج. pro2cdc - لتوصيل عمليات CDC (CDCBatch).

تكوين حامل المخطط لـ DataServer لـ Oracle

بعد ذلك ، نحتاج إلى إنشاء قاعدة بيانات Schema Holder على الخادم حيث سيتم نسخ البيانات من Progress DBMS إلى Oracle DBMS. حامل مخطط DataServer هو قاعدة بيانات OpenEdge تقدم فارغة بدون مستخدمين أو بيانات تطبيق ، تحتوي على تعيين بين جداول المصدر وجداول Oracle الخارجية.

يجب وضع حامل المخطط للتقدم OpenEdge DataServer لـ Oracle for Pro2 على خادم معالجة ETL ويتم إنشاؤه بشكل منفصل لكل فرع.

كيفية إنشاء حامل المخطط

  1. فك توزيع Pro2 في دليل / pro2
  2. إنشاء وتغيير الدليل / pro2 / dbsh
  3. أنشئ قاعدة بيانات Schema Holder باستخدام الأمر procopy $ DLC / bisquitsh فارغة
  4. إجراء التحويل بيسكويتش في الترميز المطلوب - على سبيل المثال ، في UTF-8 إذا كانت قواعد بيانات Oracle تحتوي على ترميز UTF-8: proutil bisquitsh -C كونفشار تحويل UTF-8
  5. بعد إنشاء قاعدة بيانات فارغة بيسكويتش الاتصال به في وضع المستخدم الفردي: الموالية بيسكويتش
  6. انتقل إلى قاموس البيانات: أدوات -> قاموس البيانات -> DataServer -> أدوات ORACLE -> إنشاء مخطط DataServer
  7. إطلاق حامل المخطط
  8. قم بإعداد وسيط Oracle DataServer:
    أ. ابدأ AdminServer.
    proadsv -start
    ب. بدء Oracle DataServer Broker
    أورمان -اسم orabroker1 -بدء

إعداد الهيئة الإدارية ومخطط النسخ المتماثل

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

كيفية إعداد ملفات المعلمات

  1. اذهب إلى الكتالوج ج: Pro2bpreplScripts
  2. فتح الملف للتحرير replProc.pf
  3. أضف معلمات الاتصال إلى قاعدة بيانات النسخ المتماثل cdc:
    # قاعدة بيانات النسخ المتماثل
    -db cdc -ld repl -H <main db hostname> -S <cdc db broker port>
    -U pro2admin -P <كلمة المرور>
  4. دعونا نضيف إلى replProc.pf إعدادات الاتصال بقواعد البيانات المصدر وحامل المخطط كملفات إعدادات. يجب أن يتطابق اسم ملف المعلمة مع اسم قاعدة البيانات المصدر التي يتم توصيلها.
    # الاتصال بكل مصدر BISQUIT المنسوخ
    -pf bpreplscriptsbisquit.pf
  5. دعونا نضيف إلى replProc.pf معلمات الاتصال بحامل المخطط.
    #Target Pro DB حامل مخطط
    -db bisquitsh -ld bisquitsh
    -H <اسم مضيف عمليات ETL>
    -S <biskuitsh broker port>
    -db بيسكيتسكل
    -ولد بيسكيتسكل
    -dt أوراكل
    -S 5162 -H <اسم مضيف وسيط أوراكل>
    -DataService أوrabroker1
  6. حفظ ملف الإعدادات replProc.pf
  7. بعد ذلك ، تحتاج إلى إنشاء ملفات المعلمات وفتحها لتحرير كل قاعدة بيانات مصدر قابلة للتوصيل في الدليل ج: Pro2bpreplScripts: bisquit.pf. يحدد كل ملف pf معلمات الاتصال بقاعدة البيانات المقابلة ، على سبيل المثال:
    -db bisquit -ld bisquit -H <اسم المضيف> -S <منفذ وسيط>
    -U pro2admin -P <كلمة المرور>

لتكوين اختصارات Windows ، انتقل إلى الدليل ج: Pro2bpreplScripts وتحرير التسمية "Pro2 - الإدارة". للقيام بذلك ، افتح خصائص الاختصار وفي السطر تبدأ في حدد دليل تثبيت Pro2. يجب إجراء عملية مماثلة للاختصارات "Pro2 - Editor" و "RunBulkLoader".

إعداد إدارة Pro2: تحميل التكوين الأساسي

نبدأ وحدة التحكم.

كيفية تكوين صداقات مع النظام المصرفي Progress OpenEdge و Oracle DBMS

انتقل إلى "خريطة DB".

كيفية تكوين صداقات مع النظام المصرفي Progress OpenEdge و Oracle DBMS

لربط قواعد البيانات في Pro2 - الإدارة ، انتقل إلى علامة التبويب خريطة ديسيبل. إضافة تعيين قاعدة بيانات المصدر - حامل المخطط - Oracle.

كيفية تكوين صداقات مع النظام المصرفي Progress OpenEdge و Oracle DBMS

انتقل إلى علامة التبويب التخطيط. مدرج قاعدة بيانات المصدر بشكل افتراضي ، يتم تحديد أول قاعدة بيانات مصدر متصلة. على يمين القائمة يجب أن يكون النقش جميع قواعد البيانات متصلة - القواعد المختارة متصلة. أدناه ، على اليسار ، سترى قائمة بجداول التقدم من البسكويت. على اليمين توجد قائمة بالجداول من قاعدة بيانات Oracle.

إنشاء مخططات SQL وقواعد البيانات في Oracle

لإنشاء مخطط نسخ متماثل ، يجب أن تقوم أولاً بإنشاء مخطط SQL في Oracle. في إدارة Pro2 ، قم بتنفيذ عنصر القائمة أدوات -> إنشاء رمز -> مخطط الهدف، ثم في مربع الحوار حدد قاعدة البيانات حدد قاعدة بيانات مصدر واحدة أو أكثر وانقلها إلى اليمين.

كيفية تكوين صداقات مع النظام المصرفي Progress OpenEdge و Oracle DBMS

انقر فوق "موافق" وحدد دليلاً لحفظ مخططات SQL.

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

كيفية تكوين صداقات مع النظام المصرفي Progress OpenEdge و Oracle DBMS

بعد اكتمال التنزيل بنجاح ، اخرج من قاعدة بيانات bisquitsh وافتح لوحة إدارة Pro2. يجب أن تظهر الجداول من قاعدة بيانات أوراكل في علامة التبويب تعيين على اليمين.

تعيين الجدول

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

كيفية تكوين صداقات مع النظام المصرفي Progress OpenEdge و Oracle DBMS

قم بإنشاء مكتبة معالجات Pro2 Replication وبرامج معالج النسخ بالجملة

مكتبة المعالجات مخصصة لعمليات النسخ المتماثل (ETL) المخصصة التي تعالج قائمة انتظار النسخ المتماثل لـ Pro2 وتدفع التغييرات إلى قاعدة بيانات Oracle. يتم حفظ برامج مكتبة معالجات النسخ المتماثل بعد التوليد تلقائيًا في الدليل bprepl / repl_proc (معلمة PROC_DIRECTORY). لإنشاء مكتبة معالج النسخ المتماثل ، انتقل إلى أدوات -> إنشاء رمز -> مكتبة المعالجات. بعد اكتمال التوليد ، ستظهر البرامج في الكتالوج bprepl / repl_proc.

تُستخدم برامج التحميل المجمع لمزامنة قواعد بيانات التقدم المصدر مع قاعدة بيانات أوراكل المستهدفة بناءً على لغة برمجة Progress ABL (4GL). لتوليدها ، انتقل إلى عنصر القائمة أدوات -> إنشاء رمز -> معالج النسخ بالجملة. في مربع الحوار Select Database ، حدد قواعد البيانات المصدر ، وانقلها إلى الجانب الأيمن من النافذة وانقر OK. بعد اكتمال التوليد ، ستظهر البرامج في الكتالوج bpreplrepl_mproc.

إعداد عمليات النسخ المتماثل في Pro2

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

يتم عرض معلومات حول حالة تدفقات النسخ المتماثل على شاشة إدارة Pro2 في علامة التبويب شاشة العرض في قسم حالة النسخ المتماثل. يمكن العثور على وصف تفصيلي لقيم المعلمات في وثائق Pro2 (C: دليل Pro2Docs).

إنشاء وتفعيل سياسات CDC

النُهج هي مجموعة من القواعد لمحرك OpenEdge CDC التي تتعقب التغييرات على الجداول. في وقت كتابة هذا التقرير ، يدعم Pro2 سياسات CDC فقط بالمستوى 0 ، مما يعني أنه يتم تتبع الحقيقة فقط سجل التغييرات.

لإنشاء سياسة CDC في اللوحة الإدارية ، انتقل إلى علامة التبويب Mapping ، وحدد قاعدة البيانات المصدر ، وانقر فوق الزر Add / Remove Policies. في نافذة تحديد التغييرات التي تفتح ، حدد على الجانب الأيسر وانتقل إلى الجداول اليمنى التي تحتاج إلى إنشاء سياسة CDC أو حذفها.

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

كيفية تكوين صداقات مع النظام المصرفي Progress OpenEdge و Oracle DBMS

بعد تنشيط سياسة CDC ، يتم تخزين الملاحظات حول السجلات المعدلة في منطقة التخزين "ReplCDCArea" وفقًا لقاعدة البيانات الأصلية. سيتم التعامل مع هذه الملاحظات من خلال عملية خاصة CDCBatch، والتي ، بناءً عليها ، ستنشئ ملاحظات في قائمة انتظار النسخ المتماثل لـ Pro2 في قاعدة البيانات cdc (رد).

وبالتالي ، لدينا طابوران للنسخ المتماثل. قائمة الانتظار الأولى هي CDCBatch: من قاعدة البيانات المصدر ، تدخل البيانات أولاً في قاعدة بيانات CDC الوسيطة. المرحلة الثانية هي عندما يتم نقل البيانات من قاعدة بيانات CDC إلى Oracle. هذه سمة من سمات العمارة الحالية والمنتج نفسه - حتى يتمكن المطورون من إنشاء النسخ المتماثل المباشر.

المزامنة الأساسية

بعد تمكين آلية CDC وتكوين خادم النسخ المتماثل Pro2 ، نحتاج إلى بدء المزامنة الأولية. أمر بدء المزامنة الأساسي:

/pro2/bprepl/Script/replLoad.sh اسم جدول مكرر

بعد اكتمال المزامنة الأولية ، يمكنك بدء عمليات النسخ المتماثل.

بدء عمليات النسخ المتماثل

لبدء عمليات النسخ المتماثل ، تحتاج إلى تنفيذ البرنامج النصي repbatch.sh. قبل البدء ، تأكد من أن البرامج النصية لإعادة الدفعة متاحة لجميع سلاسل الرسائل - replbatch1 ، و replbatch2 ، وما إلى ذلك. إذا كان كل شيء في مكانه ، فافتح سطر الأوامر (على سبيل المثال ، بروينف)، اذهب إلى الدليل / bprepl / scripts وتشغيل البرنامج النصي. في اللوحة الإدارية ، نتحقق من أن العملية المقابلة قد تلقت حالة التشغيل.

كيفية تكوين صداقات مع النظام المصرفي Progress OpenEdge و Oracle DBMS

النتائج

كيفية تكوين صداقات مع النظام المصرفي Progress OpenEdge و Oracle DBMS
بعد التنفيذ ، قمنا بتسريع تحميل المعلومات بشكل كبير إلى مستودع بيانات الشركة. تصل البيانات بشكل مستقل إلى Oracle عبر الإنترنت. ليست هناك حاجة لإضاعة الوقت في تشغيل بعض الاستعلامات طويلة الأمد لجمع البيانات من أنظمة مختلفة. بالإضافة إلى ذلك ، في هذا الحل ، يمكن لعملية النسخ المتماثل ضغط البيانات ، والتي لها أيضًا تأثير إيجابي على السرعة. الآن بدأت المطابقة اليومية لنظام BISKVIT مع الأنظمة الأخرى تستغرق 15-20 دقيقة بدلاً من 2-2,5 ساعة ، واستغرقت التسوية الكاملة عدة ساعات بدلاً من يومين.

المصدر: www.habr.com

إضافة تعليق