تحليل السجلّات باستخدام 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. اختَر طلب بحث مخصّص وأدخِل يدويًا أو اختَر مشروع 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. اضبط النوع على الموقع الجغرافي->خطوط الطول والعرض.
  5. يمكنك إضافة عناصر تحكّم إلى لوحة البيانات لفلترة البيانات. على سبيل المثال، اختَر فلتر النطاق الزمني.
  6. عدِّل مربّع النطاق الزمني لاختيار نطاق زمني تلقائي.
  7. يمكنك إضافة عناصر تحكّم إضافية من نوع قائمة منسدلة لـ vehicle_id. باستخدام عناصر التحكّم هذه، يمكنك عرض حركة المركبة أو الحركة ضمن رحلة.

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

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

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

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