تحليل السجلّات باستخدام BigQuery

‫BigQuery هي أداة فعّالة لإجراء الإحصاءات. ويمكنك استخدامها لتخزين السجلّات على المدى الطويل وتنفيذ طلبات بحث تشبه لغة الاستعلامات البنيوية (SQL) على البيانات. لاستخدام BigQuery في التحليل، يجب توجيه السجلّات بشكل صريح إلى BigQuery، كما هو موضّح في القسم التالي.

توجيه السجلّات إلى BigQuery

  1. في مستكشف السجلات، أنشئ فلترًا يعزل سجلات Fleet Engine: Fleetengine.googleapis.com/Fleet.
  2. في لوحة نتائج طلب البحث، انقر على قائمة الإجراءات أو مزيد من الإجراءات واختَر إنشاء مصدر.
  3. حدِّد اسمًا للمستودع (على سبيل المثال، FleetEngineLogsSink). بعد ذلك، انقر على التالي.
  4. في وجهة المستودع، اختَر مجموعة بيانات BigQuery.
  5. في اختيار مجموعة بيانات BigQuery، اختَر إنشاء مجموعة بيانات BigQuery جديدة.
  6. في مربّع الحوار إنشاء مجموعة بيانات، أدخِل رقم تعريف مجموعة البيانات.
  7. اترك كل شيء آخر كما هو وانقر على إنشاء مجموعة بيانات.
  8. ضَع علامة في المربّع بجانب استخدام الجداول المقسَّمة. بعد ذلك، انقر على التالي.
  9. اترك اختيار السجلّات المطلوب تضمينها في المستودع واختيار السجلّات المطلوب استبعادها من المستودع كما هي.
  10. انقر على إنشاء مصدر.

من المفترض أن تبدأ سجلّاتك الآن في ملء مجموعة بيانات 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

على سبيل المثال، يمكن أن يخبرك هذا الطلب بما يلي في آخر ساعة:

  • أكملت المركبة "أ" 10 محطات في الساعة 12 و8 محطات في الساعة 13.
  • أكملت المركبة "ب" 5 محطات في الساعة 11 و7 محطات في الساعة 12.
  • أكملت المركبة "ج" 12 محطة في الساعة 13 و9 محطات في الساعة 14.

يُرجى الاطّلاع أيضًا على عرض السجلّات التي تم توجيهها إلى BigQuery.

دمج BigQuery مع Looker Studio

يمكن دمج BigQuery مع أدوات ذكاء الأعمال لإنشاء لوحات بيانات لإحصاءات الأعمال. يُرجى الاطّلاع على 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

الخطوات التالية

للامتثال لسياسات الاحتفاظ بالبيانات، يُرجى الاطّلاع على تقييد الاحتفاظ بالسجلّات.