Skip to main content
ClickHouse Managed Postgres هو Postgres بمستوى المؤسسات مدعومٌ بتخزين NVMe، يوفر أداءً أسرع بما يصل إلى 10 أضعاف للأعباء المقيّدة بالقرص مقارنةً بالتخزين المتصل عبر الشبكة مثل EBS. ينقسم هذا الدليل التمهيدي إلى قسمين:
  • Part 1: ابدأ باستخدام NVMe Postgres واختبر أداءه
  • Part 2: استفِد من التحليلات في الوقت الفعلي عبر التكامل مع ClickHouse
Managed Postgres متاح حاليًا على AWS في عدة مناطق وهو في مرحلة Public Beta.في هذا الدليل التمهيدي، ستتعلم:
  • أنشئ مثيل Managed Postgres بأداء مدعوم بـ NVMe
  • أدخِل مليون حدث تجريبي وشاهد سرعة NVMe عمليًا
  • شغّل الاستعلامات واختبر أداءً بزمن انتقال منخفض
  • انسخ البيانات إلى ClickHouse لإجراء تحليلات في الوقت الفعلي
  • استعلم من ClickHouse مباشرةً من داخل Postgres باستخدام pg_clickhouse

الجزء 1: البدء مع NVMe Postgres

إنشاء قاعدة بيانات

لإنشاء خدمة Managed Postgres جديدة، انقر على زر New service في قائمة الخدمات في Cloud Console. ستتمكن بعد ذلك من اختيار Postgres نوعًا لقاعدة البيانات.أدخل اسمًا لـ instance قاعدة البيانات الخاصة بك وانقر على Create service. سيتم نقلك إلى صفحة Overview.سيتم توفير مثيل Managed Postgres الخاص بك وسيكون جاهزًا للاستخدام في غضون 3-5 دقائق.

الاتصال بقاعدة البيانات

في الشريط الجانبي على اليسار، ستجد زر الاتصال. انقر عليه لعرض تفاصيل الاتصال وسلاسل الاتصال بتنسيقات متعددة.انسخ سلسلة اتصال psql واتصل بقاعدة بياناتك. يمكنك أيضًا استخدام أي عميل متوافق مع Postgres مثل DBeaver، أو أي مكتبة تطبيق.

اختبر أداء NVMe

لنرَ أداء NVMe عمليًا. أولًا، فعّل التوقيت في psql لقياس زمن تنفيذ الاستعلام:
أنشئ جدولين تجريبيين للأحداث والمستخدمين:
الآن، أدخِل مليون حدث وشاهد سرعة NVMe:
أداء NVMeتم إدراج مليون صف من بيانات JSONB في أقل من 4 ثوانٍ. في قواعد البيانات السحابية التقليدية التي تستخدم تخزينًا متصلًا عبر الشبكة مثل EBS، تستغرق العملية نفسها عادةً وقتًا أطول بمرتين إلى ثلاث مرات بسبب زمن انتقال الذهاب والإياب عبر الشبكة وتقييد IOPS. يزيل تخزين NVMe هذه الاختناقات من خلال إبقاء التخزين متصلًا فعليًا بالحوسبة.يختلف الأداء حسب حجم المثيل، والحمل الحالي، وخصائص البيانات.
أدرج 1,000 مستخدم:

تشغيل الاستعلامات على بياناتك

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

الجزء الثاني: إضافة تحليلات فورية مع ClickHouse

بينما يتفوق Postgres في أعباء العمل المعاملاتية (OLTP)، فإن ClickHouse مُصمَّم خصيصًا للاستعلامات التحليلية (OLAP) على مجموعات البيانات الكبيرة. من خلال دمج الاثنين، تحصل على أفضل ما في العالمين:
  • Postgres لبيانات تطبيقك الخاصة بالمعاملات (عمليات الإدراج، والتحديث، وعمليات البحث المباشر)
  • ClickHouse لإجراء تحليلات على مليارات الصفوف في أقل من ثانية
يوضح لك هذا القسم كيفية نسخ بيانات Postgres إلى ClickHouse والاستعلام عنها بسلاسة.

إعداد تكامل ClickHouse

بعد أن أصبح لدينا جداول وبيانات في Postgres، لنقم بنسخ الجداول إلى ClickHouse لأغراض التحليل. نبدأ بالنقر على ClickHouse integration في الشريط الجانبي. ثم يمكنك النقر على Replicate data in ClickHouse.في النموذج التالي، يمكنك إدخال اسم للتكامل الخاص بك واختيار نسخة ClickHouse موجودة للنسخ المتماثل إليها. إذا لم تكن لديك نسخة ClickHouse بعد، يمكنك إنشاء واحدة مباشرةً من هذا النموذج.
مهمتأكد من أن خدمة ClickHouse التي تحددها في حالة Running قبل المتابعة.
انقر على التالي للانتقال إلى منتقي الجداول. كل ما عليك فعله هنا هو:
  • اختر قاعدة بيانات في ClickHouse لنسخ البيانات إليها.
  • وسّع المخطط public وحدد جدولي users وevents اللذين أنشأناهما سابقًا.
  • انقر على Replicate data to ClickHouse.
ستبدأ عملية النسخ المتماثل، وسيُنقل إليك صفحة نظرة عامة على التكامل. بما أن هذا هو التكامل الأول، فقد يستغرق إعداد البنية التحتية الأولية من دقيقتين إلى ثلاث دقائق. في هذه الأثناء، لنستعرض الإضافة الجديدة pg_clickhouse.

الاستعلام عن ClickHouse من Postgres

تتيح لك إضافة pg_clickhouse الاستعلام عن بيانات ClickHouse مباشرةً من Postgres باستخدام standard SQL. وهذا يعني أن تطبيقك يمكنه استخدام Postgres كطبقة استعلام موحّدة لكلٍّ من البيانات المعاملاتية والتحليلية. راجع التوثيق الكامل للمزيد من التفاصيل.فعّل الإضافة:
بعد ذلك، أنشئ اتصال خادم خارجي بـ ClickHouse. استخدم برنامج التشغيل http مع المنفذ 8443 للاتصالات الآمنة:
استبدل <clickhouse_cloud_host> باسم مضيف ClickHouse الخاص بك، و<database_name> بقاعدة البيانات التي اخترتها أثناء إعداد النسخ المتماثل. يمكنك العثور على اسم المضيف في خدمة ClickHouse الخاصة بك بالنقر على Connect في الشريط الجانبي.الآن، نربط مستخدم Postgres ببيانات اعتماد خدمة ClickHouse:
الآن، استورد جداول ClickHouse إلى مخطط Postgres:
استبدل <database_name> باسم قاعدة البيانات نفسه الذي استخدمته عند إنشاء الخادم.يمكنك الآن رؤية جميع جداول ClickHouse في عميل Postgres الخاص بك:

شاهد تحليلاتك عمليًا

لنعُد إلى صفحة التكامل. ينبغي أن ترى أن النسخ المتماثل الأولي قد اكتمل. انقر على اسم التكامل لعرض التفاصيل.انقر على اسم الخدمة لفتح وحدة تحكم ClickHouse وعرض الجداول المُنسوخة.

مقارنة أداء Postgres مقابل ClickHouse

الآن لنُشغّل بعض الاستعلامات التحليلية ونقارن الأداء بين Postgres وClickHouse. لاحظ أن الجداول المُنسوخة تستخدم اصطلاح التسمية public_<table_name>.الاستعلام 1: أكثر المستخدمين نشاطًايعرض هذا الاستعلام أكثر المستخدمين نشاطًا باستخدام عدة عمليات تجميع:
الاستعلام 2: تفاعل المستخدمين حسب الدولة والمنصةيربط هذا الاستعلام الأحداث بالمستخدمين ويحسب مقاييس التفاعل:
مقارنة الأداء:
متى تستخدم ClickHouseحتى على مجموعة البيانات هذه التي تضم مليون صف، يقدّم ClickHouse أداءً أسرع بمقدار 3 إلى 7 مرات في الاستعلامات التحليلية المعقدة التي تتضمن JOINs وعمليات تجميع متعددة. ويصبح الفارق أكثر وضوحًا عند الأحجام الأكبر (100M+ صف)، حيث يمكن لتخزين ClickHouse العمودي وتنفيذه المتجهي أن يوفّرا تسارعًا يتراوح بين 10 و100 مرة.تختلف أزمنة الاستعلامات حسب حجم المثيل، وزمن انتقال الشبكة بين الخدمات، وخصائص البيانات، والحمل الحالي.

التنظيف

لحذف الموارد التي أُنشئت في هذا الدليل التمهيدي:
  1. أولًا، احذف تكامل ClickPipe من خدمة ClickHouse
  2. ثم احذف مثيل Managed Postgres من Cloud Console
آخر تعديل في ٢٧ يوليو ٢٠٢٦