上一篇簡介了行動電信業者可以如何得知手機位置資料的技術,今天想跟大家談談我們在處理手機位置資料時常遇到的挑戰。
第一個挑戰是資料量。就我們目前觀察到的現象:一支正常狀態(不在飛航模式都處在有網路訊號的區域)下的手機,利用前一篇的定位方法,一天可能產生幾筆到幾千筆的位置資訊不等(和手機使用者使用與移動行為有關)。而一家電信業者的用戶數跟他們的手機量,幾百萬算是最常見的規模,大一個數量級(千萬)也不算少見,而我們公司目前用戶規模最大的客戶是有超過4億用戶的印度電信業者。用簡單的算式估算一下,大家應該都可以想像我們系統每天要處理的位置資料的筆數。
第二個挑戰是資料的品質。上一篇提到位置資料怎麼來的文章裡面有提到:行動網路的訊號其實不是很穩定。因此需要多種方式的處理來提高精準度。只是,就算經過了這些處理,也不保證出來的結果就一定很可靠。從過往收到手機位置的資料,還是會看到一支手機的位置1秒前「瞻之在前」,但1秒後又「忽焉在後」的情況。而且這"前後"的距離可以差上幾十甚至於上百公尺。那這支手機,到底該認定在哪個位置呢?
第三個挑戰是資料處理分析的資源使用與處理效率。這個挑戰發生的主要原因是跟我們產品的定位及和電信業者合作的模式有關。多數的電信業者都不希望他們的資料上雲。所以我們的系統大多是利用電信業者提供的相對有限的計算資源來完成資料的處理與分析,並同時提供系統的運作。所以在資料的處理流程就得考慮到如何利用有限的計算資源在系統離峰時段盡可能處理分析完資料,才不會在使用者開始大量使用系統時,對系統負荷造成太大的影響。
至於我們是怎麼面對跟處理這些挑戰的呢?簡單來說,目前主要是透過資料的合併來同時達到減量及降低品質不穩定的影響。但是更多的細節就不方便公開透露太多。所以老話一句,有興趣的朋友歡迎加入我們一起來征服這些挑戰。