Wysyłanie zapytań do zbioru danych za pomocą funkcji Places Count

Funkcje zliczania miejsc to predefiniowane zapytania SQL, które są uruchamiane w BigQuery i stanowią uzupełnienie bezpośredniego wykonywania zapytań w zbiorze danych. Główna różnica między wysyłaniem zapytań bezpośrednio do danych a używaniem funkcji polega na tym, że funkcje nie wymuszają minimalnego progu liczby, ale wymuszają minimalny obszar wyszukiwania:

  • Zapytania dotyczące zbiorów danych o miejscach mogą zwracać tylko wartości 5 i większe, ale nie mają ograniczeń co do wielkości obszaru wyszukiwania.
  • Funkcje liczby miejsc mogą zwracać dowolne liczby, w tym 0, ale wymagają minimalnego obszaru wyszukiwania o wymiarach 40,0 m × 40,0 m (1600 m2). Funkcje mogą też zwracać identyfikatory miejsc, których można używać do wyszukiwania informacji o poszczególnych miejscach.

Funkcje Places Count mogą być przydatne, jeśli ważne jest dla Ciebie, kiedy zapytanie nie zwraca żadnych wyników, lub gdy potrzebujesz informacji o małej liczbie miejsc (poniżej 5). Jest to też przydatne, jeśli chcesz uzyskać informacje o poszczególnych miejscach, aby sprawdzić wyniki.

Funkcje Places Count podają tylko liczby, więc jeśli chcesz wykonywać bardziej złożone zapytania, np. łączyć dane, lub uzyskiwać dodatkowe statystyki, takie jak średnia ocena grupy miejsc, wykonuj zapytania bezpośrednio w zbiorze danych.

Obsługiwane funkcje Miejsc i kraje

Statystyki miejsc obsługują te funkcje:

  • PLACES_COUNT_V2: zwraca tabelę zawierającą liczbę miejsc i przykładowe identyfikatory miejsc. Ta funkcja akceptuje parametr tabeli dla danych z wielu lokalizacji geograficznych, co umożliwia wydajne przetwarzanie wsadowe. Jest ona wysoce zoptymalizowana pod kątem łączenia geoprzestrzennego w porównaniu z funkcjami PLACES_COUNTPLACES_COUNT_PER_GEO.
  • PLACES_COUNT_PER_TYPE_V2: zwraca tabelę z liczbą miejsc i przykładowymi identyfikatorami miejsc, podzieloną według typu miejsca. Podobnie jak PLACES_COUNT_V2, ta funkcja przyjmuje parametr tabeli, aby przetwarzać jednocześnie wiele lokalizacji wejściowych. Ta architektura obsługuje wydajne przetwarzanie wsadowe i zapewnia zoptymalizowane łączenie geoprzestrzenne w porównaniu z PLACES_COUNT_PER_TYPE.
  • PLACES_COUNT_PER_H3 Zwraca tabelę BigQuery z liczbą miejsc w każdej komórce H3.
  • PLACES_COUNT: zwraca jeden wiersz zawierający liczbę miejsc.
  • PLACES_COUNT_PER_TYPE: zwraca tabelę BigQuery z liczbą miejsc według typu.
  • PLACES_COUNT_PER_GEO: zwraca tabelę BigQuery z liczbą miejsc w poszczególnych obszarach geograficznych.

Oprócz liczby miejsc wszystkie funkcje z wyjątkiem PLACES_COUNT zwracają też maksymalnie 250 identyfikatorów miejsc na element odpowiedzi.

Identyfikatory miejsc można stosować w przypadku:

Pisanie zapytań z użyciem funkcji

Aby wywołać funkcje, użyj tego formatu: [project name (optional)].[table name].[function name].

Jeśli podczas konfigurowania Statystyk miejsc zmienisz nazwę połączonego zbioru danych, użyj nazwy niestandardowej zamiast domyślnych nazw tabel wymienionych w Funkcjach zliczania miejsc referencyjnych w BigQuery. Możesz też opcjonalnie podać nazwę projektu. Jeśli nie podasz żadnego projektu, zapytanie zostanie domyślnie uruchomione w aktywnym projekcie.

Na przykład:

PROJECT_NAME.places_insights___us.PLACES_COUNT

Użyj znaku JSON_OBJECT, aby przekazać argumenty do funkcji.

Filtrowanie wyników

Funkcje zliczania miejsc obsługują wiele filtrów, które pozwalają zawęzić wyszukiwanie. W tych parametrach (np. price_level lub types) rozróżniana jest wielkość liter, więc muszą one dokładnie odpowiadać nazwom parametrów. Pełną listę opcji znajdziesz w dokumentacji parametrów filtra.

W następnym przykładzie zastosujesz filtry, aby ograniczyć wyszukiwanie według minimalnej oceny użytkownika, poziomu cen, stanu firmy i tego, czy restauracja akceptuje psy, za pomocą funkcji PLACES_COUNT_V2.

Najpierw użyj tabeli geograficznej lub przygotuj tabelę z wybranymi lokalizacjami:

-- Create a table for the input geographies
CREATE TABLE `PROJECT_NAME.YOUR_DATASET.my_search_areas` AS (
  SELECT
    '1' AS geo_id, -- Unique identifier
    ST_GEOGPOINT(-73.9857, 40.7484) AS geo -- Empire State Building
  UNION ALL
  SELECT
    '2' AS geo_id, -- Unique identifier
    ST_GEOGPOINT(-73.9851, 40.7580) AS geo -- Times Square
);

Następnie wywołaj funkcję PLACES_COUNT_V2 z tabelą i obiektem JSON zawierającym filtry. Promień wyszukiwania jest uwzględniony w filtrach JSON i będzie stosowany wokół każdego punktu w tabeli my_search_areas.

SELECT * FROM `PROJECT_NAME.places_insights___us.PLACES_COUNT_V2`(
  TABLE `PROJECT_NAME.YOUR_DATASET.my_search_areas`,
  JSON_OBJECT(
      'geography_radius', 1000, -- Radius in meters around each point in 'geo'
      'business_status', ['OPERATIONAL'],
      'types', ["restaurant"],
      'min_rating', 1.3,
      'price_level', ['PRICE_LEVEL_INEXPENSIVE', 'PRICE_LEVEL_MODERATE'],
      'allows_dogs', TRUE
      )
);

Przykład funkcji Places Count

W tym przykładzie używamy funkcji PLACES_COUNT_V2 z tabelą niestandardowych danych wejściowych my_search_area, aby uzyskać liczbę działających restauracji w promieniu 1000 metrów od Empire State Building i Times Square w Nowym Jorku:

SELECT * FROM `PROJECT_NAME.places_insights___us.PLACES_COUNT_V2`(
  TABLE `PROJECT_NAME.YOUR_DATASET.my_search_areas`,
  JSON_OBJECT(
      'geography_radius', 1000, -- Radius in meters
      'business_status', ['OPERATIONAL'],
      'types', ["restaurant"]
      )
);

Odpowiedź to tabela BigQuery, która zawiera geo_id, lokalizację geograficzną, liczbę i próbkę identyfikatorów miejsc.

Wyniki funkcji Places Count w Nowym Jorku.

Wizualizacja wyników

Narzędzia do analizy i analityki biznesowej są niezbędne, aby pomóc Ci odkrywać statystyki na podstawie danych z BigQuery. BigQuery obsługuje kilka narzędzi do wizualizacji danych Google i innych firm, których możesz używać do analizowania wyników funkcji na podstawie danych Statystyk miejsc.

Przykład wizualizacji wyników funkcji znajdziesz w sekcji Wizualizacja wyników. Więcej informacji i przykłady wizualizacji wyników Statystyk miejsc znajdziesz w artykule Wizualizacja wyników zapytań.

Ograniczenia i wymagania

Funkcje Places Count mają następujące ograniczenia i wymagania:

  • Obsługiwane są tylko statystyki COUNT.
  • Wymagany jest minimalny obszar wyszukiwania o wymiarach 40,0 m × 40,0 m (1600 m2).
  • Limit rozmiaru danych wejściowych parametru: obiekt JSON przekazywany jako parametr do funkcji jest ograniczony do 1 MB. Wpływ tego limitu zależy od wersji funkcji:
  • W przypadku funkcji V2 (PLACES_COUNT_V2, PLACES_COUNT_PER_TYPE_V2) ten limit dotyczy tylko obiektu JSON filtrów. Ponieważ dane geograficzne są podawane osobno za pomocą parametru tabeli, te funkcje mogą być skalowane do znacznie większej liczby danych geograficznych bez osiągania limitu rozmiaru JSON.
    • W przypadku PLACES_COUNT_PER_H3, PLACES_COUNT, PLACES_COUNT_PER_TYPEPLACES_COUNT_PER_GEO ten limit dotyczy całego obiektu JSON, w tym wszystkich definicji geograficznych. Może to ograniczyć liczbę regionów geograficznych, które można przetworzyć w ramach jednego wywołania.
  • Brak obsługi filtrowania według identyfikatora miejsca, marek, opcji ładowania pojazdów elektrycznych lub komponentu adresu.
  • Funkcje zliczania miejsc są dostępne tylko w przypadku miast i krajów, w których masz subskrypcję. Informacje o dostępie do zbioru danych znajdziesz w artykule Konfigurowanie Statystyk miejsc.
  • W parametrach filtra (np. geography lub types) wielkość liter ma znaczenie i muszą one dokładnie odpowiadać nazwom parametrów. W przeciwnym razie zapytanie nie zostanie wykonane.

Funkcje odwoływania się do liczby miejsc w BigQuery

Wszystkie miasta w przykładowym zbiorze danych i kraje w pełnym zbiorze danych obsługują funkcje zliczania miejsc.

Masz dostęp do funkcji Places Count odpowiadających subskrybowanym przez Ciebie zbiorom danych miast i krajów. Informacje o dostępie do zbioru danych znajdziesz w artykule Konfigurowanie Places Insights.

W tabelach podano dostępne miasta, kraje i odpowiadające im nazwy tabel.

Przykładowe dane

Miasto, kraj Nazwy tabel
Buenos Aires, Argentyna places_insights___ar___sample.FUNCTION_NAME
Sydney, Australia places_insights___au___sample.FUNCTION_NAME
Bad Gastein, Austria places_insights___at___sample.FUNCTION_NAME
Riffa, Bahrajn places_insights___bh___sample.FUNCTION_NAME
Bruksela, Belgia places_insights___be___sample.FUNCTION_NAME
São Paulo, Brazylia places_insights___br___sample.FUNCTION_NAME
Płowdiw, Bułgaria places_insights___bg___sample.FUNCTION_NAME
Toronto, Kanada places_insights___ca___sample.FUNCTION_NAME
Santiago, Chile places_insights___cl___sample.FUNCTION_NAME
Medellín, Kolumbia places_insights___co___sample.FUNCTION_NAME
Brno, Czechy places_insights___cz___sample.FUNCTION_NAME
Kopenhaga, Dania places_insights___dk___sample.FUNCTION_NAME
Kair, Egipt places_insights___eg___sample.FUNCTION_NAME
Helsinki, Finlandia places_insights___fi___sample.FUNCTION_NAME
Paryż, Francja places_insights___fr___sample.FUNCTION_NAME
Berlin, Niemcy places_insights___de___sample.FUNCTION_NAME
Ateny, Grecja places_insights___gr___sample.FUNCTION_NAME
Hongkong, Hongkong places_insights___hk___sample.FUNCTION_NAME
Debreczyn, Węgry places_insights___hu___sample.FUNCTION_NAME
Bombaj, Indie places_insights___in___sample.FUNCTION_NAME
Dżakarta, Indonezja places_insights___id___sample.FUNCTION_NAME
Cork, Irlandia places_insights___ie___sample.FUNCTION_NAME
Tel Awiw-Jafa, Izrael places_insights___il___sample.FUNCTION_NAME
Rzym, Włochy places_insights___it___sample.FUNCTION_NAME
Tokio, Japonia places_insights___jp___sample.FUNCTION_NAME
Busan, Korea Południowa places_insights___kr___sample.FUNCTION_NAME
Kuala Lumpur, Malezja places_insights___my___sample.FUNCTION_NAME
Meksyk (miasto), Meksyk places_insights___mx___sample.FUNCTION_NAME
Amsterdam, Holandia places_insights___nl___sample.FUNCTION_NAME
Wellington, Nowa Zelandia places_insights___nz___sample.FUNCTION_NAME
Oslo, Norwegia places_insights___no___sample.FUNCTION_NAME
Arequipa, Peru places_insights___pe___sample.FUNCTION_NAME
Manila, Filipiny places_insights___ph___sample.FUNCTION_NAME
Warszawa, Polska places_insights___pl___sample.FUNCTION_NAME
Lizbona, Portugalia places_insights___pt___sample.FUNCTION_NAME
Lusail, Katar places_insights___qa___sample.FUNCTION_NAME
Bukareszt, Rumunia places_insights___ro___sample.FUNCTION_NAME
Dżudda, Arabia Saudyjska places_insights___sa___sample.FUNCTION_NAME
Singapur, Singapur places_insights___sg___sample.FUNCTION_NAME
Johannesburg, Republika Południowej Afryki places_insights___za___sample.FUNCTION_NAME
Madryt, Hiszpania places_insights___es___sample.FUNCTION_NAME
Sztokholm, Szwecja places_insights___se___sample.FUNCTION_NAME
Zurych, Szwajcaria places_insights___ch___sample.FUNCTION_NAME
Tajpej, Tajwan places_insights___tw___sample.FUNCTION_NAME
Chiang Mai, Tajlandia places_insights___th___sample.FUNCTION_NAME
Ankara, Turcja places_insights___tr___sample.FUNCTION_NAME
Szardża, Zjednoczone Emiraty Arabskie places_insights___ae___sample.FUNCTION_NAME
Londyn, Wielka Brytania places_insights___gb___sample.FUNCTION_NAME
Nowy Jork, Stany Zjednoczone places_insights___us___sample.FUNCTION_NAME
Hanoi, Wietnam places_insights___vn___sample.FUNCTION_NAME

Pełne dane

Kraj Nazwy tabel
Argentyna places_insights___ar.FUNCTION_NAME
Australia places_insights___au.FUNCTION_NAME
Austria places_insights___at.FUNCTION_NAME
Bahrajn places_insights___bh.FUNCTION_NAME
Belgia places_insights___be.FUNCTION_NAME
Brazylia places_insights___br.FUNCTION_NAME
Bułgaria places_insights___bg.FUNCTION_NAME
Kanada places_insights___ca.FUNCTION_NAME
Chile places_insights___cl.FUNCTION_NAME
Kolumbia places_insights___co.FUNCTION_NAME
Czechy places_insights___cz.FUNCTION_NAME
Dania places_insights___dk.FUNCTION_NAME
Egipt places_insights___eg.FUNCTION_NAME
Finlandia places_insights___fi.FUNCTION_NAME
Francja places_insights___fr.FUNCTION_NAME
Niemcy places_insights___de.FUNCTION_NAME
Grecja places_insights___gr.FUNCTION_NAME
Hongkong places_insights___hk.FUNCTION_NAME
Węgry places_insights___hu.FUNCTION_NAME
Indie places_insights___in.FUNCTION_NAME
Indonezja places_insights___id.FUNCTION_NAME
Irlandia places_insights___ie.FUNCTION_NAME
Izrael places_insights___il.FUNCTION_NAME
Włochy places_insights___it.FUNCTION_NAME
Japonia places_insights___jp.FUNCTION_NAME
Malezja places_insights___my.FUNCTION_NAME
Meksyk places_insights___mx.FUNCTION_NAME
Holandia places_insights___nl.FUNCTION_NAME
Nowa Zelandia places_insights___nz.FUNCTION_NAME
Norwegia places_insights___no.FUNCTION_NAME
Peru places_insights___pe.FUNCTION_NAME
Filipiny places_insights___ph.FUNCTION_NAME
Polska places_insights___pl.FUNCTION_NAME
Portugalia places_insights___pt.FUNCTION_NAME
Katar places_insights___qa.FUNCTION_NAME
Rumunia places_insights___ro.FUNCTION_NAME
Arabia Saudyjska places_insights___sa.FUNCTION_NAME
Singapur places_insights___sg.FUNCTION_NAME
Republika Południowej Afryki places_insights___za.FUNCTION_NAME
Korea Południowa places_insights___kr.FUNCTION_NAME
Hiszpania places_insights___es.FUNCTION_NAME
Szwecja places_insights___se.FUNCTION_NAME
Szwajcaria places_insights___ch.FUNCTION_NAME
Tajwan places_insights___tw.FUNCTION_NAME
Tajlandia places_insights___th.FUNCTION_NAME
Turcja places_insights___tr.FUNCTION_NAME
Zjednoczone Emiraty Arabskie places_insights___ae.FUNCTION_NAME
Wielka Brytania places_insights___gb.FUNCTION_NAME
Stany Zjednoczone places_insights___us.FUNCTION_NAME
Wietnam places_insights___vn.FUNCTION_NAME