طلب البحث من مجموعة البيانات باستخدام دوال عدد الأماكن

دوال عدد الأماكن هي طلبات بحث SQL محدّدة مسبقًا يتم تنفيذها في BigQuery، وهي مكمّلة لطلب البحث في مجموعة البيانات مباشرةً. الفرق الرئيسي بين طلب البحث عن البيانات مباشرةً واستخدام دالة هو أنّ الدوال لا تفرض حدًا أدنى لعدد النتائج، بل تفرض حدًا أدنى لمساحة البحث:

  • يمكن أن تعرض طلبات البحث عن مجموعات بيانات الأماكن أعدادًا تبلغ 5 أو أكثر فقط، ولكنّها لا تفرض أي قيود على حجم مساحة البحث.
  • يمكن أن تعرض دوال عدد الأماكن أي أعداد، بما في ذلك 0، ولكنها تفرض حدًا أدنى لمساحة البحث يبلغ 40.0 مترًا في 40.0 مترًا (1600 متر مربع). يمكن أن تعرض الدوال أيضًا معرّفات الأماكن، والتي يمكن استخدامها للبحث عن معلومات حول أماكن فردية.

يمكنك استخدام دوال "عدد الأماكن" إذا كان من المهم معرفة ما إذا كان طلب البحث لا يعرض أي نتائج أو إذا كنت بحاجة إلى معرفة عدد الأماكن المنخفض الذي يقل عن 5. ويفيد أيضًا إذا كنت بحاجة إلى الحصول على معلومات حول مكان معيّن للتأكّد من صحة نتائجك.

لا توفّر دوال Places Count سوى عدد النتائج، لذا إذا كنت بحاجة إلى تنفيذ طلبات بحث أكثر تعقيدًا، مثل عمليات ربط البيانات، أو الحصول على إحصاءات إضافية، مثل متوسط التقييم لمجموعة من الأماكن، عليك إجراء طلب بحث في مجموعة البيانات مباشرةً.

دوال عدد الأماكن والبلدان المتوافقة

تتيح أداة "إحصاءات الأماكن" الوظائف التالية:

  • 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].

إذا غيّرت اسم مجموعة البيانات المرتبطة عند إعداد "إحصاءات الأماكن"، استخدِم اسمك المخصّص بدلاً من أسماء الجداول التلقائية المدرَجة هنا. يمكنك أيضًا تضمين اسم مشروعك بشكل اختياري. في حال عدم تضمينها، سيتم تلقائيًا استخدام المشروع النشط.

على سبيل المثال:

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 متر من مبنى Empire State في مدينة نيويورك:

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;

تحتوي الاستجابة على عدد واحد:

نتائج دالة "عدد الأماكن" في مدينة نيويورك

يستخدم هذا المثال الدالة BigQuery ST_GEOGPOINT لعرض قيمة 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.

نتائج الدالة Place Count Type في مدينة نيويورك

عرض النتائج

تُعدّ أدوات التحليل وذكاء الأعمال ضرورية لمساعدتك في استخلاص الإحصاءات من بياناتك في BigQuery. يتوافق BigQuery مع العديد من أدوات عرض البيانات بشكل مرئي من Google والجهات الخارجية التي يمكنك استخدامها لتحليل نتائج الدوال على بيانات Places Insights.

للاطّلاع على مثال حول عرض نتائج دالة بشكل مرئي، راجِع عرض النتائج بشكل مرئي. لمزيد من المعلومات والأمثلة حول عرض نتائج Places Insights بشكل مرئي، يُرجى الاطّلاع على عرض نتائج طلب البحث بشكل مرئي.

القيود والمتطلبات

تخضع وظائف عدد الأماكن للقيود والمتطلبات التالية:

  • تتوفّر إحصاءات COUNT فقط.
  • يجب ألا تقل مساحة البحث عن 40.0 متر × 40.0 متر (1600 متر2).
  • يقتصر حجم إدخال مَعلمة عدد الدوال في "وضع" على 1 ميغابايت.
  • لا تتوفّر إمكانية الفلترة حسب معرّف المكان أو العلامات التجارية أو خيارات شحن المركبات الكهربائية أو مكوّن العنوان.
  • يمكنك الوصول إلى وظائف عدد الأماكن للمدن والبلدان التي اشتركت فيها فقط. اطّلِع على إعداد Places Insights للحصول على إذن الوصول إلى مجموعة البيانات.
  • إنّ مَعلمات الفلترة (مثل geography أو types) حسّاسة لحالة الأحرف ويجب أن تتطابق مع أسماء المَعلمات تمامًا، وإلا سيفشل طلب البحث.