סריקה של בעיות באיכות הנתונים

במאמר הזה מוסבר איך להשתמש ב-BigQuery וב-Knowledge Catalog ביחד כדי לוודא שהנתונים עומדים בדרישות האיכות שלכם. התכונה 'איכות נתונים אוטומטית' ב-Knowledge Catalog מאפשרת להגדיר ולמדוד את איכות הנתונים בטבלאות שלכם ב-BigQuery. אתם יכולים להגדיר סריקה אוטומטית של הנתונים, לאמת את הנתונים בהתאם לכללים מוגדרים ולתעד התראות אם הנתונים לא עומדים בדרישות האיכות.

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

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

  1. מפעילים את Dataplex API, אם הוא עדיין לא מופעל.

    תפקידים שנדרשים להפעלת ממשקי API

    כדי להפעיל ממשקי API, נדרשת ההרשאה serviceusage.services.enable. אם יצרתם את הפרויקט, סביר להניח שכבר יש לכם את ההרשאה הזו דרך התפקיד 'בעלים' (roles/owner). אחרת, תוכלו לקבל את ההרשאה הזו דרך התפקיד 'אדמין בממשק Service Usage' (roles/serviceusage.serviceUsageAdmin). איך מקצים תפקידים

    להפעלת ה-API

  2. אופציונלי: אם רוצים ש-Knowledge Catalog ייצור המלצות לכללים של איכות נתונים על סמך התוצאות של סריקת פרופיל נתונים, יוצרים ומריצים את סריקת פרופיל הנתונים.

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

בקטע הזה מתוארים התפקידים וההרשאות של IAM שנדרשים כדי להשתמש בסריקות של איכות הנתונים ב-Knowledge Catalog.

תפקידים והרשאות של משתמשים

כדי לקבל את ההרשאות שדרושות להרצה ולניהול של סריקות איכות נתונים, צריך לבקש מהאדמין להקצות לכם את תפקידי ה-IAM הבאים:

  • מריצים סריקה של איכות הנתונים בטבלה ב-BigQuery:
    • BigQuery Job User (roles/bigquery.jobUser) בפרויקט כדי להריץ משימות סריקה
    • ‫BigQuery Data Viewer (צפייה בנתוני BigQuery) ‏(roles/bigquery.dataViewer) בטבלת BigQuery שרוצים לסרוק
  • פרסום תוצאות של סריקת איכות נתונים ב-Knowledge Catalog:
  • ביצוע משימות ספציפיות במשאבי DataScan:

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

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

ההרשאות הנדרשות

כדי להריץ סריקות של איכות הנתונים ולנהל אותן, נדרשות ההרשאות הבאות:

  • מריצים סריקה של איכות הנתונים בטבלה ב-BigQuery:
    • bigquery.jobs.create בפרויקט כדי להריץ משימות סריקה
    • bigquery.tables.get בטבלה ב-BigQuery שרוצים לסרוק
    • bigquery.tables.getData בטבלה ב-BigQuery שרוצים לסרוק
  • פרסום תוצאות הסריקה של איכות הנתונים ב-Knowledge Catalog:
    • bigquery.tables.update בטבלה שנסרקה
    • dataplex.entryGroups.useDataQualityScorecardAspect בתוך קבוצת הרשומות @bigquery באותו מיקום כמו הטבלה
  • יצירת DataScan: dataplex.datascans.create בפרויקט
  • מחיקת DataScan: dataplex.datascans.delete בפרויקט
  • כדי לראות את המטא-נתונים של DataScan: dataplex.datascans.get בפרויקט
  • צפייה בפרטים של DataScan, כולל כללים ותוצאות: dataplex.datascans.getData בפרויקט
  • רשימת DataScan: dataplex.datascans.list בפרויקט
  • להריץ DataScan: dataplex.datascans.run בפרויקט
  • עדכון של DataScan: dataplex.datascans.update בפרויקט
  • קבלת או הגדרת מדיניות IAM ב-DataScan:
    • dataplex.datascans.getIamPolicy בפרויקט
    • dataplex.datascans.setIamPolicy בפרויקט

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

אם אתם צריכים לגשת לעמודות שמוגנות על ידי מדיניות גישה ברמת העמודה ב-BigQuery, אתם צריכים גם הרשאות לעמודות האלה.

תפקידים והרשאות של חשבון שירות ב-Knowledge Catalog

אם לא יצרתם סריקות של איכות נתונים או סריקות פרופיל נתונים, או אם אין לכם אגם של Knowledge Catalog בפרויקט הזה, צרו מזהה שירות על ידי הפעלת הפקודה: gcloud beta services identity create --service=dataplex.googleapis.com. הפקודה הזו מחזירה מזהה של שירות קטלוג הידע, אם הוא קיים.

כדי לוודא שלחשבון השירות של Knowledge Catalog בפרויקט שמכיל את הסריקה של איכות הנתונים יש את ההרשאות הנדרשות לקריאת נתונים ממקורות שונים ולייצוא תוצאות, צריך לבקש מהאדמין להקצות את תפקידי ה-IAM הבאים לחשבון השירות של Knowledge Catalog בפרויקט שמכיל את הסריקה של איכות הנתונים:

  • קריאת נתונים מטבלה ב-BigQuery: BigQuery Data Viewer (roles/bigquery.dataViewer) בטבלאות שצריך לסרוק ובכל טבלה אחרת שמופיעה בהפניה בכללים
  • קריאת קטלוג REST של Iceberg,‏ SAP Business Data Cloud Delta Lake ו-Apache Hive ב Google Cloud נתוני טבלה של Lakehouse: BigLake Viewer (roles/biglake.viewer) בטבלאות הרלוונטיות שצריך לסרוק ובכל טבלה אחרת שמפנים אליה בכללים
  • ייצוא תוצאות הסריקה לטבלה ב-BigQuery: BigQuery Data Editor (roles/bigquery.dataEditor) במערך הנתונים ובטבלת התוצאות
  • סריקת נתונים ב-BigQuery שמסודרים באגם של Knowledge Catalog:
  • סריקה של טבלה חיצונית ב-BigQuery מ-Cloud Storage: Storage Object Viewer (roles/storage.objectViewer) בקטגוריה של Cloud Storage

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

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

ההרשאות הנדרשות

כדי לקרוא נתונים ממקורות שונים ולייצא תוצאות, נדרשות ההרשאות הבאות:

  • קריאת נתונים מטבלת BigQuery:
    • bigquery.tables.get בטבלאות BigQuery
    • bigquery.tables.getData בטבלאות BigQuery
  • ייצוא תוצאות הסריקה לטבלה ב-BigQuery:
    • bigquery.datasets.get בטבלה ובמערך הנתונים של התוצאות
    • bigquery.tables.create בטבלה ובמערך הנתונים של התוצאות
    • bigquery.tables.get בטבלה ובמערך הנתונים של התוצאות
    • bigquery.tables.getData בטבלה ובמערך הנתונים של התוצאות
    • bigquery.tables.update בטבלה ובמערך הנתונים של התוצאות
    • bigquery.tables.updateData בטבלה ובמערך הנתונים של התוצאות
  • סריקת נתונים ב-BigQuery שמסודרים באגם של Knowledge Catalog:
    • ‫dataplex.lakes.list במשאבי Dataplex
    • ‫dataplex.lakes.get במשאבי Dataplex
    • ‫dataplex.zones.list במשאבי Dataplex
    • ‫dataplex.zones.get במשאבי Dataplex
    • dataplex.entities.list במשאבי Dataplex
    • ‫dataplex.entities.get במשאבי Dataplex
    • ‫dataplex.operations.get במשאבי Dataplex
  • סריקה של טבלה חיצונית ב-BigQuery מ-Cloud Storage:
    • storage.buckets.get בקטגוריה של Cloud Storage
    • storage.objects.get בקטגוריה של Cloud Storage

יכול להיות שהאדמין יוכל גם להעניק לחשבון השירות של Knowledge Catalog בפרויקט שמכיל את הסריקה של איכות הנתונים את ההרשאות האלה באמצעות תפקידים בהתאמה אישית או תפקידים מוגדרים מראש אחרים.

אם אתם צריכים לגשת לעמודות שמוגנות על ידי מדיניות גישה ברמת העמודה ב-BigQuery, אתם צריכים להקצות הרשאות לחשבון השירות של Knowledge Catalog לעמודות האלה.

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

יצירת סריקה של איכות הנתונים

המסוף

  1. במסוף Google Cloud , בדף BigQuery Metadata curation, עוברים לכרטיסייה Data profiling & quality.

    מעבר אל 'יצירת פרופיל נתונים ואיכות'

  2. לוחצים על יצירת סריקה של איכות הנתונים.

  3. בחלון Define scan (הגדרת סריקה), ממלאים את השדות הבאים:

    1. אופציונלי: מזינים שם לתצוגה.

    2. מזינים מזהה. מוסכמות למתן שמות למשאבים

    3. אופציונלי: מזינים תיאור.

    4. בשדה טבלה, לוחצים על עיון. בוחרים את הטבלה שרוצים לסרוק ולוחצים על בחירה. הפורמטים הנתמכים הם רק BigQuery סטנדרטי, Iceberg REST Catalog,‏ SAP BDC Delta ו-Hive ב Google Cloudטבלאות Lakehouse.

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

      כדי לעיין בטבלאות שמאורגנות באגמי Knowledge Catalog, לוחצים על Browse within Knowledge Catalog Lakes (עיון באגמי Knowledge Catalog).

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

      • אם בוחרים באפשרות מצטבר: בשדה עמודת חותמת הזמן, בוחרים עמודה מהסוג DATE או TIMESTAMP מטבלת BigQuery, שערכיה גדלים ככל שמוסיפים רשומות חדשות, ושניתן להשתמש בה כדי לזהות רשומות חדשות. יכולה להיות עמודה שמחלקת את הטבלה למחיצות.
    6. אופציונלי: כדי לסנן את הנתונים, מסמנים את תיבת הסימון סינון שורות. צריך לספק מסנן שורות שמורכב מביטוי SQL תקין שאפשר להשתמש בו כחלק מתנאי WHERE בתחביר של GoogleSQL. לדוגמה, col1 >= 0. המסנן יכול להיות שילוב של כמה תנאים בעמודות. לדוגמה, col1 >= 0 AND col2 < 10.

    7. כדי לדגום את הנתונים, בוחרים אחוז דגימה ברשימה גודל הדגימה. בוחרים ערך אחוזים בין 0.0% ל-100.0% עם עד 3 ספרות אחרי הנקודה העשרונית. למערכי נתונים גדולים יותר, מומלץ לבחור אחוז דגימה נמוך יותר. לדוגמה, אם הטבלה היא בגודל 1 PB, והזנתם ערך בין 0.1% ל-1.0%, הסריקה של איכות הנתונים תדגום בין 1 ל-10 TB של נתונים. בסריקות מצטברות של נתונים, סריקת איכות הנתונים חלה על התוספת האחרונה.

    8. אופציונלי: כדי לפרסם את תוצאות הסריקה של איכות הנתונים כמטא-נתונים של Knowledge Catalog, מסמנים את תיבת הסימון פרסום התוצאות ב-Knowledge Catalog.

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

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

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

    11. בקטע תזמון, בוחרים באחת מהאפשרויות הבאות:

      • חזרה: הפעלת הסריקה של איכות הנתונים לפי לוח זמנים: כל שעה, כל יום, כל שבוע, כל חודש או בהתאמה אישית. מציינים את תדירות הסריקה ואת השעה שבה היא תתבצע. אם בוחרים באפשרות 'בהתאמה אישית', צריך להשתמש בפורמט cron כדי לציין את לוח הזמנים.

      • על פי דרישה: הרצת סריקת איכות הנתונים על פי דרישה.

      • הרצה חד-פעמית: הרצת סריקת איכות הנתונים פעם אחת עכשיו, והסרת הסריקה אחרי זמן המחיקה האוטומטית. התכונה הזו נמצאת בגרסת טרום-השקה.

        • הגדרת מחיקה אוטומטית של תוצאות אחרי סריקה: זמן המחיקה האוטומטית הוא פרק הזמן שחולף בין מועד ביצוע הסריקה לבין מועד המחיקה שלה. סריקה של איכות הנתונים ללא הגדרת זמן למחיקה אוטומטית נמחקת אוטומטית 24 שעות אחרי ההפעלה שלה. פרק הזמן למחיקה אוטומטית יכול להיות בין 0 שניות (מחיקה מיידית) ל-365 ימים.
    12. לוחצים על Continue.

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

    1. לוחצים על הוספת כללים ובוחרים באחת מהאפשרויות הבאות.

      • המלצות מבוססות פרופיל: יצירת כללים מההמלצות על סמך סריקת פרופיל נתונים קיימת.

        1. בחירת עמודות: בוחרים את העמודות שרוצים לקבל עבורן המלצות לכללים.

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

        3. בחירת תוצאות פרופיל: בוחרים תוצאת פרופיל אחת או יותר ולוחצים על אישור. כך תתמלא רשימה של כללים מוצעים שבהם תוכלו להשתמש כנקודת התחלה.

        4. מסמנים את התיבה לצד הכללים שרוצים להוסיף ולוחצים על בחירה. אחרי שבוחרים את הכללים, הם מתווספים לרשימת הכללים הנוכחית. לאחר מכן, תוכלו לערוך את הכללים.

      • סוגי כללים מובְנים: יצירת כללים מכללים מוגדרים מראש. רשימת הכללים המוגדרים מראש

        1. בחירת עמודות: בוחרים את העמודות שרוצים לבחור עבורן כללים.

        2. בחירת סוגי כללים: בוחרים את סוגי הכללים שרוצים לבחור מתוכם ולוחצים על אישור. סוגי הכללים שיופיעו תלויים בעמודות שבחרתם.

        3. מסמנים את התיבה לצד הכללים שרוצים להוסיף ולוחצים על בחירה. אחרי שבוחרים את הכללים, הם מתווספים לרשימת הכללים הנוכחית. לאחר מכן, תוכלו לערוך את הכללים.

      • כלל לבדיקת שורות ב-SQL: יוצרים כלל SQL בהתאמה אישית להחלה על כל שורה.

        1. בקטע מאפיין, בוחרים מאפיין אחד.

        2. בקטע סף מעבר, בוחרים את אחוז הרשומות שצריכות לעבור את הבדיקה.

        3. בעמודה שם העמודה, בוחרים עמודה.

        4. בשדה Provide a SQL expression (הזנת ביטוי SQL), מזינים ביטוי SQL שהערך המחושב שלו הוא בוליאני true (עבר) או false (נכשל). מידע נוסף זמין במאמר בנושא סוגים נתמכים של כללי SQL בהתאמה אישית ובדוגמאות במאמר הגדרת כללים לאיכות הנתונים.

        5. לוחצים על הוספה.

      • כלל בדיקת צבירה של SQL: יצירת כלל מותאם אישית של תנאי טבלת SQL.

        1. בקטע מאפיין, בוחרים מאפיין אחד.

        2. בעמודה שם העמודה, בוחרים עמודה.

        3. בשדה Provide a SQL expression (הזנת ביטוי SQL), מזינים ביטוי SQL שהערך המחושב שלו הוא בוליאני true (עבר) או false (נכשל). מידע נוסף זמין במאמר בנושא סוגים נתמכים של כללי SQL בהתאמה אישית ובדוגמאות במאמר הגדרת כללים לאיכות הנתונים.

        4. לוחצים על הוספה.

      • כלל הצהרת SQL: יצירת כלל הצהרת SQL מותאם אישית כדי לבדוק אם הנתונים נמצאים במצב לא תקין.

        1. בקטע מאפיין, בוחרים מאפיין אחד.

        2. אופציונלי: בעמודה שם העמודה, בוחרים עמודה.

        3. בשדה Provide a SQL statement (הזנת הצהרת SQL), מזינים הצהרת SQL שמחזירה שורות שתואמות למצב לא תקין. אם מוחזרות שורות, הכלל הזה נכשל. משמיטים את הנקודה-פסיק בסוף הצהרת ה-SQL. מידע נוסף זמין במאמר בנושא סוגים נתמכים של כללי SQL בהתאמה אישית ובדוגמאות במאמר הגדרת כללים לאיכות הנתונים.

        4. לוחצים על הוספה.

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

      • שם הכלל: מזינים שם מותאם אישית לכלל, עד 63 תווים. שם הכלל יכול לכלול אותיות (a-z, A-Z), ספרות (0-9) ומקפים (-). הוא חייב להתחיל באות ולהסתיים בספרה או באות.
      • תיאור: מזינים תיאור לכלל באורך של עד 1,024 תווים.
    3. חוזרים על השלבים הקודמים כדי להוסיף עוד כללים לסריקת איכות הנתונים. בסיום, לוחצים על המשך.

  5. אופציונלי: ייצוא תוצאות הסריקה לטבלת BigQuery רגילה. בקטע Export scan results to BigQuery table (ייצוא תוצאות הסריקה לטבלת BigQuery), מבצעים את הפעולות הבאות:

    1. בשדה Select BigQuery dataset (בחירת מערך נתונים של BigQuery), לוחצים על Browse (עיון). בוחרים מערך נתונים ב-BigQuery לאחסון התוצאות של סריקת איכות הנתונים.

    2. בשדה BigQuery table (טבלת BigQuery), מציינים את הטבלה שבה יאוחסנו תוצאות הסריקה של איכות הנתונים. אם אתם משתמשים בטבלה קיימת, ודאו שהיא תואמת לסכימת טבלת הייצוא. אם הטבלה שצוינה לא קיימת, Knowledge Catalog יוצר אותה בשבילכם.

  6. אופציונלי: מוסיפים תוויות. תוויות הן צמדי מפתח/ערך שמאפשרים לקשר בין אובייקטים או ביניהם לבין משאבים אחרים של Google Cloud .

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

    • ציון איכות (‎<=‎): שליחת דוח כשהעבודה מסתיימת בהצלחה עם ציון איכות נתונים נמוך מציון היעד שצוין. מזינים ציון איכות יעד בין 0 ל-100.
    • כשלים במשימות: נשלח דוח כשהמשימה עצמה נכשלת, בלי קשר לתוצאות של איכות הנתונים.
    • השלמת העבודה (הצלחה או כישלון): שליחת דוח כשהעבודה מסתיימת, ללא קשר לתוצאות של איכות הנתונים.
  8. לוחצים על יצירה.

    אחרי שיוצרים את הסריקה, אפשר להריץ אותה בכל שלב בלחיצה על הפעלה עכשיו.

gcloud

כדי ליצור סריקה של איכות הנתונים, משתמשים בפקודה gcloud dataplex datascans create data-quality.

אם נתוני המקור מאורגנים באגם של Knowledge Catalog, צריך לכלול את הדגל --data-source-entity:

gcloud dataplex datascans create data-quality DATASCAN \
    --location=LOCATION \
    --data-quality-spec-file=DATA_QUALITY_SPEC_FILE \
    --data-source-entity=DATA_SOURCE_ENTITY

אם נתוני המקור לא מאורגנים באגם של Knowledge Catalog, צריך לכלול את הדגל --data-source-resource:

gcloud dataplex datascans create data-quality DATASCAN \
    --location=LOCATION \
    --data-quality-spec-file=DATA_QUALITY_SPEC_FILE \
    --data-source-resource=DATA_SOURCE_RESOURCE

מחליפים את המשתנים הבאים:

  • DATASCAN: השם של הסריקה לאיכות הנתונים.
  • ‫LOCATION: האזור Google Cloud שבו רוצים ליצור את סריקת איכות הנתונים.
  • ‫DATA_QUALITY_SPEC_FILE: הנתיב לקובץ JSON או YAML שמכיל את המפרטים של סריקת איכות הנתונים. הקובץ יכול להיות קובץ מקומי או נתיב ב-Cloud Storage עם הקידומת gs://. משתמשים בקובץ הזה כדי לציין את כללי איכות הנתונים לסריקה. אפשר גם לציין פרטים נוספים בקובץ הזה, כמו מסננים, אחוז הדגימה ופעולות אחרי הסריקה כמו ייצוא ל-BigQuery או שליחת דוחות של התראות באימייל. ראו תיעוד של ייצוג JSON ודוגמה לייצוג YAML.
  • ‫DATA_SOURCE_ENTITY: הישות ב-Knowledge Catalog שמכילה את הנתונים לסריקת איכות הנתונים. לדוגמה, projects/test-project/locations/test-location/lakes/test-lake/zones/test-zone/entities/test-entity.
  • ‫DATA_SOURCE_RESOURCE: השם של המשאב שמכיל את הנתונים לסריקת איכות הנתונים. לדוגמה, //bigquery.googleapis.com/projects/test-project/datasets/test-dataset/tables/test-table.

C#‎

C#

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

using Google.Api.Gax.ResourceNames;
using Google.Cloud.Dataplex.V1;
using Google.LongRunning;

public sealed partial class GeneratedDataScanServiceClientSnippets
{
    /// <summary>Snippet for CreateDataScan</summary>
    /// <remarks>
    /// This snippet has been automatically generated and should be regarded as a code template only.
    /// It will require modifications to work:
    /// - It may require correct/in-range values for request initialization.
    /// - It may require specifying regional endpoints when creating the service client as shown in
    ///   https://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
    /// </remarks>
    public void CreateDataScanRequestObject()
    {
        // Create client
        DataScanServiceClient dataScanServiceClient = DataScanServiceClient.Create();
        // Initialize request argument(s)
        CreateDataScanRequest request = new CreateDataScanRequest
        {
            ParentAsLocationName = LocationName.FromProjectLocation("[PROJECT]", "[LOCATION]"),
            DataScan = new DataScan(),
            DataScanId = "",
            ValidateOnly = false,
        };
        // Make the request
        Operation<DataScan, OperationMetadata> response = dataScanServiceClient.CreateDataScan(request);

        // Poll until the returned long-running operation is complete
        Operation<DataScan, OperationMetadata> completedResponse = response.PollUntilCompleted();
        // Retrieve the operation result
        DataScan result = completedResponse.Result;

        // Or get the name of the operation
        string operationName = response.Name;
        // This name can be stored, then the long-running operation retrieved later by name
        Operation<DataScan, OperationMetadata> retrievedResponse = dataScanServiceClient.PollOnceCreateDataScan(operationName);
        // Check if the retrieved long-running operation has completed
        if (retrievedResponse.IsCompleted)
        {
            // If it has completed, then access the result
            DataScan retrievedResult = retrievedResponse.Result;
        }
    }
}

המשך

Go

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.


//go:build examples

package main

import (
	"context"

	dataplex "cloud.google.com/go/dataplex/apiv1"
	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
)

func main() {
	ctx := context.Background()
	// This snippet has been automatically generated and should be regarded as a code template only.
	// It will require modifications to work:
	// - It may require correct/in-range values for request initialization.
	// - It may require specifying regional endpoints when creating the service client as shown in:
	//   https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
	c, err := dataplex.NewDataScanClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataplexpb.CreateDataScanRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#CreateDataScanRequest.
	}
	op, err := c.CreateDataScan(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}

	resp, err := op.Wait(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

Java

Java

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

import com.google.cloud.dataplex.v1.CreateDataScanRequest;
import com.google.cloud.dataplex.v1.DataScan;
import com.google.cloud.dataplex.v1.DataScanServiceClient;
import com.google.cloud.dataplex.v1.LocationName;

public class SyncCreateDataScan {

  public static void main(String[] args) throws Exception {
    syncCreateDataScan();
  }

  public static void syncCreateDataScan() throws Exception {
    // This snippet has been automatically generated and should be regarded as a code template only.
    // It will require modifications to work:
    // - It may require correct/in-range values for request initialization.
    // - It may require specifying regional endpoints when creating the service client as shown in
    // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (DataScanServiceClient dataScanServiceClient = DataScanServiceClient.create()) {
      CreateDataScanRequest request =
          CreateDataScanRequest.newBuilder()
              .setParent(LocationName.of("[PROJECT]", "[LOCATION]").toString())
              .setDataScan(DataScan.newBuilder().build())
              .setDataScanId("dataScanId1260787906")
              .setValidateOnly(true)
              .build();
      DataScan response = dataScanServiceClient.createDataScanAsync(request).get();
    }
  }
}

Node.js

Node.js

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

// Copyright 2026 Google LLC
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
//     https://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
// ** This file is automatically generated by gapic-generator-typescript. **
// ** https://github.com/googleapis/gapic-generator-typescript **
// ** All changes to this file may be overwritten. **



'use strict';

function main(parent, dataScan) {
  /**
   * This snippet has been automatically generated and should be regarded as a code template only.
   * It will require modifications to work.
   * It may require correct/in-range values for request initialization.
   * TODO(developer): Uncomment these variables before running the sample.
   */
  /**
   *  Required. The resource name of the parent location:
   *  `projects/{project}/locations/{location_id}`
   *  where `project` refers to a *project_id* or *project_number* and
   *  `location_id` refers to a Google Cloud region.
   */
  // const parent = 'abc123'
  /**
   *  Required. DataScan resource.
   */
  // const dataScan = {}
  /**
   *  Optional. DataScan identifier. If not provided, a unique ID will be
   *  generated with the prefix "data-scan-".
   *  * Must contain only lowercase letters, numbers and hyphens.
   *  * Must start with a letter.
   *  * Must end with a number or a letter.
   *  * Must be between 1-63 characters.
   *  * Must be unique within the customer project / location.
   */
  // const dataScanId = 'abc123'
  /**
   *  Optional. Only validate the request, but do not perform mutations.
   *  The default is `false`.
   */
  // const validateOnly = true

  // Imports the Dataplex library
  const {DataScanServiceClient} = require('@google-cloud/dataplex').v1;

  // Instantiates a client
  const dataplexClient = new DataScanServiceClient();

  async function callCreateDataScan() {
    // Construct request
    const request = {
      parent,
      dataScan,
    };

    // Run request
    const [operation] = await dataplexClient.createDataScan(request);
    const [response] = await operation.promise();
    console.log(response);
  }

  callCreateDataScan();
}

process.on('unhandledRejection', err => {
  console.error(err.message);
  process.exitCode = 1;
});
main(...process.argv.slice(2));

Python

Python

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

# Copyright 2026 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.

import google.api_core.exceptions
from google.cloud import dataplex_v1


def create_data_quality_scan_global(
    project_id: str,
    dataset_id: str,
    table_id: str,
    location: str,
    column_id_1: str,
    column_id_2: str,
) -> None:
    """Creates a Dataplex Data Quality Scan using global API endpoint routing.

    Args:
        project_id (str): Google Cloud project ID where the scan is created.
        dataset_id (str): Target BigQuery dataset ID.
        table_id (str): Target BigQuery table ID to scan.
        location (str): Google Cloud region where serverless compute runs.
        column_id_1 (str): Name of the first column to evaluate.
        column_id_2 (str): Name of the second column to evaluate.
    """
    client = dataplex_v1.DataScanServiceClient()

    parent = client.common_location_path(project=project_id, location=location)

    # A bigquery table with at least 2 columns is assumed.
    bigquery_table = (
        f"//bigquery.googleapis.com/projects/{project_id}"
        f"/datasets/{dataset_id}/tables/{table_id}"
    )

    data_quality_spec = dataplex_v1.DataQualitySpec(
        rules=[
            dataplex_v1.DataQualityRule(
                name="global-null-assertion",
                dimension="COMPLETENESS",
                description="Fails if any row contains a null value",
                sql_assertion=dataplex_v1.DataQualityRule.SqlAssertion(
                    # Use ${data()} as the placeholder for the table Dataplex is scanning
                    sql_statement=(
                        "SELECT * FROM ${data()} "
                        f"WHERE {column_id_1} IS NULL OR {column_id_2} IS NULL"
                    )
                ),
            )
        ]
    )

    data_scan = dataplex_v1.DataScan(
        display_name="Global Data Quality Scan",
        data=dataplex_v1.DataSource(resource=bigquery_table),
        data_quality_spec=data_quality_spec,
    )

    request = dataplex_v1.CreateDataScanRequest(parent=parent, data_scan=data_scan)

    try:
        operation = client.create_data_scan(request=request)
        print(operation.result())
    except google.api_core.exceptions.AlreadyExists:
        print("A scan with this ID already exists.")
    except google.api_core.exceptions.InvalidArgument as e:
        print(f"Your scan configuration is invalid: {e}")
    except google.api_core.exceptions.GoogleAPIError as e:
        print(f"Unexpected exception: {e}")

Ruby

Ruby

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

require "google/cloud/dataplex/v1"

##
# Snippet for the create_data_scan call in the DataScanService service
#
# This snippet has been automatically generated and should be regarded as a code
# template only. It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in https://cloud.google.com/ruby/docs/reference.
#
# This is an auto-generated example demonstrating basic usage of
# Google::Cloud::Dataplex::V1::DataScanService::Client#create_data_scan.
#
def create_data_scan
  # Create a client object. The client can be reused for multiple calls.
  client = Google::Cloud::Dataplex::V1::DataScanService::Client.new

  # Create a request. To set request fields, pass in keyword arguments.
  request = Google::Cloud::Dataplex::V1::CreateDataScanRequest.new

  # Call the create_data_scan method.
  result = client.create_data_scan request

  # The returned object is of type Gapic::Operation. You can use it to
  # check the status of an operation, cancel it, or wait for results.
  # Here is how to wait for a response.
  result.wait_until_done! timeout: 60
  if result.response?
    p result.response
  else
    puts "No response received."
  end
end

REST

כדי ליצור סריקה של איכות הנתונים, משתמשים ב-method‏ dataScans.create.

הבקשה הבאה יוצרת סריקה חד-פעמית של איכות הנתונים:

POST https://dataplex.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/dataScans?data_scan_id=DATASCAN_ID

{
"data": {
  "resource": "//bigquery.googleapis.com/projects/PROJECT_ID/datasets/DATASET_ID/tables/TABLE_ID"
},
"type": "DATA_QUALITY",
"executionSpec": {
  "trigger": {
    "oneTime": {
      "ttl_after_scan_completion": "120s"
    }
  }
},
"dataQualitySpec": {
  "rules": [
    {
      "nonNullExpectation": {},
      "column": "COLUMN_NAME",
      "dimension": "DIMENSION",
      "threshold": 1
    }
  ],
  "filter": "FILTER_CONDITION"
}
}

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

  • ‫PROJECT_ID: מזהה הפרויקט.
  • LOCATION: האזור שבו ייסרק המידע כדי לבדוק את איכות הנתונים.
  • ‫DATASCAN_ID: המזהה של סריקת איכות הנתונים.
  • ‫DATASET_ID: המזהה של מערך הנתונים ב-BigQuery.
  • ‫TABLE_ID: המזהה של הטבלה ב-BigQuery.
  • ‫COLUMN_NAME: שם העמודה של הכלל.
  • ‫DIMENSION: המאפיין של הכלל, למשל VALIDITY.
  • ‫FILTER_CONDITION: מחרוזת סינון AIP-160 אופציונלית להרצת כללים באופן סלקטיבי (לדוגמה, name = \"RULE_NAME\").

אם רוצים ליצור כללים לסריקת איכות הנתונים באמצעות המלצות לכללים שמבוססות על התוצאות של סריקת פרופיל הנתונים, צריך לקבל את ההמלצות על ידי קריאה לשיטה dataScans.jobs.generateDataQualityRules בסריקת פרופיל הנתונים.

הפעלת סריקה של איכות הנתונים

המסוף

  1. במסוף Google Cloud , בדף BigQuery Metadata curation, עוברים לכרטיסייה Data profiling & quality.

    מעבר אל 'יצירת פרופיל נתונים ואיכות'

  2. לוחצים על סריקת איכות הנתונים כדי להריץ אותה.

  3. לוחצים על הפעלה מיידית.

gcloud

כדי להריץ סריקה של איכות הנתונים, משתמשים בפקודה gcloud dataplex datascans run:

gcloud dataplex datascans run DATASCAN \
--location=LOCATION \

מחליפים את המשתנים הבאים:

  • ‫LOCATION: האזור Google Cloud שבו נוצרה סריקת איכות הנתונים.
  • DATASCAN: השם של הסריקה לאיכות הנתונים.

C#‎

C#

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

using Google.Cloud.Dataplex.V1;

public sealed partial class GeneratedDataScanServiceClientSnippets
{
    /// <summary>Snippet for RunDataScan</summary>
    /// <remarks>
    /// This snippet has been automatically generated and should be regarded as a code template only.
    /// It will require modifications to work:
    /// - It may require correct/in-range values for request initialization.
    /// - It may require specifying regional endpoints when creating the service client as shown in
    ///   https://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
    /// </remarks>
    public void RunDataScanRequestObject()
    {
        // Create client
        DataScanServiceClient dataScanServiceClient = DataScanServiceClient.Create();
        // Initialize request argument(s)
        RunDataScanRequest request = new RunDataScanRequest
        {
            DataScanName = DataScanName.FromProjectLocationDataScan("[PROJECT]", "[LOCATION]", "[DATASCAN]"),
        };
        // Make the request
        RunDataScanResponse response = dataScanServiceClient.RunDataScan(request);
    }
}

המשך

Go

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.


//go:build examples

package main

import (
	"context"

	dataplex "cloud.google.com/go/dataplex/apiv1"
	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
)

func main() {
	ctx := context.Background()
	// This snippet has been automatically generated and should be regarded as a code template only.
	// It will require modifications to work:
	// - It may require correct/in-range values for request initialization.
	// - It may require specifying regional endpoints when creating the service client as shown in:
	//   https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
	c, err := dataplex.NewDataScanClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataplexpb.RunDataScanRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#RunDataScanRequest.
	}
	resp, err := c.RunDataScan(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

Java

Java

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

import com.google.cloud.dataplex.v1.DataScanName;
import com.google.cloud.dataplex.v1.DataScanServiceClient;
import com.google.cloud.dataplex.v1.RunDataScanRequest;
import com.google.cloud.dataplex.v1.RunDataScanResponse;

public class SyncRunDataScan {

  public static void main(String[] args) throws Exception {
    syncRunDataScan();
  }

  public static void syncRunDataScan() throws Exception {
    // This snippet has been automatically generated and should be regarded as a code template only.
    // It will require modifications to work:
    // - It may require correct/in-range values for request initialization.
    // - It may require specifying regional endpoints when creating the service client as shown in
    // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (DataScanServiceClient dataScanServiceClient = DataScanServiceClient.create()) {
      RunDataScanRequest request =
          RunDataScanRequest.newBuilder()
              .setName(DataScanName.of("[PROJECT]", "[LOCATION]", "[DATASCAN]").toString())
              .build();
      RunDataScanResponse response = dataScanServiceClient.runDataScan(request);
    }
  }
}

Python

Python

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import dataplex_v1


def sample_run_data_scan():
    # Create a client
    client = dataplex_v1.DataScanServiceClient()

    # Initialize request argument(s)
    request = dataplex_v1.RunDataScanRequest(
        name="name_value",
    )

    # Make the request
    response = client.run_data_scan(request=request)

    # Handle the response
    print(response)

Ruby

Ruby

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

require "google/cloud/dataplex/v1"

##
# Snippet for the run_data_scan call in the DataScanService service
#
# This snippet has been automatically generated and should be regarded as a code
# template only. It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in https://cloud.google.com/ruby/docs/reference.
#
# This is an auto-generated example demonstrating basic usage of
# Google::Cloud::Dataplex::V1::DataScanService::Client#run_data_scan.
#
def run_data_scan
  # Create a client object. The client can be reused for multiple calls.
  client = Google::Cloud::Dataplex::V1::DataScanService::Client.new

  # Create a request. To set request fields, pass in keyword arguments.
  request = Google::Cloud::Dataplex::V1::RunDataScanRequest.new

  # Call the run_data_scan method.
  result = client.run_data_scan request

  # The returned object is of type Google::Cloud::Dataplex::V1::RunDataScanResponse.
  p result
end

REST

כדי להריץ סריקה של איכות הנתונים, משתמשים ב-dataScans.run method.

Airflow

כדי להריץ סריקה של איכות הנתונים באמצעות גרף אציקלי מכוון (DAG) ב-Managed Service for Apache Airflow (Cloud Composer), צריך להשתמש ב-DataplexRunDataQualityScanOperator:

from datetime import datetime
from airflow import DAG
from airflow.providers.google.cloud.operators.dataplex import DataplexRunDataQualityScanOperator

with DAG(
  "dataplex_auto_dq_scan",
  start_date=datetime(2026, 1, 1),
  schedule_interval="@daily",
  catchup=False,
) as dag:

  run_dq_scan = DataplexRunDataQualityScanOperator(
      task_id="run_dataplex_dq_scan",
      project_id="PROJECT_ID",
      region="REGION",
      data_scan_id="DATASCAN_ID",
  )

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

  • ‫PROJECT_ID: מזהה הפרויקט ב- Google Cloud .
  • ‫REGION: Google Cloud האזור שבו נוצרה סריקת איכות הנתונים.
  • ‫DATASCAN_ID: המזהה של סריקת איכות הנתונים.

צפייה בתוצאות של סריקת איכות הנתונים

המסוף

  1. במסוף Google Cloud , בדף BigQuery Metadata curation, עוברים לכרטיסייה Data profiling & quality.

    מעבר אל 'יצירת פרופיל נתונים ואיכות'

  2. לוחצים על השם של סריקת איכות הנתונים.

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

    • בקטע הגדרות סריקת איכות הנתונים מוצגים פרטים על הסריקה.

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

gcloud

כדי לראות את התוצאות של משימת סריקה של איכות הנתונים, משתמשים בפקודה gcloud dataplex datascans jobs describe:

gcloud dataplex datascans jobs describe JOB \
--location=LOCATION \
--datascan=DATASCAN \
--view=FULL

מחליפים את המשתנים הבאים:

  • ‫JOB: מזהה המשימה של סריקת איכות הנתונים.
  • ‫LOCATION: האזור שבו נוצרה סריקת Google Cloud איכות הנתונים.
  • ‫DATASCAN: השם של הסריקה של איכות הנתונים שהעבודה שייכת לה.
  • ‫--view=FULL: כדי לראות את תוצאת עבודת הסריקה, מציינים FULL.

C#‎

C#

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

using Google.Cloud.Dataplex.V1;

public sealed partial class GeneratedDataScanServiceClientSnippets
{
    /// <summary>Snippet for GetDataScan</summary>
    /// <remarks>
    /// This snippet has been automatically generated and should be regarded as a code template only.
    /// It will require modifications to work:
    /// - It may require correct/in-range values for request initialization.
    /// - It may require specifying regional endpoints when creating the service client as shown in
    ///   https://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
    /// </remarks>
    public void GetDataScanRequestObject()
    {
        // Create client
        DataScanServiceClient dataScanServiceClient = DataScanServiceClient.Create();
        // Initialize request argument(s)
        GetDataScanRequest request = new GetDataScanRequest
        {
            DataScanName = DataScanName.FromProjectLocationDataScan("[PROJECT]", "[LOCATION]", "[DATASCAN]"),
            View = GetDataScanRequest.Types.DataScanView.Unspecified,
        };
        // Make the request
        DataScan response = dataScanServiceClient.GetDataScan(request);
    }
}

המשך

Go

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.


//go:build examples

package main

import (
	"context"

	dataplex "cloud.google.com/go/dataplex/apiv1"
	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
)

func main() {
	ctx := context.Background()
	// This snippet has been automatically generated and should be regarded as a code template only.
	// It will require modifications to work:
	// - It may require correct/in-range values for request initialization.
	// - It may require specifying regional endpoints when creating the service client as shown in:
	//   https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
	c, err := dataplex.NewDataScanClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataplexpb.GetDataScanRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#GetDataScanRequest.
	}
	resp, err := c.GetDataScan(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

Java

Java

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

import com.google.cloud.dataplex.v1.DataScan;
import com.google.cloud.dataplex.v1.DataScanName;
import com.google.cloud.dataplex.v1.DataScanServiceClient;
import com.google.cloud.dataplex.v1.GetDataScanRequest;

public class SyncGetDataScan {

  public static void main(String[] args) throws Exception {
    syncGetDataScan();
  }

  public static void syncGetDataScan() throws Exception {
    // This snippet has been automatically generated and should be regarded as a code template only.
    // It will require modifications to work:
    // - It may require correct/in-range values for request initialization.
    // - It may require specifying regional endpoints when creating the service client as shown in
    // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (DataScanServiceClient dataScanServiceClient = DataScanServiceClient.create()) {
      GetDataScanRequest request =
          GetDataScanRequest.newBuilder()
              .setName(DataScanName.of("[PROJECT]", "[LOCATION]", "[DATASCAN]").toString())
              .build();
      DataScan response = dataScanServiceClient.getDataScan(request);
    }
  }
}

Python

Python

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import dataplex_v1


def sample_get_data_scan():
    # Create a client
    client = dataplex_v1.DataScanServiceClient()

    # Initialize request argument(s)
    request = dataplex_v1.GetDataScanRequest(
        name="name_value",
    )

    # Make the request
    response = client.get_data_scan(request=request)

    # Handle the response
    print(response)

Ruby

Ruby

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

require "google/cloud/dataplex/v1"

##
# Snippet for the get_data_scan call in the DataScanService service
#
# This snippet has been automatically generated and should be regarded as a code
# template only. It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in https://cloud.google.com/ruby/docs/reference.
#
# This is an auto-generated example demonstrating basic usage of
# Google::Cloud::Dataplex::V1::DataScanService::Client#get_data_scan.
#
def get_data_scan
  # Create a client object. The client can be reused for multiple calls.
  client = Google::Cloud::Dataplex::V1::DataScanService::Client.new

  # Create a request. To set request fields, pass in keyword arguments.
  request = Google::Cloud::Dataplex::V1::GetDataScanRequest.new

  # Call the get_data_scan method.
  result = client.get_data_scan request

  # The returned object is of type Google::Cloud::Dataplex::V1::DataScan.
  p result
end

REST

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

צפייה בתוצאות שפורסמו

אם תוצאות הסריקה של איכות הנתונים מתפרסמות כמטא-נתונים ב-Knowledge Catalog, אפשר לראות את תוצאות הסריקה האחרונות בדפים של BigQuery ו-Knowledge Catalog במסוףGoogle Cloud , בכרטיסייה Data quality של טבלת המקור.

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

    כניסה ל-BigQuery

  2. בחלונית הימנית, לוחצים על כלי הניתוחים:

    כפתור מודגש לחלונית הסייר.

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

  3. בחלונית Explorer לוחצים על Datasets ואז על מערך הנתונים.

  4. לוחצים על סקירה כללית > טבלאות, ואז בוחרים את הטבלה שרוצים לראות את תוצאות הסריקה של איכות הנתונים שלה.

  5. לוחצים על הכרטיסייה איכות הנתונים.

    מוצגות התוצאות האחרונות שפורסמו.

הצגת תוצאות סריקה היסטוריות

ב-Knowledge Catalog נשמרת היסטוריית הסריקות של איכות הנתונים מ-300 המשימות האחרונות או מהשנה האחרונה, לפי המוקדם מביניהם.

המסוף

  1. במסוף Google Cloud , בדף BigQuery Metadata curation, עוברים לכרטיסייה Data profiling & quality.

    מעבר אל 'יצירת פרופיל נתונים ואיכות'

  2. לוחצים על השם של סריקת איכות הנתונים.

  3. לוחצים על הכרטיסייה Jobs history (היסטוריית המשרות).

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

  4. כדי לראות מידע מפורט על משימה, לוחצים על אחת המשימות בעמודה מזהה משימה.

gcloud

כדי להציג את המשימות ההיסטוריות של סריקת איכות הנתונים, משתמשים בפקודה gcloud dataplex datascans jobs list:

gcloud dataplex datascans jobs list \
--location=LOCATION \
--datascan=DATASCAN \

מחליפים את המשתנים הבאים:

  • ‫LOCATION: האזור שבו נוצרה סריקת Google Cloud איכות הנתונים.
  • ‫DATASCAN: השם של הסריקה של איכות הנתונים שרוצים לראות את היסטוריית העבודות שלה.

C#‎

C#

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

using Google.Api.Gax;
using Google.Cloud.Dataplex.V1;
using System;

public sealed partial class GeneratedDataScanServiceClientSnippets
{
    /// <summary>Snippet for ListDataScanJobs</summary>
    /// <remarks>
    /// This snippet has been automatically generated and should be regarded as a code template only.
    /// It will require modifications to work:
    /// - It may require correct/in-range values for request initialization.
    /// - It may require specifying regional endpoints when creating the service client as shown in
    ///   https://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
    /// </remarks>
    public void ListDataScanJobsRequestObject()
    {
        // Create client
        DataScanServiceClient dataScanServiceClient = DataScanServiceClient.Create();
        // Initialize request argument(s)
        ListDataScanJobsRequest request = new ListDataScanJobsRequest
        {
            ParentAsDataScanName = DataScanName.FromProjectLocationDataScan("[PROJECT]", "[LOCATION]", "[DATASCAN]"),
            Filter = "",
        };
        // Make the request
        PagedEnumerable<ListDataScanJobsResponse, DataScanJob> response = dataScanServiceClient.ListDataScanJobs(request);

        // Iterate over all response items, lazily performing RPCs as required
        foreach (DataScanJob item in response)
        {
            // Do something with each item
            Console.WriteLine(item);
        }

        // Or iterate over pages (of server-defined size), performing one RPC per page
        foreach (ListDataScanJobsResponse page in response.AsRawResponses())
        {
            // Do something with each page of items
            Console.WriteLine("A page of results:");
            foreach (DataScanJob item in page)
            {
                // Do something with each item
                Console.WriteLine(item);
            }
        }

        // Or retrieve a single page of known size (unless it's the final page), performing as many RPCs as required
        int pageSize = 10;
        Page<DataScanJob> singlePage = response.ReadPage(pageSize);
        // Do something with the page of items
        Console.WriteLine($"A page of {pageSize} results (unless it's the final page):");
        foreach (DataScanJob item in singlePage)
        {
            // Do something with each item
            Console.WriteLine(item);
        }
        // Store the pageToken, for when the next page is required.
        string nextPageToken = singlePage.NextPageToken;
    }
}

המשך

Go

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.


//go:build examples

package main

import (
	"context"

	dataplex "cloud.google.com/go/dataplex/apiv1"
	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
	"google.golang.org/api/iterator"
)

func main() {
	ctx := context.Background()
	// This snippet has been automatically generated and should be regarded as a code template only.
	// It will require modifications to work:
	// - It may require correct/in-range values for request initialization.
	// - It may require specifying regional endpoints when creating the service client as shown in:
	//   https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
	c, err := dataplex.NewDataScanClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataplexpb.ListDataScanJobsRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#ListDataScanJobsRequest.
	}
	it := c.ListDataScanJobs(ctx, req)
	for {
		resp, err := it.Next()
		if err == iterator.Done {
			break
		}
		if err != nil {
			// TODO: Handle error.
		}
		// TODO: Use resp.
		_ = resp

		// If you need to access the underlying RPC response,
		// you can do so by casting the `Response` as below.
		// Otherwise, remove this line. Only populated after
		// first call to Next(). Not safe for concurrent access.
		_ = it.Response.(*dataplexpb.ListDataScanJobsResponse)
	}
}

Java

Java

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

import com.google.cloud.dataplex.v1.DataScanJob;
import com.google.cloud.dataplex.v1.DataScanName;
import com.google.cloud.dataplex.v1.DataScanServiceClient;
import com.google.cloud.dataplex.v1.ListDataScanJobsRequest;

public class SyncListDataScanJobs {

  public static void main(String[] args) throws Exception {
    syncListDataScanJobs();
  }

  public static void syncListDataScanJobs() throws Exception {
    // This snippet has been automatically generated and should be regarded as a code template only.
    // It will require modifications to work:
    // - It may require correct/in-range values for request initialization.
    // - It may require specifying regional endpoints when creating the service client as shown in
    // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (DataScanServiceClient dataScanServiceClient = DataScanServiceClient.create()) {
      ListDataScanJobsRequest request =
          ListDataScanJobsRequest.newBuilder()
              .setParent(DataScanName.of("[PROJECT]", "[LOCATION]", "[DATASCAN]").toString())
              .setPageSize(883849137)
              .setPageToken("pageToken873572522")
              .setFilter("filter-1274492040")
              .build();
      for (DataScanJob element : dataScanServiceClient.listDataScanJobs(request).iterateAll()) {
        // doThingsWith(element);
      }
    }
  }
}

Python

Python

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import dataplex_v1


def sample_list_data_scan_jobs():
    # Create a client
    client = dataplex_v1.DataScanServiceClient()

    # Initialize request argument(s)
    request = dataplex_v1.ListDataScanJobsRequest(
        parent="parent_value",
    )

    # Make the request
    page_result = client.list_data_scan_jobs(request=request)

    # Handle the response
    for response in page_result:
        print(response)

Ruby

Ruby

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

require "google/cloud/dataplex/v1"

##
# Snippet for the list_data_scan_jobs call in the DataScanService service
#
# This snippet has been automatically generated and should be regarded as a code
# template only. It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in https://cloud.google.com/ruby/docs/reference.
#
# This is an auto-generated example demonstrating basic usage of
# Google::Cloud::Dataplex::V1::DataScanService::Client#list_data_scan_jobs.
#
def list_data_scan_jobs
  # Create a client object. The client can be reused for multiple calls.
  client = Google::Cloud::Dataplex::V1::DataScanService::Client.new

  # Create a request. To set request fields, pass in keyword arguments.
  request = Google::Cloud::Dataplex::V1::ListDataScanJobsRequest.new

  # Call the list_data_scan_jobs method.
  result = client.list_data_scan_jobs request

  # The returned object is of type Gapic::PagedEnumerable. You can iterate
  # over elements, and API calls will be issued to fetch pages as needed.
  result.each do |item|
    # Each element is of type ::Google::Cloud::Dataplex::V1::DataScanJob.
    p item
  end
end

REST

כדי לראות את המשימות ההיסטוריות של סריקת איכות הנתונים, משתמשים בשיטה dataScans.jobs.list.

סטטוסים של משרות

למשימות סריקת נתונים יכולים להיות הסטטוסים הבאים:

  • ‫PENDING: המשימה נוצרה אבל עדיין לא התחילה לפעול. במצב הזה, הסריקה מגדירה באופן פעיל את התשתית או מקצה משבצות. השלב הזה יכול להימשך 10 עד 20 שניות או יותר, בהתאם למורכבות הסכימה ולתחרות על משאבים.

  • ‫RUNNING: המשימה פועלת.

  • ‫CANCELING: המשימה מתבטלת.

  • ‫CANCELLED: המשימה בוטלה בהצלחה.

  • ‫SUCCEEDED: המשימה הושלמה בהצלחה. יכול להיות שיהיה עיכוב של עד 60 שניות בין השלמת השאילתה לבין עדכון סטטוס ההשלמה, בגלל שלבי עיבוד שלאחר מכן, כמו צבירה וסנכרון מטא-נתונים.

  • ‫FAILED: המשימה נכשלת בגלל שגיאה. יכול להיות שיהיה עיכוב של עד 60 שניות בין השלמת השאילתה לבין עדכון סטטוס ההשלמה, בגלל שלבי עיבוד שלאחר מכן, כמו צבירה וסנכרון מטא-נתונים.

  • ‫SUCCEEDED_WITH_ERRORS: העבודה מסתיימת בהצלחה, אבל מתרחשות שגיאות מסוימות במהלך ההרצה.

שיטות מומלצות לניטור

כשעוקבים אחרי משימות של סריקת נתונים, חשוב לזכור את השיטות המומלצות הבאות:

  • הימנעות מבדיקות תכופות מדי: לא מומלץ לבצע בדיקות תכופות מדי (לדוגמה, הפעלת GetJob או פעולה מקבילה כל שנייה עד 5 שניות). תשאול אגרסיבי מבזבז את מכסת ה-API ולא מזרז את מעברי המצב.

  • שימוש בהשהיה מעריכית לפני ניסיון חוזר (exponential backoff): אם אי אפשר להימנע מבדיקה חוזרת, צריך להשתמש בהשהיה מעריכית לפני ניסיון חוזר, החל מ-10 עד 15 שניות.

  • שימוש בהפרדה אסינכרונית מבוססת-אירועים (מומלץ): במקום לבצע סקר סינכרוני של API, אפשר להשתמש בטריגרים של Eventarc שמקשיבים ליומני ביקורת של Cloud (cloudaudit.googleapis.com). אפשר להשתמש בטריגרים האלה כדי להפעיל תהליכי עבודה במורד הזרם מיד אחרי אירועי השלמת העבודה של DataScan. הגישה הזו עוקפת את מגבלות הסקרים של ממשקי ה-API, חוסכת במכסה ומפחיתה את זמן האחזור.

מתן גישה לתוצאות של סריקת איכות הנתונים

כדי לאפשר למשתמשים בארגון לראות את תוצאות הסריקה:

  1. במסוף Google Cloud , בדף BigQuery Metadata curation, עוברים לכרטיסייה Data profiling & quality.

    מעבר אל 'יצירת פרופיל נתונים ואיכות'

  2. לוחצים על סריקת איכות הנתונים שרוצים לשתף את התוצאות שלה.

  3. לוחצים על הכרטיסייה Permissions.

  4. מבצעים את הפעולות הבאות:

    • כדי להעניק גישה ל-Principal, לוחצים על Grant access. מקצים את התפקיד Dataplex DataScan DataViewer לחשבון המשתמש המשויך.
    • כדי להסיר גישה מחשבון משתמש, בוחרים את החשבון שרוצים להסיר ממנו את התפקיד Dataplex DataScan DataViewer. לוחצים על הסרת הגישה ומאשרים כשמוצגת בקשה.

פתרון בעיות שקשורות לבעיות באיכות הנתונים

אפשר להגדיר התראות על כשלים באיכות הנתונים באמצעות היומנים ב-Cloud Logging. למידע נוסף, כולל דוגמאות לשאילתות, אפשר לעיין במאמר בנושא הגדרת התראות ב-Cloud Logging.

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

המסוף

  1. במסוף Google Cloud , בדף BigQuery Metadata curation, עוברים לכרטיסייה Data profiling & quality.

    מעבר אל 'יצירת פרופיל נתונים ואיכות'

  2. לוחצים על השם של סריקת איכות הנתונים שרוצים לפתור בעיות ברשומות שלה.

  3. לוחצים על הכרטיסייה Jobs history (היסטוריית המשרות).

  4. לוחצים על מזהה המשימה של המשימה שבה זוהו כשלים באיכות הנתונים.

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

  6. מריצים את השאילתה ב-BigQuery כדי לראות את הרשומות שגרמו לכשל בעבודה.

gcloud

לא נתמך.

REST

  1. כדי לקבל את המשימה שבה זוהו הכשלים באיכות הנתונים, משתמשים ב-method‏ dataScans.get.

    בשדה failingRowsQuery של אובייקט התשובה מוצגת השאילתה.

  2. מריצים את השאילתה ב-BigQuery כדי לראות את הרשומות שגרמו לכשל בעבודה.

Knowledge Catalog מריץ גם את שאילתת ניפוי הבאגים, בתנאי שהיא נכללה במהלך יצירת הכלל. תוצאות שאילתת הניפוי באגים נכללות בפלט של כל כלל. התכונה הזו נמצאת בגרסת טרום-השקה.

המסוף

לא נתמך.

gcloud

לא נתמך.

REST

כדי לקבל את המשימה שבה זוהו הכשלים באיכות הנתונים, משתמשים ב-method‏ dataScans.get. באובייקט התגובה, השדה debugQueriesResultSets מציג את התוצאות של שאילתות הניפוי באגים.

ניהול סריקות של איכות הנתונים בטבלה ספציפית

במאמר הזה מוסבר איך לנהל סריקות של איכות הנתונים בפרויקט באמצעות הדף Metadata curation > Data profiling & quality (ניהול מטא-נתונים > פרופיל ואיכות הנתונים) במסוף Google Cloud BigQuery.

אתם יכולים גם ליצור ולנהל סריקות של איכות הנתונים כשאתם עובדים עם טבלה ספציפית. במסוף Google Cloud , בדף BigQuery של הטבלה, משתמשים בכרטיסייה Data quality (איכות הנתונים). מבצעים את הפעולות הבאות:

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

    כניסה לדף BigQuery

    בחלונית Explorer (בצד ימין), לוחצים על Datasets ואז על מערך הנתונים. לוחצים על סקירה כללית > טבלאות, ואז בוחרים את הטבלה שרוצים לראות את תוצאות הסריקה של איכות הנתונים שלה.

  2. לוחצים על הכרטיסייה איכות הנתונים.

  3. בהתאם לשאלה אם בטבלה יש סריקה של איכות הנתונים שהתוצאות שלה מתפרסמות כמטא-נתונים של Knowledge Catalog, אפשר לעבוד עם הסריקות של איכות הנתונים בטבלה בדרכים הבאות:

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

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

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

      • הפעלה מיידית: הפעלת הסריקה.

      • עריכת הגדרות הסריקה: עריכת ההגדרות, כולל השם המוצג, המסננים ולוח הזמנים.

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

      • ניהול הרשאות הסריקה: קובעים למי תהיה גישה לתוצאות הסריקה. מידע נוסף זמין בקטע הענקת גישה לתוצאות של סריקת איכות הנתונים במסמך הזה.

      • הצגת תוצאות היסטוריות: הצגת מידע מפורט על משימות קודמות של סריקת איכות הנתונים. מידע נוסף זמין בקטעים הצגת תוצאות של סריקת איכות הנתונים והצגת תוצאות היסטוריות של סריקות במאמר הזה.

      • הצגת כל הסריקות: הצגת רשימה של סריקות איכות נתונים שחלות על הטבלה הזו.

    • תוצאות הסריקה של איכות הנתונים לא מתפרסמות: בוחרים מבין האפשרויות הבאות:

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

      • הצגת סריקות קיימות: הצגת רשימה של סריקות איכות נתונים שחלות על הטבלה הזו.

צפייה בסריקות של איכות הנתונים בטבלה

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

  1. במסוף Google Cloud , בדף BigQuery Metadata curation, עוברים לכרטיסייה Data profiling & quality.

    מעבר אל 'יצירת פרופיל נתונים ואיכות'

  2. מסננים את הרשימה לפי שם הטבלה וסוג הסריקה.

עדכון סריקה של איכות הנתונים

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

המסוף

  1. במסוף Google Cloud , בדף BigQuery Metadata curation, עוברים לכרטיסייה Data profiling & quality.

    מעבר אל 'יצירת פרופיל נתונים ואיכות'

  2. לוחצים על השם של סריקת איכות הנתונים.

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

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

gcloud

כדי לעדכן את התיאור של סריקת איכות נתונים, משתמשים בפקודה gcloud dataplex datascans update data-quality:

gcloud dataplex datascans update data-quality DATASCAN \
--location=LOCATION \
--description=DESCRIPTION

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

  • ‫DATASCAN: השם של סריקת איכות הנתונים שרוצים לעדכן.
  • ‫LOCATION: האזור שבו נוצרה סריקת Google Cloud איכות הנתונים.
  • ‫DESCRIPTION: התיאור החדש של הסריקה לאיכות הנתונים.

C#‎

C#

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

using Google.Cloud.Dataplex.V1;
using Google.LongRunning;
using Google.Protobuf.WellKnownTypes;

public sealed partial class GeneratedDataScanServiceClientSnippets
{
    /// <summary>Snippet for UpdateDataScan</summary>
    /// <remarks>
    /// This snippet has been automatically generated and should be regarded as a code template only.
    /// It will require modifications to work:
    /// - It may require correct/in-range values for request initialization.
    /// - It may require specifying regional endpoints when creating the service client as shown in
    ///   https://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
    /// </remarks>
    public void UpdateDataScanRequestObject()
    {
        // Create client
        DataScanServiceClient dataScanServiceClient = DataScanServiceClient.Create();
        // Initialize request argument(s)
        UpdateDataScanRequest request = new UpdateDataScanRequest
        {
            DataScan = new DataScan(),
            UpdateMask = new FieldMask(),
            ValidateOnly = false,
        };
        // Make the request
        Operation<DataScan, OperationMetadata> response = dataScanServiceClient.UpdateDataScan(request);

        // Poll until the returned long-running operation is complete
        Operation<DataScan, OperationMetadata> completedResponse = response.PollUntilCompleted();
        // Retrieve the operation result
        DataScan result = completedResponse.Result;

        // Or get the name of the operation
        string operationName = response.Name;
        // This name can be stored, then the long-running operation retrieved later by name
        Operation<DataScan, OperationMetadata> retrievedResponse = dataScanServiceClient.PollOnceUpdateDataScan(operationName);
        // Check if the retrieved long-running operation has completed
        if (retrievedResponse.IsCompleted)
        {
            // If it has completed, then access the result
            DataScan retrievedResult = retrievedResponse.Result;
        }
    }
}

המשך

Go

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.


//go:build examples

package main

import (
	"context"

	dataplex "cloud.google.com/go/dataplex/apiv1"
	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
)

func main() {
	ctx := context.Background()
	// This snippet has been automatically generated and should be regarded as a code template only.
	// It will require modifications to work:
	// - It may require correct/in-range values for request initialization.
	// - It may require specifying regional endpoints when creating the service client as shown in:
	//   https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
	c, err := dataplex.NewDataScanClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataplexpb.UpdateDataScanRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#UpdateDataScanRequest.
	}
	op, err := c.UpdateDataScan(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}

	resp, err := op.Wait(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	// TODO: Use resp.
	_ = resp
}

Java

Java

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

import com.google.cloud.dataplex.v1.DataScan;
import com.google.cloud.dataplex.v1.DataScanServiceClient;
import com.google.cloud.dataplex.v1.UpdateDataScanRequest;
import com.google.protobuf.FieldMask;

public class SyncUpdateDataScan {

  public static void main(String[] args) throws Exception {
    syncUpdateDataScan();
  }

  public static void syncUpdateDataScan() throws Exception {
    // This snippet has been automatically generated and should be regarded as a code template only.
    // It will require modifications to work:
    // - It may require correct/in-range values for request initialization.
    // - It may require specifying regional endpoints when creating the service client as shown in
    // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (DataScanServiceClient dataScanServiceClient = DataScanServiceClient.create()) {
      UpdateDataScanRequest request =
          UpdateDataScanRequest.newBuilder()
              .setDataScan(DataScan.newBuilder().build())
              .setUpdateMask(FieldMask.newBuilder().build())
              .setValidateOnly(true)
              .build();
      DataScan response = dataScanServiceClient.updateDataScanAsync(request).get();
    }
  }
}

Python

Python

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import dataplex_v1


def sample_update_data_scan():
    # Create a client
    client = dataplex_v1.DataScanServiceClient()

    # Initialize request argument(s)
    data_scan = dataplex_v1.DataScan()
    data_scan.data.entity = "entity_value"

    request = dataplex_v1.UpdateDataScanRequest(
        data_scan=data_scan,
    )

    # Make the request
    operation = client.update_data_scan(request=request)

    print("Waiting for operation to complete...")

    response = operation.result()

    # Handle the response
    print(response)

Ruby

Ruby

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

require "google/cloud/dataplex/v1"

##
# Snippet for the update_data_scan call in the DataScanService service
#
# This snippet has been automatically generated and should be regarded as a code
# template only. It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in https://cloud.google.com/ruby/docs/reference.
#
# This is an auto-generated example demonstrating basic usage of
# Google::Cloud::Dataplex::V1::DataScanService::Client#update_data_scan.
#
def update_data_scan
  # Create a client object. The client can be reused for multiple calls.
  client = Google::Cloud::Dataplex::V1::DataScanService::Client.new

  # Create a request. To set request fields, pass in keyword arguments.
  request = Google::Cloud::Dataplex::V1::UpdateDataScanRequest.new

  # Call the update_data_scan method.
  result = client.update_data_scan request

  # The returned object is of type Gapic::Operation. You can use it to
  # check the status of an operation, cancel it, or wait for results.
  # Here is how to wait for a response.
  result.wait_until_done! timeout: 60
  if result.response?
    p result.response
  else
    puts "No response received."
  end
end

REST

כדי לערוך סריקה של איכות הנתונים, משתמשים ב-method ‏dataScans.patch.

מחיקת סריקה של איכות הנתונים

המסוף

המסוף

  1. במסוף Google Cloud , בדף BigQuery Metadata curation, עוברים לכרטיסייה Data profiling & quality.

    מעבר אל 'יצירת פרופיל נתונים ואיכות'

  2. לוחצים על הסריקה שרוצים למחוק.

  3. לוחצים על מחיקה ומאשרים כשמוצגת בקשה.

gcloud

gcloud

כדי למחוק סריקה של איכות הנתונים, משתמשים בפקודה gcloud dataplex datascans delete:

gcloud dataplex datascans delete DATASCAN \
--location=LOCATION \
--async

מחליפים את המשתנים הבאים:

  • ‫DATASCAN: השם של סריקת איכות הנתונים שרוצים למחוק.
  • ‫LOCATION: האזור שבו נוצרה סריקת Google Cloud איכות הנתונים.

C#‎

C#

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

using Google.Cloud.Dataplex.V1;
using Google.LongRunning;
using Google.Protobuf.WellKnownTypes;

public sealed partial class GeneratedDataScanServiceClientSnippets
{
    /// <summary>Snippet for DeleteDataScan</summary>
    /// <remarks>
    /// This snippet has been automatically generated and should be regarded as a code template only.
    /// It will require modifications to work:
    /// - It may require correct/in-range values for request initialization.
    /// - It may require specifying regional endpoints when creating the service client as shown in
    ///   https://cloud.google.com/dotnet/docs/reference/help/client-configuration#endpoint.
    /// </remarks>
    public void DeleteDataScanRequestObject()
    {
        // Create client
        DataScanServiceClient dataScanServiceClient = DataScanServiceClient.Create();
        // Initialize request argument(s)
        DeleteDataScanRequest request = new DeleteDataScanRequest
        {
            DataScanName = DataScanName.FromProjectLocationDataScan("[PROJECT]", "[LOCATION]", "[DATASCAN]"),
            Force = false,
        };
        // Make the request
        Operation<Empty, OperationMetadata> response = dataScanServiceClient.DeleteDataScan(request);

        // Poll until the returned long-running operation is complete
        Operation<Empty, OperationMetadata> completedResponse = response.PollUntilCompleted();
        // Retrieve the operation result
        Empty result = completedResponse.Result;

        // Or get the name of the operation
        string operationName = response.Name;
        // This name can be stored, then the long-running operation retrieved later by name
        Operation<Empty, OperationMetadata> retrievedResponse = dataScanServiceClient.PollOnceDeleteDataScan(operationName);
        // Check if the retrieved long-running operation has completed
        if (retrievedResponse.IsCompleted)
        {
            // If it has completed, then access the result
            Empty retrievedResult = retrievedResponse.Result;
        }
    }
}

המשך

Go

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.


//go:build examples

package main

import (
	"context"

	dataplex "cloud.google.com/go/dataplex/apiv1"
	dataplexpb "cloud.google.com/go/dataplex/apiv1/dataplexpb"
)

func main() {
	ctx := context.Background()
	// This snippet has been automatically generated and should be regarded as a code template only.
	// It will require modifications to work:
	// - It may require correct/in-range values for request initialization.
	// - It may require specifying regional endpoints when creating the service client as shown in:
	//   https://pkg.go.dev/cloud.google.com/go#hdr-Client_Options
	c, err := dataplex.NewDataScanClient(ctx)
	if err != nil {
		// TODO: Handle error.
	}
	defer c.Close()

	req := &dataplexpb.DeleteDataScanRequest{
		// TODO: Fill request struct fields.
		// See https://pkg.go.dev/cloud.google.com/go/dataplex/apiv1/dataplexpb#DeleteDataScanRequest.
	}
	op, err := c.DeleteDataScan(ctx, req)
	if err != nil {
		// TODO: Handle error.
	}

	err = op.Wait(ctx)
	if err != nil {
		// TODO: Handle error.
	}
}

Java

Java

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

import com.google.cloud.dataplex.v1.DataScanName;
import com.google.cloud.dataplex.v1.DataScanServiceClient;
import com.google.cloud.dataplex.v1.DeleteDataScanRequest;
import com.google.protobuf.Empty;

public class SyncDeleteDataScan {

  public static void main(String[] args) throws Exception {
    syncDeleteDataScan();
  }

  public static void syncDeleteDataScan() throws Exception {
    // This snippet has been automatically generated and should be regarded as a code template only.
    // It will require modifications to work:
    // - It may require correct/in-range values for request initialization.
    // - It may require specifying regional endpoints when creating the service client as shown in
    // https://cloud.google.com/java/docs/setup#configure_endpoints_for_the_client_library
    try (DataScanServiceClient dataScanServiceClient = DataScanServiceClient.create()) {
      DeleteDataScanRequest request =
          DeleteDataScanRequest.newBuilder()
              .setName(DataScanName.of("[PROJECT]", "[LOCATION]", "[DATASCAN]").toString())
              .setForce(true)
              .build();
      dataScanServiceClient.deleteDataScanAsync(request).get();
    }
  }
}

Python

Python

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

# This snippet has been automatically generated and should be regarded as a
# code template only.
# It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
#   client as shown in:
#   https://googleapis.dev/python/google-api-core/latest/client_options.html
from google.cloud import dataplex_v1


def sample_delete_data_scan():
    # Create a client
    client = dataplex_v1.DataScanServiceClient()

    # Initialize request argument(s)
    request = dataplex_v1.DeleteDataScanRequest(
        name="name_value",
    )

    # Make the request
    operation = client.delete_data_scan(request=request)

    print("Waiting for operation to complete...")

    response = operation.result()

    # Handle the response
    print(response)

Ruby

Ruby

כדי לבצע אימות ב-BigQuery, צריך להגדיר את Application Default Credentials. מידע נוסף זמין במאמר הגדרת אימות לסביבת פיתוח מקומית.

require "google/cloud/dataplex/v1"

##
# Snippet for the delete_data_scan call in the DataScanService service
#
# This snippet has been automatically generated and should be regarded as a code
# template only. It will require modifications to work:
# - It may require correct/in-range values for request initialization.
# - It may require specifying regional endpoints when creating the service
# client as shown in https://cloud.google.com/ruby/docs/reference.
#
# This is an auto-generated example demonstrating basic usage of
# Google::Cloud::Dataplex::V1::DataScanService::Client#delete_data_scan.
#
def delete_data_scan
  # Create a client object. The client can be reused for multiple calls.
  client = Google::Cloud::Dataplex::V1::DataScanService::Client.new

  # Create a request. To set request fields, pass in keyword arguments.
  request = Google::Cloud::Dataplex::V1::DeleteDataScanRequest.new

  # Call the delete_data_scan method.
  result = client.delete_data_scan request

  # The returned object is of type Gapic::Operation. You can use it to
  # check the status of an operation, cancel it, or wait for results.
  # Here is how to wait for a response.
  result.wait_until_done! timeout: 60
  if result.response?
    p result.response
  else
    puts "No response received."
  end
end

REST

REST

כדי למחוק סריקה של איכות הנתונים, משתמשים בשיטת dataScans.delete.

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