Функции подсчёта мест — это ещё один способ запроса данных Places, доступных в Places Insights. Эти функции представляют собой предопределённые SQL-запросы, которые выполняются в BigQuery и дополняют запросы к данным Places . Главное отличие заключается в том, что функции не устанавливают минимальное пороговое значение количества , а вместо этого устанавливают минимальную область поиска :
Запросы к наборам данных мест могут возвращать только значения, превышающие 5, но не накладывают ограничений на размер области поиска.
Функции подсчета мест могут возвращать любые значения, включая 0, но при этом минимальная область поиска должна составлять 40,0 на 40,0 метров (1600 м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 идентификаторов мест на элемент ответа.
Аналогично наборам данных о местах, функции подсчёта мест доступны для одного из самых популярных городов в каждой из поддерживаемых стран. Например, для Австралии вы можете получить доступ к функциям подсчёта мест для Сиднея, Австралия.
Полный список поддерживаемых городов и стран см. в разделе Функции подсчета мест в BigQuery .
Пример функции подсчета мест
В следующем примере функция PLACES_COUNT
используется для возврата количества действующих ресторанов в радиусе 1000 метров от Эмпайр-стейт-билдинг в Нью-Йорке:
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
для передачи аргументов функции. В этом примере функция 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 `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
.
Применить фильтры к функции
Применяйте фильтры , чтобы сузить критерии поиска. Функции подсчёта мест поддерживают множество фильтров для уточнения поиска. В следующем примере вы примените фильтры, чтобы ограничить поиск по минимальному рейтингу пользователя, уровню цен, статусу заведения и тому, разрешено ли приходить с собаками в ресторан:
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 и сторонних разработчиков, которые можно использовать для анализа результатов ваших функций на основе данных Places Insights.
Пример визуализации результатов функции см. в разделе Визуализация результатов . Дополнительные сведения и пример визуализации результатов Places Insights см. в разделе Визуализация результатов запроса .
Ограничения и требования
Функции подсчета мест имеют следующие ограничения и требования:
- Поддерживается только
COUNT
аналитических данных. - Минимальная площадь поиска должна составлять 40,0 на 40,0 метров (1600 м2 ).
- Размер входного параметра подсчета функции размещения ограничен 1 МБ.
- Фильтрация по идентификатору места или адресу не поддерживается.
Сравните функции подсчета мест и запросы к наборам данных о местах
В следующей таблице перечислены основные различия:
Функции подсчета мест | Запросы к наборам данных | |
---|---|---|
Интерфейс | Четыре предопределенные функции SQL, которые генерируют COUNT аналитику: единичный подсчет, подсчет по типу, подсчет по географическому признаку, подсчет по ячейке H3. | Использует SQL для выполнения функций агрегации, таких как COUNT, COUNT_IF, SUM и AVG. Дополнительную информацию можно получить с помощью JOIN, GROUP BY, WHERE и других. |
Ограничения | Устанавливает минимальную область поиска 40,0 на 40,0 метров (1600 м² ). Функция возвращает результат, даже если количество агрегаций меньше 5, при условии соблюдения минимальной области поиска. | Устанавливает пороговое значение количества в 5, но не устанавливает минимальную область поиска. |
Поддерживаемые фильтры атрибутов | Поддерживается полная схема , за исключением:
| Поддерживается полная схема |
Преимущества |
|
|
Функции подсчета мест в 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 |