BigQuery 是強大的數據分析工具。您可以使用這個儲存庫儲存長期記錄,並對資料執行類似 SQL 的查詢。如要使用 BigQuery 進行分析,您必須明確將記錄檔轉送至 BigQuery,詳情請參閱下一節。
將記錄檔轉送至 BigQuery
- 在Logs Explorer中,建立篩選器來隔離 Fleet Engine 記錄:
Fleetengine.googleapis.com/Fleet。 - 在「Query Results」(查詢結果) 窗格中,按一下「Actions」(動作) 或「More Actions」(更多動作) 選單,然後選擇「Create Sink」(建立接收器)。
- 指定接收器名稱 (例如 FleetEngineLogsSink)。點選「下一步」。
- 在「接收器目的地」部分,選取「BigQuery 資料集」。
- 在「選取 BigQuery 資料集」部分,選取「建立新的 BigQuery 資料集」。
- 在「建立資料集」對話方塊中,輸入資料集 ID。
- 其餘設定均維持原樣,然後點選「建立資料集」。
- 勾選「使用分區資料表」。點選「下一步」。
- 「Choose logs to include in sink」(選擇要納入接收器的記錄檔) 和「Choose logs to filter out of sink」(選擇要從接收器排除的記錄檔) 保持不變。
- 按一下「建立接收器」。
記錄現在應該會開始填入 BigQuery 資料集,這可能需要一些時間。另請參閱「將記錄檔轉送至支援的目的地」。
將記錄資料轉送至 BigQuery 後,系統會自動填入 FleetEngineLogs 資料集下的多個資料表,每個記錄類型各一個:
- CreateVehicle
- GetVehicle
- ListVehicles
- SearchVehicles
- UpdateVehicle
- CreateTrip
- GetTrip
- UpdateTrip
- ListTrips
資料表名稱採用以下模式:
project_id.data_set.log_name
舉例來說,如果專案名稱為 test-project,資料集名稱為 FleetEngineLogs,則 CreateTrip 資料表的名稱如下:
test-project.FleetEngineLogs.fleetengine_googleapis_com_create_trip
BigQuery 查詢範例
下列查詢範例說明如何在 BigQuery 中搜尋不同的記錄項目。
CreateTrips 記錄數量 (統計時間間隔為一小時)
SELECT TIMESTAMP_TRUNC(timestamp, HOUR) as hour,
count(*) as num_trips_created
FROM
`ProjectId.FleetEngineLogs.fleetengine_googleapis_com_create_trip`
GROUP BY hour
ORDER by hour
每輛車每小時停靠次數
SELECT
jsonpayload_v1_updatevehiclelog.request.vehicleid AS vehicle,
TIMESTAMP_TRUNC(timestamp, HOUR) AS hour,
COUNT(*) AS num_stops
FROM
`ProjectId.FleetEngineLogs.fleetengine_googleapis_com_update__vehicle`
WHERE
ARRAY_LENGTH(jsonpayload_v1_updatevehiclelog.request.vehicle.remainingvehiclejourneysegments) > 0
AND jsonpayload_v1_updatevehiclelog.request.vehicle.remainingvehiclejourneysegments[
OFFSET
(0)].stop.state = 'VEHICLE_STOP_STATE_LOG_ARRIVED'
GROUP BY
1,
2
ORDER BY
2
舉例來說,這項查詢可以告訴您過去一小時內:
- 車輛 A 在第 12 小時完成 10 個停靠點,在第 13 小時完成 8 個停靠點。
- 車輛 B 在第 11 小時完成 5 個停靠點,在第 12 小時完成 7 個停靠點。
- 車輛 C 在第 13 小時完成 12 個停靠點,在第 14 小時完成 9 個停靠點。
另請參閱「查看轉送至 BigQuery 的記錄檔」。
整合 BigQuery 與 Looker Studio
BigQuery 可與商業智慧工具整合,建立商業分析資訊主頁。請參閱 Looker Studio。
以下範例說明如何建構 Looker Studio 資訊主頁,在地圖上以視覺化方式呈現行程和車輛移動。
- 啟動新的 Looker Studio 資訊主頁,並選取「BigQuery」BigQuery做為資料連線。
- 選取「Custom Query」(自訂查詢),然後手動輸入或選取要計費的雲端專案。
- 在查詢方塊中輸入下列任一查詢。
隨選行程範例查詢
SELECT
timestamp,
labels.vehicle_id,
jsonpayload_v1_updatevehiclelog.response.lastlocation.location.latitude AS lat,
jsonpayload_v1_updatevehiclelog.response.lastlocation.location.longitude AS lng
FROM
`ProjectId.TableName.fleetengine_googleapis_com_update_vehicle`
排定工作的查詢範例
SELECT
labels.delivery_vehicle_id,
jsonpayload_v1_updatedeliveryvehiclelog.response.lastlocation.rawlocation.longitude as lat, jsonpayload_v1_updatedeliveryvehiclelog.response.lastlocation.rawlocation.latitude as lng
FROM `ProjectID.TableName.fleetengine_googleapis_com_update_delivery_vehicle`
- 選取「圖表類型」為「泡泡地圖」,然後選取「位置」欄位。
- 選取「新增欄位」。
- 為欄位命名,並新增下列公式:
CONCAT(lat, ",", lng)。 - 將類型設為「地理位置」->「緯度、經度」。
- 您可以在資訊主頁中新增控制項來篩選資料。例如,選取「日期範圍」篩選器。
- 編輯日期範圍方塊,選取預設日期範圍。
- 您可以為
vehicle_id新增其他下拉式選單控制項。您可以使用這些控制項,以視覺化方式呈現車輛或行程中的移動。
Looker Studio 輸出內容範例:

後續步驟
如要遵守資料保留政策,請參閱「限制記錄保留」。