edit-icon download-icon

車両トラックログ

最終更新日: Feb 11, 2018

はじめに

タクシー会社は、乗客が出入りする時間、緯度および経度、旅行の距離、支払いオプション、支払い額、税額およびその他の情報を含む各旅行の詳細を記録します。詳細なデータは、タクシー会社の運営を大いに促進します。たとえば、データを使用すると、企業は忙しい時間帯での運転間隔を短縮したり、より多くの人々がタクシーを必要とする地域に多くの車両を派遣することができます。データの助けを借りて、乗客はタイムリーな応答を得ることができますが、ドライバーはより高い所得を持つことができ、社会全体をより効率的にすることができます。

タクシー会社の保管旅行はアリババクラウドのログサービスにログオンし、信頼性の高いストレージと迅速な統計計算の助けを借りて、有用な情報を選び出します。この記事では、Alibaba Cloud Log Service 保存されているデータからタクシー会社が有用な情報をどのように探し出すかについて説明します。

データの例:

  1. RatecodeID: 1VendorID: 2__source__: 11.164.232.105 __topic__: dropoff_latitude: 40.743995666503906 dropoff_longitude: -73.983505249023437extra: 0 fare_amount: 9 improvement_surcharge: 0.3 mta_tax: 0.5 passenger_count: 2 payment_type: 1 pickup_latitude: 40.761466979980469 pickup_longitude: -73.96246337890625 store_and_fwd_flag: N tip_amount: 1.96 tolls_amount: 0 total_amount: 11.76 tpep_dropoff_datetime: 2016-02-14 11:03:13 tpep_dropoff_time: 1455418993 tpep_pickup_datetime: 2016-02-14 10:53:57 tpep_pickup_time: 1455418437 trip_distance: 2.02

trip_data_sample.png

クエリリンク

一般的な統計

  1. 渋滞時間を確認するために、異なる時間帯の乗客の数。

    1. *| select count(1) as deals, sum(passenger_count) as passengers,
    2. (tpep_pickup_time %(24*3600)/3600+8)%24 as time
    3. group by (tpep_pickup_time %(24*3600)/3600+8)%24 order by time limit 24

    passenger_deal_per_hour.png

    この結果を踏まえ、午前中に仕事をして夕方に仕事を休む時間帯が一日で最も忙しいため、タクシー会社はそれだけ多くの車両を派遣することができます。

  2. 異なる期間における平均旅行距離

    1. *| select avg(trip_distance) as trip_distance,
    2. (tpep_pickup_time %(24*3600)/3600+8)%24 as time
    3. group by (tpep_pickup_time %(24*3600)/3600+8)%24 order by time limit 24

    distance_per_hour.png

    乗客は1日の特定の時間帯に長い旅行をする傾向がありますので、タクシー会社もより多くの車両を派遣する必要があります。

  3. 平均往復時間(分)、走行距離の単位(秒)に要する時間。渋滞が起こりやすい時間帯を表示します。

    1. *| select avg(tpep_dropoff_time-tpep_pickup_time)/60 as driving_minutes,
    2. (tpep_pickup_time %(24*3600)/3600+8)%24 as time
    3. group by (tpep_pickup_time %(24*3600)/3600+8)%24 order by time limit 24

    driving_minute.png

    1. *| select sum(tpep_dropoff_time-tpep_pickup_time)/sum(trip_distance) as driving_minutes,
    2. (tpep_pickup_time %(24*3600)/3600+8)%24 as time
    3. group by (tpep_pickup_time %(24*3600)/3600+8)%24 order by time limit 24

    seconds_per_mile.png これらの期間中、より多くの車両を派遣する必要があります。

  4. 異なる時間帯の平均タクシー運賃。より多くの収入で時間を強調します。

    1. *| select avg(total_amount) as dollars,
    2. (tpep_pickup_time %(24*3600)/3600+8)%24 as time
    3. group by (tpep_pickup_time %(24*3600)/3600+8)%24 order by time limit 24

    dollars.png

    顧客1回あたりの取引は午前4時頃より高いため、財務担当者はこの期間にサービスを提供することを検討することができます。

  5. 支払額の範囲

    1. *| select case when total_amount < 1 then 'bill_0_1'
    2. when total_amount < 10 then 'bill_1_10'
    3. when total_amount < 20 then 'bill_10_20'
    4. when total_amount < 30 then 'bill_20_30'
    5. when total_amount < 40 then 'bill_30_40'
    6. when total_amount < 50 then 'bill_10_50'
    7. when total_amount < 100 then 'bill_50_100'
    8. when total_amount < 1000 then 'bill_100_1000'
    9. else 'bill_1000_' end
    10. as bill_level , count(1) as count group by
    11. case when total_amount < 1 then 'bill_0_1'
    12. when total_amount < 10 then 'bill_1_10'
    13. when total_amount < 20 then 'bill_10_20'
    14. when total_amount < 30 then 'bill_20_30'
    15. when total_amount < 40 then 'bill_30_40'
    16. when total_amount < 50 then 'bill_10_50'
    17. when total_amount < 100 then 'bill_50_100'
    18. when total_amount < 1000 then 'bill_100_1000'
    19. else 'bill_1000_' end
    20. order by count desc

    bill_range.png ほとんどの取引の支払い額は1〜20米ドルになることがわかります。