ב-Knowledge Catalog (לשעבר Dataplex Universal Catalog) אתם יכולים לייבא מטא-נתונים ממסדי נתונים של PostgreSQL באמצעות מחבר מנוהל. לאחר מכן תוכלו לחפש, לגלות ולנהל את נכסי מסד הנתונים האלה בקטלוג מאוחד, ולאחזר את ההקשר של המשאבים לעומסי עבודה של מודל שפה גדול (LLM).
המחבר הזה תומך במכונות PostgreSQL שמתארחות באופן מקומי, ב-Cloud SQL או בסביבות ענן אחרות. מידע נוסף על אופן הפעולה של מחברים זמין במאמר מידע על מחברי מטא-נתונים.
לפני שמתחילים
לפני שאתם מייבאים מטא-נתונים מ-PostgreSQL, אתם צריכים לבצע את המשימות הבאות:
- נותנים את התפקידים וההרשאות הנדרשים.
- מפעילים את Dataplex API ואת שירות העברת נתונים ל-BigQuery API.
- עומדים בדרישות המוקדמות של PostgreSQL.
- עומדים בדרישות המוקדמות של הרשת.
תפקידים והרשאות של IAM
כדי ליצור ולנהל משימת קישור ל-Knowledge Catalog, אתם צריכים תפקידים ב-Identity and Access Management (IAM) שמעניקים הרשאות ל-Knowledge Catalog ולשירות העברת הנתונים ל-BigQuery.
כדי לקבל את ההרשאות שדרושות להגדרת מחבר PostgreSQL, צריך לבקש מהאדמין להקצות לכם את התפקידים הבאים ב-IAM:
- כדי ליצור ולנהל קבוצות של רשומות: אדמין של Dataplex Catalog (
roles/dataplex.catalogAdmin), עריכה של Dataplex Catalog (roles/dataplex.catalogEditor) או בעלים של קבוצת רשומות ב-Dataplex (roles/dataplex.entryGroupOwner) בפרויקט. - כדי ליצור ולנהל משימות העברה של שירות העברת הנתונים ל-BigQuery: אדמין של BigQuery (
roles/bigquery.admin) בפרויקט. - כדי לצפות ביומנים ב-Cloud Logging: התפקיד צפייה ביומנים (
roles/logging.viewer) בפרויקט.
בנוסף, צריך לתת לסוכן השירות של שירות העברת הנתונים ל-BigQuery (service-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.) את ההרשאה dataplex.entryGroups.import או את התפקיד Dataplex Entry Group Importer (roles/dataplex.entryGroupImporter). אפשר להקצות את התפקיד הזה ברמת הפרויקט או ברמת קבוצת הרשומות.
במאמר ניהול הגישה תוכלו לקרוא מידע נוסף על מתן תפקידים.
הפעלת ממשקי ה-API
מפעילים את Dataplex API ואת שירות העברת נתונים ל-BigQuery API.
דרישות מוקדמות ל-PostgreSQL
מוודאים שאתם עומדים בדרישות המוקדמות להעברות מ-PostgreSQL. פרטים נוספים זמינים במאמר דרישות מוקדמות ל-PostgreSQL במסמכי התיעוד של שירות העברת הנתונים ל-BigQuery.
בנוסף לדרישות המוקדמות של שירות העברת הנתונים ל-BigQuery, מסד הנתונים של PostgreSQL צריך לעמוד בדרישות הבאות לחילוץ מטא-נתונים:
- גרסה מינימלית: PostgreSQL גרסה 15 ואילך.
- הרשאות מינימליות נדרשות: כדי לאסוף מטא-נתונים, כלי החילוץ צריך הרשאות ספציפיות.
כדי לתת את ההרשאות האלה, מריצים את הצהרות ה-SQL הבאות:
נותנים הרשאת חיבור למסד הנתונים:
GRANT CONNECT ON DATABASE DATABASE_NAME TO USERNAME;נותנים הרשאת שימוש בסכימה:
GRANT USAGE ON SCHEMA SCHEMA_NAME TO USERNAME;מקצים למשתמש את תפקידי הקריאה הנדרשים:
GRANT pg_read_all_data TO USERNAME; GRANT pg_read_all_settings TO USERNAME; GRANT pg_read_all_stats TO USERNAME;
מחליפים את מה שכתוב בשדות הבאים:
-
DATABASE_NAME: השם של מסד הנתונים ב-PostgreSQL שרוצים לגשת אליו. -
USERNAME: המשתמש במסד הנתונים שרוצים להגדיר. -
SCHEMA_NAME: שם הסכימה שרוצים לגשת אליה.
דרישות מוקדמות לרשת
כדי ששירות העברת הנתונים ל-BigQuery יוכל לגשת למסד הנתונים, צריך מחבר רשת לחיבור דרך Private Service Connect כשמתחברים באופן מאובטח למסדי נתונים חיצוניים או למקורות נתונים בענן של צד שלישי עם כתובת IP פרטית בתוך רשת פרטית.
אם אתם מתחברים לסביבה מקומית או למכונה שמתארחת בענן באמצעות כתובת IP ציבורית, אתם לא צריכים מחבר רשת.
הגדרת מחבר PostgreSQL
מגדירים מחבר PostgreSQL באמצעות Google Cloud המסוף או ה-API.
המסוף
נכנסים לדף Knowledge Catalog במסוף Google Cloud .
בתפריט הניווט, בקטע ניהול, לוחצים על מחברים.
לוחצים על הוספת חיבור.
ברשימה Connectors, בוחרים בכרטיס PostgreSQL.
בקטע Data source details, מזינים את פרטי החיבור של המכונה של PostgreSQL:
- בשדה Network attachment, בוחרים חיבור רשת קיים או יוצרים חיבור חדש.
- מזינים את הפרטים הבאים: Host, Port, Database name, Username ו-Password.
- אם משתמשים ב-TLS, בוחרים מצב TLS ומספקים אישור PEM מהימן.
- בקטע PostgreSQL objects to transfer, לוחצים על Browse כדי לבחור אובייקטים.
בקטע הגדרות היעד:
- לוחצים על Browse ובוחרים קבוצת רשומות קיימת ב-Knowledge Catalog כדי לאחסן את המטא-נתונים המיובאים, או לוחצים על Create new entry group.
- בוחרים אם להגדיר הרשאות לקבוצת הרשומות עכשיו או מאוחר יותר.
מומלץ להגדיר הרשאות כדי שהמשתמשים יוכלו לראות את המטא-נתונים המיובאים. אם לא נתתם את התפקיד Dataplex Entry Group Importer (
roles/dataplex.entryGroupImporter) או את ההרשאהdataplex.entryGroups.importלסוכן השירות של שירות העברת הנתונים ל-BigQuery (service-PROJECT_NUMBER@gcp-sa-bigquerydatatransfer.) ברמת הפרויקט, אתם צריכים לתת אותו ברמת קבוצת הרשומות.
בקטע Transfer config name, בשדה השם המוצג, מזינים שם למשימת הייבוא של המטא-נתונים.
בקטע Schedule options, מגדירים את התדירות של משימת ייבוא המטא-נתונים. אם בוחרים באפשרות On-demand, המשימה פועלת רק כשמפעילים אותה באופן ידני.
אופציונלי: בקטע Notification options, מגדירים התראה באימייל או ב-Pub/Sub על משימות שנכשלו.
אופציונלי: בקטע Advanced options, מגדירים את ההצפנה. אם אתם בוחרים במפתח הצפנה בניהול הלקוח (CMEK), שימו לב שהמפתח משמש להצפנת כל הנתונים הזמניים שנוצרו לפני שהתחילו משימות הייבוא של המטא-נתונים של Knowledge Catalog. הוא לא משמש להצפנת המטא-נתונים בקבוצת הרשומות של Knowledge Catalog ביעד.
לוחצים על Save.
REST
משתמשים ב-method projects.locations.transferConfigs.create. במשאב TransferConfig, מגדירים את השדות הבאים:
- מגדירים את השדה
dataSourceIdלערך"postgresql". - בשדה
metadataDestination, ממלאים את השדהdataplexConfiguration.entryGroupבנתיב המשאב של קבוצת הרשומות ב-Knowledge Catalog: projects/PROJECT_ID/locations/LOCATION/entryGroups/ENTRY_GROUP_ID.
המשימה פועלת באופן אוטומטי לפי לוח הזמנים שקבעתם, או שאתם יכולים להפעיל אותה באופן ידני.
חיפוש וצפייה במטא-נתונים של PostgreSQL
במסוף Google Cloud , נכנסים לדף Search ב-Knowledge Catalog.
בחלונית Filters, אפשר לסנן את נכסי PostgreSQL באמצעות הקטעים Project, Systems ו-Type aliases. בקטע Systems, בוחרים באפשרות Imported Context. כשבוחרים במסנן הזה, נפתח קטע המשנה מחברים מנוהלים. בוחרים באפשרות PostgreSQL כדי לסנן את כל המטא-נתונים של PostgreSQL.
אתם יכולים להשתמש בשדה החיפוש כדי להזין שאילתות חיפוש. אפשר לחפש לפי מילת מפתח או בשפה טבעית. לדוגמה, כדי להציג את כל הנכסים של PostgreSQL באמצעות חיפוש מילות מפתח, מזינים
system=POSTGRESQL.איך מחפשים משאבים ב-Knowledge Catalog במאמר תחביר החיפוש של Knowledge Catalog מוסבר אילו ביטויים אפשר להזין בשדה החיפוש.
אפשר גם להשתמש ב-API של LookupContext כדי לאחזר הקשר של LLM למשאבים ספציפיים של PostgreSQL. מידע נוסף זמין במאמר אחזור ההקשר של נכסי נתונים.