วิเคราะห์บันทึกด้วย BigQuery

BigQuery เป็นเครื่องมือที่มีประสิทธิภาพสำหรับการวิเคราะห์ คุณสามารถใช้ BigQuery เพื่อจัดเก็บบันทึกระยะยาวและทำการค้นหาที่คล้ายกับ SQL ในข้อมูลได้ หากต้องการใช้ BigQuery เพื่อการวิเคราะห์ คุณต้องกำหนดเส้นทางบันทึกไปยัง BigQuery อย่างชัดเจนตามที่อธิบายไว้ในส่วนถัดไป

กำหนดเส้นทางบันทึกไปยัง BigQuery

  1. ใน Logs Explorer ให้สร้างตัวกรองที่แยกบันทึก Fleet Engine: Fleetengine.googleapis.com/Fleet
  2. ในแผงผลการค้นหา ให้คลิกเมนูการดำเนินการหรือการดำเนินการเพิ่มเติม แล้วเลือกสร้างซิงก์
  3. ระบุชื่อซิงก์ (เช่น FleetEngineLogsSink) คลิกถัดไป
  4. ในปลายทางซิงก์ ให้เลือกชุดข้อมูล BigQuery
  5. ในส่วนเลือกชุดข้อมูล BigQuery ให้เลือกสร้างชุดข้อมูล BigQuery ใหม่
  6. ในกล่องโต้ตอบสร้างชุดข้อมูล ให้ป้อนรหัสชุดข้อมูล
  7. ปล่อยข้อมูลอื่นๆ ไว้เหมือนเดิม แล้วคลิกสร้างชุดข้อมูล
  8. เลือกใช้ตารางที่แบ่งพาร์ติชันแล้ว คลิกถัดไป
  9. ปล่อยเลือกบันทึกที่จะรวมในซิงก์และเลือกบันทึกที่จะกรองออกจากซิงก์ไว้ตามเดิม
  10. คลิก Create Sink

ตอนนี้บันทึกของคุณควรเริ่มป้อนข้อมูลลงในชุดข้อมูล BigQuery แล้ว ซึ่งอาจใช้เวลาสักครู่ โปรดดูหัวข้อกำหนดเส้นทางบันทึกไปยังปลายทางที่รองรับด้วย

เมื่อคุณกำหนดเส้นทางข้อมูลบันทึกไปยัง BigQuery แล้ว ระบบจะสร้างตารางหลายตารางในชุดข้อมูล FleetEngineLogs โดยอัตโนมัติ โดยมีตาราง 1 ตารางสำหรับบันทึกแต่ละประเภท ดังนี้

  • 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

ตัวอย่างเช่น การค้นหานี้อาจบอกคุณว่าในช่วง 1 ชั่วโมงที่ผ่านมา

  • ยานพาหนะ A แวะจอด 10 ครั้งในชั่วโมงที่ 12 และแวะจอด 8 ครั้งในชั่วโมงที่ 13
  • ยานพาหนะ B จอด 5 ครั้งในชั่วโมงที่ 11 และจอด 7 ครั้งในชั่วโมงที่ 12
  • ยานพาหนะ C แวะจอด 12 ครั้งในชั่วโมงที่ 13 และแวะจอด 9 ครั้งในชั่วโมงที่ 14

โปรดดูหัวข้อดูบันทึกที่กำหนดเส้นทางไปยัง BigQuery ด้วย

ผสานรวม BigQuery กับ Looker Studio

BigQuery สามารถผสานรวมกับเครื่องมือ Business Intelligence เพื่อสร้างแดชบอร์ดสำหรับการวิเคราะห์ธุรกิจ ดู Looker Studio

ตัวอย่างต่อไปนี้แสดงวิธีสร้างแดชบอร์ด Looker Studio เพื่อแสดงภาพการเดินทางและการเคลื่อนไหวของยานพาหนะบนแผนที่

  1. เปิดแดชบอร์ด Looker Studio ใหม่ แล้วเลือก BigQuery เป็นการเชื่อมต่อข้อมูล
  2. เลือกการค้นหาที่กำหนดเอง แล้วป้อนหรือเลือกโปรเจ็กต์ที่อยู่ในระบบคลาวด์ที่จะเรียกเก็บเงินด้วยตนเอง
  3. ป้อนคำค้นหาอย่างใดอย่างหนึ่งต่อไปนี้ลงในช่องคำค้นหา

ตัวอย่างการค้นหาการเดินทางแบบออนดีมานด์

    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`
  1. เลือกประเภทแผนภูมิเป็นแผนภูมิแบบบับเบิล แล้วเลือกช่องสถานที่ตั้ง
  2. เลือกเพิ่มช่อง
  3. ตั้งชื่อช่องและเพิ่มสูตรต่อไปนี้ CONCAT(lat, ",", lng)
  4. ตั้งค่าประเภทเป็นภูมิศาสตร์ -> ละติจูด ลองจิจูด
  5. คุณสามารถเพิ่มตัวควบคุมลงในแดชบอร์ดเพื่อกรองข้อมูลได้ เช่น เลือกตัวกรองช่วงวันที่
  6. แก้ไขช่องช่วงวันที่เพื่อเลือกช่วงวันที่เริ่มต้น
  7. คุณสามารถเพิ่มการควบคุมรายการแบบเลื่อนลงเพิ่มเติมสำหรับ vehicle_id ได้ การควบคุมเหล่านี้ช่วยให้คุณเห็นภาพการเคลื่อนที่ของยานพาหนะหรือการเคลื่อนที่ภายในทริป

ตัวอย่างเอาต์พุตของ Looker Studio

ตัวอย่างเอาต์พุตของ Looker Studio

ขั้นตอนถัดไป

หากต้องการปฏิบัติตามนโยบายการเก็บรักษาข้อมูล โปรดดูหัวข้อจำกัดการเก็บรักษาบันทึก