تحديث نظام إدارة قواعد البيانات الارتباطية (RDBMS) لتقديم حل بديل ينافس Oracle في آسيا
نبذة عن عميلنا
شركة صينية رائدة في تطوير قواعد البيانات وحلول البيانات الضخمة، لديها خبرة تمتد لأكثر من 15 عامًا، وتركز على تزويد الشركات بحلول قوية وموثوقة كبديل لحلول Oracle.
تُسهم حلول العميل في تعزيز الكفاءة والابتكار في مختلف القطاعات الحيوية في الصين، بما في ذلك الطاقة، والقطاع الحكومي، والرعاية الصحية، والخدمات المالية.
الحاجة إلى تحديث نظام هجين لإدارة قواعد البيانات الارتباطية (RDBMS)
في أغسطس 2021، كان العميل بحاجة ملحة إلى تحسين أحد أبرز منتجاته، وهو نظام هجين لإدارة قواعد البيانات الارتباطية (RDBMS) يجمع بين تقنيات قواعد البيانات المخزنة في الذاكرة وعلى الأقراص. وكان الهدف من ذلك مواءمة المنتج مع ميزات الأمان المتقدمة، وإمكانات لغة SQL، والأداء العالي لحلول Oracle، ليكون بديلًا فعالًا لتلبية احتياجات المستخدمين في المؤسسات عبر مختلف القطاعات. وقد واجه المشروع تحديات كبيرة مثل:
- قاعدة أكواد برمجية قديمة: كانت قاعدة الأكواد البرمجية، التي تحتوي على أكثر من 3 ملايين سطر برمجي، مُطوَّرة باستخدام ممارسات ++C القديمة، ما جعل تنفيذ التحديثات الجديدة تحديًا حقيقًا.
- غياب وثائق التطوير: أدى غياب وثائق تطوير شاملة إلى صعوبة فهم وظائف النظام وتعديلها بأمان.
تحسين أمان وأداء ووظائف نظام إدارة قواعد البيانات الارتباطية (RDBMS)
نظراً لتعقيد المهمة، خصَّصت ساينس سوفت للمشروع فريقًا متخصصًا يتكون من 4 مطورين محترفين في لغة ++C يتمتعون بخبرة واسعة في برمجة محركات قواعد البيانات، وإعادة هيكلة الأكواد القديمة، ومعرفة عميقة بالجبر العلائقي، والقواعد الأساسية لصياغة استعلامات قواعد البيانات ومعالجتها بدقة.
بدأ فريقنا بدراسة بنية النظام، مع تطبيق عمليات الهندسة العكسية للمكونات الرئيسية، وتقييم مدى توافق الوظائف الحالية مع المعايير الحديثة لأنظمة قواعد البيانات. كما راجع فريقنا القرارات التصميمية القديمة للنظام لفهم سبب تطويره بشكله الحالي. وقد ساعد هذا التحليل الشامل على تحديد مجالات التحسين وضمان تنفيذ التغييرات المطلوبة دون التأثير في الوظائف الأساسية للنظام. وبعد فهم تعقيدات النظام بدقة، بدأ خبراؤنا في تنفيذ التحسينات المستهدفة.
الدعم الموسع للغة الاستعلام SQL
لتعزيز إمكانات لغة SQL وتمكين تنفيذ استعلامات معقدة مماثلة لوظائف Oracle، نفَّذ خبراء ساينس سوفت التحسينات التالية:
- إدخال عبارة WITH FUNCTION/PROCEDURE ضمن عبارات SELECT: يتيح ذلك للمستخدمين تحديد الدوال أو الإجراءات المؤقتة مباشرةً ضمن الاستعلامات، ما يُبسِّط عمليات معالجة البيانات المُعقدة دون الحاجة إلى تغييرات مستمرة في بنية قاعدة البيانات. كما يوفر مرونة أكبر للمطورين والمحللين عند صياغة الاستعلامات المُعقدة، ما يُقلِّل من أعباء إدارة الإجراءات الخارجية.
- توسيع إمكانات تعبير CASE: يتيح ذلك الاستعلام الشرطي المتقدم الضروري للتعامل مع منطق البيانات المؤسسية المُعقدة.
دعم الأعمدة المستندة إلى لغة XML
أضاف فريقنا ميزة دعم أنواع الأعمدة المستندة إلى لغة XML لتعزيز نظام العميل بإمكانات مشابهة لنظام Oracle في التعامل مع بيانات XML. تتيح هذه الميزة تخزين البيانات الهرمية وشبه المهيكلة والاستعلام عنها مباشرةً في قاعدة البيانات، ما يعزز التوافق مع العمليات المؤسسية التي تعتمد على بيانات XML. كما تدعم هذه الميزة تبادل البيانات بين التطبيقات بكفاءة عالية، وهو أمر بالغ الأهمية للصناعات التي تعتمد على XML كصيغة قياسية للتواصل بين الأنظمة.
المعالجة المتوازية
أضفنا ميزة المعالجة المتوازية لعبارات SELECT وINSERT، في كل من تكوينات المضيف ومجموعات الأجهزة، ما أدى إلى تحسين أداء عمليات استرجاع وإدخال البيانات على نطاق واسع.
ميزات الأمان
عزَّز فريقنا أمان البيانات من خلال دمج خوارزميات تشفير قوية، مثل AES و SM4 في مسارات تشفير وفك تشفير البيانات، ما ضمن الامتثال لمعايير حماية البيانات، وتوفير الثقة الكاملة للمستخدمين عند التعامل مع المعلومات الحساسة. ولتعزيز النظام بميزات تحاكي ميزات الأمان المتقدمة لدى Oracle، تمكَّن فريقنا من تحسين آليات الوصول الخاصة بالأدوار لتوفير المزيد من الأذونات الدقيقة لموارد قاعدة البيانات. كما عزَّزنا النظام بطبقة إضافية من الأمان للعمليات الحساسة من خلال دمج أعمدة الجداول المخفية.
تحسينات استباقية لقاعدة البيانات والعمليات
إلى جانب التحسينات المخطط لها، عمل فريقنا على تحديد وتنفيذ مجموعة من التحسينات التي شملت قاعدة الكود البرمجي وعمليات التطوير، بما في ذلك:
- التطويرالمتوازي: أدى ذلك إلى تسريع عملية التطوير، ما أسهم في تعزيز إنتاجية المطورين وتقليص مدة التطوير بقدرٍ كبير.
- دمج أداة الكشف عن الأخطاء GCC: دمج فريقنا أداة GCC للكشف عن الأخطاء المخفية، ما أسهم في تعزيز استقرار وموثوقية الكود البرمجي بشكل شامل.
- استعادة وتوسيع اختبارات الوحدات: استعدنا اختبارات الوحدات المهملة في الكود المصدري، وأضفنا اختبارات جديدة لتغطية التغييرات الحديثة، لضمان استقرار وموثوقية كافة التحسينات وتقليل مخاطر التراجع الوظيفي مستقبلاً.
- تطوير مسارات التكامل والنشر المستمر (CI/CD): طوَّرنا المكونات الأساسية لمسارات التكامل والنشر المستمر (CI/CD)، ما أدى إلى تبسيط تنفيذ الإصدارات والتحديثات بسرعة وجودة عالية.
تقديم نظام تنافسي بديل لقاعدة بيانات Oracle
من خلال تعزيز ميزات الأمان، وتحسين إمكانات لغة SQL، ورفع كفاءة الأداء العام لنظام إدارة قواعد البيانات الارتباطية (RDBMS) الهجين، تمكَّنت ساينس سوفت من تحويل نظام العميل إلى حل بديل يتمتع بمستوى تنافسي وجاذبية عالية مقارنةً بقاعدة بيانات Oracle. وإلى جانب هذه التحسينات، تمكَّن فريقنا من تنقيح الكود المصدري للنظام وتحسين عمليات التطوير، ما أسهم في تعزيز استقرار النظام وتبسيط تنفيذ التحسينات المستقبلية بكفاءة أعلى.
التقنيات والأدوات
С++, GLR parser, Shell scripting, CMake, GlusterFS, ODBC, pyodbc, Docker, Linux, MS Windows.
نتواصل معكم على الفور