[發(fā)明專利]一種收集數(shù)據(jù)的系統(tǒng)、客戶端和方法有效
| 申請(qǐng)?zhí)枺?/td> | 201210404918.3 | 申請(qǐng)日: | 2012-10-22 |
| 公開(公告)號(hào): | CN102937984A | 公開(公告)日: | 2013-02-20 |
| 發(fā)明(設(shè)計(jì))人: | 張珂;郝國梁 | 申請(qǐng)(專利權(quán))人: | 北京奇虎科技有限公司;奇智軟件(北京)有限公司 |
| 主分類號(hào): | G06F17/30 | 分類號(hào): | G06F17/30 |
| 代理公司: | 北京市隆安律師事務(wù)所 11323 | 代理人: | 權(quán)鮮枝;何立春 |
| 地址: | 100088 北京市西城區(qū)新*** | 國省代碼: | 北京;11 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 一種 收集 數(shù)據(jù) 系統(tǒng) 客戶端 方法 | ||
技術(shù)領(lǐng)域
本發(fā)明涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,具體涉及一種收集數(shù)據(jù)的系統(tǒng)、客戶端和方法。
背景技術(shù)
互聯(lián)網(wǎng)時(shí)代的后臺(tái)數(shù)據(jù)非常重要而且龐大,比如日志數(shù)據(jù)和統(tǒng)計(jì)數(shù)據(jù)。這些后臺(tái)數(shù)據(jù)可能是后臺(tái)工程師分析程序運(yùn)行狀況的第一手資料,也可能是業(yè)務(wù)運(yùn)營決策所依賴的第一參考。然而大流量的網(wǎng)站一般都有上千萬臺(tái)生產(chǎn)服務(wù)器,且分布于各個(gè)不同的機(jī)房。日志文件或統(tǒng)計(jì)數(shù)據(jù)就會(huì)存放在這些網(wǎng)絡(luò)異構(gòu)且分布零散的生產(chǎn)服務(wù)器上,給日志的收集、傳輸、匯總及分析帶來很大的困難。目前有一些開源的軟件可以用來收集這些日志,但也存在著很多不能解決的情況。
目前較為常用的一些開源軟件例如Scribe,可以達(dá)到簡(jiǎn)單收集日志數(shù)據(jù)的目的。
Scribe是當(dāng)前的一個(gè)大型的社交網(wǎng)絡(luò)服務(wù)網(wǎng)站的開源的日志收集系統(tǒng),在該大型的社交網(wǎng)絡(luò)服務(wù)網(wǎng)站內(nèi)部已經(jīng)得到大量的應(yīng)用。它能夠從各種日志源上收集日志,存儲(chǔ)到一個(gè)中央存儲(chǔ)系統(tǒng)(可以是NFS,分布式文件系統(tǒng)HDFS等)上,以便于進(jìn)行集中統(tǒng)計(jì)分析處理。它為日志的“分布式收集,統(tǒng)一處理”提供了一個(gè)可擴(kuò)展的,高容錯(cuò)的方案。當(dāng)中央存儲(chǔ)系統(tǒng)的網(wǎng)絡(luò)或者機(jī)器出現(xiàn)故障時(shí),scribe會(huì)將日志轉(zhuǎn)存到本地或者另一個(gè)位置,當(dāng)中央存儲(chǔ)系統(tǒng)恢復(fù)后,scribe會(huì)將轉(zhuǎn)存的日志重新傳輸給中央存儲(chǔ)系統(tǒng)。其通常與Hadoop結(jié)合使用,scribe用于向HDFS中push日志,而Hadoop通過MapReduce作業(yè)進(jìn)行定期處理。
圖1是現(xiàn)有的Scribe收集日志的示意圖。如圖1所示,Scribe從作為種數(shù)據(jù)源的各應(yīng)用上收集數(shù)據(jù),放到一個(gè)共享隊(duì)列上,然后push到后端的中央存儲(chǔ)系統(tǒng)上。當(dāng)中央存儲(chǔ)系統(tǒng)出現(xiàn)故障時(shí),scribe可以暫時(shí)把日志寫到本地文件中,待中央存儲(chǔ)系統(tǒng)恢復(fù)性能后,scribe把本地日志續(xù)傳到中央存儲(chǔ)系統(tǒng)上。
各個(gè)數(shù)據(jù)源須通過THRIFT(由于采用了THRIFT,客戶端可以采用各種語言編寫向scribe傳輸數(shù)據(jù),每條數(shù)據(jù)記錄包含一個(gè)category和一個(gè)message)。可以在scribe配置用于監(jiān)聽端口的THRIFT線程數(shù)(默認(rèn)為3)。在后端,scribe可以將不同category的數(shù)據(jù)存放到不同目錄中,以便于進(jìn)行分別處理。后端的日志存儲(chǔ)方式可以是各種各樣的store,包括:file(文件),buffer(雙層存儲(chǔ),一個(gè)主儲(chǔ)存,一個(gè)副存儲(chǔ)),network(另一個(gè)scribe服務(wù)器)等。
但是scribe存在如下缺點(diǎn):
(1)scribe的一個(gè)缺點(diǎn)是前端組織數(shù)據(jù)不靈活,只能使用兩個(gè)字段,即catagory和message,在生產(chǎn)服務(wù)器的應(yīng)用程序中,如果想用scribe發(fā)送數(shù)據(jù),則每條數(shù)據(jù)只能有catagory和message兩個(gè)字段,如果想傳送多個(gè)字段,則必須自己組織數(shù)據(jù),將要傳送的多個(gè)數(shù)據(jù)合并到message里面。在后期分析數(shù)據(jù)時(shí)還要自己解析message,得到原來的多個(gè)字段。這給數(shù)據(jù)的傳輸造成了諸多的限制和不便。
(2)另一個(gè)缺點(diǎn)是,scribe會(huì)接收每一條數(shù)據(jù),并把它們忠實(shí)地記錄在本地緩存,以一定頻率批量發(fā)送數(shù)據(jù),即便兩條數(shù)據(jù)的category和message是一模一樣的。這在數(shù)據(jù)傳輸量很大、傳輸頻率很高時(shí),容易造成嚴(yán)重的網(wǎng)絡(luò)堵塞和延遲。
發(fā)明內(nèi)容
鑒于上述問題,提出了本發(fā)明以便提供一種克服上述問題或者至少部分地解決上述問題的收集數(shù)據(jù)的系統(tǒng)、客戶端和相應(yīng)的收集數(shù)據(jù)的方法。
依據(jù)本發(fā)明的一個(gè)方面,提供了一種收集數(shù)據(jù)的系統(tǒng),其中,該系統(tǒng)包括:服務(wù)器端和部署于不同生產(chǎn)服務(wù)器上的多個(gè)客戶端,
所述客戶端,適于獲取生產(chǎn)服務(wù)器所產(chǎn)生的對(duì)應(yīng)不同類別業(yè)務(wù)的數(shù)據(jù),將所獲取的數(shù)據(jù)按照對(duì)應(yīng)的不同類別的業(yè)務(wù)分類存放;
其中,每條數(shù)據(jù)包含一個(gè)以上的字段,不同的字段具有不同的類型,且每條數(shù)據(jù)的至少一個(gè)字段標(biāo)識(shí)有關(guān)鍵碼;每種類別業(yè)務(wù)都有一個(gè)對(duì)應(yīng)的定時(shí)周期;
所述客戶端,進(jìn)一步適于在每種類別業(yè)務(wù)對(duì)應(yīng)的定時(shí)周期結(jié)束時(shí),將所保存的該類別業(yè)務(wù)的數(shù)據(jù)中的,標(biāo)識(shí)有關(guān)鍵碼的字段的值相同的數(shù)據(jù)歸并為一條數(shù)據(jù)后發(fā)送給所述服務(wù)器端;
所述服務(wù)器端,適于從各客戶端接收數(shù)據(jù),并進(jìn)行存儲(chǔ)或轉(zhuǎn)發(fā)。
可選地,所述客戶端,進(jìn)一步適于在每種類別業(yè)務(wù)對(duì)應(yīng)的定時(shí)周期結(jié)束時(shí),將所保存的該類別業(yè)務(wù)的數(shù)據(jù)中的,標(biāo)識(shí)有關(guān)鍵碼的字段的值相同的數(shù)據(jù)歸并為一條數(shù)據(jù)時(shí),對(duì)沒有標(biāo)識(shí)關(guān)鍵碼的字段,按照不同的類型進(jìn)行不同的歸并處理。
可選地,所述客戶端,進(jìn)一步適于在按照不同的類型對(duì)沒有標(biāo)識(shí)關(guān)鍵碼的字段進(jìn)行不同的歸并處理時(shí),采用以下一種或多種的組合:
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于北京奇虎科技有限公司;奇智軟件(北京)有限公司,未經(jīng)北京奇虎科技有限公司;奇智軟件(北京)有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請(qǐng)聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210404918.3/2.html,轉(zhuǎn)載請(qǐng)聲明來源鉆瓜專利網(wǎng)。
- 同類專利
- 專利分類
G06F 電數(shù)字?jǐn)?shù)據(jù)處理
G06F17-00 特別適用于特定功能的數(shù)字計(jì)算設(shè)備或數(shù)據(jù)處理設(shè)備或數(shù)據(jù)處理方法
G06F17-10 .復(fù)雜數(shù)學(xué)運(yùn)算的
G06F17-20 .處理自然語言數(shù)據(jù)的
G06F17-30 .信息檢索;及其數(shù)據(jù)庫結(jié)構(gòu)
G06F17-40 .數(shù)據(jù)的獲取和記錄
G06F17-50 .計(jì)算機(jī)輔助設(shè)計(jì)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法、數(shù)據(jù)系統(tǒng)、接收設(shè)備和數(shù)據(jù)讀取方法
- 數(shù)據(jù)記錄方法、數(shù)據(jù)記錄裝置、數(shù)據(jù)記錄媒體、數(shù)據(jù)重播方法和數(shù)據(jù)重播裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)發(fā)送系統(tǒng)、數(shù)據(jù)發(fā)送裝置以及數(shù)據(jù)結(jié)構(gòu)
- 數(shù)據(jù)顯示系統(tǒng)、數(shù)據(jù)中繼設(shè)備、數(shù)據(jù)中繼方法及數(shù)據(jù)系統(tǒng)
- 數(shù)據(jù)嵌入裝置、數(shù)據(jù)嵌入方法、數(shù)據(jù)提取裝置及數(shù)據(jù)提取方法
- 數(shù)據(jù)管理裝置、數(shù)據(jù)編輯裝置、數(shù)據(jù)閱覽裝置、數(shù)據(jù)管理方法、數(shù)據(jù)編輯方法以及數(shù)據(jù)閱覽方法
- 數(shù)據(jù)發(fā)送和數(shù)據(jù)接收設(shè)備、數(shù)據(jù)發(fā)送和數(shù)據(jù)接收方法
- 數(shù)據(jù)發(fā)送裝置、數(shù)據(jù)接收裝置、數(shù)據(jù)收發(fā)系統(tǒng)、數(shù)據(jù)發(fā)送方法、數(shù)據(jù)接收方法和數(shù)據(jù)收發(fā)方法
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置
- 數(shù)據(jù)發(fā)送方法、數(shù)據(jù)再現(xiàn)方法、數(shù)據(jù)發(fā)送裝置及數(shù)據(jù)再現(xiàn)裝置





