الانتقال إلى المحتوى الرئيسي

إصدارات Postgres المدعومة

تدعم ClickPipes إصدار Aurora المتوافق مع PostgreSQL، الإصدار 12 وما بعده.

تمكين النسخ المتماثل المنطقي

يمكنك تخطي هذا القسم إذا كان مثيل Aurora لديك مُعدًّا بالفعل بالإعدادات التالية:
  • rds.logical_replication = 1
عادةً ما يكون هذا الإعداد مُعدًّا مسبقًا إذا كنت قد استخدمت سابقًا أداة أخرى لنسخ البيانات.
postgres=> SHOW rds.logical_replication ;
 rds.logical_replication
-------------------------
 on
(1 row)
إذا لم يكن هذا مُعدًّا بالفعل، فاتبع الخطوات التالية:
  1. أنشئ مجموعة معلمات جديدة لإصدار Aurora PostgreSQL لديك بالإعداد المطلوب:
    • اضبط rds.logical_replication على 1
  1. طبّق مجموعة المعلمات الجديدة على عنقود Aurora PostgreSQL لديك
  1. أعد تشغيل عنقود Aurora لتطبيق التغييرات

إعداد مستخدم قاعدة البيانات

اتصل بمثيل writer في Aurora PostgreSQL كمستخدم مسؤول، ثم نفّذ الأوامر التالية:
  1. أنشئ مستخدمًا مخصصًا لـ ClickPipes:
    CREATE USER clickpipes_user PASSWORD 'some-password';
    
  2. امنح المستخدم الذي أنشأته في الخطوة السابقة صلاحية وصول للقراءة فقط على مستوى الـ schema. يوضّح المثال التالي الأذونات الخاصة بـ schema ‏public. كرر هذه الأوامر لكل schema يحتوي على الجداول التي تريد تكرارها:
    GRANT USAGE ON SCHEMA "public" TO clickpipes_user;
    GRANT SELECT ON ALL TABLES IN SCHEMA "public" TO clickpipes_user;
    ALTER DEFAULT PRIVILEGES IN SCHEMA "public" GRANT SELECT ON TABLES TO clickpipes_user;
    
  3. امنح المستخدم امتيازات النسخ المتماثل:
    GRANT rds_replication TO clickpipes_user;
    
  4. أنشئ publication يتضمن الجداول التي تريد تكرارها. نوصي بشدة بقصر الـ publication على الجداول التي تحتاج إليها فقط لتجنّب أي حمل إضافي على الأداء.
يجب أن يكون لأي table مُدرج في الـ publication مفتاح أساسي معرّف، أو أن تكون replica identity الخاصة به مضبوطة على FULL. راجع الأسئلة الشائعة حول Postgres للحصول على إرشادات بشأن تحديد النطاق.
  • لإنشاء publication لجداول محددة:
    CREATE PUBLICATION clickpipes FOR TABLE table_to_replicate, table_to_replicate2;
    
    • لإنشاء publication لجميع الجداول ضمن schema محدد:
      CREATE PUBLICATION clickpipes FOR TABLES IN SCHEMA "public";
      
سيحتوي الـ publication المسمى clickpipes على مجموعة أحداث التغيير الناتجة من الجداول المحددة، وسيُستخدم لاحقًا لاستيعاب تدفّق النسخ المتماثل.

إعداد الوصول إلى الشبكة

التحكم في الوصول المستند إلى IP

إذا كنت تريد تقييد حركة المرور الواردة إلى عنقود Aurora، فيُرجى إضافة عناوين IP الثابتة لـ NAT الواردة في الوثائق إلى Inbound rules في مجموعة الأمان الخاصة بـ Aurora. للاتصال بعنقود Aurora الخاص بك من خلال شبكة خاصة، يمكنك استخدام AWS PrivateLink. اتبع دليل إعداد AWS PrivateLink لـ ClickPipes لإعداد الاتصال.

اعتبارات خاصة بـ Aurora

عند إعداد ClickPipes مع Aurora PostgreSQL، ضع هذه الاعتبارات في حسبانك:
  1. نقطة نهاية الاتصال: احرص دائمًا على الاتصال بـ نقطة نهاية الكتابة لعنقود Aurora لديك، لأن النسخ المتماثل المنطقي يتطلب صلاحية الكتابة لإنشاء replication slots، كما يجب أن يتصل بالمثيل الأساسي.
  2. التعامل مع التحويل عند الفشل: في حال حدوث failover، سيقوم Aurora تلقائيًا بترقية مثيل قارئ ليصبح الكاتب الجديد. سيكتشف ClickPipes انقطاع الاتصال وسيحاول إعادة الاتصال بـ نقطة نهاية الكتابة، التي ستشير حينها إلى المثيل الأساسي الجديد.
  3. قاعدة البيانات العالمية: إذا كنت تستخدم Aurora Global Database، فينبغي أن تتصل بـ نقطة نهاية الكتابة الخاص بالمنطقة الأساسية، لأن النسخ المتماثل عبر المناطق يتولى بالفعل نقل البيانات بين المناطق.
  4. اعتبارات التخزين: تكون طبقة التخزين في Aurora مشتركة بين جميع المثيلات في العنقود، ما قد يوفّر أداءً أفضل للنسخ المتماثل المنطقي مقارنةً بـ RDS القياسي.

التعامل مع نقاط نهاية العنقود الديناميكية

في حين توفّر Aurora نقاط نهاية ثابتة تُوجِّه الاتصالات تلقائيًا إلى المثيل المناسب، فإليك بعض الأساليب الإضافية لضمان اتصال ثابت:
  1. في عمليات الإعداد عالية التوافر، اضبط تطبيقك لاستخدام نقطة نهاية الكتابة في Aurora، والتي تُشير تلقائيًا إلى المثيل الأساسي الحالي.
  2. إذا كنت تستخدم النسخ المتماثل عبر المناطق، ففكّر في إعداد ClickPipes منفصلة لكل Region لتقليل زمن الاستجابة وتحسين تحمّل الأعطال.

ما الخطوة التالية؟

يمكنك الآن إنشاء ClickPipe الخاص بك وبدء إدخال البيانات من عنقود Aurora PostgreSQL لديك إلى ClickHouse Cloud. احرص على تدوين تفاصيل الاتصال التي استخدمتها أثناء إعداد عنقود Aurora PostgreSQL، إذ ستحتاج إليها خلال عملية إنشاء ClickPipe.
آخر تعديل في ٢٥ يونيو ٢٠٢٦