שכפול נתונים מ-MySQL ל-BigQuery

במדריך הזה מוסבר איך ליצור ולפרוס משימה שמשכפלת באופן רציף נתונים שהשתנו ממסד נתונים של MySQL לטבלה ב-BigQuery.

מטרות

במדריך הזה תלמדו:

  1. פורסים את מסד הנתונים של MySQL ב-Compute Engine.
  2. מגדירים את מסד הנתונים של MySQL כדי להפעיל שכפול.
  3. ליצור ולהפעיל משימת שכפול של Cloud Data Fusion.
  4. התוצאות מוצגות ב-BigQuery.

עלויות

במסמך הזה משתמשים ברכיבים הבאים של Google Cloud, והשימוש בהם כרוך בתשלום:

כדי להעריך את ההוצאות בהתאם לתחזית השימוש שלכם, אתם יכולים להיעזר במחשבון העלויות.

משתמשים חדשים של Google Cloud ? יכול להיות שאתם זכאים לתקופת ניסיון בחינם.

כשמריצים שכפול, מחויבים על אשכול Managed Service for Apache Spark ונושאים בעלויות עיבוד ב-BigQuery. כדי לייעל את העלויות האלה, מומלץ מאוד להשתמש בתמחור בשיעור קבוע ב-BigQuery.

לפני שמתחילים

  1. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  2. Verify that billing is enabled for your Google Cloud project.

  3. Enable the Cloud Data Fusion, BigQuery, and Cloud Storage APIs.

    Roles required to enable APIs

    To enable APIs, you need the serviceusage.services.enable permission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.

    Enable the APIs

  4. יוצרים מכונת Cloud Data Fusion ציבורית בגרסה 6.3.0 ואילך. אם יוצרים מכונה פרטית, צריך להגדיר קישור בין רשתות שכנות (peering) של רשת VPC.
    • כשיוצרים את המופע, מפעילים את האפשרות 'שכפול' על ידי לחיצה על Add Accelerators (הוספת מאיצים) וסימון התיבה Replication (שכפול).
    • כדי להפעיל את התכונה במופע קיים, אפשר לעיין במאמר בנושא הפעלת שכפול.

התפקידים הנדרשים

כדי לקבל את ההרשאות שדרושות לכם ללימודים האלה, כדאי לעיין במאמרים בקרת גישה באמצעות IAM ואיך מעניקים הרשאת משתמש לחשבון שירות.

התקנת MySQL ב-Compute Engine

  1. מורידים קובץ אימג' של Docker של MySQL Server.

  2. מעלים את תמונת Docker ל-Artifact Registry.

  3. פורסים את קובץ האימג' של Docker במכונה וירטואלית חדשה.

  4. בדף Disks ב-Compute Engine, משנים את גודל הדיסק ל-500 GB ומפעילים מחדש את המכונה הווירטואלית.

    לפתיחת הדף Disks

  5. יוצרים חומת אש למכונת ה-VM.

  6. מתקינים את מסד הנתונים לדוגמה של Sakila.

הפעלת שכפול במסד הנתונים של MySQL

כדי להפעיל שכפול, צריך להגדיר סימון נתונים שהשתנו (CDC) ב-MySQL.

יצירה והפעלה של משימת שכפול ב-Cloud Data Fusion

העלאה של מנהל התקן JDBC

  1. מורידים את מנהל ההתקן של MySQL JDBC (גרסה 8 ואילך) למחשב המקומי.

  2. בממשק האינטרנט של Cloud Data Fusion, מעלים את מנהל ההתקן של JDBC.

    משתמשים בערכים האלה כדי להגדיר את מנהל ההתקן של JDBC:

    • בשדה שם מזינים mysql.
    • בשדה גרסה משאירים את ברירת המחדל.
    • בשדה שם הכיתה, מזינים com.mysql.jdbc.Driver.

יצירת המשרה

  1. בממשק האינטרנט של Cloud Data Fusion, לוחצים על Replication (שכפול).

  2. לוחצים על Create a replication job.

  3. בדף Create new replication job, מציינים שם למשימת השכפול ולוחצים על Next.

  4. מגדירים את המקור:

    1. בוחרים באפשרות MySQL כמקור.
    2. בשדה מארח, מזינים את שם המארח של שרת MySQL שממנו רוצים לקרוא.
    3. בשדה יציאה, מזינים את היציאה שבה רוצים להשתמש כדי להתחבר לשרת MySQL: ‏ 3306.
    4. בשדה JDBC Plugin Name (שם התוסף של JDBC), בוחרים באפשרות mysql או בשם שציינתם כשהגדרתם את מנהל ההתקן של JDBC.
    5. בשדה Database Name (שם מסד הנתונים), מזינים sakila.
    6. בקטע פרטי הכניסה, מזינים את שם המשתמש והסיסמה כדי לגשת לשרת MySQL.
  5. לוחצים על הבא.

  6. מגדירים את היעד:

    1. בוחרים את היעד ב-BigQuery.
    2. מזהה הפרויקט והמפתח של חשבון השירות מזוהים באופן אוטומטי. משאירים את ערכי ברירת המחדל.
    3. אופציונלי: בקטע מתקדם, מגדירים את שם דלי האחסון של אזור הביניים, המיקום, מרווח הטעינה, הקידומת של טבלת הביניים וההתנהגות כשמבטלים טבלאות או מסדי נתונים.
  7. לוחצים על הבא.

  8. אם החיבור יצליח, תוצג רשימה של טבלאות לדוגמה של מסד הנתונים Sakila. במדריך הזה, בוחרים כמה טבלאות ואירועים לשכפול, כמו אירועים של הוספה, עדכון ומחיקה.

  9. אופציונלי: הגדרת המאפיינים המתקדמים. במדריך הזה, אפשר להשתמש בהגדרות ברירת המחדל.

  10. לוחצים על הבא.

  11. בדף Review assessment (בדיקת הערכה), לוחצים על View mappings (הצגת מיפויים) באחת מהטבלאות כדי לראות הערכה של בעיות בסכימה, תכונות חסרות או בעיות בקישוריות שעלולות להתרחש במהלך השכפול. אם מתעוררות בעיות, צריך לפתור אותן כדי להמשיך. במדריך הזה, אם יש בעיות באחת מהטבלאות, צריך לחזור לשלב שבו בוחרים טבלאות ולבחור טבלאות או אירועים (הוספות, עדכונים או מחיקות) ללא בעיות.

    מידע נוסף על המרות של סוגי נתונים ממסד הנתונים של המקור ליעד ב-BigQuery זמין במאמר שכפול של סוגי נתונים.

  12. לוחצים על הבא.

  13. בודקים את פרטי הסיכום של עבודת השכפול ולוחצים על פריסת עבודת השכפול.

התחלת המשימה

  • בדף Replication job details (פרטי עבודת השכפול), לוחצים על Start (התחלה).

משימת השכפול עוברת מהסטטוס הקצאת משאבים לסטטוס התחלה ואז לסטטוס פועל. במצב הפעלה, משימת השכפול טוענת תמונת מצב ראשונית של נתוני הטבלה שבחרתם אל BigQuery. במצב הזה, המצב של הטבלה מופיע כSnapshotting. אחרי שהתמונה הראשונית של מצב הנתונים נטענת ל-BigQuery, כל שינוי שמתבצע בטבלה משוכפל ל-BigQuery, והמצב של הטבלה מופיע כמשוכפל.

מעקב אחרי המשרה

אתם יכולים להתחיל את פעולת השכפול ולהפסיק אותה, לבדוק את ההגדרות והיומנים שלה ולעקוב אחרי פעולת השכפול.

אפשר לעקוב אחרי הפעילויות של עבודת השכפול בדף Replication job details (פרטי עבודת השכפול).

  1. בדף Replication, לוחצים על Name של עבודת השכפול.

  2. לוחצים על מעקב.

הצגת התוצאות ב-BigQuery

משימת השכפול יוצרת מערך נתונים וטבלה משוכפלים ב-BigQuery, עם שמות שמועברים משמות מסד הנתונים והטבלה התואמים ב-MySQL.

  1. במסוף Google Cloud , עוברים לדף BigQuery.

    כניסה ל-BigQuery

  2. בחלונית הימנית, בוחרים את שם הפרויקט כדי להרחיב את רשימת מערכי הנתונים.

  3. כדי לראות את התוצאות, בוחרים את מערך הנתונים sakila ובוחרים טבלה.

מידע נוסף זמין במאמרי העזרה של BigQuery.

הסרת המשאבים

כדי להימנע מחיובים בחשבון Google Cloud בגלל השימוש במשאבים שנעשה במסגרת המדריך הזה, אפשר למחוק את הפרויקט שמכיל את המשאבים, או להשאיר את הפרויקט ולמחוק את המשאבים בנפרד.

בסיום המדריך, חשוב להסיר את המשאבים שיצרתם ב-Google Cloud כדי שלא יתפסו מכסה ולא תחויבו עליהם בעתיד. בסעיפים הבאים מוסבר איך למחוק או להשבית את המשאבים האלו.

מחיקת מכונת Cloud Data Fusion

פועלים לפי ההוראות למחיקת מכונת Cloud Data Fusion.

מחיקת הפרויקט

  1. במסוף Google Cloud , נכנסים לדף Manage resources.

    כניסה לדף Manage resources

  2. ברשימת הפרויקטים, בוחרים את הפרויקט שרוצים למחוק ולוחצים על Delete.
  3. כדי למחוק את הפרויקט, כותבים את מזהה הפרויקט בתיבת הדו-שיח ולוחצים על Shut down.

המאמרים הבאים