一種機(jī)頂盒數(shù)據(jù)采集系統(tǒng)及數(shù)據(jù)采集方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于計(jì)算機(jī)技術(shù)領(lǐng)域,尤其是涉及一種機(jī)頂盒數(shù)據(jù)采集系統(tǒng)及數(shù)據(jù)采集方法。
【背景技術(shù)】
[0002]IPTV是集成了點(diǎn)播、直播、回看、增值業(yè)務(wù)和應(yīng)用的綜合類收視平臺(tái),需要對(duì)整個(gè)IPTV進(jìn)行收視分析,就必須記錄用戶的所有操作記錄,再對(duì)操作記錄進(jìn)行數(shù)據(jù)分析,達(dá)到輔助收視決策的效果。
[0003]現(xiàn)有技術(shù)的技術(shù)方案一般是利用服務(wù)器接收操作記錄,根據(jù)操作記錄上的時(shí)間用于計(jì)算收視指標(biāo)。
[0004]然而現(xiàn)有技術(shù)存在如下缺點(diǎn):
[0005]1、普通數(shù)據(jù)采集如果采集數(shù)據(jù)的發(fā)送失敗,不會(huì)影響用戶瀏覽界面,而機(jī)頂盒瀏覽器版本多,大部分瀏覽器如果與采集服務(wù)器連接不上,發(fā)送數(shù)據(jù)時(shí)會(huì)導(dǎo)致界面黑屏,造成播出事故,并嚴(yán)重影響用戶體驗(yàn),現(xiàn)有技術(shù)在采集服務(wù)的可靠性上較差。
[0006]2、IPTV業(yè)務(wù)類型多,采用傳統(tǒng)的數(shù)據(jù)采集保存格式容易受到限制,業(yè)務(wù)擴(kuò)展性不夠。
【發(fā)明內(nèi)容】
[0007]有鑒于此,本發(fā)明旨在提出一種機(jī)頂盒數(shù)據(jù)采集系統(tǒng)及數(shù)據(jù)采集方法,以解決數(shù)據(jù)采集可靠性問(wèn)題以及業(yè)務(wù)擴(kuò)展問(wèn)題。
[0008]為達(dá)到上述目的,本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的:
[0009]—種機(jī)頂盒數(shù)據(jù)采集系統(tǒng),包括
[0010]機(jī)頂盒,內(nèi)置埋點(diǎn)程序,用于將需要采集的數(shù)據(jù)發(fā)送到數(shù)據(jù)采集服務(wù)器集群;
[0011]數(shù)據(jù)采集服務(wù)器集群,包括前端接收服務(wù)器和后端采集數(shù)據(jù)服務(wù)器,前端接收服務(wù)器用于接收機(jī)頂盒傳輸?shù)臄?shù)據(jù)并且分發(fā)給后端采集數(shù)據(jù)服務(wù)器,后端采集數(shù)據(jù)服務(wù)器,用于保存收集到的數(shù)據(jù);
[0012]日志分發(fā)服務(wù)器,用于將數(shù)據(jù)分發(fā)到不同的應(yīng)用。
[0013]進(jìn)一步的,所述機(jī)頂盒數(shù)據(jù)采集系統(tǒng)數(shù)據(jù)采用JS0N格式保存。
[0014]進(jìn)一步的,所述前端接收服務(wù)器為負(fù)載均衡器。
[0015]相對(duì)于現(xiàn)有技術(shù),本發(fā)明所述的一種機(jī)頂盒數(shù)據(jù)采集系統(tǒng)具有以下優(yōu)勢(shì):
[0016](1)本發(fā)明通過(guò)布置采集服務(wù)器集群,保證采集服務(wù)器不間斷服務(wù),并且集群可以在線擴(kuò)展;
[0017](2)采用JS0N格式保存數(shù)據(jù),每種數(shù)據(jù)業(yè)務(wù)都有特定的格式,但是存儲(chǔ)上還是只有一行,數(shù)據(jù)業(yè)務(wù)擴(kuò)展性強(qiáng),并且采用中心節(jié)點(diǎn)分發(fā)數(shù)據(jù)給各應(yīng)用的方式,在應(yīng)用級(jí)別上進(jìn)行擴(kuò)展,解決了 IPTV業(yè)務(wù)類型多的問(wèn)題。
[0018]本發(fā)明的另一目的在于提出一種利用機(jī)頂盒數(shù)據(jù)采集系統(tǒng)進(jìn)行數(shù)據(jù)采集的方法,以實(shí)現(xiàn)對(duì)機(jī)頂盒數(shù)據(jù)的采集。
[0019]為達(dá)到上述目的,本發(fā)明的技術(shù)方案是這樣實(shí)現(xiàn)的:
[0020]利用機(jī)頂盒數(shù)據(jù)采集系統(tǒng)進(jìn)行數(shù)據(jù)采集的方法,包括如下步驟:
[0021](1)機(jī)頂盒應(yīng)用程序中嵌入埋點(diǎn)程序;
[0022](2)用戶操作機(jī)頂盒,觸發(fā)埋點(diǎn)程序采集數(shù)據(jù),機(jī)頂盒將采集的數(shù)據(jù)發(fā)送到數(shù)據(jù)采集服務(wù)器集群;
[0023](3)前端接收服務(wù)器根據(jù)分發(fā)策略將數(shù)據(jù)轉(zhuǎn)發(fā)到后端采集數(shù)據(jù)服務(wù)器;
[0024](4)采集數(shù)據(jù)服務(wù)器將數(shù)據(jù)傳輸至日志分發(fā)服務(wù)器;
[0025](5)日志分發(fā)服務(wù)器根據(jù)配置將數(shù)據(jù)分發(fā)到不同的應(yīng)用;
[0026](6)各應(yīng)用服務(wù)器將相應(yīng)的日志進(jìn)行接收。
[0027]進(jìn)一步的,所述步驟(3)中負(fù)載均衡器接受服務(wù)的所有入站客戶端請(qǐng)求,并根據(jù)調(diào)度算法決定哪個(gè)集群節(jié)點(diǎn)應(yīng)該處理回復(fù)請(qǐng)求,把請(qǐng)求分配到不同服務(wù)器上。
[0028]進(jìn)一步的,所述步驟(5)具體包括如下步驟:
[0029](a)采集服務(wù)器接收日志后將日志直接保存在本地文件中;
[0030](b)部署FLUME服務(wù)對(duì)日志進(jìn)行監(jiān)控;
[0031 ] (c)日志出現(xiàn)變化后將增量日志推送到日志分發(fā)服務(wù)器;
[0032](d)日志分發(fā)服務(wù)器部署WEB服務(wù)進(jìn)行不同應(yīng)用的轉(zhuǎn)發(fā)。
[0033]所述用機(jī)頂盒數(shù)據(jù)采集系統(tǒng)進(jìn)行數(shù)據(jù)采集的方法與上述一種機(jī)頂盒數(shù)據(jù)采集系統(tǒng)相對(duì)于現(xiàn)有技術(shù)所具有的優(yōu)勢(shì)相同,在此不再贅述。
【附圖說(shuō)明】
[0034]構(gòu)成本發(fā)明的一部分的附圖用來(lái)提供對(duì)本發(fā)明的進(jìn)一步理解,本發(fā)明的示意性實(shí)施例及其說(shuō)明用于解釋本發(fā)明,并不構(gòu)成對(duì)本發(fā)明的不當(dāng)限定。在附圖中:
[0035]圖1為本發(fā)明實(shí)施例所述的一種機(jī)頂盒數(shù)據(jù)采集系統(tǒng)的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0036]需要說(shuō)明的是,在不沖突的情況下,本發(fā)明中的實(shí)施例及實(shí)施例中的特征可以相互組合。
[0037]下面將參考附圖并結(jié)合實(shí)施例來(lái)詳細(xì)說(shuō)明本發(fā)明。
[0038]如圖1所示,一種機(jī)頂盒數(shù)據(jù)采集系統(tǒng),包括
[0039]機(jī)頂盒,內(nèi)置埋點(diǎn)程序,用于將需要采集的數(shù)據(jù)發(fā)送到數(shù)據(jù)采集服務(wù)器集群;
[0040]數(shù)據(jù)采集服務(wù)器集群,包括前端接收服務(wù)器和后端采集數(shù)據(jù)服務(wù)器,前端接收服務(wù)器為均衡負(fù)載器,用于接收機(jī)頂盒傳輸?shù)臄?shù)據(jù)并且分發(fā)給后端采集數(shù)據(jù)服務(wù)器,后端采集數(shù)據(jù)服務(wù)器,用于保存收集到的數(shù)據(jù);兩臺(tái)前端服務(wù)器互為主備,如果有一臺(tái)服務(wù)器出現(xiàn)故障,另外一臺(tái)會(huì)自動(dòng)切換使用,后端N臺(tái)采集服務(wù)器,負(fù)責(zé)保存收集到的數(shù)據(jù),只要還剩一臺(tái)都能完成采集任務(wù),這樣整個(gè)采集服務(wù)基本上能不間斷的為機(jī)頂盒服務(wù),保證其可靠性。
[0041]單獨(dú)設(shè)立日志分發(fā)服務(wù)器,將日志分發(fā)操作由其他服務(wù)器完成,分發(fā)到不同的應(yīng)用。
[0042]機(jī)頂盒數(shù)據(jù)采集系統(tǒng)數(shù)據(jù)采用JS0N格式保存,JS0N格式數(shù)據(jù)能任意自定義,元數(shù)據(jù)直接在數(shù)據(jù)本身上就能體現(xiàn)。每行數(shù)據(jù)都有自己的格式,且每種格式都有各自的字段定義,只需要看數(shù)據(jù)就能明白日志的含義,部分字段如下所示:
[0043]通用字段:
[0044]localtime:服務(wù)器時(shí)間;
[0045]processtype:記錄標(biāo)識(shí);
[0046]time:機(jī)頂盒時(shí)間;
[0047]stbid:機(jī)頂盒 id ;
[0048]userid:用戶 id ;
[0049]analysistype:處理類型;
[0050]vers1n:高標(biāo)清標(biāo)識(shí);
[0051]stbtype:機(jī)頂盒標(biāo)識(shí);
[0052]直播:
[0053]{"localtime":"20130222091643","processtype":"MapInfoProcess", "time":"20130222091643〃,〃stbid〃:〃00100299007011500003B075D5C8473F〃,〃userid〃: 〃gd001"-,analysistype: channelcontinuebegin , channelid: 1 , vers1n: 1 , stbty
[0054]channel id:頻道號(hào);
[0055]點(diǎn)播:
[0056]{"localtime":"20130222091324","colid":"1B0014","processtype":"MaplnfoProcess","time": "20130222091324","times": "128","vodname":"《101 次求婚》","stbid〃:〃00100299007011500003B075D5C8473F〃,"userid":"gdOOl","analysistype":"vodbegin' "vodid":"0000000030010000437942","vers1n":"1","stbtype":"1"}
[0057]vodname:vod 名稱;
[0058]colid:欄目號(hào);
[0059]times:vod 時(shí)長(zhǎng);
[0060]vodid:vod 內(nèi)容編碼;
[0061]退出視頻:
[0062]{"localtime":"20130222091215","processtype":"MapInfoProcess","quittype〃:〃osd〃,〃time〃:〃20130222091215〃,〃stbid〃:〃00100299007011500003B075D5C847
0// //.1// // inn -1 ^ ^1,”” 1 i // //.// //-.// // , i ,// //-, //-]
, userid: gdOOl , analysistype: vodend , vers1n: 1 , stbtype: 1 |
[0063]quittype:退出視頻方式;
[0064]osd:點(diǎn)擊返回退出;
[0065]保存書簽退出:
[0066]{"localtime":"20130222091215","processtype":"MapInfoProcess", 〃quittype〃:〃osdmark〃,〃time〃:〃20130222091215〃,〃stbid〃:〃00100299007011500003B075D5C84-
n ” ”.1 // // \ r\ r\ λ ^ ^1.,”” 1 1 // //.// //-.// // , 1 ,// //-, //-]
(?ν , userid: gdOOl , analysistype: vodend , vers1n: 1 , stbtype: 1 |
[0067]quittype:退出視頻方式;
[0068]osdmark:點(diǎn)擊保存書簽退出;
[0069]連續(xù)劇:
[0070]{〃localtime〃:〃20130222091204〃,〃stbid〃:〃00100299007011500003B075D5C8473F","userid":"gdOOl","stbtype":"1","vers1n":"1","vodid":"00000000301000004-55948","processtype":"MapInfoProcess","colid":"1C010D0