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

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

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

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

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

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

Places Insights תומך בפונקציות הבאות:

  • 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 מזהי מקומות לכל רכיב בתגובה. לרשימה של כל פרמטרי המסננים

אפשר להשתמש במזהי מקומות עם:

כתיבת שאילתות עם פונקציות

כדי להפעיל את הפונקציות, משתמשים בפורמט הבא: [project name (optional)].[table name].[function name].

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

לדוגמה:

PROJECT_NAME.places_insights___us.PLACES_COUNT

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

סינון התוצאות

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

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

SELECT `PROJECT_NAME.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;

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

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

SELECT `PROJECT_NAME.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;

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

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

בדוגמה הזו נעשה שימוש בפונקציה 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 `PROJECT_NAME.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.

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

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

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

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

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

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

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

פירוט פונקציות ספירת מקומות ב-BigQuery

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

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

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

נתונים שנדגמו

עיר, מדינה שמות הטבלאות
בואנוס איירס, ארגנטינה places_insights___ar___sample.FUNCTION_NAME
סידני, אוסטרליה places_insights___au___sample.FUNCTION_NAME
באד גאסטיין, אוסטריה places_insights___at___sample.FUNCTION_NAME
Riffa, Bahrain places_insights___bh___sample.FUNCTION_NAME
בריסל, בלגיה places_insights___be___sample.FUNCTION_NAME
סאו פאולו, ברזיל places_insights___br___sample.FUNCTION_NAME
פלבדיב, בולגריה places_insights___bg___sample.FUNCTION_NAME
טורונטו, קנדה places_insights___ca___sample.FUNCTION_NAME
סנטיאגו, צ'ילה places_insights___cl___sample.FUNCTION_NAME
מדיין, קולומביה places_insights___co___sample.FUNCTION_NAME
ברנו, צ'כיה places_insights___cz___sample.FUNCTION_NAME
קופנהגן, דנמרק places_insights___dk___sample.FUNCTION_NAME
קהיר, מצרים places_insights___eg___sample.FUNCTION_NAME
הלסינקי, פינלנד places_insights___fi___sample.FUNCTION_NAME
פריז, צרפת places_insights___fr___sample.FUNCTION_NAME
ברלין, גרמניה places_insights___de___sample.FUNCTION_NAME
אתונה, יוון places_insights___gr___sample.FUNCTION_NAME
הונג קונג, הונג קונג places_insights___hk___sample.FUNCTION_NAME
דברצן, הונגריה places_insights___hu___sample.FUNCTION_NAME
מומבאי, הודו places_insights___in___sample.FUNCTION_NAME
ג'קרטה, אינדונזיה places_insights___id___sample.FUNCTION_NAME
קורק, אירלנד places_insights___ie___sample.FUNCTION_NAME
תל אביב-יפו, ישראל places_insights___il___sample.FUNCTION_NAME
רומא, איטליה places_insights___it___sample.FUNCTION_NAME
טוקיו, יפן places_insights___jp___sample.FUNCTION_NAME
בוסאן, דרום קוריאה places_insights___kr___sample.FUNCTION_NAME
קואלה לומפור, מלזיה places_insights___my___sample.FUNCTION_NAME
מקסיקו סיטי, מקסיקו places_insights___mx___sample.FUNCTION_NAME
אמסטרדם, הולנד places_insights___nl___sample.FUNCTION_NAME
ולינגטון, ניו זילנד places_insights___nz___sample.FUNCTION_NAME
אוסלו, נורווגיה places_insights___no___sample.FUNCTION_NAME
ארקיפה, פרו places_insights___pe___sample.FUNCTION_NAME
מנילה, הפיליפינים places_insights___ph___sample.FUNCTION_NAME
ורשה, פולין places_insights___pl___sample.FUNCTION_NAME
ליסבון, פורטוגל places_insights___pt___sample.FUNCTION_NAME
לוסייל, קטאר places_insights___qa___sample.FUNCTION_NAME
בוקרשט, רומניה places_insights___ro___sample.FUNCTION_NAME
ג'דה, ערב הסעודית places_insights___sa___sample.FUNCTION_NAME
סינגפור, סינגפור places_insights___sg___sample.FUNCTION_NAME
יוהנסבורג, דרום אפריקה places_insights___za___sample.FUNCTION_NAME
מדריד, ספרד places_insights___es___sample.FUNCTION_NAME
שטוקוהולם, שוודיה places_insights___se___sample.FUNCTION_NAME
ציריך, שווייץ places_insights___ch___sample.FUNCTION_NAME
טאיפיי, טייוואן places_insights___tw___sample.FUNCTION_NAME
צ'יאנג מאי, תאילנד places_insights___th___sample.FUNCTION_NAME
אנקרה, טורקיה places_insights___tr___sample.FUNCTION_NAME
שארג'ה, איחוד האמירויות הערביות places_insights___ae___sample.FUNCTION_NAME
לונדון, בריטניה places_insights___gb___sample.FUNCTION_NAME
ניו יורק, ארצות הברית places_insights___us___sample.FUNCTION_NAME
האנוי, וייטנאם places_insights___vn___sample.FUNCTION_NAME

נתונים מלאים

מדינה שמות הטבלאות
ארגנטינה places_insights___ar.FUNCTION_NAME
אוסטרליה places_insights___au.FUNCTION_NAME
אוסטריה places_insights___at.FUNCTION_NAME
בחריין places_insights___bh.FUNCTION_NAME
בלגיה places_insights___be.FUNCTION_NAME
ברזיל places_insights___br.FUNCTION_NAME
בולגריה places_insights___bg.FUNCTION_NAME
קנדה places_insights___ca.FUNCTION_NAME
צ'ילה places_insights___cl.FUNCTION_NAME
קולומביה places_insights___co.FUNCTION_NAME
צ'כיה places_insights___cz.FUNCTION_NAME
דנמרק places_insights___dk.FUNCTION_NAME
מצרים places_insights___eg.FUNCTION_NAME
פינלנד places_insights___fi.FUNCTION_NAME
צרפת places_insights___fr.FUNCTION_NAME
גרמניה places_insights___de.FUNCTION_NAME
יוון places_insights___gr.FUNCTION_NAME
הונג קונג places_insights___hk.FUNCTION_NAME
הונגריה places_insights___hu.FUNCTION_NAME
הודו places_insights___in.FUNCTION_NAME
אינדונזיה places_insights___id.FUNCTION_NAME
אירלנד places_insights___ie.FUNCTION_NAME
ישראל places_insights___il.FUNCTION_NAME
איטליה places_insights___it.FUNCTION_NAME
יפן places_insights___jp.FUNCTION_NAME
מלזיה places_insights___my.FUNCTION_NAME
מקסיקו places_insights___mx.FUNCTION_NAME
הולנד places_insights___nl.FUNCTION_NAME
ניו זילנד places_insights___nz.FUNCTION_NAME
נורווגיה places_insights___no.FUNCTION_NAME
פרו places_insights___pe.FUNCTION_NAME
הפיליפינים places_insights___ph.FUNCTION_NAME
פולין places_insights___pl.FUNCTION_NAME
פורטוגל places_insights___pt.FUNCTION_NAME
קטאר places_insights___qa.FUNCTION_NAME
רומניה places_insights___ro.FUNCTION_NAME
ערב הסעודית places_insights___sa.FUNCTION_NAME
סינגפור places_insights___sg.FUNCTION_NAME
דרום אפריקה places_insights___za.FUNCTION_NAME
דרום קוריאה places_insights___kr.FUNCTION_NAME
ספרד places_insights___es.FUNCTION_NAME
שוודיה places_insights___se.FUNCTION_NAME
שווייץ places_insights___ch.FUNCTION_NAME
טייוואן places_insights___tw.FUNCTION_NAME
תאילנד places_insights___th.FUNCTION_NAME
טורקיה places_insights___tr.FUNCTION_NAME
איחוד האמירויות הערביות places_insights___ae.FUNCTION_NAME
בריטניה places_insights___gb.FUNCTION_NAME
ארצות הברית places_insights___us.FUNCTION_NAME
וייטנאם places_insights___vn.FUNCTION_NAME