ייבוא מ-AlloyDB ל-PostgreSQL

כדי להטמיע נתונים מ-AlloyDB ל-PostgreSQL, צריך ליצור מאגר נתונים ולהטמיע נתונים באמצעות Google Cloud המסוף או ה-API.

אם נתוני AlloyDB ל-PostgreSQL נמצאים באותו פרויקט כמו פרויקט Gemini Enterprise, אפשר לעבור אל ייבוא נתונים מ-AlloyDB ל-PostgreSQL.

אם נתוני AlloyDB ל-PostgreSQL נמצאים בפרויקט אחר מזה של Gemini Enterprise, צריך לעבור אל הגדרת גישה ל-AlloyDB ל-PostgreSQL.

הגדרת גישה ל-AlloyDB ל-PostgreSQL מפרויקט אחר

כדי לתת ל-Gemini Enterprise גישה לנתונים של AlloyDB ל-PostgreSQL שנמצאים בפרויקט אחר, פועלים לפי השלבים הבאים:

  1. מחליפים את המשתנה PROJECT_NUMBER במספר הפרויקט שלכם ב-Gemini Enterprise, ואז מעתיקים את התוכן של בלוק הקוד הזה. זה המזהה של חשבון השירות שלך ב-Gemini Enterprise:

    service-PROJECT_NUMBER@gcp-sa-discoveryengine.iam.gserviceaccount.com
    
  2. עוברים אל Google Cloud הפרויקט שבו נמצאים הנתונים שלכם ב-AlloyDB ל-PostgreSQL.

  3. עוברים לדף IAM.

    IAM

  4. לוחצים על הענקת גישה.

  5. בשדה New principals (חשבונות משתמשים חדשים), מזינים את המזהה של חשבון השירות של Gemini Enterprise ובוחרים בתפקיד Cloud AlloyDB > Cloud AlloyDB Admin.

  6. לוחצים על Save.

  7. עוברים חזרה לפרויקט Gemini Enterprise.

אחר כך עוברים אל ייבוא נתונים מ-AlloyDB ל-PostgreSQL.

ייבוא נתונים מ-AlloyDB ל-PostgreSQL

המסוף

כדי להשתמש במסוף להעברת נתונים מ-AlloyDB ל-PostgreSQL, צריך לבצע את השלבים הבאים:

  1. נכנסים לדף Gemini Enterprise במסוף Google Cloud .

    Gemini Enterprise

  2. בתפריט הניווט, לוחצים על מאגרי נתונים.

  3. לוחצים על יצירת מאגר נתונים.

  4. בדף Select a data source, בוחרים באפשרות AlloyDB.

  5. מציינים את מזהה הפרויקט, מזהה המיקום, מזהה האשכול, מזהה מסד הנתונים ומזהה הטבלה של הנתונים שרוצים לייבא.

  6. לוחצים על Continue.

  7. בוחרים אזור למאגר הנתונים.

  8. מזינים שם למאגר הנתונים.

  9. לוחצים על יצירה.

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

    בהתאם לגודל הנתונים, תהליך ההטמעה יכול להימשך כמה דקות או כמה שעות.

REST

כדי להשתמש בשורת הפקודה כדי ליצור מאגר נתונים ולהטמיע נתונים מ-AlloyDB ל-PostgreSQL, פועלים לפי השלבים הבאים:

  1. יוצרים מאגר נתונים.

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    "https://discoveryengine.googleapis.com/v1beta/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores?dataStoreId=DATA_STORE_ID" \
    -d '{
      "displayName": "DISPLAY_NAME",
      "industryVertical": "GENERIC",
      "solutionTypes": ["SOLUTION_TYPE_SEARCH"],
    }'
    

    מחליפים את מה שכתוב בשדות הבאים:

    • PROJECT_ID: מזהה הפרויקט.
    • DATA_STORE_ID: המזהה של מאגר הנתונים. המזהה יכול להכיל רק אותיות קטנות, ספרות, קווים תחתונים ומקפים.
    • DISPLAY_NAME: השם המוצג של מאגר הנתונים. יכול להיות שההודעה תוצג במסוף. Google Cloud
  2. ייבוא נתונים מ-AlloyDB ל-PostgreSQL.

      curl -X POST \
      -H "Authorization: Bearer $(gcloud auth print-access-token)" \
      -H "Content-Type: application/json" \
      "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/branches/0/documents:import" \
      -d '{
        "alloyDbSource": {
          "projectId": "ALLOYDB_PROJECT_ID",
          "locationId": "LOCATION_ID",
          "clusterId": "CLUSTER_ID",
          "databaseId": "DATABASE_ID",
          "tableId": "TABLE_ID",
        },
        "reconciliationMode": "RECONCILIATION_MODE",
        "autoGenerateIds": "AUTO_GENERATE_IDS",
        "idField": "ID_FIELD",
      }'
    

    מחליפים את מה שכתוב בשדות הבאים:

    • PROJECT_ID: המזהה של פרויקט Gemini Enterprise.
    • DATA_STORE_ID: המזהה של מאגר הנתונים. המזהה יכול להכיל רק אותיות קטנות, ספרות, קווים תחתונים ומקפים.
    • ALLOYDB_PROJECT_ID: מזהה הפרויקט שלכם ב-AlloyDB ל-PostgreSQL.
    • LOCATION_ID: המזהה של המיקום שלכם ב-AlloyDB ל-PostgreSQL.
    • CLUSTER_ID: המזהה של אשכול AlloyDB ל-PostgreSQL.
    • DATABASE_ID: המזהה של מסד הנתונים שלכם ב-AlloyDB ל-PostgreSQL.
    • TABLE_ID: המזהה של הטבלה ב-AlloyDB ל-PostgreSQL.
    • RECONCILIATION_MODE: אופציונלי. הערכים הם FULL ו-INCREMENTAL. ברירת המחדל היא INCREMENTAL. הגדרה של INCREMENTAL גורמת לרענון מצטבר של נתונים מ-AlloyDB ל-PostgreSQL אל מאגר הנתונים. הפעולה הזו מבצעת upsert, שמוסיפה מסמכים חדשים ומחליפה מסמכים קיימים במסמכים מעודכנים עם אותו מזהה. הגדרת FULL גורמת לשינוי בסיס מלא של המסמכים במאגר הנתונים. במילים אחרות, מסמכים חדשים ומעודכנים מתווספים למאגר הנתונים, ומסמכים שלא נמצאים ב-AlloyDB ל-PostgreSQL מוסרים ממאגר הנתונים. מצב FULL שימושי אם רוצים למחוק באופן אוטומטי מסמכים שכבר לא צריך.
    • AUTO_GENERATE_IDS: אופציונלי. המדיניות קובעת אם מזהי המסמכים ייווצרו באופן אוטומטי. אם המדיניות מוגדרת לערך true, מזהי המסמכים נוצרים על סמך גיבוב של מטען הייעודי (payload). שימו לב: יכול להיות שמזהי המסמכים שנוצרו לא יישארו עקביים במהלך כמה ייבואים. אם אתם יוצרים מזהים באופן אוטומטי בכמה ייבואים, מומלץ מאוד להגדיר את reconciliationMode ל-FULL כדי לשמור על מזהים עקביים של מסמכים.
    • ID_FIELD: אופציונלי. מציינים אילו שדות הם מזהי המסמכים.

השלבים הבאים

  • כדי לצרף את מאגר הנתונים לאפליקציה, יוצרים אפליקציה ובוחרים את מאגר הנתונים לפי השלבים שמפורטים במאמר יצירת אפליקציה לחיפוש.

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