互聯網公司收集數據的利器:埋點
前言
很多人還沒搞清楚PC互聯網的時候,移動互聯來了;我們還沒搞清移動互聯的時候,大數據時代又來了。伴隨大數據時代的到來,我們生活中產生的數據呈現出巨大的增長,互聯網每2天產生的數據相當于2003年之前產生的數據一樣多。
馬云說過,大數據就是未來的石油。越來越多的互聯網公司開始重視數據的應用。數據應用的一個過程是:數據收集——數據整理——數據分析——數據可視化。經濟基礎決定上層建筑,數據收集是數據應用的基礎,數據收集的重要性不言而喻。數據不會撒謊,但生活中,我們往往被數據純潔的外表所欺騙。所以我們也要注重數據的質量。那么互聯網公司是如何收集數據的?這其中就不得不提出一個很關鍵的人物——「埋點」。
埋點技術
所謂「埋點」,就是在正常的功能邏輯中添加統計邏輯。拿統計微信右上角「+」的點擊次數為例,上報的數據可以采用KEY-VALUE形式,我們定義KEY為「CLICK_ADD_BTN」,VALUE的值為點擊的次數。當用戶點擊「+」時,展示菜單的代碼會通過按鈕的「回調」來觸發執行,程序猿在業務代碼執行完后,又加上了統計代碼,把「CLICK_ADD_BTN」對應的VALUE加1,「+」被統計到了一次使用。
目前常見的前端埋點技術有3類:代碼埋點、可視化埋點、無埋點(無埋點屬于埋點的一個子集)。
代碼埋點:控件操作發生時通過預先寫好的代碼來發送數據。
優點:控制發送數據時間,事件自定義屬性詳細記錄
缺點:時間、人力成本大,數據傳輸的時效性。
可視化埋點:利用可視化交互手段,通過可視化界面配置控件操作與事件操作發生關系。通過后臺截屏的方式采集數據。
優點:成本低,速度快
缺點:行為記錄信息少,支持的分析方式少
無埋點:Growing IO和Heap analytics,這2家是國內與國外的無埋點技術公司代表。用戶展現界面元素時,通過控件綁定觸發事件,事件被觸發的時候系統會有相應的接口讓開發者處理這些行為。現在市面上主流無埋點做法有兩種,一種是預先跟蹤所有的渲染信息,一種是滯后跟蹤的渲染信息。
優點:無需埋點,方便快捷
缺點:行為記錄信息少,傳輸壓力大
總結
***,關于埋點有無問題,可視化埋點和代碼優劣問題,不管選擇哪個都要從自身情況去考慮,自身分析場景來體驗和對比,選擇最適合自己的。適合自己的才是***的。