הפונקציה PLACES_COUNT_PER_TYPE_V2

הפונקציה PLACES_COUNT_PER_TYPE_V2 מחזירה טבלה ב-BigQuery שמכילה ספירות של מקומות ומזהים לדוגמה של מקומות, עם פירוט לפי סוג המקום, עבור כמה מיקומים גיאוגרפיים שמוזנים כקלט. הפונקציה הזו מיועדת ל**עיבוד ברצף (batch processing)** יעיל על ידי קבלת פרמטר של טבלת קלט של מיקומים גיאוגרפיים. אתם מספקים את המיקומים הגיאוגרפיים באמצעות טבלת קלט ומציינים את סוגי המקומות כמערך.

תחביר

SELECT * FROM `PROJECT_NAME.LINKED_DATASET_NAME.PLACES_COUNT_PER_TYPE_V2`(
  TABLE input_geographies,
  target_types,
  filters
)

פרמטרים

  • PROJECT_NAME: השם של הפרויקט ב-Google Cloud.
  • LINKED_DATASET_NAME: השם של מערך הנתונים ב-BigQuery שמכיל את הפונקציות של Places Insights (למשל, places_insights___us).
  • input_geographies: טבלה ב-BigQuery שמכילה את האזורים הגיאוגרפיים לניתוח. הטבלה הזו חייבת לכלול את העמודות הבאות:
    • geo_id (STRING): מזהה ייחודי לכל אזור גיאוגרפי.
    • geo (GEOGRAPHY): אובייקט ה-GEOGRAPHY ב-BigQuery שמייצג את האזור. זה יכול להיות נקודה, פוליגון או סוג אחר של מיקום גיאוגרפי.
  • target_types (ARRAY<STRING>): מערך של מחרוזות של סוגי מקומות שרוצים לקבל את המספרים שלהם. מקומות ייספרו אם הם תואמים לכל אחד מהסוגים שמופיעים במערך types שלהם, ולא רק לסוג primary_type.
  • filters (JSON): אובייקט JSON שמכיל צמדי מפתח-ערך לסינון נוסף של המקומות. מידע על פרמטרים של מסננים

סכימת טבלת הפלט

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

שם העמודה סוג הנתונים תיאור
geo_id STRING המזהה הייחודי של המיקום הגיאוגרפי של הקלט, מתוך הטבלה input_geographies.
input_geography GEOGRAPHY אובייקט ה-GEOGRAPHY המקורי מהטבלה input_geographies.
place_type STRING סוג המקום ממערך target_types שהשורה הזו מייצגת.
place_count INTEGER מספר המקומות שתואמים לplace_type ולמסננים אחרים בתוך האזור הגיאוגרפי או בקרבתו.
sample_place_ids ARRAY<STRING> מערך של עד 250 מזהי מקומות שתואמים לקריטריונים של הסוג והמיקום הגיאוגרפי הזה.

הפלט יכיל שורה לכל שילוב של geo_id ו-place_type שצוין במערך target_types, גם אם הספירה היא אפס.

איך זה עובד

הפונקציה מעבדת כל מיקום גיאוגרפי שמופיע בטבלה input_geographies. לכל אזור גיאוגרפי, המערכת סופרת את המקומות שתואמים לכל אחד מהסוגים שמופיעים במערך target_types וגם עומדים בכל התנאים באובייקט ה-JSON‏ filters. התוצאות נצברות ומפורטות לפי כל geo_id ולפי כל סוג ב-target_types.

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

בדוגמה הזו נוצר טבלה של ספירות עבור סוגי המקומות restaurant,‏ cafe ו-bar בשלושה מחוזות בעיר ניו יורק.

SELECT geo_id, input_geography, place_type, place_count
FROM `PROJECT_NAME.places_insights___us.PLACES_COUNT_PER_TYPE_V2`(
  (
    SELECT county_name AS geo_id,
           ST_SIMPLIFY(county_geom, 100) AS geo
    FROM
      `bigquery-public-data.geo_us_boundaries.counties`
    WHERE
      state_fips_code = "36"  -- New York State
      AND county_name IN ("Queens", "Kings", "New York")
  ),
  ['restaurant', 'cafe', 'bar'],  -- target_types
  JSON_OBJECT(
      'business_status', ['OPERATIONAL']
  )
);

התוצאה תהיה טבלה עם 9 שורות (3 מחוזות * 3 סוגים). בכל שורה יופיע מספר המוסדות מסוג 'מסעדה', 'בית קפה' או 'בר' בכל מחוז. אפשר גם לכלול מזהים לדוגמה של מקומות אם מוסיפים אותם להצהרת SELECT.

תוצאות של הפונקציה Places Count Per Type במחוזות בניו יורק.

היתרונות של השימוש ב-PLACES_COUNT_PER_TYPE_V2

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

  • עיבוד באצווה של מיקומים גיאוגרפיים: בניגוד ל-PLACES_COUNT_PER_TYPE שמעבד מיקום גיאוגרפי אחד בכל פעם, PLACES_COUNT_PER_TYPE_V2 מקבל TABLE של מיקומים גיאוגרפיים כקלט. כך תוכלו לנתח ולקבל ספירות ספציפיות לסוגים שונים של נתונים (נקודות, מצולעים) באזורים גיאוגרפיים רבים בשאילתה אחת, במקום לבצע כמה קריאות לפונקציה.
  • ביצועים ויכולת הרחבה משופרים: על ידי קבלת קלט של טבלה, PLACES_COUNT_PER_TYPE_V2 יכולה לנצל את ההצטרפויות הגיאוגרפיות המרחביות הממוטבות של BigQuery ואת יכולות העיבוד המקבילי בכל האזורים הגיאוגרפיים שסופקו בו-זמנית. כך אפשר לשפר משמעותית את הביצועים ולשפר את יכולת ההתאמה כשמטפלים במספר גדול של מיקומים גיאוגרפיים.
  • Zero Counts Included: מחזירה שורות עם ספירות של 0 לסוגים שלא נמצאו באזור ספציפי באצווה, כדי להבטיח קבוצת תוצאות מלאה לכל השילובים של סוג ומיקום גיאוגרפי.