איך מתחילים להשתמש בניתוח נתונים גיאו-מרחביים

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

מטרות

במדריך הזה תלמדו:

  • שימוש בפונקציה של ניתוח נתונים גיאו-מרחביים כדי להמיר עמודות של קווי אורך ורוחב לנקודות גיאוגרפיות
  • מריצים שאילתה שמוצאת את כל תחנות Citi Bike עם יותר מ-30 אופניים שזמינים להשכרה
  • הדמיה של התוצאות ב-BigQuery
  • המחשה חזותית של התוצאות ב-BigQuery Geo Viz

עלויות

במדריך הזה נעשה שימוש ברכיבים של Cloud de Confiance by S3NSשחלים עליהם חיובים, כולל BigQuery.

החיובים הם על:

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

  1. In the Cloud de Confiance console, on the project selector page, select or create a Cloud de Confiance project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

  2. Verify that billing is enabled for your Cloud de Confiance project.

  3. ‫BigQuery מופעל באופן אוטומטי בפרויקטים חדשים. כדי להפעיל את BigQuery בפרויקט קיים, עוברים אל

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

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

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

    להפעלת ה-API

עיון בנתונים לדוגמה

במדריך הזה נעשה שימוש במערך נתונים שזמין דרך Cloud de Confiance by S3NS תוכנית מערכי הנתונים הציבוריים. מערך נתונים ציבורי הוא כל מערך נתונים שמאוחסן ב-BigQuery וזמין לציבור הרחב. מערכי הנתונים הציבוריים הם מערכי נתונים שמארח BigQuery כדי שתוכלו לגשת אליהם ולשלב אותם באפליקציות שלכם. ‫Google משלמת על האחסון של מערכי הנתונים האלה ומספקת גישה ציבורית לנתונים באמצעות פרויקט. משלמים רק על השאילתות שמבצעים על הנתונים (ה-1TB הראשון בכל חודש הוא בחינם, בכפוף לפרטי התמחור של השאילתות).

מערך הנתונים NYC Citi Bike Trips

NYC Citi Bike Trips

Citi Bike היא תוכנית השכרת האופניים הגדולה ביותר בארה"ב, עם 10,000 אופניים ו-600 תחנות במנהטן, בברוקלין, בקווינס ובג'רזי סיטי. מערך הנתונים הזה כולל נסיעות ב-Citi Bike מאז ההשקה של Citi Bike בספטמבר 2013, והוא מתעדכן מדי יום. הנתונים עוברים עיבוד על ידי Citi Bike כדי להסיר נסיעות שבוצעו על ידי צוות לצורך תחזוקה ובדיקה של המערכת, וגם נסיעות שנמשכו פחות מ-60 שניות, שנחשבות להתחלות שווא.

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

מעבר לסכימה citibike_stations

יש שלוש עמודות בטבלה שרלוונטיות למדריך הזה:

  • bike_stations.longitude: קו האורך של תחנה. הערכים הם קווי אורך חוקיים לפי תקן WGS 84 בפורמט מעלות עשרוניות.
  • bike_stations.latitude: קו הרוחב של התחנה. הערכים הם קווי רוחב חוקיים לפי תקן WGS 84 בפורמט של מעלות עשרוניות.
  • num_bikes_available: מספר האופניים שזמינים להשכרה.

שאילתה לגבי תחנות השכרת אופניים עם יותר מ-30 אופניים זמינים

בקטע הזה של המדריך מריצים שאילתת GoogleSQL שמאתרת את כל תחנות Citi Bike בניו יורק שבהן יש יותר מ-30 אופניים להשכרה.

פרטי שאילתה

השאילתה הבאה ב-GoogleSQL משמשת למציאת תחנות Citi Bike עם יותר מ-30 אופניים.

SELECT
  ST_GeogPoint(longitude, latitude)  AS WKT,
  num_bikes_available
FROM
  `bigquery-public-data.new_york.citibike_stations`
WHERE num_bikes_available > 30

סעיפי השאילתה מבצעים את הפעולות הבאות:

  • SELECT ST_GeogPoint(longitude, latitude) AS WKT, num_bikes_available
    הפסוקית SELECT בוחרת את העמודה num_bikes_available ומשתמשת בפונקציה ST_GeogPoint כדי להמיר את הערכים בעמודות latitude ו-longitude לסוגים GEOGRAPHY (נקודות).
  • FROM `bigquery-public-data.new_york.citibike_stations`
    The FROM clause specifies the table being queried: citibike_stations.
  • WHERE num_bikes_available > 30
    הפסוקית WHERE מסננת את הערכים בעמודה num_bikes_available כך שיוצגו רק התחנות עם יותר מ-30 אופניים.

הרצה של שאילתה

כדי להריץ את השאילתה באמצעות מסוף Cloud de Confiance :

  1. נכנסים לדף BigQuery במסוף Cloud de Confiance .

    לדף BigQuery

  2. מזינים את שאילתת GoogleSQL הבאה באזור הטקסט של עורך השאילתות.

    -- Finds Citi Bike stations with > 30 bikes
    SELECT
      ST_GeogPoint(longitude, latitude)  AS WKT,
      num_bikes_available
    FROM
      `bigquery-public-data.new_york.citibike_stations`
    WHERE num_bikes_available > 30
  3. לוחצים על Run.

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

    תוצאות של שאילתות לגבי תחנות השכרת אופניים.

הצגה חזותית של התוצאות ב-BigQuery

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

  1. בחלונית Query results (תוצאות של שאילתות), לוחצים על Visualization (הדמיה).

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

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

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

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

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

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

המחשה מסוגננת של מיקומי תחנות אופניים.

המחשה חזותית של תוצאות השאילתה ב-Geo Viz

אפשר גם להציג את התוצאות באופן חזותי באמצעות BigQuery Geo Viz – כלי אינטרנטי להצגה חזותית של נתונים גיאו-מרחביים ב-BigQuery באמצעות Google Maps APIs.

הפעלת Geo Viz ואימות

לפני שמשתמשים ב-Geo Viz, צריך לאמת את הגישה לנתונים ב-BigQuery.

כדי להגדיר את Geo Viz:

  1. פותחים את כלי האינטרנט Geo Viz.

    פתיחת הכלי האינטרנטי Geo Viz

    יכול להיות שתצטרכו להפעיל קובצי Cookie כדי לתת הרשאה ולהשתמש בכלי הזה.

  2. בשלב הראשון, Query, לוחצים על Authorize (אישור).

    לחצן ההרשאה של Geo Viz.

  3. בתיבת הדו-שיח בחירת חשבון, לוחצים על חשבון Google.

    תיבת דו-שיח לבחירת חשבון.

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

    תיבת דו-שיח לאישור גישה.

הרצת שאילתת GoogleSQL על נתונים גיאו-מרחביים

אחרי שתאמתו את עצמכם ותעניקו גישה, השלב הבא הוא להריץ את השאילתה ב-Geo Viz.

כדי להריץ את השאילתה:

  1. בשלב הראשון, Select data (בחירת נתונים), מזינים את מזהה הפרויקט בשדה Project ID.

  2. בחלון השאילתה, מזינים את שאילתת GoogleSQL הבאה.

    -- Finds Citi Bike stations with > 30 bikes
    SELECT
      ST_GeogPoint(longitude, latitude)  AS WKT,
      num_bikes_available
    FROM
      `bigquery-public-data.new_york.citibike_stations`
    WHERE num_bikes_available > 30
  3. לוחצים על Run.

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

    רואים את התוצאות.

  5. תועברו לשלב השני. בשלב השני, בעמודה Geometry column, בוחרים באפשרות WKT. הנקודות שמתאימות לתחנות האופניים יסומנו במפה.

    תוצאות שעברו מיפוי.

עיצוב התרשים להמחשת הנתונים

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

מאפייני הסגנון הנתמכים כוללים:

  • fillColor. צבע המילוי של פוליגון או נקודה. לדוגמה, אפשר להשתמש בפונקציות 'לינארי' או 'מרווח' כדי למפות ערכים מספריים למעבר צבעים.
  • fillOpacity. מידת האטימות של המילוי של פוליגון או נקודה. הערכים צריכים להיות בטווח 0 עד 1, כאשר 0 = שקוף ו-1 = אטום.
  • strokeColor. צבע הקו או המתאר של פוליגון או קו.
  • strokeOpacity. האטימות של הקו או קווי המתאר של הפוליגון או הקו. הערכים צריכים להיות בטווח 0 עד 1, כאשר 0 = שקוף ו-1 = אטום.
  • strokeWeight. רוחב הקו או המתאר בפיקסלים של פוליגון או קו.
  • circleRadius. הרדיוס של העיגול שמייצג נקודה בפיקסלים. לדוגמה, אפשר להשתמש בפונקציה 'לינארית' כדי למפות ערכים מספריים לגדלים של נקודות וליצור סגנון של תרשים פיזור.

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

  • function. פונקציה שמשמשת לחישוב ערך סגנון מתוך הערכים של שדה.
  • זהות. ערך הנתונים של כל שדה משמש כערך הסגנון.
  • קטגורי. ערכי הנתונים של כל שדה שמופיע בתחום ממופים אחד לאחד לסגנונות התואמים בטווח.
  • interval. ערכי הנתונים של כל שדה מעוגלים כלפי מטה לערך הקרוב ביותר בתחום, ואז מעוצבים בסגנון התואם בטווח.
  • ליניארי. ערכי הנתונים של כל שדה עוברים אינטרפולציה לינארית בין הערכים בתחום, ואז מוחל עליהם סגנון שמשלב בין הסגנונות התואמים בטווח.
  • field. השדה שצוין בנתונים משמש כקלט לפונקציית הסגנון.
  • דומיין. רשימה מסודרת של ערכי קלט לדוגמה משדה. דוגמאות לקלט (דומיין) משויכות לדוגמאות לפלט (טווח) על סמך הפונקציה שצוינה, ומשמשות להסקת ערכי סגנון לכל הקלט (גם אם הוא לא מופיע בדומיין). הערכים בדומיין צריכים להיות מאותו סוג (טקסט, מספר וכו') כמו הערכים בשדה שאתם מציגים.
  • range. רשימה של ערכי פלט לדוגמה לכלל הסגנון. הערכים בטווח צריכים להיות מאותו סוג (צבע או מספר) כמו מאפיין הסגנון שאתם שולטים בו. לדוגמה, הטווח של המאפיין fillColor צריך לכלול רק צבעים.

כדי לעצב את המפה:

  1. לוחצים על הוספת סגנונות בשלב השני או לוחצים על שלב 3 סגנון.

  2. לשנות את הצבע של הנקודות. לוחצים על fillColor.

  3. בשדה ערך, מזינים #0000FF, קוד הצבע הכחול ב-HTML.

  4. לוחצים על החלת הסגנון.

    צבע המילוי.

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

    פרטים על נקודה במפה.

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

  7. בשדה ערך, מזינים 0.5 ולוחצים על החלת סגנון.

    מידת האטימות של המילוי.

  8. בודקים את המפה. צבע המילוי של הנקודות שקוף למחצה.

    מפה עם נקודות שקופות למחצה.

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

  10. בחלונית circleRadius:

    1. לוחצים על מבוסס נתונים.
    2. בקטע פונקציה, בוחרים באפשרות לינארית.
    3. בשדה Field (שדה), בוחרים באפשרות num_bikes_available.
    4. בקטע דומיין, מזינים 30 בתיבה הראשונה ו-60 בתיבה השנייה.
    5. בשדה Range, מזינים 5 בתיבה הראשונה ו-20 בתיבה השנייה.

      רדיוס המעגל.

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

    מפה סופית.

  12. סוגרים את Geo Viz.

הסרת המשאבים

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

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

כדי למחוק את הפרויקט:

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

    כניסה לדף Manage resources

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

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