الانتقال إلى المحتوى الرئيسي
هذا هو الجزء 2 من دليل حول الترحيل من PostgreSQL إلى ClickHouse. ومن خلال مثال عملي، يوضّح كيفية تنفيذ الترحيل بكفاءة باستخدام نهج النسخ المتماثل الآني (CDC). كما أن العديد من المفاهيم الواردة هنا تنطبق أيضًا على عمليات نقل البيانات المجمّعة يدويًا من PostgreSQL إلى ClickHouse.
يُفترض أن تعمل معظم استعلامات SQL من بيئة PostgreSQL لديك في ClickHouse دون تعديل، ومن المرجّح أن تُنفَّذ بسرعة أكبر.

إزالة التكرار باستخدام CDC

عند استخدام النسخ المتماثل الآني مع CDC، ضع في اعتبارك أن عمليتَي التحديث والحذف قد تؤديان إلى ظهور صفوف مكررة. ولمعالجة ذلك، يمكنك استخدام أساليب تتضمن Views وRefreshable Materialized Views. ارجع إلى هذا الدليل للتعرّف على كيفية ترحيل تطبيقك من PostgreSQL إلى ClickHouse بأقل قدر ممكن من التعقيد عند الترحيل باستخدام النسخ المتماثل الآني مع CDC.

تحسين الاستعلامات في ClickHouse

مع أن الترحيل هنا ممكن بأقل قدر من إعادة كتابة الاستعلامات، فمن المستحسن الاستفادة من ميزات ClickHouse لتبسيط الاستعلامات بدرجة كبيرة وتحسين أداء الاستعلامات أكثر. تغطي الأمثلة هنا أنماط الاستعلامات الشائعة وتوضح كيفية تحسينها باستخدام ClickHouse. وهي تستخدم Stack Overflow dataset بالكامل (حتى أبريل 2024) على موارد متكافئة في PostgreSQL وClickHouse ‏(8 أنوية، و32GiB RAM).
للتبسيط، لا تستخدم الاستعلامات أدناه تقنيات إزالة التكرار من البيانات.
ستختلف الأعداد هنا قليلًا لأن بيانات Postgres لا تتضمن إلا الصفوف التي تستوفي التكامل المرجعي للمفاتيح الخارجية. أما ClickHouse فلا يفرض مثل هذه القيود، ولذلك يتضمن مجموعة البيانات كاملة، بما في ذلك المستخدمون المجهولون مثلًا.
المستخدمون (الذين لديهم أكثر من 10 أسئلة) الحاصلون على أكبر عدد من المشاهدات:
أيّ tags تحصد أكبر عدد من views:
الدوال التجميعية إن أمكن، يُستحسن الاستفادة من الدوال التجميعية في ClickHouse. نعرض أدناه استخدام الدالة argMax لحساب السؤال الأكثر مشاهدةً في كل سنة.
هذا أبسط بكثير (وأسرع) من استعلام Postgres المماثل:
الدوال الشرطية والمصفوفات تجعل الدوال الشرطية ودوال المصفوفات الاستعلامات أبسط بكثير. يحسب الاستعلام التالي الوسوم التي يزيد عدد مرات ظهورها على 10000، والتي سجّلت أكبر زيادة مئوية من 2022 إلى 2023. لاحظ مدى إيجاز استعلام ClickHouse التالي بفضل الدوال الشرطية، ودوال المصفوفات، وإمكانية إعادة استخدام الأسماء المستعارة في عبارتي HAVING وSELECT.
انقر هنا للاطلاع على الجزء الثالث
آخر تعديل في ٢ يوليو ٢٠٢٦