تتألف مشاريع Data Connect من عنصرَين رئيسيَّين للبنية الأساسية:
- مثيل خدمة Data Connect واحد أو أكثر
- نسخة واحدة أو أكثر من Cloud SQL for PostgreSQL
يتناول هذا الدليل كيفية إعداد مثيلات Data Connect الخدمة وإدارتها، ويقدّم طريقة إدارة مثيلات Cloud SQL المرتبطة.
ضبط المناطق في Firebase Data Connect
تتطلّب المشاريع التي تستخدم Data Connect ضبط إعدادات الموقع الجغرافي.
عند إنشاء مثيل خدمة Data Connect جديد، سيُطلب منك اختيار موقع الخدمة.
المواقع الجغرافية التي تتوفّر فيها الميزة
يمكن إنشاء خدمات Data Connect في المناطق التالية.
- asia-east1
- asia-east2
- asia-northeast1
- asia-northeast2
- asia-northeast3
- asia-south1
- asia-southeast1
- asia-southeast2
- australia-southeast1
- australia-southeast2
- europe-central2
- europe-north1
- europe-southwest1
- europe-west1
- europe-west2
- europe-west3
- europe-west4
- europe-west6
- europe-west8
- europe-west9
- me-west1
- northamerica-northeast1
- northamerica-northeast2
- southamerica-east1
- southamerica-west1
- us-central1
- us-east1
- us-east4
- us-south1
- us-west1
- us-west2
- us-west3
- us-west4
إدارة مثيلات خدمة Data Connect
إنشاء الخدمات
لإنشاء خدمة جديدة، استخدِم وحدة تحكّم Firebase أو نفِّذ عملية بدء المشروع على الجهاز باستخدام واجهة سطر أوامر Firebase. تنشئ هذه سير العمل خدمة Data Connect جديدة.
وتساعدك هذه الإجراءات أيضًا في تنفيذ ما يلي:
- توفير مثيل جديد على Cloud SQL (المستوى غير المكلف)
- ربط مثيل حالي على Cloud SQL بخدمة Data Connect (خطة Blaze)
إدارة المستخدمين
يوفّر Data Connect أدوات لإدارة وصول المستخدمين وفقًا لمبدأ الامتياز الأقل (منح كل مستخدم أو حساب خدمة الحد الأدنى من الأذونات اللازمة لتفعيل الوظائف المطلوبة) ومفهوم التحكم في الوصول المستنِد إلى الدور (RBAC) (مع أدوار محدّدة مسبقًا لإدارة أذونات قاعدة بيانات، ما يسهّل إدارة الأمان).
لإضافة أعضاء المشروع كمستخدمين يمكنهم تعديل مثيلات Data Connect في مشروعك، استخدِم وحدة تحكّم Firebase لاختيار أدوار المستخدمين المحدّدة مسبقًا المناسبة.
تمنح هذه الأدوار الأذونات باستخدام "إدارة الهوية والوصول" (IAM). الدور هو مجموعة من الأذونات. عند منح دور إلى عضو في المشروع، يمنحه جميع الأذونات التي يحتوي عليها الدور. يمكنك الاطّلاع على مزيد من المعلومات في:
- نظرة عامة على أدوار إدارة الهوية وإمكانية الوصول في Firebase
- القائمة التفصيلية لأدوار Data Connect
اختيار الأدوار لتفعيل سير عمل معيّنة
تتيح أدوار إدارة الهوية والوصول (IAM) سير عمل Firebase سطر الأوامر للسماح لك بإدارة مشاريعك في Data Connect.
أمر واجهة سطر الأوامر أو سير عمل آخر | الأدوار المطلوبة |
---|---|
firebase init dataconnect
|
|
firebase deploy -–only dataconnect
|
|
firebase dataconnect:sql:diff
|
|
firebase dataconnect:sql:migrate
|
|
firebase dataconnect:sql:grant
|
|
مراقبة أداء خدمة Data Connect
فهم أداء الخدمة
يمكن أن يؤثر أداء كلّ من خدمة Data Connect وخدمة Cloud SQL لأجل PostgreSQL في تجربتك.
- بالنسبة إلى خدمة Cloud SQL for PostgreSQL، يُرجى الرجوع إلى الإرشادات العامة في مستندات الحصص والقيود.
بالنسبة إلى خدمة Data Connect، هناك حصة لطلبات GraphQL، مما يؤثر في معدّل تنفيذ طلبات البحث:
- حصة إجمالية لكل مشروع تبلغ 6,000 طلب في الدقيقة من أدوات ربط تطبيقات العملاء
- حصة إجمالية لكل مشروع تبلغ 6,000 طلب في الدقيقة من Firebase Admin SDK ومن واجهة برمجة التطبيقات REST API
- حصة لكل مستخدم تبلغ 1200 طلب في الدقيقة في هذه الحالة، يشير "لكل مستخدم" إلى أنّ الحدّ ينطبق على الطلبات التي يبدأها عنوان IP واحد، سواء من تطبيق العميل أو من Firebase Admin SDK أو من واجهة برمجة التطبيقات REST API.
إذا واجهت حدود الحصة هذه، يُرجى التواصل مع فريق دعم Firebase لتعديل الحصة ذات الصلة.
مراقبة أداء الخدمة واستخدامها والفوترة
يمكنك مراقبة الطلبات والأخطاء ومعدّلات العمليات على مستوى النظام ومستوى كل عملية في وحدة تحكّم Firebase.
إدارة مثيلات Cloud SQL
قيود الفترة التجريبية المجانية
لا تتوفّر الميزات التالية في Cloud SQL for PostgreSQL في الإصدار التجريبي المجاني لمدة 3 أشهر:
- إصدارات PostgreSQL غير 15.x
- استخدام مثيلات Cloud SQL الحالية لـ PostgreSQL
- فئة جهاز مختلفة عن db-f1-micro
- تغيير موارد المثيل، مثل مساحة التخزين والذاكرة ووحدة المعالجة المركزية
- النُسخ المقروءة
- عنوان IP للمثيل الخاص
- مدى التوفّر العالي (مناطق متعدّدة): لا تتوفّر سوى النُسخ المخصّصة لمنطقة واحدة
- إصدار Enterprise Plus
- الاحتفاظ بنسخ احتياطية تلقائيًا
- زيادة مساحة التخزين تلقائيًا
إدارة مثيلات Cloud SQL
بشكل عام، يمكنك إدارة نُسخ Cloud SQL باستخدام وحدة تحكّم Google Cloud للقيام بعمليات سير العمل التالية.
- إيقاف وإعادة تشغيل ممثّلات Cloud SQL
- إنشاء قواعد بيانات Cloud SQL وحذفها (داخل المثيلات)
- بدء نُسخ قاعدة بيانات PostgreSQL باستخدام العلامات واستخدام مجموعة متنوعة من الإضافات
- تتبُّع الأداء باستخدام ميزات مراقبة Cloud SQL في وحدة تحكّم Google Cloud
- إدارة الوصول إلى Cloud SQL وأمانه باستخدام ميزات مثل "إدارة الهوية والوصول" و"مدير الأسرار" و"تشفير البيانات" و"الخادم الوكيل للمصادقة"
- إضافة مستخدمي Cloud SQL وحذفهم وإدارتهم
لمعرفة المزيد من المعلومات عن هذه العمليات وعمليات سير العمل الأخرى، يُرجى الرجوع إلى مستندات Cloud SQL for PostgreSQL.
منح أدوار مستخدمي PostgreSQL
يوفّر Data Connect أدوات لإدارة وصول المستخدمين وفقًا لمبدأ الامتياز الأقل (منح كل مستخدم أو حساب خدمة الحد الأدنى من الأذونات اللازمة لتفعيل الوظائف المطلوبة) ومفهوم التحكم في الوصول المستنِد إلى الدور (RBAC) (مع أدوار محدّدة مسبقًا لإدارة أذونات قاعدة بيانات، ما يسهّل إدارة الأمان).
في بعض الحالات، قد تحتاج إلى الاتصال بقاعدة بيانات Cloud SQL المُدارة من Data Connect مباشرةً من خلال برنامج SQL من اختيارك باستخدام، على سبيل المثال، Cloud Run أو Cloud Functions أو GKE.
لتفعيل هذه الوصلات، عليك منح أذونات SQL من خلال:
- تعيين دور
roles/cloudsql.client
IAM للمستخدم أو حساب الخدمة الذي يحتاج إلى الاتصال بالمثيل، إما من وحدة تحكّم Google Cloud أو باستخدام gcloud CLI - منح دور PostgreSQL اللازم باستخدام واجهة سطر أوامر Firebase
إسناد دور "إدارة الهوية وإمكانية الوصول" في Cloud SQL
للحصول على معلومات عن استخدام Cloud SQL لنظام PostgreSQL لمنح دور IAM
roles/cloudsql.client
، اطّلِع على الأدوار والأذونات.
منح أدوار PostgreSQL
باستخدام Firebase CLI، يمكنك منح أدوار PostgreSQL المحدّدة مسبقًا للمستخدمين
أو حسابات الخدمة المرتبطة بمشروعك باستخدام الأمر
firebase dataconnect:sql:grant
.
على سبيل المثال، لمنح دور "الكاتب"، نفِّذ الأمر التالي في سطر الأوامر:
firebase dataconnect:sql:grant --role writer
للاطّلاع على التفاصيل، يُرجى الرجوع إلى دليل مرجعي لواجهة سطر الأوامر.
دمج قواعد بيانات Cloud SQL الحالية لنظام PostgreSQL
يفترض مسار إدارة وتوفير قاعدة البيانات التلقائي أنّ مشروعك
يستخدم قواعد بيانات جديدة (غير مُستخدَمة من قبل)، وعند استدعاء firebase deploy
،
Data Connect سيعرض تغييرات مخطّط قاعدة البيانات التي يجب إجراؤها ويُنفِّذ أي عمليات نقل بعد الموافقة عليها.
بالنسبة إلى قواعد البيانات الحالية (القديمة)، قد يكون لديك سير عمل خاص بك ل إدارة المخططات ولا يمكنك استخدام أدوات Data Connect لنقل البيانات، ولكنك تريد استخدام قاعدة بياناتك في مشروع Data Connect للاستفادة من إنشاء حِزم تطوير البرامج (SDK) للأجهزة الجوّالة والويب، والحصول على الإذن بالوصول إلى البيانات استنادًا إلى طلبات البحث، وإدارة اتصالات العملاء، وغير ذلك.
يوفّر هذا القسم إرشادات حول الحالة الأخيرة: دمج قاعدة بيانات حالية مع Data Connect.
.دمج قاعدة بيانات حالية في مشروع Data Connect
يتضمن سير العمل لدمج قاعدة بيانات حالية بشكل عام الخطوات التالية:
- أثناء إعداد مشروع Data Connect في وحدة تحكّم Firebase، اختَر المثيل وقاعدة البيانات.
باستخدام واجهة سطر أوامر Firebase، يمكنك تنفيذ الأمر
firebase dataconnect:sql:setup
ورفض خيار السماح لـ Data Connect بمعالجة عمليات نقل بيانات SQL.لمنع إجراء تغييرات على مخطّط قاعدة البيانات لا تحدّدها أدواتك المخصّصة، سيحدِّد الأمر
setup
أدوار القارئ والكاتب المناسبة، ولكن ليس دورowner
. يتوفّر المزيد من المعلومات حول الأمرsetup
وأدوار PostgreSQL في دليل مرجعي لواجهة سطر الأوامر.اكتب Data Connect مخطّط GraphQL يتطابق مع مخطّط قاعدة البيانات.
لا يمكنك نشر مخطّط GraphQL واستعلاماته وعمليات التعديل فيه إلا عندما يكون مخطّط GraphQL متوافقًا مع مخطّط PostgreSQL.
لتبسيط مواءمة كلا المخطّطَين، نوفّر الأمر
firebase dataconnect:sql:diff
الذي سيزوّدك بعبارة SQL المطلوبة لنقل قاعدة بياناتك. يمكنك استخدام هذا الإجراء لتحسين مخطّط GraphQL بشكلٍ متكرّر ليطابق مخطّط قاعدة البيانات الحالي.من الآن فصاعدًا، يمكنك إجراء تكرار سريع على مخطّط GraphQL وطلبات البحث وعمليات التحويل في بيئة التطوير المحلية. بعد ذلك، عندما تكون راضيًا عن النتيجة، يمكنك استخدام
firebase dataconnect:sql:diff
للحصول على عبارات نقل البيانات باستخدام لغة الاستعلامات البنيوية (SQL) التي يمكنك تطبيقها على PostgreSQL باستخدام الأدوات والمخططات المخصّصة.بدلاً من ذلك، يمكنك إجراء تغييرات مباشرةً على قاعدة بيانات PostgreSQL أولاً، ثم محاولة نقلها مرة أخرى إلى مخطّط GraphQL. ننصحك باستخدام أسلوب GraphQL أولاً، لأنّه قد تكون هناك حالات لا يُسمَح فيها بتغييرات المخطّط. بالإضافة إلى ذلك، في حال نشر تغييرات تجعل مخطّط PostgreSQL غير متوافق مع طلبات بحث الموصّلات أو عمليات التحويل المنشورة، قد يتوقف الموصّلات عن العمل أو تؤدي إلى حدوث أخطاء.