วิเคราะห์บันทึกด้วย 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. คลิกสร้างพื้นที่เก็บข้อมูล

ตอนนี้บันทึกของคุณควรเริ่มแสดงในชุดข้อมูล 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 ชั่วโมงที่ผ่านมา

  • ยานพาหนะ ก. หยุด 10 ครั้งในชั่วโมงที่ 12 และหยุด 8 ครั้งในชั่วโมงที่ 13
  • ยานพาหนะ ข. หยุด 5 ครั้งในชั่วโมงที่ 11 และหยุด 7 ครั้งในชั่วโมงที่ 12
  • ยานพาหนะ ค หยุด 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. ตั้งค่าประเภทเป็น Geo->Latitude, Longitude
  5. คุณสามารถเพิ่มการควบคุมลงในแดชบอร์ดเพื่อกรองข้อมูลได้ เช่น เลือกตัวกรองช่วงวันที่
  6. แก้ไขช่องช่วงวันที่เพื่อเลือกช่วงวันที่เริ่มต้น
  7. คุณสามารถเพิ่มการควบคุมรายการแบบเลื่อนลงเพิ่มเติมสำหรับ vehicle_id ได้ การควบคุมเหล่านี้ช่วยให้คุณเห็นภาพการเคลื่อนไหวของยานพาหนะหรือการเคลื่อนไหวภายในการเดินทาง

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

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

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

โปรดดูจำกัดการเก็บรักษาบันทึกเพื่อให้เป็นไปตามนโยบายการเก็บรักษาข้อมูล