יכול להיות שתרצו לייצא את נתוני המופע של Looker (Google Cloud core) – כולל תוכן שנוצר ונתונים פנימיים על המופע של Looker (Google Cloud core) – ממופע אחד של Looker (Google Cloud core), ואז לייבא את הנתונים האלה למופע אחר של Looker (Google Cloud core). יש כמה סיבות שבגללן כדאי לייצא ולייבא נתונים:
- אתם רוצים לשדרג או לשדרג לאחור למהדורה אחרת של Looker (Google Cloud Core).
- רוצים להוסיף הגדרות שאפשר להפעיל רק במהלך יצירת המכונה, כמו Private Service Connect או CMEK.
- אתם רוצים לעבור למופע של Looker (Google Cloud Core) בפרויקט אחר.
- רוצים לעבור למופע של Looker (Google Cloud Core) באזור אחר.
- אתם רוצים לייצא נתונים ממופע שאינו מיועד לייצור למופע הייצור שלכם.
ייצוא חד-פעמי כולל את כל הנתונים, ההגדרות והתוכן ממופע מסוים – כולל נתונים מ-BigQuery – עם החריגים הבאים:
- דוחות של Data Studio לא מיוצאים.
- ההגדרות במסוף Google Cloud , שצריך להגדיר במסוף Google Cloud לכל מופע, לא מיוצאות. Google Cloud עם זאת, ההגדרות בחלונית Admin ב-Looker באפליקציית Looker (Google Cloud core) מיוצאות.
- טוקנים של OAuth שמאוחסנים במופע לא מיוצאים. אם נעשה שימוש ב-OAuth לחיבורים נפרדים למסד נתונים, אחרי הייבוא כל משתמש יצטרך להתחבר מחדש ולרענן את האסימונים שלו לכל חיבור למסד נתונים שמשתמש ב-OAuth.
- אם מייצאים ומייבאים למופע של Looker (Google Cloud core) שמשתמש בהגדרת רשת שונה מזו של המופע שממנו בוצע הייצוא, יכול להיות שתצטרכו להגדיר את החיבורים לשירותים חיצוניים בצורה שונה.
- אם מייצאים מופע בפרויקט אחד Google Cloud למופע בפרויקט אחר, צריך להגדיר ב-IAM הרשאות כדי לתת למשתמשים גישה למופע בפרויקט החדש.
אי אפשר לייצא ולייבא נתונים באופן חד-פעמי בזמן שמשימת ייצוא מתוזמנת פועלת. מידע על משימות מתוזמנות של ייצוא זמין בדף התיעוד בנושא יצירת ייצוא מתוזמן למופע של Looker (Google Cloud core).
ייבוא וייצוא ב-Looker (ליבת Google Cloud) לא תומכים בהעברת נתונים ממופע שלא תואם ל-FIPS למופע תואם ל-FIPS.
התפקידים הנדרשים
כדי לקבל את ההרשאות שדרושות לייבוא או לייצוא של נתונים ממופע של Looker (Google Cloud core), צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM וההרשאות הבאים:
תפקיד ה-IAM Looker Admin (
roles/looker.admin) בפרויקט שבו נוצרה המכונה.storage.buckets.getIamPolicyו-storage.buckets.setIamPolicyהרשאות בקטגוריה של Cloud Storage שבה ייווצר הייצוא. ההרשאות האלה כלולות גם בתפקידים אדמין באחסון (roles/storage.admin) ובעלים של קטגוריית אחסון מדור קודם (roles/storage.legacyBucketOwner), כך שאפשר גם לבקש להקצות לכם אחד מהתפקידים האלה.
להסבר על מתן תפקידים, ראו איך מנהלים את הגישה ברמת הפרויקט, התיקייה והארגון.
יכול להיות שאפשר לקבל את ההרשאות הנדרשות גם באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש.
ייצוא נתונים ממופע Looker (Google Cloud core) לקטגוריה של Cloud Storage
בקטעים הבאים מוסבר איך לייצא את נתוני המופע.
אובייקטים והרשאות שנדרשים לייצוא לקטגוריה של Cloud Storage
ברשימה הבאה מפורטים האובייקטים וההרשאות שנדרשים לייצוא לקטגוריה של Cloud Storage:
- חשבון שירות של Looker. אם השתמשתם ב-Google Cloud CLI, ב-Terraform או ב-API כדי ליצור את מכונת Looker (Google Cloud core) שלכם, ועדיין לא יצרתם חשבון שירות של Looker, תצטרכו ליצור אחד.
קטגוריה של Cloud Storage עם הרשאות ה-IAM הבאות שמוקצות לחשבון השירות של Looker:
- ההרשאה
storage.objects.create– ההרשאה הזו כלולה בתפקיד IAM Storage Object Creator (roles/storage.objectCreator), כך שאפשר גם להקצות את התפקיד הזה לחשבון השירות של Looker. - ההרשאות
storage.buckets.getIamPolicyו-storage.buckets.setIamPolicy– התפקידים אדמין לניהול אחסון (roles/storage.admin) או בעלים של קטגוריות אחסון מדור קודם (roles/storage.legacyBucketOwner) כוללים גם את ההרשאות האלה, כך שאפשר גם לבקש לקבל אחד מהתפקידים האלה.
- ההרשאה
מפתח הצפנה בניהול הלקוח (CMEK). ה-CMEK הזה ספציפי לתהליך הייצוא והייבוא, והוא שונה מ-CMEK שמשמש להצפנת נתוני המופע. צריך להקצות לחשבון השירות של Looker את ההרשאה
cloudkms.cryptoKeyVersions.useToEncryptשל CMEK. ההרשאה הזו כלולה בתפקיד Cloud KMS CryptoKey Encrypter (roles/cloudkms.cryptoKeyEncrypter), כך שאפשר גם להקצות את התפקיד הזה לחשבון השירות של Looker.
ייצוא לקטגוריה של Cloud Storage
כדי לייצא את הנתונים, בוחרים באחת מהאפשרויות הבאות:
console
נכנסים לדף Looker במסוף Google Cloud .
ברשימה הנפתחת Select organization (בחירת ארגון) בחלק העליון של הדף, בוחרים את משאב הארגון שכולל את מופע Looker (Google Cloud core) שממנו רוצים לייצא נתונים.
לוחצים על שם המכונה שרוצים לייצא ממנה נתונים.
לוחצים על ייצוא.
מרחיבים את הכרטיסייה ייצוא חד-פעמי.
בשדה Export Bucket (קטגוריית ייצוא), מציינים את המיקום של הקטגוריה שבה רוצים ליצור את ארטיפקט הייצוא. אפשר להזין את הנתיב בשדה להזנת קלט בתור
<bucket_name>/<folder_name>או לעיין כדי לבחור את המיקום המתאים בדלי.בשדה Select a Cloud KMS key, בוחרים את מפתח ה-CMEK שבו רוצים להשתמש להצפנת ארטיפקט הייצוא.
לוחצים על ייצוא.
gcloud
gcloud looker instances export INSTANCE_NAME \ --target-gcs-uri='gs://BUCKET_NAME/FOLDER_NAME' \ --kms-key=KMS_KEY_ID
מחליפים את מה שכתוב בשדות הבאים:
-
INSTANCE_NAME: שם למופע של Looker (Google Cloud Core), שלא משויך לכתובת ה-URL של המופע -
BUCKET_NAME: המיקום של הקטגוריה ב-Cloud Storage שבו רוצים ליצור את ארטיפקט הייצוא -
FOLDER_NAME: התיקייה שבה רוצים למקם את ארטיפקט הייצוא בקטגוריה של Cloud Storage -
KMS_KEY_ID: הנתיב המלא למזהה של מפתח ה-CMEK הספציפי לייבוא ולייצוא
ייבוא הנתונים מקטגוריה של Cloud Storage למופע של Looker (Google Cloud core)
בקטעים הבאים מוסבר איך לייבא את נתוני המופעים.
ההרשאות הנדרשות לייבוא מקטגוריה של Cloud Storage
הרשימה הבאה מציגה את ההרשאות הנדרשות לייבוא מקטגוריה של Cloud Storage:
- חשבון שירות של Looker. אם השתמשתם ב-Google Cloud CLI, ב-Terraform או ב-API כדי ליצור את מופע Looker (Google Cloud core), ועדיין לא יצרתם חשבון שירות של Looker, תצטרכו ליצור אחד.
מעניקים לחשבון השירות של Looker את הרשאות ה-IAM הבאות בקטגוריית Cloud Storage שבה נמצא הייצוא:
-
storage.objects.get– ההרשאה הזו כלולה בתפקיד Storage Object Viewer (roles/storage.objectViewer) ב-IAM, כך שאפשר גם להקצות את התפקיד הזה לחשבון השירות של Looker. - ההרשאות
storage.buckets.getIamPolicyו-storage.buckets.setIamPolicy– התפקידים אדמין לניהול אחסון (roles/storage.admin) או בעלים של קטגוריות אחסון מדור קודם (roles/storage.legacyBucketOwner) כוללים גם את ההרשאות האלה, כך שאפשר גם לבקש לקבל אחד מהתפקידים האלה.
-
צריך להקצות את ההרשאה
cloudkms.cryptoKeyVersions.useToDecryptלחשבון השירות של Looker. ההרשאה הזו כלולה בתפקיד Cloud KMS CryptoKey Decrypter (roles/cloudkms.cryptoKeyDecrypter), כך שאפשר גם להקצות את התפקיד הזה לחשבון השירות של Looker.
ייבוא מקטגוריה של Cloud Storage
כדי לייבא את הנתונים, בוחרים באחת מהאפשרויות הבאות:
console
נכנסים לדף Looker במסוף Google Cloud .
ברשימה הנפתחת Select organization (בחירת ארגון) בחלק העליון של הדף, בוחרים את משאב הארגון שכולל את מופע Looker (Google Cloud core) שאליו רוצים לייבא נתונים.
לוחצים על השם של המופע שאליו רוצים לייבא נתונים.
לוחצים על IMPORT.
בשדה Import Bucket (ייבוא קטגוריה), מזינים את הנתיב או עוברים למיקום ב-Cloud Storage שאליו ייצאתם את הנתונים. בוחרים את התיקייה שמכילה את הקובץ
metadata.jsonוקבצים אחרים.לוחצים על IMPORT.
gcloud
gcloud looker instances import INSTANCE_NAME \ --source-gcs-uri='gs://BUCKET_NAME/FOLDER_NAME'
מחליפים את מה שכתוב בשדות הבאים:
-
INSTANCE_NAME: שם למופע של Looker (Google Cloud Core), שלא משויך לכתובת ה-URL של המופע -
BUCKET_NAME: המיקום של הקטגוריה של Cloud Storage שבה נמצא הקובץmetadata.jsonוקבצים אחרים -
FOLDER_NAME: התיקייה שבה נמצא הקובץmetadata.jsonוקבצים אחרים
אחרי הייבוא, משתמשי Looker (Google Cloud core) יתבקשו לבצע אימות מחדש לכל חיבורי מסד הנתונים של BigQuery או Snowflake שמשתמשים ב-OAuth לאימות של משתמשים פרטיים. הסיבה לכך היא שבייצוא של Looker (Google Cloud core) לא נשמרים אסימוני גישה או אסימוני רענון של OAuth לחיבורי מסד נתונים של משתמשים ספציפיים.
המשתמשים יכולים לבצע אימות מחדש למסדי הנתונים שלהם באחת מהשיטות הבאות:
- צריך לפעול לפי ההנחיות של התחברות שמופיעות כשהמשתמשים צופים בטבלת Look או בלוח בקרה שמשתמשים בחיבור מסד נתונים נפרד של OAuth.
- עוברים לדף Account ולוחצים על Log in לכל אחד ממסדי הנתונים בקטע OAuth Connection Credentials.
כל התראות אוטומטיות או לוחות זמנים אוטומטיים שנמצאים בבעלות של משתמש יחיד ומתייחסים לחיבור OAuth יפסיקו לפעול עד שהמשתמש יתחבר באמצעות פרטי הכניסה שלו ל-OAuth.
פתרון בעיות בייצוא או בייבוא של נתונים ב-Looker (Google Cloud core)
בקטע הזה מתואר איך לטפל בשגיאות שעלולות לגרום לתהליך הייצוא או הייבוא להיכשל.
שגיאות במהלך הייצוא
צריך לוודא שלחשבון השירות של Looker הוקצתה ההרשאה
storage.objects.createאו תפקיד ה-IAM Storage Object Creator (roles/storage.objectCreator) בקטגוריית Cloud Storage.צריך לוודא שלחשבון השירות של Looker הוקצתה ההרשאה
cloudkms.cryptoKeyVersions.useToEncryptאו התפקיד מצפין CryptoKey ב-Cloud KMS (roles/cloudkms.cryptoKeyEncrypter) למפתח ההצפנה בניהול הלקוח (CMEK) שיצרתם.לפני שמייצאים את הנתונים, צריך לוודא שבמיקום Cloud Storage שצוין אין קבצים מפעולת ייצוא קודמת. אם יש קבצים קיימים, צריך להסיר אותם קודם.
אי אפשר להשתמש בקטגוריה של Cloud Storage שמופעל בה מגיש הבקשה משלם.
שגיאות בייבוא
מוודאים שנתתם לחשבון השירות של Looker את ההרשאה
storage.objects.getאו את תפקיד IAM Storage Object Viewer (roles/storage.objectViewer) ב-קטגוריה של Cloud Storage.צריך לוודא שהענקתם לחשבון השירות של Looker את ההרשאה
cloudkms.cryptoKeyVersions.useToDecryptאו את התפקיד Cloud KMS CryptoKey Decrypter (roles/cloudkms.cryptoKeyDecrypter) ל-Customer-managed encryption key (CMEK) שיצרתם.הייבוא עלול להיכשל בגלל חוסר תאימות בין הגרסה של מופע היעד לבין הגרסה של מופע הייצוא, מהסיבות הבאות:
- למופע היעד יש גרסה משנית של Looker שהיא ישנה יותר מגרסת Looker של הנתונים המיוצאים. לדוגמה, מכונת היעד היא ב-Looker 23.5.X, אבל הייצוא נוצר ממכונה ב-Looker בגרסה 23.6.X.
- הגרסה המשנית של המופע שיצר את נתוני הייצוא מפגרת אחרי גרסת Looker של מופע היעד ביותר מגרסה אחת. לדוגמה, מכונת היעד היא ב-Looker 23.6.X, אבל הייצוא נוצר ממכונה בגרסה Looker 23.4.X.
במקרה כזה, צריך לשדרג את מופע הייצוא או את מופע היעד כך ששני המופעים יפעלו באותה גרסת Looker.