基於阿里雲HBase構建車聯網平台實踐

2021-08-26 17:49:50 字數 3618 閱讀 5468

摘要: 1. 業務介紹 車紛享是國內首家進行汽車共享開發和運營的公司。旗下共享汽車平台採用新能源汽車作為運營工具以b2c+c2c汽車共享作為商業運營模式採用車聯網技術作為運營管理技術目前已與國內多個城市建立合作。

1. 業務介紹

車紛享是國內首家進行汽車共享開發和運營的公司。旗下共享汽車平台採用新能源汽車作為運營工具,以b2c+c2c汽車共享作為商業運營模式,採用車聯網技術作為運營管理技術,目前已與國內多個城市建立合作。

公司打造會員制的分時自助租賃平台「車紛享」與「眾車紛享」,以及純電動新能源汽車分時租賃平台「彩虹車」,向會員提供以分鐘加里程為計費單位的自助租車服務。通過公司自助租車系統,使用者可以進行車輛預定、費用支付、自助取車、還車及自動結算等,無需人工干預,非常簡單,真正實現了家門口或公司門口的自助租車,便捷、時尚、經濟。 公司汽車共享(分時自助、智慧型租車)系統為自主研發,具有完全自主智財權,能夠根據需求進行改進和定製,是國內第乙個成功商業運營的汽車共享系統,處於國內領先。

2. 選型

對於車紛享這種初創公司來說,技術選型首要考慮的是:輕運維,業務快速落地。自建機房以及運維團隊意味著前期較大的投入以及高昂的運維成本,隨著業務規模的擴張,資源水平擴充套件以及垂直擴充套件也是未來無法避免的痛點。

技術團隊進行了多次內部討論,同時對類似行業公司的解決方案進行了詳細調研,新方案必須滿足我們以下的基本需求:

(1)支援大量iot資料的不間斷寫入,至少能存放百t以內的資料,隨著資料規模的增長,能夠方便的進行垂直和水平擴充套件。

(2)支援基於時間戳的歷史資料查詢,響應時間至少達到秒級,後期根據業務需要,支援對一些關鍵字段進行索引,以滿足某些查詢場景

(3)與目前的大資料生態產品(mapreduce,spark,hive)能友好相容,支援離線和準實時olap

(4)優先選擇有雄厚實力的商業公司支援的雲平台,最大限度減少運維成本。

最終我們技術團隊選擇的是阿里雲平台,阿里是國內大資料領域技術最雄厚的公司,比如hbase,阿里擁有2 hbase pmc、3 committer、數十位核心貢獻者,貢獻200+ patch,同時阿里雲平台提供了多種方便易上手的資料產品工具。

3. 車紛享資料中心

車紛享的資料來自於車載終端上傳的資料報文,首先經過系統平台的閘道器,然後借助規則引擎對資料報文進行解析拆分成有意義的資料項,以資料記錄的方式放入訊息佇列,訊息佇列採用了阿里的mq,訊息佇列的消費程式,會將消費到的資料分別存入redis以及hbase,其中redis是用來提供車輛實時狀態的查詢,hbase提供車輛歷史資料的查詢,為了對歷史資料進行災備處理,使用了阿里雲的oss儲存,將備份資料日誌檔案按照時間分割槽儲存至oss。

3.1 專案背景

車聯網符合併發量大,資料上傳頻率高,寫多讀少的高吞吐型業務場景,對查詢要求也接近準實時;原有的關聯式資料庫已經不能滿足我們的業務需要,尤其數億量級下的分頁查詢和車輛歷史軌跡查詢的場景下,關聯式資料庫的讀取相應延遲已經達到了數分鐘級,完全不能滿足客戶的需要。阿里雲hbase為我們提供了hbase+phoenix的組合方案。

hbase是基於磁碟的nosql資料庫,因為採用了lsm的資料結構,隨機寫效率較高,特別適合車聯網的資料上傳特點,在基於rowkey方面的查詢延時接近準實時。但是因為原生hbase的查詢方式比較底層,沒有sql查詢介面,對於使用者要求較高,而且沒有二級索引,如果不是基於rowkey查詢,查詢效率會急劇下降,為了減少客戶的使用難度,阿里雲hbase團隊在hbase集群裡整合了phoenix的互動引擎,簡單的嵌入架構如下:

phoenix的架構

phoenix主要給hbase增加了sql查詢以及二級索引支援,大大降低了我們的二次開發難度,也進一步豐富了我們對多種查詢場景的支援。
3.2 效能指標1、系統情況目前測試集群上有6臺伺服器,都是16core 32g的配置

2、查詢測試

歷史資料表(保密需要,字段適當裁剪):

3、建立索引表

create index 車輛歷史狀態索引表 on 車輛歷史狀態表(車輛標識,上傳時間,行駛里程,車速,電量) include (發動機溫度,傳送機轉速,油耗,衛星數量,衛星訊號強度,……)

車輛狀態歷史表中目前有記錄12億條左右,region有52個

基於rowkey查詢

基於索引字段查詢

通過hbase+phoenix,豐富了我們的歷史查詢手段,原先的車輛1個月軌跡歷史資料回放查詢需要5-10分鐘,現在2秒內就能返回所需資料。上面的資料都是我們實際的業務場景資料測試的結果,提公升了150倍,大大超出我們的期望。

4、集群狀況

目前接入的車輛大約為3萬輛,其中比較重要的考察指標就是ops(operation per second 每秒操作次數),主要針對車輛資料的實時不間斷寫入,目前hbase集群中,平均在1.5k ops,峰值可以到達2k ops,目前的集群配置可以支撐最大約400k的ops,至少可以滿足未來2年左右的業務增長需要。阿里雲hbase同時支援資源節點水平,垂直擴充套件和滾動重啟,基本可以做到使用者無感知下完成公升級,這種能力對適應業務的敏捷變化非常有幫助。

3.3 資料處理

場景例項

以網約車管理平台為例,主要資料**為車況資料和訂單資料,進入kafka後,拉出兩個分支,分別儲存進hbase資料庫和進入spark streaming流式計算引擎,主要用來為運營部門優化網點,車輛分流,監控部門的風控管理和商業bi相關的離線分析提供資料支撐。

3.4 使用感受

現在車紛享的車聯網資料平台已遷入阿里雲hbase團隊已經半年多了,平均日寫入資料幾十g,到現在還沒出現資料伺服器的嚴重故障問題,總體比較穩定,大大降低了我司的運營管理成本。阿里雲hbase團隊也給我們的開發團隊提供了有力的技術支撐,碰到技術問題,我們可以非常及時得到響應,幫助我們排除了業務開發中的許多問題。再次證明我們的當初選擇是正確的。

同時也希望阿里雲hbase團隊未來可以在產品易用性上更上一層樓。展望未來,隨著業務的擴充套件,我們的資料會有乙個指數級的增長。

車聯網雲服務平台

平台總體架構 業務邏輯 業務邏輯通過資料層的原子服務訪問業務資料。一組業務邏輯過程實現具體的業務功能。業務應用層通過本層提供的服務功能向接入層請求統一的需求而實現其業務邏輯。本層次作為應用層的服務功能基礎,本層向業務層提供統 一 規範的原子服務,用於遮蔽業務資料的儲存 組織和訪問的細節,實現業務資料...

基於阿里雲HiTSDB搭建工業物聯網平台實踐

背景 工業企業的能耗佔了全社會能耗的絕大多數,本方案基於阿里雲全面的物聯網 雲計算與大資料技術搭建雲端的企業能源管理物聯網平台實現能耗資料採集 統計分析 平衡排程 節能優化等全面的能源管控協同平台。是企業生產執行保障的利器,也是大量企業實現雲上管理的實踐案例。本方案有健壯的體系,實用的功能。尤其hi...

基於阿里雲HiTSDB搭建工業物聯網平台實踐

摘要 基於阿里雲全面的物聯網 雲計算與大資料技術搭建雲端的企業能源管理物聯網平台實現能耗資料採集 統計分析 平衡排程 節能優化等全面的能源管控協同平台。是企業生產執行保障的利器,也是大量企業實現雲上管理的實踐案例。工業企業的能耗佔了全社會能耗的絕大多數,本方案基於阿里雲全面的物聯網 雲計算與大資料技...