BigQuery là một công cụ mạnh mẽ để thực hiện phân tích. Bạn có thể sử dụng thư viện này để lưu trữ các nhật ký dài hạn hơn và thực hiện các truy vấn giống như SQL đối với dữ liệu. Để sử dụng BigQuery cho mục đích phân tích, bạn phải định tuyến nhật ký của mình đến BigQuery một cách rõ ràng, như mô tả trong phần tiếp theo.
Chuyển hướng nhật ký đến BigQuery
- Trong Trình khám phá nhật ký, hãy tạo một bộ lọc tách riêng nhật ký của Công cụ của đội xe:
Fleetengine.googleapis.com/Fleet
. - Trong Ngăn kết quả truy vấn, hãy nhấp vào trình đơn Thao tác hoặc Thao tác khác rồi chọn Tạo Sink.
- Chỉ định tên bồn lưu trữ (ví dụ: FleetEngineLogsSink). Nhấp vào Tiếp theo.
- Trong Sink Destination (Đích đến của vùng chứa), hãy chọn BigQuery dataset (Tập dữ liệu BigQuery).
- Trong phần Chọn tập dữ liệu BigQuery, hãy chọn Tạo tập dữ liệu BigQuery mới.
- Trong hộp thoại Tạo tập dữ liệu, hãy nhập Mã nhận dạng tập dữ liệu.
- Để mọi thứ như cũ rồi nhấp vào Tạo tập dữ liệu.
- Đánh dấu vào Sử dụng bảng phân vùng. Nhấp vào Tiếp theo.
- Giữ nguyên các tuỳ chọn Chọn nhật ký để đưa vào bồn lưu trữ và Chọn nhật ký để lọc ra khỏi bồn lưu trữ.
- Nhấp vào Create Sink (Tạo Sink).
Giờ đây, nhật ký của bạn sẽ bắt đầu điền vào tập dữ liệu BigQuery. Quá trình này có thể mất một chút thời gian. Xem thêm phần Chuyển hướng nhật ký đến các đích đến được hỗ trợ.
Sau khi bạn định tuyến dữ liệu nhật ký đến BigQuery, một số bảng trong tập dữ liệu FleetEngineLogs sẽ tự động được điền sẵn, mỗi bảng cho một loại nhật ký:
- CreateVehicle
- GetVehicle
- ListVehicles
- SearchVehicles
- UpdateVehicle
- CreateTrip
- GetTrip
- UpdateTrip
- ListTrips
Tên bảng sử dụng mẫu sau:
project_id.data_set.log_name
Ví dụ: nếu dự án có tên là test-project và tên tập dữ liệu là FleetEngineLogs, thì bảng CreateTrip
sẽ có tên như sau:
test-project.FleetEngineLogs.fleetengine_googleapis_com_create_trip
Ví dụ về truy vấn cho BigQuery
Các truy vấn mẫu sau đây cho thấy cách bạn có thể tìm kiếm nhiều mục nhập nhật ký trong BigQuery.
Số nhật ký CreateTrips được nhóm theo giờ
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
Số điểm dừng của mỗi phương tiện mỗi giờ
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
Ví dụ: truy vấn này có thể cho bạn biết rằng trong 1 giờ qua:
- Xe A đã hoàn thành 10 điểm dừng trong giờ thứ 12 và 8 điểm dừng trong giờ thứ 13.
- Xe B đã hoàn thành 5 điểm dừng trong giờ thứ 11 và 7 điểm dừng trong giờ thứ 12.
- Xe C đã hoàn thành 12 điểm dừng trong giờ thứ 13 và 9 điểm dừng trong giờ thứ 14.
Xem thêm bài viết Xem nhật ký được định tuyến đến BigQuery.
Tích hợp BigQuery với Looker Studio
Bạn có thể tích hợp BigQuery với các công cụ thông tin kinh doanh để tạo trang tổng quan cho số liệu phân tích kinh doanh. Xem Looker Studio.
Ví dụ sau đây cho thấy cách tạo trang tổng quan Looker Studio để minh hoạ các chuyến đi và chuyển động của xe trên bản đồ.
- Chạy trang tổng quan Looker Studio mới và chọn BigQuery làm kết nối dữ liệu.
- Chọn Truy vấn tuỳ chỉnh rồi nhập hoặc chọn Dự án trên đám mây theo cách thủ công để tính phí.
- Nhập một trong các truy vấn sau vào hộp truy vấn.
Ví dụ về truy vấn chuyến đi theo yêu cầu
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`
Truy vấn mẫu về Tác vụ đã lên lịch
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`
- Chọn Loại biểu đồ là Bản đồ bong bóng, sau đó chọn trường vị trí.
- Chọn Thêm trường.
- Đặt tên cho trường và thêm công thức sau:
CONCAT(lat, ",", lng)
. - Đặt loại thành Địa lý->Vĩ độ, Kinh độ.
- Bạn có thể thêm các chế độ điều khiển vào trang tổng quan để lọc dữ liệu. Ví dụ: chọn bộ lọc Phạm vi ngày.
- Chỉnh sửa hộp phạm vi ngày để chọn phạm vi ngày mặc định.
- Bạn có thể thêm các chế độ điều khiển danh sách thả xuống khác cho
vehicle_id
. Với các chế độ điều khiển này, bạn có thể hình dung chuyển động của xe hoặc chuyển động trong một chuyến đi.
Kết quả mẫu trong Looker Studio:
Bước tiếp theo
Để tuân thủ chính sách giữ lại dữ liệu, hãy xem phần Hạn chế thời gian giữ lại nhật ký.