خدمات و پایگاه داده های Data Connect را مدیریت کنید

پروژه های Data Connect شما از دو عنصر زیرساخت اصلی تشکیل شده است:

  • یک یا چند نمونه سرویس Data Connect
  • یک یا چند Cloud SQL برای نمونه های PostgreSQL

این راهنما نحوه راه‌اندازی و مدیریت نمونه‌های سرویس Data Connect را مورد بحث قرار می‌دهد و نحوه مدیریت نمونه‌های Cloud SQL مرتبط را معرفی می‌کند.

مناطق را برای Firebase Data Connect پیکربندی کنید

پروژه‌هایی که از Data Connect استفاده می‌کنند به تنظیمات مکان نیاز دارند.

هنگامی که یک نمونه سرویس Data Connect جدید ایجاد می کنید، از شما خواسته می شود مکان سرویس را انتخاب کنید.

مکان های موجود

خدمات Data Connect می توان در مناطق زیر ایجاد کرد.

  • آسیا- شرق 1
  • آسیا- شرق 2
  • آسیا-شمال شرقی 1
  • آسیا-شمال شرقی 2
  • آسیا-شمال شرقی 3
  • آسیا-جنوب 1
  • آسیا-جنوب شرقی 1
  • آسیا-جنوب شرقی 2
  • استرالیا-جنوب شرقی 1
  • استرالیا-جنوب شرقی 2
  • اروپای مرکزی 2
  • اروپا-شمال 1
  • اروپا-جنوب غربی 1
  • اروپا-غرب 1
  • اروپا-غرب 2
  • اروپا-غرب 3
  • اروپا-غرب 4
  • اروپا-غرب 6
  • اروپا-غرب 8
  • اروپا-غرب 9
  • me-west1
  • شمال امریکا-شمال شرق1
  • شمال امریکا-شمال شرق2
  • جنوب آمریکا-شرق 1
  • جنوب آمریکا-غرب 1
  • us-central1
  • us-east1
  • us-east4
  • ما-جنوب1
  • us-west1
  • us-west2
  • us-west3
  • us-west4

نمونه های سرویس Data Connect مدیریت کنید

خدمات ایجاد کنید

برای ایجاد یک سرویس جدید، از کنسول Firebase استفاده کنید یا مقداردهی اولیه پروژه محلی را با استفاده از Firebase CLI اجرا کنید. این گردش کار یک سرویس Data Connect جدید ایجاد می کند.

این جریان ها همچنین شما را از طریق زیر راهنمایی می کنند:

  • تهیه یک نمونه جدید Cloud SQL (سطح بدون هزینه)
  • پیوند یک نمونه Cloud SQL موجود به Data Connect (طرح Blaze)

مدیریت کاربران

Data Connect ابزارهایی را برای مدیریت دسترسی کاربر فراهم می کند که از اصل حداقل امتیاز (اعطای حداقل مجوزهای لازم به هر کاربر یا حساب سرویس برای پشتیبانی از عملکرد مورد نیاز) و مفهوم کنترل دسترسی مبتنی بر نقش (RBAC) (با نقش های از پیش تعریف شده برای مدیریت مجوزهای پایگاه داده، ساده سازی مدیریت امنیتی) پیروی می کند.

برای افزودن اعضای پروژه به‌عنوان کاربرانی که می‌توانند نمونه‌های Data Connect در پروژه شما تغییر دهند، از کنسول Firebase برای انتخاب نقش‌های از پیش تعریف‌شده کاربر مناسب استفاده کنید.

این نقش ها با استفاده از مدیریت هویت و دسترسی (IAM) مجوز می دهند. نقش مجموعه ای از مجوزها است. وقتی نقشی را به یکی از اعضای پروژه اختصاص می دهید، به آن عضو پروژه تمام مجوزهای موجود در آن نقش را می دهید. مشاهده اطلاعات بیشتر در:

نقش‌ها را برای فعال کردن گردش‌های کاری خاص انتخاب کنید

نقش‌های IAM، گردش‌های کاری Firebase CLI را قادر می‌سازد تا به شما امکان مدیریت پروژه‌های Data Connect خود را بدهد.

دستور CLI، گردش کار دیگر نقش(های) مورد نیاز
firebase init dataconnect
  • بدون مجوز (هنگامی که یک نمونه Cloud SQL پیوند داده نمی شود)
  • roles/cloudsql.admin (هنگام ایجاد یک نمونه Cloud SQL)
firebase deploy -–only dataconnect
  • firebasedataconnect.connectors.*
  • firebasedataconnect.services.*
  • firebasedataconnect.schemas.*
  • roles/cloudsql.admin
firebase dataconnect:sql:diff
  • firebasedataconnect.services.*
  • firebasedataconnect.schemas.*
firebase dataconnect:sql:migrate
  • roles/cloudsql.admin در نمونه هدف Cloud SQL
firebase dataconnect:sql:grant
  • roles/cloudsql.admin در نمونه هدف Cloud SQL

عملکرد سرویس Data Connect نظارت کنید

عملکرد خدمات را درک کنید

عملکرد سرویس Data Connect و سرویس Cloud SQL برای PostgreSQL می تواند بر تجربه شما تأثیر بگذارد.

  • برای سرویس Cloud SQL برای PostgreSQL، به راهنمای کلی در اسناد سهمیه‌ها و محدودیت‌ها مراجعه کنید.
  • برای سرویس Data Connect ، سهمیه ای برای درخواست های GraphQL وجود دارد که بر نرخ تماس و اجرای پرس و جوها تأثیر می گذارد:

    • سهمیه کلی هر پروژه 6000 درخواست در دقیقه از رابط های برنامه مشتری.
    • سهمیه کلی هر پروژه 6000 درخواست در دقیقه از Firebase Admin SDK و از REST API.
    • سهمیه هر کاربر 1200 درخواست در دقیقه. در اینجا، هر کاربر به این معنی است که محدودیت برای درخواست‌هایی اعمال می‌شود که توسط یک آدرس IP آغاز می‌شوند، چه از یک برنامه مشتری، چه از Firebase Admin SDK یا از REST API.

    اگر با این محدودیت‌های سهمیه مواجه شدید، لطفاً با پشتیبانی Firebase تماس بگیرید تا سهمیه مربوطه را تنظیم کنید.

نظارت بر عملکرد خدمات، استفاده و صورتحساب

می‌توانید درخواست‌ها، خطاها و نرخ‌های عملیات را چه در سطح جهانی و چه در هر عملیات در کنسول Firebase نظارت کنید.

نمونه های Cloud SQL را مدیریت کنید

محدودیت های آزمایشی رایگان

ویژگی‌های Cloud SQL زیر برای PostgreSQL در آزمایشی رایگان 3 ماهه پشتیبانی نمی‌شوند:

  • نسخه های PostgreSQL غیر از 15.x
  • استفاده از Cloud SQL موجود برای نمونه های PostgreSQL
  • ردیف ماشینی متفاوت از db-f1-micro
  • تغییر منابع نمونه شما، مانند حافظه، حافظه، CPU
  • کپی ها را بخوانید
  • آدرس IP نمونه خصوصی
  • در دسترس بودن بالا (چند منطقه ای)؛ فقط نمونه های تک منطقه ای پشتیبانی می شوند
  • نسخه Enterprise Plus
  • پشتیبان گیری خودکار
  • افزایش ذخیره سازی خودکار

مدیریت نمونه های Cloud SQL

به طور کلی، می‌توانید نمونه‌های Cloud SQL خود را با استفاده از کنسول Google Cloud برای انجام گردش‌های کاری زیر مدیریت کنید.

  • توقف و راه اندازی مجدد نمونه های Cloud SQL
  • ایجاد و حذف پایگاه داده های Cloud SQL (در داخل نمونه ها)
  • نمونه های پایگاه داده PostgreSQL را با پرچم ها شروع کنید و از انواع پسوندها استفاده کنید
  • عملکرد را با ویژگی‌های مشاهده‌پذیری Cloud SQL در کنسول Google Cloud نظارت کنید
  • دسترسی و امنیت Cloud SQL را با ویژگی‌هایی مانند IAM، مدیر مخفی، رمزگذاری داده و پروکسی تأیید مدیریت کنید.
  • افزودن، حذف و مدیریت کاربران Cloud SQL.

برای این و سایر گردش‌های کاری، به Cloud SQL برای اسناد PostgreSQL مراجعه کنید.

نقش های کاربر PostgreSQL را اعطا کنید

Data Connect ابزارهایی را برای مدیریت دسترسی کاربر فراهم می کند که از اصل حداقل امتیاز (اعطای حداقل مجوزهای لازم به هر کاربر یا حساب سرویس برای پشتیبانی از عملکرد مورد نیاز) و مفهوم کنترل دسترسی مبتنی بر نقش (RBAC) (با نقش های از پیش تعریف شده برای مدیریت مجوزهای پایگاه داده، ساده سازی مدیریت امنیتی) پیروی می کند.

در برخی موارد، ممکن است بخواهید مستقیماً از طریق یک کلاینت SQL انتخابی خود با استفاده از Cloud Run ، Cloud Functions یا GKE به پایگاه داده Cloud SQL مدیریت شده با Data Connect متصل شوید.

برای فعال کردن چنین اتصالاتی، باید مجوزهای SQL را توسط:

  • تخصیص نقش IAM roles/cloudsql.client به حساب کاربری یا سرویسی که باید به نمونه متصل شود، یا از کنسول Google Cloud یا با استفاده از gcloud CLI
  • اعطای نقش PostgreSQL لازم با استفاده از Firebase CLI

نقش Cloud SQL IAM را تعیین کنید

برای اطلاعات در مورد کار با Cloud SQL برای PostgreSQL برای تخصیص roles/cloudsql.client ، به نقش‌ها و مجوزها مراجعه کنید.

نقش های PostgreSQL را اعطا کنید

با استفاده از Firebase CLI، می‌توانید نقش‌های از پیش تعریف‌شده PostgreSQL را به کاربران یا حساب‌های خدمات مرتبط با پروژه خود با فرمان firebase dataconnect:sql:grant اعطا کنید.

به عنوان مثال، برای اعطای نقش نویسنده، این دستور را در CLI اجرا کنید:

firebase dataconnect:sql:grant --role writer

برای جزئیات، به راهنمای مرجع CLI مراجعه کنید.

یکپارچه سازی Cloud SQL موجود برای پایگاه های داده PostgreSQL

جریان پیش‌فرض تهیه و مدیریت پایگاه داده فرض می‌کند که پروژه شما از پایگاه‌های داده جدید (گرین فیلد) استفاده می‌کند، و زمانی که firebase deploy فراخوانی می‌کنید، Data Connect تغییرات طرح‌واره پایگاه‌داده را نمایش می‌دهد و پس از تأیید شما، هرگونه انتقال را انجام می‌دهد.

برای پایگاه‌های داده موجود (فیلد قهوه‌ای)، ممکن است گردش کار خود را برای مدیریت طرح‌واره‌ها داشته باشید و نتوانید از ابزار Data Connect برای انتقال استفاده کنید، اما می‌خواهید از پایگاه داده خود در پروژه Data Connect استفاده کنید تا از مزایای تولید SDK آن برای تلفن همراه و وب، مجوز مبتنی بر پرس و جو، مدیریت اتصال مشتری و موارد دیگر استفاده کنید.

این بخش راهنمایی در مورد مورد دوم ارائه می دهد: ادغام پایگاه داده های موجود با Data Connect .

یک پایگاه داده موجود را در پروژه Data Connect ادغام کنید

گردش کار برای یکپارچه سازی یک پایگاه داده موجود به طور کلی شامل این مراحل است:

  1. در طول راه اندازی پروژه Data Connect در کنسول Firebase ، نمونه و پایگاه داده را انتخاب کنید.
  2. با استفاده از Firebase CLI، فرمان firebase dataconnect:sql:setup اجرا کنید و گزینه اجازه دادن به Data Connect برای مدیریت مهاجرت های SQL را رد کنید.

    برای جلوگیری از تغییراتی که در طرح پایگاه داده شما توسط ابزار سفارشی شما ایجاد نمی شود، دستور setup نقش های خواننده و نویسنده مناسب را اختصاص می دهد، اما نقش owner را ندارد. اطلاعات بیشتر در مورد دستور setup و نقش‌های PostgreSQL در راهنمای مرجع CLI موجود است.

  3. یک طرحواره Data Connect GraphQL بنویسید که با طرح پایگاه داده شما مطابقت داشته باشد.

    شما تنها زمانی می توانید طرح، پرس و جوها و جهش های GraphQL خود را مستقر کنید که طرحواره GraphQL شما با طرحواره PostgreSQL شما سازگار باشد.

    برای ساده‌سازی تراز کردن هر دو طرحواره، دستور firebase dataconnect:sql:diff را ارائه می‌کنیم که دستورات SQL مورد نیاز را برای انتقال پایگاه داده به شما ارائه می‌دهد. شما می توانید از این برای اصلاح مکرر طرحواره GraphQL خود برای مطابقت با طرح پایگاه داده موجود خود استفاده کنید.

  4. با حرکت رو به جلو، می توانید به سرعت در طرح، پرس و جوها و جهش GraphQL خود در محیط توسعه محلی خود تکرار کنید. سپس، وقتی راضی بودید، می‌توانید از firebase dataconnect:sql:diff برای به دست آوردن دستورات مهاجرت SQL استفاده کنید که می‌توانید با استفاده از ابزار و جریان‌های سفارشی خود در PostgreSQL اعمال کنید.

  5. از طرف دیگر، ممکن است ابتدا تغییراتی را مستقیماً در پایگاه داده PostgreSQL خود ایجاد کنید، سپس سعی کنید آنها را به طرح GraphQL خود منتقل کنید. ما رویکرد GraphQL-first را توصیه می کنیم، زیرا ممکن است مواردی وجود داشته باشد که تغییرات طرحواره پشتیبانی نشود. بعلاوه، اگر تغییراتی را اعمال کنید که طرحواره PostgreSQL شما را با جستارها یا جهش های اتصال دهنده ناسازگار می کند، آن کانکتورها ممکن است کار نکنند یا بد رفتار کنند.