עיון בתוצאות של שאילתות ב-Notebooks

אפשר לעיין בתוצאות של שאילתות באמצעות תאי SQL או תאי קוד במחברות BigQuery Colab Enterprise.

במדריך הזה תריצו שאילתות על נתונים ממערך נתונים ציבורי של BigQuery ותבדקו את תוצאות השאילתה במחברת.

מטרות

  • יוצרים ומריצים שאילתה ב-BigQuery.
  • בדיקת תוצאות של שאילתות ב-notebook באמצעות תאי SQL ותאי קוד.

עלויות

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

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

  1. בדף לבחירת הפרויקט במסוף Google Cloud , בוחרים פרויקט ב- Google Cloud או יוצרים אותו.

    תפקידים שנדרשים כדי לבחור או ליצור פרויקט

    • Select a project: כדי לבחור פרויקט לא צריך תפקיד IAM ספציפי – אפשר לבחור כל פרויקט שקיבלתם בו תפקיד.
    • יצירת פרויקט: כדי ליצור פרויקט, צריך את התפקיד Project Creator (יצירת פרויקטים) (roles/resourcemanager.projectCreator), שכולל את ההרשאה resourcemanager.projects.create. איך מקצים תפקידים

    כניסה לדף לבחירת הפרויקט

  2. מוודאים שהחיוב מופעל בפרויקט Google Cloud .

  3. מפעילים את BigQuery API.

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

    כדי להפעיל ממשקי API, צריך את תפקיד ה-IAM 'אדמין של Service Usage' (roles/serviceusage.serviceUsageAdmin), שכולל את ההרשאה serviceusage.services.enable. איך מקצים תפקידים

    להפעלת ה-API

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

הגדרת אזור ברירת המחדל לנכסי קוד

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

כדי להגדיר את אזור ברירת המחדל לנכסי קוד חדשים:

  1. עוברים לדף BigQuery.

    כניסה ל-BigQuery

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

    לוחצים על **קבצים** כדי לפתוח את דפדפן הקבצים.

  3. לצד שם הפרויקט, לוחצים על View files panel actions (הצגת פעולות בחלונית הקבצים) > Switch code region (החלפת אזור הקוד).

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

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

רשימת האזורים הנתמכים מופיעה במאמר בנושא מיקומים ב-BigQuery Studio.

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

כדי ליצור ולהריץ מחברות, אתם צריכים את התפקידים הבאים בניהול זהויות והרשאות גישה (IAM):

פתיחת תוצאות של שאילתה ב-notebook

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

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

    כניסה ל-BigQuery

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

  3. עוברים לפרויקט bigquery-public-data, לוחצים על Toggle node (החלפת הצומת) כדי להרחיב אותו, ואז לוחצים על Datasets (מערכי נתונים). בכרטיסיית הפרטים תיפתח כרטיסייה חדשה עם רשימה של כל מערכי הנתונים בפרויקט.

  4. בתיבה Filter, בוחרים באפשרות Dataset ID ומזינים ml_datasets.

    שדה הסינון בדף 'מערכי נתונים'

  5. בדף מערכי נתונים, לוחצים על ml_datasets > penguins.

  6. לוחצים על Query (שאילתה).

  7. מוסיפים כוכבית (*) לבחירת שדה לשאילתה שנוצרה, כך שהיא תיראה כמו בדוגמה הבאה:

    SELECT * FROM `bigquery-public-data.ml_datasets.penguins` LIMIT 1000;
  8. לוחצים על הפעלה.

  9. בקטע Query results (תוצאות של שאילתות), לוחצים על Open in (פתיחה ב) ואז על Notebook (מחברת).

הכנת המחברת לשימוש

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

  1. בכותרת של ה-Notebook, לוחצים על Connect (חיבור) כדי להתחבר לסביבת זמן הריצה שמוגדרת כברירת מחדל.

  2. בבלוק הקוד Setup, לוחצים על Run cell (הרצת התא).

עיון בנתונים

  1. לוחצים על אפשרויות להוספת תא קוד > הוספה של תא SQL.

    האפשרות 'הוספה של תא SQL' בתפריט 'הוספה של תא קוד'

  2. מזינים את השאילתה הבאה בתא ה-SQL:

    SELECT * FROM `bigquery-public-data.ml_datasets.penguins` LIMIT 1000;
    
  3. לוחצים על הרצת התא.

    תוצאות השאילתה מוצגות ב-BigQuery DataFrame.

  4. לחלופין, כדי לטעון את תוצאות השאילתה ל-DataFrame של BigQuery באמצעות משימת השאילתה שהרצתם קודם בעורך השאילתות, פועלים לפי השלבים הבאים:

    1. עוברים לקטע Result set loaded from BigQuery job as a DataFrame.

    2. בבלוק הקוד, לוחצים על הפעלת התא.

      תוצאות השאילתה מוצגות ב-DataFrame של BigQuery.

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

    1. עוברים לקטע הצגת נתונים סטטיסטיים תיאוריים באמצעות describe()‎.

    2. בבלוק הקוד, לוחצים על הפעלת התא.

      התוצאות מוצגות ב-DataFrame של BigQuery.

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

בדוגמת הקוד הבאה מוצג שימוש ב-bigframes.pandas כדי לנתח נתונים, וב-bigframes.ml כדי ליצור מודל רגרסיה ליניארית מנתוני פינגווינים ב-DataFrame של BigQuery:

import bigframes.pandas as bpd

# Load data from BigQuery
query_or_table = "bigquery-public-data.ml_datasets.penguins"
bq_df = bpd.read_gbq(query_or_table)

# Inspect one of the columns (or series) of the DataFrame:
bq_df["body_mass_g"]

# Compute the mean of this series:
average_body_mass = bq_df["body_mass_g"].mean()
print(f"average_body_mass: {average_body_mass}")

# Find the heaviest species using the groupby operation to calculate the
# mean body_mass_g:
(
    bq_df["body_mass_g"]
    .groupby(by=bq_df["species"])
    .mean()
    .sort_values(ascending=False)
    .head(10)
)

# Create the Linear Regression model
from bigframes.ml.linear_model import LinearRegression

# Filter down to the data we want to analyze
adelie_data = bq_df[bq_df.species == "Adelie Penguin (Pygoscelis adeliae)"]

# Drop the columns we don't care about
adelie_data = adelie_data.drop(columns=["species"])

# Drop rows with nulls to get our training data
training_data = adelie_data.dropna()

# Pick feature columns and label column
X = training_data[
    [
        "island",
        "culmen_length_mm",
        "culmen_depth_mm",
        "flipper_length_mm",
        "sex",
    ]
]
y = training_data[["body_mass_g"]]

model = LinearRegression(fit_intercept=False)
model.fit(X, y)
model.score(X, y)

הסרת המשאבים

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

הדרך הקלה ביותר לבטל את החיוב היא למחוק את Google Cloud הפרויקט שיצרתם בשביל המדריך הזה.

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

    כניסה לדף Manage resources

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

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