場所の数関数の概要

場所のカウント関数は、Places Insights で利用可能な Places データをクエリする別の方法です。これらの関数は、BigQuery で実行される事前定義済みの SQL クエリであり、プレイス データクエリを補完するものです。主な違いは、関数では最小カウントしきい値が適用されず、代わりに最小検索領域が適用されることです。

  • プレイス データセット クエリでは、5 を超えるカウントのみが返されますが、検索エリアのサイズに制限はありません。

  • 場所のカウント関数は、0 を含む任意のカウントを返すことができますが、検索エリアの最小サイズは 40.0 メートル × 40.0 メートル(1,600 m2)に制限されます。

クエリで結果が返されなかった場合を把握することが重要な場合や、5 未満の場所の数が少ないことを把握する必要がある場合は、場所のカウント関数を使用することをおすすめします。たとえば、サイト選択のユースケースでは、少ないカウントを返すことができることが重要です。

サポートされている場所のカウント関数と国

Places Insights は、次の関数をサポートしています。

  • PLACES_COUNT: 場所の数を含む単一行を返します。
  • PLACES_COUNT_PER_TYPE: 場所のタイプごとの場所の数を BigQuery テーブルで返します。
  • PLACES_COUNT_PER_GEO: 地域ごとの場所の数の BigQuery テーブルを返します。
  • PLACES_COUNT_PER_H3: H3 セルあたりの場所の数の BigQuery テーブルを返します。

PLACES_COUNT_PER_TYPEPLACES_COUNT_PER_GEOPLACES_COUNT_PER_H3 の各関数は、場所の数とともに、レスポンスの要素ごとに最大 250 個のプレイス ID も返します。

場所データセットと同様に、サポートされている各国のトップ都市で場所カウント関数を使用できます。たとえば、オーストラリアの場合、オーストラリアのシドニーの場所のカウント関数にアクセスできます。

サポートされている都市と国の一覧については、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;

レスポンスには単一のカウントが含まれます。

ニューヨーク市の Place 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_TYPEPLACES_COUNT_PER_GEOPLACES_COUNT_PER_H3 関数は、場所の数のほかに、レスポンスに含まれる場所の場所 ID を最大 250 個返します。

たとえば、PLACES_COUNT_PER_TYPE 関数は、場所のタイプごとの場所の数のテーブルを返します。レスポンスには、各タイプに一致する場所のプレイス ID の配列が含まれます。返されたプレイス ID を使用して、各場所に関する情報を検索できます。

次の関数呼び出しは、restaurantcafebar のタイプの場所の数を返します。

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']
      )
);

この関数は、typecountsample_place_ids の 3 つの列を含むテーブルを返します。count 列には各 type のプレイス数が表示され、sample_place_ids 列には各 type のプレイス ID が最大 250 個表示されます。

ニューヨーク市の 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 は、Places Insights データの関数結果の分析に使用できる、Google およびサードパーティのデータ可視化ツールをいくつかサポートしています。

関数の結果を可視化する例については、結果を可視化するをご覧ください。Places Insights の結果を可視化する方法と例については、クエリ結果を可視化するをご覧ください。

制限事項と要件

プレイスカウント関数には、次の制限と要件があります。

  • COUNT の分析情報のみがサポートされています。
  • 最小検索エリアは 40.0 メートル × 40.0 メートル(1,600 m2)です。
  • Place 関数のカウント パラメータの入力サイズは 1 MB に制限されています。
  • プレイス ID または住所コンポーネントによるフィルタリングはサポートされていません。

場所のカウント関数と場所のデータセット クエリを比較する

次の表に、主な違いを示します。

場所のカウント関数 プレイス データセットのクエリ
インターフェース COUNT 分析情報を生成する 4 つの事前定義 SQL 関数: 単一カウント、タイプごとのカウント、地域ごとのカウント、H3 セルごとのカウント。 SQL を使用して、COUNT, COUNT_IF, SUMAVG. などの集計関数を実行します。JOIN, GROUP BY, WHERE などを使用して、追加の分析情報を生成できます。
制限事項 最小検索エリアを 40.0 メートル × 40.0 メートル(1,600 m2)に設定します。最小検索領域が満たされていれば、集計数が 5 未満でも関数は結果を返します。 カウントのしきい値は 5 に設定されますが、最小検索エリアは設定されません。
サポートされている属性フィルタ 完全なスキーマがサポートされています(以下を除く)。
  • 場所 id
  • 住所コンポーネント
完全なスキーマがサポートされている
メリット
  • 任意のカウントを返すことができます。
  • パフォーマンスと低い処理コストに最適化されています。
  • 使いやすい。複雑なクエリを作成する必要はありません。
  • 入力パラメータを検証し、エラーを返して、使用とデバッグを容易にします。
  • 高度なフィルタリングや結合などの複雑なクエリを使用できます。
  • 最小検索エリアは適用されません。
  • AVGSUMGROUP BY など、COUNT 以外の集計関数もサポートしています。

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