סקירה כללית על פונקציות של ספירת מקומות

פונקציות של ספירת מקומות הן דרך נוספת לשאילתת נתוני המקומות שזמינים ב'תובנות לגבי מקומות'. הפונקציות האלה הן שאילתות SQL מוגדרות מראש שמופעלות ב-BigQuery, והן משלימות את השאילתות של נתוני מקומות. ההבדל העיקרי הוא שפונקציות לא מחייבות סף מינימלי של ספירה, אלא אזור חיפוש מינימלי:

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

  • פונקציות של ספירת מקומות יכולות להחזיר כל מספר, כולל 0, אבל הן מחייבות אזור חיפוש מינימלי של 40.0 מטר על 40.0 מטר (1,600 מ'2).

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

פונקציות ומדינות נתמכות לספירת מקומות

התובנות לגבי מקומות תומכות בפונקציות הבאות:

  • PLACES_COUNT: מחזירה שורה אחת שמכילה את מספר המקומות.
  • PLACES_COUNT_PER_TYPE: מחזירה טבלה ב-BigQuery עם ספירת המקומות לפי סוג המקום.
  • PLACES_COUNT_PER_GEO: מחזירה טבלה ב-BigQuery עם מספר המקומות לפי מיקום גיאוגרפי.
  • PLACES_COUNT_PER_H3: מחזירה טבלה ב-BigQuery עם ספירת המקומות בכל תא H3.

בנוסף לספירת המקומות, הפונקציות PLACES_COUNT_PER_TYPE,‏ PLACES_COUNT_PER_GEO ו-PLACES_COUNT_PER_H3 מחזירות גם עד 250 מזהי מקומות לכל רכיב בתגובה.

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

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

דוגמה לפונקציית ספירה של מיקומים

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

SELECT `maps-platform-analytics-hub.sample_places_insights_us.PLACES_COUNT`(
  JSON_OBJECT(
      'geography', ST_GEOGPOINT(-73.9857, 40.7484), -- Empire State Building
      'geography_radius', 1000, -- Radius in meters
      'business_status', ['OPERATIONAL'],
      'types', ["restaurant"]
      )
) as count;

התשובה מכילה ספירה אחת:

תוצאות של פונקציית ספירת המקומות בניו יורק.

בדוגמה הזו, ההצהרה SELECT מפנה אל הפונקציה PLACES_COUNT לציון ארצות הברית באמצעות התחביר:

maps-platform-analytics-hub.sample_places_insights_us.PLACES_COUNT

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

משתמשים ב-JSON_OBJECT כדי להעביר ארגומנטים לפונקציה. בדוגמה הזו נעשה שימוש בפונקציה ST_GEOGPOINT של BigQuery כדי להחזיר ערך GEOGRAPHY מנקודה מסוימת, ואז להעביר את הערך הזה לפרמטר geography. היא גם מעבירה את רדיוס החיפוש סביב הנקודה ואת סוג המקום, "restaurant", לחיפוש.

דוגמה לספירת מקומות לפי סוג, מיקום גיאוגרפי או H3

בנוסף למספר המקומות, הפונקציות PLACES_COUNT_PER_TYPE,‏ PLACES_COUNT_PER_GEO ו-PLACES_COUNT_PER_H3 מחזירות גם עד 250 מזהי מקומות של המקומות שנכללים בתגובה.

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

הקריאה הבאה לפונקציה מחזירה את מספר המקומות עם הסוגים: restaurant, cafe ו-bar:

SELECT * FROM `maps-platform-analytics-hub.sample_places_insights_us.PLACES_COUNT_PER_TYPE`(
  JSON_OBJECT(
      'geography', ST_GEOGPOINT(-73.9857, 40.7484), -- Empire State Building
      'geography_radius', 1000, -- Radius in meters
      'types', ["restaurant", "cafe", "bar"],
      'business_status', ['OPERATIONAL']
      )
);

הפונקציה הזו מחזירה טבלה עם שלוש עמודות: type,‏ count ו-sample_place_ids. בעמודה count מוצג מספר המקומות לכל type, ובעמודה sample_place_ids מוצגים עד 250 מזהי מקומות לכל type.

תוצאות של הפונקציה Place Count Type בעיר ניו יורק.

החלת מסננים על הפונקציה

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

SELECT `maps-platform-analytics-hub.sample_places_insights_us.PLACES_COUNT`(
  JSON_OBJECT(
      'geography', ST_GEOGPOINT(-73.9857, 40.7484), -- Empire State Building
      'geography_radius', 1000, -- Radius in meters
      'business_status', ['OPERATIONAL'],
      'types', ["restaurant"],
      'min_rating', 1.3,
      'price_level', ['PRICE_LEVEL_INEXPENSIVE', 'PRICE_LEVEL_MODERATE'],
      'allows_dogs', TRUE
      )
) as count;

הצגה חזותית של התוצאות

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

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

מגבלות ודרישות

יש מגבלות ודרישות מסוימות לגבי פונקציות של ספירת מקומות:

  • יש תמיכה רק בתובנות לגבי COUNT.
  • נדרש אזור חיפוש מינימלי של 40.0 מטר על 40.0 מטר (1,600 מ"ר).
  • גודל הקלט של פרמטר מספר הפונקציות במיקום מוגבל ל-1MB.
  • אין תמיכה בסינון לפי מזהה מקום או רכיב כתובת.

השוואה בין פונקציות של ספירת מקומות לבין שאילתות של מערך נתונים של מקומות

בטבלה הבאה מפורטים ההבדלים העיקריים:

פונקציות של מספר המקומות שאילתות של מערכי נתונים של מקומות
ממשק ארבע פונקציות SQL מוגדרות מראש שמפיקות תובנות לגבי COUNT: ספירה יחידה, ספירה לפי סוג, ספירה לפי מיקום גיאוגרפי וספירה לפי תא H3. משתמשים ב-SQL כדי להפעיל פונקציות צבירה כמו COUNT, COUNT_IF, SUM ו-AVG.. אפשר ליצור תובנות נוספות באמצעות JOIN, GROUP BY, WHERE ועוד.
הגבלות הגדרת אזור חיפוש מינימלי של 40.0 מטר על 40.0 מטר (1,600 מ'2). פונקציה מחזירה תוצאה גם אם ספירת הצבירה קטנה מ-5, כל עוד מתקיים התנאי של אזור החיפוש המינימלי. הגדרת סף של 5 לחיפוש, אבל לא אזור חיפוש מינימלי.
מסנני מאפיינים נתמכים סכימה מלאה נתמכת, למעט:
  • מקום id
  • רכיבי כתובת
תמיכה בסכימה מלאה
יתרונות
  • יכול להחזיר כל מספר.
  • אופטימיזציה לביצועים ולעלות עיבוד נמוכה.
  • קל לשימוש. אין צורך לכתוב שאילתות מורכבות.
  • הפונקציה מאמתת את פרמטרי הקלט ומחזירה שגיאה, וכך קל יותר להשתמש בה ולנפות באגים.
  • אפשר להריץ שאילתות מורכבות כמו סינון מתקדם וצירופים.
  • אין אכיפה של אזור חיפוש מינימלי.
  • תמיכה בפונקציות צבירה נוספות מעבר ל-COUNT, כמו AVG, ‏ SUM ו-GROUP BY.

הפניה לפונקציות של ספירת מקומות ב-BigQuery

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

עיר, מדינה שמות הטבלאות
סידני, אוסטרליה maps-platform-analytics-hub.sample_places_insights_au.FUNCTION_NAME
סאו פאולו, ברזיל maps-platform-analytics-hub.sample_places_insights_br.FUNCTION_NAME
טורונטו, קנדה maps-platform-analytics-hub.sample_places_insights_ca.FUNCTION_NAME
פריז, צרפת maps-platform-analytics-hub.sample_places_insights_fr.FUNCTION_NAME
ברלין, גרמניה maps-platform-analytics-hub.sample_places_insights_de.FUNCTION_NAME
לונדון, בריטניה maps-platform-analytics-hub.sample_places_insights_gb.FUNCTION_NAME
מומבאי, הודו maps-platform-analytics-hub.sample_places_insights_in.FUNCTION_NAME
ג'קרטה, אינדונזיה maps-platform-analytics-hub.sample_places_insights_id.FUNCTION_NAME
רומא, איטליה maps-platform-analytics-hub.sample_places_insights_it.FUNCTION_NAME
טוקיו, יפן maps-platform-analytics-hub.sample_places_insights_jp.FUNCTION_NAME
מקסיקו סיטי, מקסיקו maps-platform-analytics-hub.sample_places_insights_mx.FUNCTION_NAME
מדריד, ספרד maps-platform-analytics-hub.sample_places_insights_es.FUNCTION_NAME
ציריך, שווייץ maps-platform-analytics-hub.sample_places_insights_ch.FUNCTION_NAME
ניו יורק, ארצות הברית maps-platform-analytics-hub.sample_places_insights_us.FUNCTION_NAME