哈啰出行通過把日志數據遷移到日志服務,替代原有的Kafka、ES、ClickHouse,累積節省成本30%,同時滿足了穩定性、擴展性以及日志查詢與分析的需求。
公司簡介
哈啰出行是本地出行及生活服務平臺,致力于應用數字技術的紅利,為人們提供更便捷的出行以及更好的普惠生活服務。更多信息,請參見哈啰出行。
業務場景
哈啰出行為用戶提供哈啰單車、哈啰助力車分時租賃的服務。共享單車服務致力于解決最后一公里的出行難題。哈啰出行以技術創新賦能智能終端,推動運維高效執行與自營管理體系相結合,依托搭載定位芯片的智能鎖,輔以后臺智能規劃調度、運維人員智能端口精細化運營。哈啰單車累積注冊4億多用戶,入駐400多座城市,累積騎行237億公里。依托于智能鎖,賦能了在線的實時調度。單車數據、APP數據無縫打通,因而催生了數據的實時采集、分析、存儲需求。
業務痛點
哈啰出行原有架構是將數據采集到Kafka,然后將日志寫入ELK做查詢,同時寫入ClickHouse做分析。由于每天增量數據在TB級別,對ES穩定性壓力比較大。當查詢數據操作,會影響ES的寫入延時。由于寫入量大,查詢基本處于不可用狀態。因此,當天數據采用單副本,隔天再生成多副本。這種方式對數據的可靠性帶來很大的挑戰。此外,自建Kafka、ES、ClickHouse成本較高,急需降低成本。
解決方案
日志服務為哈啰出行提供了TB級別日志的實時采集、彈性擴容、實時查詢的能力。
實時采集
日志服務原生支持Kafka協議。哈啰出行的各個客戶端只需把Kafka的地址設置成日志服務的Kafka協議地址即實現了無縫遷移。
彈性擴容
日志服務采用Shard模型,當流量發生上漲時,可以手動分裂Shard,實現寫入帶寬的擴容,也可以設置成自動分裂,當流量達到上限時,自動擴容出新的Shard。
查詢與分析
日志服務同時提供了查詢和分析能力。在查詢方面,日志服務支持關鍵字檢索、數值范圍查詢、JSON字段的遞歸查詢、多條件組合查詢。在分析方面,日志服務支持以SQL 92語法分析日志,秒級分析數百億條日志。SQL語法支持200多種函數,以及支持join計算,可與OSS、MySQL數據源做關聯分析。