Tổng quan về hàm đếm địa điểm

Hàm đếm địa điểm là một cách khác để truy vấn dữ liệu Địa điểm có trong Thông tin chi tiết về địa điểm. Đây là các truy vấn SQL được xác định trước, chạy trong BigQuery và bổ sung cho các truy vấn dữ liệu về địa điểm. Điểm khác biệt chính là các hàm không áp dụng ngưỡng số lượng tối thiểu mà thay vào đó áp dụng diện tích tìm kiếm tối thiểu:

  • Truy vấn tập dữ liệu về địa điểm chỉ có thể trả về số lượng lớn hơn 5 nhưng không áp dụng giới hạn về kích thước của khu vực tìm kiếm.

  • Hàm đếm địa điểm có thể trả về mọi số lượng, kể cả 0, nhưng phải có diện tích tìm kiếm tối thiểu là 40 m x 40 m (1.600 m2).

Bạn nên sử dụng các hàm Đếm địa điểm nếu cần biết thời điểm một cụm từ tìm kiếm không trả về kết quả hoặc nếu bạn cần biết số lượng địa điểm dưới 5. Ví dụ: khả năng trả về số lượng thấp là rất quan trọng đối với các trường hợp sử dụng lựa chọn trang web.

Các hàm và quốc gia được hỗ trợ cho số lượng địa điểm

Places Insights hỗ trợ các chức năng sau:

  • PLACES_COUNT: Trả về một hàng chứa số lượng địa điểm.
  • PLACES_COUNT_PER_TYPE: Trả về một bảng BigQuery về số lượng địa điểm theo từng loại địa điểm.
  • PLACES_COUNT_PER_GEO: Trả về một bảng BigQuery về số lượng địa điểm theo từng khu vực địa lý.
  • PLACES_COUNT_PER_H3: Trả về một bảng BigQuery gồm số lượng địa điểm trên mỗi ô H3.

Cùng với số lượng địa điểm, các hàm PLACES_COUNT_PER_TYPE, PLACES_COUNT_PER_GEOPLACES_COUNT_PER_H3 cũng trả về tối đa 250 mã địa điểm cho mỗi phần tử của phản hồi.

Tương tự như các tập dữ liệu về địa điểm, các hàm đếm địa điểm cũng có sẵn cho một thành phố hàng đầu của mỗi quốc gia được hỗ trợ. Ví dụ: đối với Úc, bạn có thể truy cập vào các hàm đếm địa điểm cho Sydney, Úc.

Để xem danh sách đầy đủ các thành phố và quốc gia được hỗ trợ, hãy xem Hàm đếm địa điểm tham chiếu trong BigQuery.

Ví dụ về hàm đếm vị trí

Ví dụ sau đây sử dụng hàm PLACES_COUNT để trả về số lượng nhà hàng đang hoạt động trong vòng 1.000 mét tính từ Toà nhà Empire State ở Thành phố New York:

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;

Phản hồi chứa một số lượng duy nhất:

Kết quả cho hàm Place Count ở Thành phố New York.

Trong ví dụ này, câu lệnh SELECT tham chiếu đến hàm PLACES_COUNT cho Hoa Kỳ bằng cú pháp:

maps-platform-analytics-hub.sample_places_insights_us.PLACES_COUNT

Để xem danh sách đầy đủ các thành phố và quốc gia được hỗ trợ, hãy xem Hàm đếm địa điểm tham chiếu trong BigQuery.

Sử dụng JSON_OBJECT để truyền đối số vào hàm. Ví dụ này sử dụng hàm BigQuery ST_GEOGPOINT để trả về giá trị GEOGRAPHY từ một điểm, sau đó truyền giá trị đó vào tham số geography. Thao tác này cũng truyền bán kính tìm kiếm xung quanh điểm và loại địa điểm, "restaurant", để tìm kiếm.

Ví dụ về số lượng địa điểm theo loại, vị trí địa lý hoặc H3

Cùng với số lượng địa điểm, các hàm PLACES_COUNT_PER_TYPE, PLACES_COUNT_PER_GEOPLACES_COUNT_PER_H3 cũng trả về tối đa 250 mã địa điểm cho những địa điểm có trong phản hồi.

Ví dụ: hàm PLACES_COUNT_PER_TYPE trả về một bảng số lượng địa điểm theo từng loại địa điểm. Trong phản hồi có một mảng gồm các mã địa điểm cho những địa điểm phù hợp với từng loại. Bạn có thể sử dụng mã địa điểm được trả về để tra cứu thông tin về từng địa điểm.

Lệnh gọi hàm sau đây trả về số lượng địa điểm có các loại: restaurant, cafebar:

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

Hàm này trả về một bảng có 3 cột: type, countsample_place_ids. Cột count cho biết số lượng địa điểm cho mỗi type, còn cột sample_place_ids cho biết tối đa 250 mã địa điểm cho mỗi type.

Kết quả cho hàm Place Count Type ở Thành phố New York.

Áp dụng bộ lọc cho hàm

Áp dụng bộ lọc để thu hẹp tiêu chí tìm kiếm. Hàm đếm địa điểm hỗ trợ nhiều bộ lọc để tinh chỉnh nội dung tìm kiếm. Trong ví dụ tiếp theo, bạn sẽ áp dụng bộ lọc để giới hạn phạm vi tìm kiếm theo điểm xếp hạng tối thiểu của người dùng, mức giá, trạng thái hoạt động của doanh nghiệp và việc nhà hàng có cho phép mang theo chó hay không:

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;

Hình dung kết quả

Các công cụ phân tích và dữ liệu doanh nghiệp đóng vai trò quan trọng trong việc giúp bạn khám phá thông tin chi tiết từ dữ liệu BigQuery. BigQuery hỗ trợ một số công cụ trực quan hoá dữ liệu của Google và bên thứ ba mà bạn có thể dùng để phân tích kết quả của các hàm trên dữ liệu Thông tin chi tiết về địa điểm.

Để biết ví dụ về cách trực quan hoá kết quả của một hàm, hãy xem phần Trực quan hoá kết quả. Để biết thêm thông tin và ví dụ về cách trực quan hoá kết quả của Places Insights, hãy xem phần Trực quan hoá kết quả truy vấn.

Giới hạn và yêu cầu

Các hàm đếm địa điểm có những hạn chế và yêu cầu sau:

  • Chỉ hỗ trợ thông tin chi tiết COUNT.
  • Bạn phải có khu vực tìm kiếm tối thiểu là 40 m x 40 m (1.600 m2).
  • Giới hạn kích thước đầu vào của tham số số lượng hàm vị trí là 1 MB.
  • Không hỗ trợ lọc theo mã địa điểm hoặc thành phần địa chỉ.

So sánh các hàm đếm địa điểm và truy vấn tập dữ liệu địa điểm

Bảng sau đây liệt kê những điểm khác biệt chính:

Hàm đếm địa điểm Cụm từ tìm kiếm về tập dữ liệu địa điểm
Giao diện Bốn hàm SQL được xác định trước để tạo thông tin chi tiết COUNT: số lượng đơn lẻ, số lượng theo loại, số lượng theo vị trí địa lý, số lượng theo ô H3. Sử dụng SQL để chạy các hàm tổng hợp như COUNT, COUNT_IF, SUMAVG.. Bạn có thể tạo thêm thông tin chi tiết bằng cách sử dụng JOIN, GROUP BY, WHERE và các hàm khác.
Các quy định hạn chế Áp dụng khu vực tìm kiếm tối thiểu là 40 m x 40 m (1600 m2). Một hàm sẽ trả về kết quả ngay cả khi số lượng kết quả tổng hợp ít hơn 5, miễn là đáp ứng được diện tích tìm kiếm tối thiểu. Thiết lập ngưỡng số lượng là 5 nhưng không có diện tích tìm kiếm tối thiểu.
Bộ lọc thuộc tính được hỗ trợ Lược đồ đầy đủ được hỗ trợ, ngoại trừ:
  • Địa điểm id
  • Thành phần địa chỉ
Hỗ trợ schema đầy đủ
Lợi ích
  • Có thể trả về bất kỳ số lượng nào.
  • Được tối ưu hoá để mang lại hiệu suất cao và chi phí xử lý thấp.
  • Dễ sử dụng. Không cần viết các truy vấn phức tạp.
  • Xác thực các tham số đầu vào và trả về lỗi, giúp bạn dễ dàng sử dụng và gỡ lỗi.
  • Cho phép thực hiện các truy vấn phức tạp như lọc nâng cao và kết hợp.
  • Không bắt buộc phải có diện tích tìm kiếm tối thiểu.
  • Hỗ trợ các hàm tổng hợp bổ sung ngoài COUNT, chẳng hạn như AVG, SUMGROUP BY.

Tham chiếu các hàm đếm địa điểm trong BigQuery

Các hàm đếm địa điểm hỗ trợ những thành phố và quốc gia sau. Bạn phải đăng ký riêng cho từng thành phố và quốc gia.

Thành phố, Quốc gia Tên bảng
Sydney, Úc maps-platform-analytics-hub.sample_places_insights_au.FUNCTION_NAME
Sao Paulo, Brazil maps-platform-analytics-hub.sample_places_insights_br.FUNCTION_NAME
Toronto, Canada maps-platform-analytics-hub.sample_places_insights_ca.FUNCTION_NAME
Paris, Pháp maps-platform-analytics-hub.sample_places_insights_fr.FUNCTION_NAME
Berlin, Đức maps-platform-analytics-hub.sample_places_insights_de.FUNCTION_NAME
Luân Đôn, Vương quốc Anh maps-platform-analytics-hub.sample_places_insights_gb.FUNCTION_NAME
Mumbai, Ấn Độ maps-platform-analytics-hub.sample_places_insights_in.FUNCTION_NAME
Jakarta, Indonesia maps-platform-analytics-hub.sample_places_insights_id.FUNCTION_NAME
Rome, Ý maps-platform-analytics-hub.sample_places_insights_it.FUNCTION_NAME
Tokyo, Nhật Bản maps-platform-analytics-hub.sample_places_insights_jp.FUNCTION_NAME
Thành phố Mexico, Mexico maps-platform-analytics-hub.sample_places_insights_mx.FUNCTION_NAME
Madrid, Tây Ban Nha maps-platform-analytics-hub.sample_places_insights_es.FUNCTION_NAME
Zurich, Thụy Sĩ maps-platform-analytics-hub.sample_places_insights_ch.FUNCTION_NAME
Thành phố New York, Hoa Kỳ maps-platform-analytics-hub.sample_places_insights_us.FUNCTION_NAME