99999久久久久久亚洲,欧美人与禽猛交狂配,高清日韩av在线影院,一个人在线高清免费观看,啦啦啦在线视频免费观看www

熱線電話:13121318867

登錄
首頁精彩閱讀數(shù)據(jù)的秘密(下)如何分析數(shù)據(jù)
數(shù)據(jù)的秘密(下)如何分析數(shù)據(jù)
2015-11-23
收藏

數(shù)據(jù)的秘密(下)如何分析數(shù)據(jù)



上一篇文章中,我們介紹了為什么要關(guān)注數(shù)據(jù),在本文中我將分享具體如何做。

數(shù)據(jù)的秘密(上)為什么要關(guān)注數(shù)據(jù)

關(guān)注宏觀和細節(jié)

大多數(shù)人都能做到關(guān)注宏觀的數(shù)據(jù),拿互聯(lián)網(wǎng)產(chǎn)品來說,日活,月活,流失率,NPS(凈推薦值),這些都是宏觀的數(shù)據(jù)。宏觀數(shù)據(jù)能夠反映出產(chǎn)品的整體狀況,是值得長期關(guān)注的。

但是在宏觀之外,我們還應(yīng)該關(guān)注一些細節(jié)的數(shù)據(jù)。拿日活來說,我們可以再進一步進行分析,比如:

  • 日活中新用戶所占的比例
  • 日活中 iOS 和 Android 的各自占比
  • 日活中大家集中活躍的時間段
  • 日活中用戶的會話(Session)次數(shù)分布,時長分布
  • 日活中用戶平均使用你的產(chǎn)品核心功能的次數(shù)

當(dāng)你把數(shù)據(jù)拿放大鏡看得更細的時候,你可能就會發(fā)現(xiàn)一些問題。帶著這些問題,你進一步分析,就可以找到更多信息。

舉一個我們創(chuàng)業(yè)產(chǎn)品項目的例子,我們發(fā)現(xiàn)日活中的用戶,有相當(dāng)一部分用戶只是注冊了,但是并沒有使用我們產(chǎn)品的核心功能,于是我們擔(dān)心會不會有一些付費推廣渠道「刷量」。

所以,我們將新增用戶中不活躍的比例按渠道來劃分。通過這樣的劃分,我們很容易找到那些效果差的渠道,從而選擇更有效的推廣渠道。

關(guān)注原始數(shù)據(jù)

原始數(shù)據(jù)是什么?就是那些不是通過別的數(shù)據(jù)計算出來的,不能被分割的數(shù)據(jù)。這些數(shù)據(jù)是最最真實的,而其它通過計算出來的數(shù)據(jù),因為進行了二次加工,所以不一定能夠完全反映出產(chǎn)品的問題。

再舉一個項目的例子,我們?yōu)榱搜芯?NPS 給我們打零分的用戶。把這些用戶的搜索數(shù)據(jù)、操作記錄都抽樣出來,一個用戶一個用戶看,然后進行分類整理。最終我們發(fā)現(xiàn)這里面小學(xué)生用戶占比很高,從而調(diào)整了產(chǎn)品的策略,在內(nèi)容和算法上對小學(xué)生進行了兼顧。

關(guān)注原始數(shù)據(jù)除了能改進產(chǎn)品外,還能在技術(shù)上提高代碼的質(zhì)量。我們曾經(jīng)遇到過一個很難復(fù)雜的 Bug,在我們的測試機中都無法復(fù)現(xiàn),但是我們通過分析相關(guān)用戶的操作記錄,找到了具體崩潰的操作方法。

雖然該操作方法不能在我們自己的機器上復(fù)現(xiàn) Bug,但是我們卻能找到相關(guān)的關(guān)鍵代碼。通過一些針對這些代碼的討論,我們就找到了 Bug 的原因。現(xiàn)在回想起來,如果沒有這些原始數(shù)據(jù),要修復(fù)這個 Bug 就要困難很多了。

關(guān)于面試

其實不光做產(chǎn)品要看「原始數(shù)據(jù)」,面試一個人也是。我在面試的時候,會選一個候選人簡歷上的事情,進行深入了解。我會讓他提供詳細相關(guān)工作的數(shù)據(jù)和事例。通過這些「原始數(shù)據(jù)」,我能夠更加方便地「還原他真實的工作場景」,從而對他的工作質(zhì)量作出盡量客觀的評價。

舉個例子,有一個產(chǎn)品實習(xí)生候選人在簡歷上寫他運營了一個微信公眾號,「粉絲逾千,單日粉絲增量 200 以上,數(shù)篇文章閱讀量超過 3000」。但是在面試中,詳細追問這些數(shù)字,我們才發(fā)現(xiàn)他說的「逾千」是指 1000,而「單日粉絲增量 200 以上」是指的最高的一天,其它信息也都是有夸大的成分。

還有一次,我面試一個技術(shù)候選人,這個候選人說他有代碼潔癖,覺得前公司的代碼「很亂,受不了」。但是我讓他具體舉幾個例子的時候,他卻很難說出實際的例子。還有候選人說他喜歡看技術(shù)書,但是卻無法說出他印象最深的一本技術(shù)書以及其中的部分觀點。

通過了解細節(jié),我們就可以揭開簡歷中光鮮描述的外衣,了解到事情背后的細節(jié),這對我們評價候選人至關(guān)重要。

數(shù)據(jù)可視化

數(shù)據(jù)可視化是指將原本枯燥的數(shù)據(jù),用折線圖、餅圖、柱狀圖等方式呈現(xiàn)出來,它可以使我們更容易發(fā)現(xiàn)數(shù)據(jù)的規(guī)律,也更容易發(fā)現(xiàn)數(shù)據(jù)的異常。

在項目中,數(shù)據(jù)可視化多次給我們帶來巨大的幫助,包括:

  • 了解數(shù)據(jù)的特點:我們將項目的 QPS 按每小時為頻率畫出成一條折線圖,所以我們很容易知道我們服務(wù)器高峰期的時間段以及訪問量。
  • 發(fā)現(xiàn)服務(wù)異常:我們將服務(wù)器搜索的失敗率占比畫出成一個餅圖,有一天,這個餅圖中顯示出失敗率突然變高了。同時,每日的 NPS 分數(shù)突然也變低了很多。我們借此發(fā)現(xiàn)了新擴容的一臺服務(wù)器故障。因為那臺服務(wù)器是新加的,所以運維忘記了增加監(jiān)控,如果沒有數(shù)據(jù)可視化的幫助,這個故障可能會持續(xù)更長時間。
  • 監(jiān)控核心質(zhì)量:我們將項目的一些核心指標(biāo)畫成折線圖,然后大家都努力讓核心指標(biāo)更優(yōu)。
  • 發(fā)現(xiàn)惡意攻擊:一些重要指標(biāo),我們都會可視化出來,這樣當(dāng)這些數(shù)據(jù)指標(biāo)變化時,我們就會進一步分析原因,從中我們還發(fā)現(xiàn)了一些競爭對手惡意的攻擊行為。

數(shù)據(jù)可視化工具

我們當(dāng)然不可能所有的數(shù)據(jù)可視化都是自己手工用 Excel、Numbers 之類的工具來生成。所以,我們開發(fā)了一個數(shù)據(jù)可視化的平臺,我們把它叫做 flyboard。

flyboard 提供了各種數(shù)據(jù)可視化的方式,包括數(shù)字,折線圖,餅圖,環(huán)形圖,柱狀圖等。如下圖所示:

<a href='/map/shujukeshihua/' style='color:#000;font-size:inherit;'>數(shù)據(jù)可視化</a>工具

我們將所有的原始數(shù)據(jù)都歸集到分布式存儲 Hbase 中,然后通過配置一些定時的計算任務(wù),就可以以幾乎實時地方式,看到產(chǎn)品的各項可視化指標(biāo)。

這些指標(biāo),有宏觀的,也有一些比較細分的,如果我們對某項指標(biāo)的數(shù)值有疑問,我們就會進一步寫一些分析腳本,來從 Hbase 中計算一些數(shù)據(jù)進行檢查。

在我們公司,我們的三個產(chǎn)品的辦公區(qū)域,都掛著一個巨大的顯示器,這個顯示器除了用于 Scrum 的每日站會同步進度外,平時都用 flyboard 顯示著產(chǎn)品的各項核心數(shù)據(jù)。

悄悄告訴你一個秘密,我們的 flyboard 可視化平臺是開源的,項目地址是:https://github.com/yuantiku/flyboard ,在 Github 上你可以下載到完整的代碼,我們也附有完整的安裝使用說明文檔。如果你還沒有使用任何數(shù)據(jù)可視化工具,歡迎嘗試一下 flyboard。

學(xué)習(xí)寫 SQL

由于有 HadoopHbase 、 Hive 的存在,產(chǎn)品經(jīng)理也可以通過一些簡單的 SQL 語句,就可以生成MapReduce 任務(wù),進行分布式的數(shù)據(jù)分析運算。

所以數(shù)據(jù)分析最最常用的辦法就是寫 SQL。在很多公司,產(chǎn)品經(jīng)理都在這方面能力比較欠缺,這使得產(chǎn)品經(jīng)理在需要數(shù)據(jù)時,需要向技術(shù)提需求。技術(shù)會根據(jù)自己的工作排期。這樣一來一回,一般一個簡單的數(shù)據(jù)分析都需要一天時間。

這樣的低效率的方式,會扼殺產(chǎn)品經(jīng)理的一些數(shù)據(jù)分析需求,特別是那種需要探索式發(fā)現(xiàn)的數(shù)據(jù)分析工作。因為這種工作需要不停地根據(jù)數(shù)據(jù)分析的結(jié)果,調(diào)整各種策略來寫嘗試的 SQL。

所以在我們團隊,我們希望產(chǎn)品經(jīng)理都能有基本的數(shù)據(jù)分析能力,一些簡單的 SQL 都是需要自己能夠?qū)懙?。?dāng)然,一些特別復(fù)雜的 SQL,產(chǎn)品經(jīng)理可能還是需要向技術(shù)同事咨詢。

具體如何寫 SQL,市面上已經(jīng)有非常多的相關(guān)書籍了,我在這里就不再展開介紹了。

數(shù)據(jù)查看和分析一定要方便

如果你仔細觀察就會發(fā)現(xiàn),很多革命性的產(chǎn)品就只是讓某件事情更方便了一點點。智能手機其實只是讓你上網(wǎng)更方便了一點,但是這種方便使得人們從以前有「離線和在線」的狀態(tài),變成了永久在線。于是,移動互聯(lián)網(wǎng)誕生了,本質(zhì)上來說,移動互聯(lián)網(wǎng)就是一種人們永久在線的網(wǎng)絡(luò),但是就是這么一點點的方便,使得很多行業(yè)被完全顛覆。

而數(shù)據(jù)分析也是一樣,我們應(yīng)該盡量讓數(shù)據(jù)觸手可得,這樣我們才能將數(shù)據(jù)分析的效率最大化,一定程度上的效率提升就會產(chǎn)生質(zhì)變,使得我們專注于數(shù)據(jù)做更多事情。

我們之前移動端統(tǒng)計用 Flurry,但是 Flurry 在中國實在太慢了,即使掛上國外的 VPN 也很慢!如果產(chǎn)品經(jīng)理每次登錄 Flurry 要 10 秒鐘的話,那么他就可能將注意力臨時轉(zhuǎn)移到別的事情上,然后就可能忘記本來要看的數(shù)據(jù)。

為了讓數(shù)據(jù)觸手可得,我們放棄了對 Flurry 的使用,我們自己開發(fā)了日志收集平臺,然后自己寫日志計算程序,將一些核心指標(biāo)全部自己計算在 flyboard 上,我們也另外開發(fā)了一套數(shù)據(jù)分析平臺,實現(xiàn) Flurry 中的類似功能?,F(xiàn)在,我們已經(jīng)能夠非常舒服地分析數(shù)據(jù)了。

所以,如果你的公司不能很方便的查看和分析數(shù)據(jù),那么一定要想辦法改進,這些數(shù)據(jù)就像人的神經(jīng)系統(tǒng)一樣,傳遞著產(chǎn)品的健康數(shù)據(jù),重視這些數(shù)據(jù),才能夠做好產(chǎn)品。

總結(jié)

總結(jié)一下本文中的觀點:

  • 重視宏觀數(shù)據(jù)和細節(jié)
  • 關(guān)注原始數(shù)據(jù)
  • 數(shù)據(jù)可視化
  • 學(xué)會用 SQL
  • 數(shù)據(jù)查看和分析一定要方便

數(shù)據(jù)分析咨詢請掃描二維碼

若不方便掃碼,搜微信號:CDAshujufenxi

數(shù)據(jù)分析師資訊
更多

OK
客服在線
立即咨詢
客服在線
立即咨詢
') } function initGt() { var handler = function (captchaObj) { captchaObj.appendTo('#captcha'); captchaObj.onReady(function () { $("#wait").hide(); }).onSuccess(function(){ $('.getcheckcode').removeClass('dis'); $('.getcheckcode').trigger('click'); }); window.captchaObj = captchaObj; }; $('#captcha').show(); $.ajax({ url: "/login/gtstart?t=" + (new Date()).getTime(), // 加隨機數(shù)防止緩存 type: "get", dataType: "json", success: function (data) { $('#text').hide(); $('#wait').show(); // 調(diào)用 initGeetest 進行初始化 // 參數(shù)1:配置參數(shù) // 參數(shù)2:回調(diào),回調(diào)的第一個參數(shù)驗證碼對象,之后可以使用它調(diào)用相應(yīng)的接口 initGeetest({ // 以下 4 個配置參數(shù)為必須,不能缺少 gt: data.gt, challenge: data.challenge, offline: !data.success, // 表示用戶后臺檢測極驗服務(wù)器是否宕機 new_captcha: data.new_captcha, // 用于宕機時表示是新驗證碼的宕機 product: "float", // 產(chǎn)品形式,包括:float,popup width: "280px", https: true // 更多配置參數(shù)說明請參見:http://docs.geetest.com/install/client/web-front/ }, handler); } }); } function codeCutdown() { if(_wait == 0){ //倒計時完成 $(".getcheckcode").removeClass('dis').html("重新獲取"); }else{ $(".getcheckcode").addClass('dis').html("重新獲取("+_wait+"s)"); _wait--; setTimeout(function () { codeCutdown(); },1000); } } function inputValidate(ele,telInput) { var oInput = ele; var inputVal = oInput.val(); var oType = ele.attr('data-type'); var oEtag = $('#etag').val(); var oErr = oInput.closest('.form_box').next('.err_txt'); var empTxt = '請輸入'+oInput.attr('placeholder')+'!'; var errTxt = '請輸入正確的'+oInput.attr('placeholder')+'!'; var pattern; if(inputVal==""){ if(!telInput){ errFun(oErr,empTxt); } return false; }else { switch (oType){ case 'login_mobile': pattern = /^1[3456789]\d{9}$/; if(inputVal.length==11) { $.ajax({ url: '/login/checkmobile', type: "post", dataType: "json", data: { mobile: inputVal, etag: oEtag, page_ur: window.location.href, page_referer: document.referrer }, success: function (data) { } }); } break; case 'login_yzm': pattern = /^\d{6}$/; break; } if(oType=='login_mobile'){ } if(!!validateFun(pattern,inputVal)){ errFun(oErr,'') if(telInput){ $('.getcheckcode').removeClass('dis'); } }else { if(!telInput) { errFun(oErr, errTxt); }else { $('.getcheckcode').addClass('dis'); } return false; } } return true; } function errFun(obj,msg) { obj.html(msg); if(msg==''){ $('.login_submit').removeClass('dis'); }else { $('.login_submit').addClass('dis'); } } function validateFun(pat,val) { return pat.test(val); }