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

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

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

  1. في مستكشف السجلات، أنشئ فلترًا يعزل سجلات Fleet Engine: Fleetengine.googleapis.com/Fleet.
  2. في جزء نتائج طلب البحث، انقر على الإجراءات أو مزيد من الإجراءات. واختر إنشاء حوض.
  3. حدِّد اسم مساحة تخزين (مثل FleetEngineLogsSink). انقر على Next (التالي).
  4. في وجهة الحوض، اختر مجموعة بيانات BigQuery.
  5. في اختيار مجموعة بيانات BigQuery، اختَر إنشاء مجموعة بيانات BigQuery جديدة.
  6. في مربّع الحوار إنشاء مجموعة بيانات، أدخِل رقم تعريف مجموعة البيانات.
  7. اترك كل شيء كما هو وانقر على إنشاء مجموعة بيانات.
  8. ضَع علامة في المربّع استخدام الجداول المقسَّمة. انقر على Next (التالي).
  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. اختَر طلب بحث مخصّص وأدخِل المشروع على Google Cloud أو اختَره يدويًا الذي يجب فوترته.
  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، خط الطول.
  5. يمكنك إضافة عناصر تحكّم إلى لوحة البيانات لفلترة البيانات. على سبيل المثال، اختَر فلتر النطاق الزمني.
  6. عدِّل مربّع النطاق الزمني لاختيار نطاق زمني تلقائي.
  7. يمكنك إضافة عناصر تحكم إضافية في القائمة المنسدلة لـ vehicle_id. مع عناصر التحكم هذه، يمكنك تصور حركة المركبة أو والحركة داخل الرحلة.

مثال على ناتج أداة Looker Studio:

مثال على الناتج في Looker Studio

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

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