專利名稱:一種海量數(shù)據(jù)的處理方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)字化信息的處理方法,尤其涉及一種海量數(shù)據(jù)的處理方法。
背景技術(shù):
傳統(tǒng)大型應(yīng)用軟件系統(tǒng)對(duì)其應(yīng)用的管理對(duì)象采集的數(shù)據(jù)進(jìn)行管理和査詢分析, 一般而言,管理和査詢的數(shù)據(jù)量都非常巨大以致査詢的速率下降。如要求對(duì)多表同 時(shí)進(jìn)行聯(lián)合,限制,分組,條件查詢等。在現(xiàn)有的技術(shù)中,現(xiàn)在一般的査詢應(yīng)用中,
對(duì)于這種情況,只能縮短,簡(jiǎn)化SQL語(yǔ)句,從而提高數(shù)據(jù)的業(yè)務(wù)邏輯處理復(fù)雜度, 而且會(huì)經(jīng)常出現(xiàn)數(shù)據(jù)連接異常的各種問(wèn)題。對(duì)于如何處理這種問(wèn)題,往往魚(yú)和熊掌 不可兼得。
發(fā)明內(nèi)容
本發(fā)明的目的就是為了克服上述現(xiàn)有技術(shù)存在的缺陷而提供一種可直接提高 數(shù)據(jù)的查詢和和統(tǒng)計(jì)分析速度的海量數(shù)據(jù)的處理方法。
本發(fā)明的目的可以通過(guò)以下技術(shù)方案來(lái)實(shí)現(xiàn) 一種海量數(shù)據(jù)的處理方法,其特
征在于,該方法將接口數(shù)據(jù)文件作為數(shù)據(jù)庫(kù)的輔助表,采用表分區(qū)處理的方式進(jìn)行 存儲(chǔ),存儲(chǔ)過(guò)程導(dǎo)入相關(guān)需要的數(shù)據(jù),采用進(jìn)程并行處理的機(jī)制,根據(jù)業(yè)務(wù)特點(diǎn)對(duì) 不同的數(shù)據(jù)業(yè)務(wù)劃分不同的主題,并對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,生成輕量級(jí)面向主題的匯 總,然后在輕量級(jí)的匯總基礎(chǔ)上進(jìn)行重量級(jí)匯總。
所述的表分區(qū)處理是將數(shù)據(jù)庫(kù)表劃分為多個(gè)不同的分區(qū),在不同的分區(qū)中存入 不同的數(shù)據(jù),每個(gè)分區(qū)又相當(dāng)于大表中的一個(gè)小表,按日期劃分分區(qū),數(shù)據(jù)插入按 分區(qū)順序依次進(jìn)行并在分區(qū)號(hào)范圍內(nèi)循環(huán)更新。
所述的表分處理包括以下處理步驟
(1) 生成每年的日期維度;
(2) 在日期維度的基礎(chǔ)上,生成每月的表空間;
4(3) 然后再對(duì)每天的數(shù)據(jù)表進(jìn)行分區(qū),建立日分區(qū);
(4) 在日分區(qū)生成維度數(shù)據(jù),該維度數(shù)據(jù)包括終端品牌維度和業(yè)務(wù)類型維度;
(5) 最終生成事實(shí)數(shù)據(jù)。
所述的步驟(2)中的表空間按照月份建立的,表空間相當(dāng)于一個(gè)表的容器, 可儲(chǔ)存多個(gè)表文件,這些表空間各自有自己完整的存儲(chǔ)系統(tǒng),在操作上完全是相對(duì) 獨(dú)立的,每個(gè)表空間存儲(chǔ)了該月所有的數(shù)據(jù),即這個(gè)月每天的數(shù)據(jù)表。 所述的表空間相互之間邏輯連貫,在物理的儲(chǔ)存空間上不相鄰。 所述的步驟(3)中的日分區(qū)的天數(shù)據(jù)表按照城市代碼的不同分成不同的分區(qū),
每個(gè)分區(qū)進(jìn)行邏輯緊密相連,在物理存儲(chǔ)上,各自在不同的存儲(chǔ)扇區(qū)中,表中的數(shù) 據(jù)査詢方法是,根據(jù)日期計(jì)算該日期數(shù)據(jù)庫(kù)表對(duì)應(yīng)的分區(qū)號(hào),從指定的分區(qū)中査找 用戶需要的數(shù)據(jù)。
所述的步驟(5)中的事實(shí)數(shù)據(jù)包括登錄數(shù)據(jù),訪問(wèn)數(shù)據(jù),訂購(gòu)數(shù)據(jù),使用費(fèi)
用數(shù)據(jù)。
所述的進(jìn)程并行處理的機(jī)制是使用數(shù)據(jù)庫(kù)的消息機(jī)制對(duì)同時(shí)需要處理的進(jìn)程 進(jìn)行并行的處理,并發(fā)運(yùn)行,對(duì)査詢數(shù)據(jù)進(jìn)行分組,并建立并行任務(wù),將組代碼傳 入并行任務(wù)當(dāng)中去,然后建立報(bào)警通道,為每個(gè)任務(wù)注冊(cè),當(dāng)一個(gè)子任務(wù)完成返回 時(shí),將自動(dòng)在報(bào)警通道刪除此任務(wù),直到報(bào)警通道中所有任務(wù)全部刪除,整個(gè)任務(wù)
并行完成;
所述的進(jìn)程并行處理包括以下處理步驟
(1) 使用數(shù)據(jù)庫(kù)的消息機(jī)制為每個(gè)査詢業(yè)務(wù)建立一個(gè)任務(wù)進(jìn)程;
(2) 大數(shù)據(jù)量處理采用并行處理機(jī)制,按城市代碼分成四個(gè)數(shù)據(jù)量相對(duì)均衡 的組,建立并行任務(wù),將組代碼傳入過(guò)程;
(3) 建立一個(gè)報(bào)警通道,并注冊(cè)每個(gè)任務(wù);
(4) 等待報(bào)警信號(hào),當(dāng)一個(gè)子任務(wù)返回,將在報(bào)警通道刪除此任務(wù),直到報(bào) 警通道中所有任務(wù)全部刪除,整個(gè)任務(wù)并行結(jié)束。
與現(xiàn)有技術(shù)相比,本發(fā)明采用進(jìn)程并行處理得機(jī)制,使多個(gè)任務(wù)能異步執(zhí)行, 在存儲(chǔ)方式上,采用對(duì)表劃分分區(qū)的方式,在執(zhí)行時(shí)分區(qū)之間互不影響,提高了執(zhí) 行效率。此設(shè)計(jì)方法有效的連接不同系統(tǒng)之間的數(shù)據(jù)接口,在各個(gè)不同的層面采用 合適的策略,并使數(shù)據(jù)的查詢的深度得到加強(qiáng),效率得以提高。
圖1為本發(fā)明表分區(qū)處理的示意圖; 圖2為本發(fā)明系統(tǒng)結(jié)構(gòu)示意圖。
具體實(shí)施例方式
下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步說(shuō)明。 實(shí)施例1
如圖1 2所示, 一種海量數(shù)據(jù)分析,提取的設(shè)計(jì)方法,該設(shè)計(jì)方案采用Oracle 最新外部表的功能把接口數(shù)據(jù)文件作為數(shù)據(jù)庫(kù)的輔助表,供存儲(chǔ)過(guò)程使用,存儲(chǔ)過(guò) 程導(dǎo)入相關(guān)需要的數(shù)據(jù),根據(jù)業(yè)務(wù)特點(diǎn)對(duì)不同的數(shù)據(jù)業(yè)務(wù)劃分不同的主題,并對(duì)數(shù) 據(jù)進(jìn)行預(yù)處理,生成輕量級(jí)面向主題的匯總,以便降低最終實(shí)事表的運(yùn)算復(fù)雜度, 然后在輕量級(jí)匯總的基礎(chǔ)上進(jìn)行重量級(jí)匯總的策略。在這個(gè)過(guò)程中,采用進(jìn)程并行 處理得機(jī)制,使多個(gè)任務(wù)能異步執(zhí)行,在存儲(chǔ)方式上,采用對(duì)表劃分分區(qū)的方式, 在執(zhí)行時(shí)分區(qū)之間互不影響,提高了執(zhí)行效率。此設(shè)計(jì)方法有效的連接不同系統(tǒng)之 間的數(shù)據(jù)接口,在各個(gè)不同的層面采用合適的策略,并使數(shù)據(jù)的査詢的深度得到加 強(qiáng),效率得以提高。
上述表分區(qū)處理是將數(shù)據(jù)庫(kù)表劃分為多個(gè)不同的分區(qū),在不同的分區(qū)中存入不 同的數(shù)據(jù),每個(gè)分區(qū)又相當(dāng)于大表中的一個(gè)小表,按日期劃分分區(qū),數(shù)據(jù)插入按分 區(qū)順序依次進(jìn)行并在分區(qū)號(hào)范圍內(nèi)循環(huán)更新,這樣在査詢一個(gè)分區(qū)時(shí)而不會(huì)影響其 他分區(qū),以達(dá)到提高査詢處理數(shù)據(jù)的速度,利于海量數(shù)據(jù)的管理。具體表分處理步 驟如下
1. 先生成每年的日期維度(Common.Generate—Time)。
2. 在日期維度的基礎(chǔ)上,生成每月的表空間 (Common.Genemte一Tablespace),表空間時(shí)按照月份建立的,表空間相當(dāng)于一個(gè)表
的容器,它可以儲(chǔ)存多個(gè)表文件,這些表空間在邏輯看起來(lái)是連貫的,然而在物理 的儲(chǔ)存空間上卻不是相鄰的,各自有自己完整的存儲(chǔ)系統(tǒng),在操作上完全是相對(duì)獨(dú) 立的,每個(gè)表空間存儲(chǔ)了該月所有的數(shù)據(jù),即這個(gè)月每天的數(shù)據(jù)表。
3. 然后再對(duì)每天的數(shù)據(jù)表進(jìn)行分區(qū),建立每日的分區(qū) (Common.Generate—Partition),這些天數(shù)據(jù)表按照城市代碼的不同分成不同的分區(qū), 每個(gè)分區(qū)雖然在邏輯上看起來(lái)是緊密相連的,然后在物理存儲(chǔ)上,各自在不同的存儲(chǔ)扇區(qū)中,以便硬件讀操作時(shí)可以同時(shí)進(jìn)行,這樣就大大地提高了讀取,存儲(chǔ)數(shù)據(jù) 的效率。表中的數(shù)據(jù)查詢方法是,根據(jù)日期計(jì)算該日期數(shù)據(jù)庫(kù)表對(duì)應(yīng)的分區(qū)號(hào),從 指定的分區(qū)中査找用戶需要的數(shù)據(jù)。
4. 在分區(qū)生成維度數(shù)據(jù),維度數(shù)據(jù)包括終端品牌維度和業(yè)務(wù)類型維度。
5. 最終生成事實(shí)數(shù)據(jù),事實(shí)數(shù)據(jù)包括登錄數(shù)據(jù),訪問(wèn)數(shù)據(jù),訂購(gòu)數(shù)據(jù),使 用費(fèi)用等數(shù)據(jù)。
其結(jié)構(gòu)示意圖如圖l所示。 上述進(jìn)程并行處理的具體實(shí)現(xiàn)步驟如下
1. 使用數(shù)據(jù)庫(kù)的消息機(jī)制為每個(gè)査詢業(yè)務(wù)建立一個(gè)任務(wù)進(jìn)程。
2. 對(duì)這些大量數(shù)據(jù),按城市代碼分成四個(gè)數(shù)據(jù)量相對(duì)均衡的組,建立并行任
務(wù),將子任務(wù)傳入并行任務(wù)當(dāng)中去,將組代碼傳入過(guò)程。
3. 建立一個(gè)報(bào)警通道,并為每個(gè)任務(wù)進(jìn)行注冊(cè)。
4. 此時(shí)處于等待報(bào)警信號(hào)狀態(tài),當(dāng)一個(gè)子任務(wù)返回時(shí),將在報(bào)警通道刪除此 任務(wù),直到報(bào)警通道中所有任務(wù)全部刪除,整個(gè)任務(wù)并行結(jié)束。這樣就實(shí)現(xiàn)了不同 的數(shù)據(jù)處理進(jìn)程進(jìn)行異步并行的處理。
本實(shí)施例的硬件結(jié)構(gòu)包括數(shù)據(jù)庫(kù)服務(wù)器、集中存儲(chǔ)裝置,數(shù)據(jù)庫(kù)服務(wù)器與集中 存儲(chǔ)裝置通過(guò)通訊設(shè)備建立網(wǎng)絡(luò)連接,其結(jié)構(gòu)如圖2所示。
權(quán)利要求
1.一種海量數(shù)據(jù)的處理方法,其特征在于,該方法將接口數(shù)據(jù)文件作為數(shù)據(jù)庫(kù)的輔助表,采用表分區(qū)處理的方式進(jìn)行存儲(chǔ),存儲(chǔ)過(guò)程導(dǎo)入相關(guān)需要的數(shù)據(jù),采用進(jìn)程并行處理的機(jī)制,根據(jù)業(yè)務(wù)特點(diǎn)對(duì)不同的數(shù)據(jù)業(yè)務(wù)劃分不同的主題,并對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,生成輕量級(jí)面向主題的匯總,然后在輕量級(jí)的匯總基礎(chǔ)上進(jìn)行重量級(jí)匯總。
2. 根據(jù)權(quán)利要求1所述的一種海量數(shù)據(jù)的處理方法,其特征在于,所述的表 分區(qū)處理是將數(shù)據(jù)庫(kù)表劃分為多個(gè)不同的分區(qū),在不同的分區(qū)中存入不同的數(shù)據(jù), 每個(gè)分區(qū)又相當(dāng)于大表中的一個(gè)小表,按日期劃分分區(qū),數(shù)據(jù)插入按分區(qū)順序依次 進(jìn)行并在分區(qū)號(hào)范圍內(nèi)循環(huán)更新。
3. 根據(jù)權(quán)利要求2所述的一種海量數(shù)據(jù)的處理方法,其特征在于,所述的表 分區(qū)處理包括以下處理步驟(1) 生成每年的日期維度;(2) 在日期維度的基礎(chǔ)上,生成每月的表空間;(3) 然后再對(duì)每天的數(shù)據(jù)表進(jìn)行分區(qū),建立日分區(qū);(4) 在日分區(qū)生成維度數(shù)據(jù),該維度數(shù)據(jù)包括終端品牌維度和業(yè)務(wù)類型維度;(5) 最終生成事實(shí)數(shù)據(jù)。
4. 根據(jù)權(quán)利要求3所述的一種海量數(shù)據(jù)的處理方法,其特征在于,所述的步 驟(2)中的表空間按照月份建立的,表空間相當(dāng)于一個(gè)表的容器,可儲(chǔ)存多個(gè)表 文件,這些表空間各自有自己完整的存儲(chǔ)系統(tǒng),在操作上完全是相對(duì)獨(dú)立的,每個(gè) 表空間存儲(chǔ)了該月所有的數(shù)據(jù),即這個(gè)月每天的數(shù)據(jù)表。
5. 根據(jù)權(quán)利要求4所述的一種海量數(shù)據(jù)的處理方法,其特征在于,所述的表 空間相互之間邏輯連貫,在物理的儲(chǔ)存空間上不相鄰。
6. 根據(jù)權(quán)利要求3所述的一種海量數(shù)據(jù)的處理方法,其特征在于,所述的步 驟(3)中的日分區(qū)的天數(shù)據(jù)表按照城市代碼的不同分成不同的分區(qū),每個(gè)分區(qū)進(jìn) 行邏輯緊密相連,在物理存儲(chǔ)上,各自在不同的存儲(chǔ)扇區(qū)中,表中的數(shù)據(jù)査詢方法 是,根據(jù)日期計(jì)算該日期數(shù)據(jù)庫(kù)表對(duì)應(yīng)的分區(qū)號(hào),從指定的分區(qū)中查找用戶需要的 數(shù)據(jù)。
7. 根據(jù)權(quán)利要求3所述的一種海量數(shù)據(jù)的處理方法,其特征在于,所述的步 驟(5)中的事實(shí)數(shù)據(jù)包括登錄數(shù)據(jù),訪問(wèn)數(shù)據(jù),訂購(gòu)數(shù)據(jù),使用費(fèi)用數(shù)據(jù)。
8. 根據(jù)權(quán)利要求1所述的一種海量數(shù)據(jù)的處理方法,其特征在于,所述的進(jìn) 程并行處理的機(jī)制是使用數(shù)據(jù)庫(kù)的消息機(jī)制對(duì)同時(shí)需要處理的進(jìn)程進(jìn)行并行的處 理,并發(fā)運(yùn)行,對(duì)査詢數(shù)據(jù)進(jìn)行分組,并建立并行任務(wù),將組代碼傳入并行任務(wù)當(dāng) 中去,然后建立報(bào)警通道,為每個(gè)任務(wù)注冊(cè),當(dāng)一個(gè)子任務(wù)完成返回時(shí),將自動(dòng)在 報(bào)警通道刪除此任務(wù),直到報(bào)警通道中所有任務(wù)全部刪除,整個(gè)任務(wù)并行完成;
9. 根據(jù)權(quán)利要求8所述的一種海量數(shù)據(jù)的處理方法,其特征在于,所述的進(jìn) 程并行處理包括以下處理步驟(1) 使用數(shù)據(jù)庫(kù)的消息機(jī)制為每個(gè)査詢業(yè)務(wù)建立一個(gè)任務(wù)進(jìn)程;(2) 大數(shù)據(jù)量處理采用并行處理機(jī)制,按城市代碼分成四個(gè)數(shù)據(jù)量相對(duì)均衡 的組,建立并行任務(wù),將組代碼傳入過(guò)程;(3) 建立一個(gè)報(bào)警通道,并注冊(cè)每個(gè)任務(wù);(4) 等待報(bào)警信號(hào),當(dāng)一個(gè)子任務(wù)返回,將在報(bào)警通道刪除此任務(wù),直到報(bào) 警通道中所有任務(wù)全部刪除,整個(gè)任務(wù)并行結(jié)束。
全文摘要
本發(fā)明涉及一種海量數(shù)據(jù)的處理方法,該方法將接口數(shù)據(jù)文件作為數(shù)據(jù)庫(kù)的輔助表,采用表分區(qū)處理的方式進(jìn)行存儲(chǔ),存儲(chǔ)過(guò)程導(dǎo)入相關(guān)需要的數(shù)據(jù),采用進(jìn)程并行處理的機(jī)制,根據(jù)業(yè)務(wù)特點(diǎn)對(duì)不同的數(shù)據(jù)業(yè)務(wù)劃分不同的主題,并對(duì)數(shù)據(jù)進(jìn)行預(yù)處理,生成輕量級(jí)面向主題的匯總,然后在輕量級(jí)的匯總基礎(chǔ)上進(jìn)行重量級(jí)匯總。與現(xiàn)有技術(shù)相比,本發(fā)明采用進(jìn)程并行處理得機(jī)制,使多個(gè)任務(wù)能異步執(zhí)行,在存儲(chǔ)方式上,采用對(duì)表劃分分區(qū)的方式,在執(zhí)行時(shí)分區(qū)之間互不影響,提高了執(zhí)行效率。此設(shè)計(jì)方法有效的連接不同系統(tǒng)之間的數(shù)據(jù)接口,在各個(gè)不同的層面采用合適的策略,并使數(shù)據(jù)的查詢的深度得到加強(qiáng),效率得以提高。
文檔編號(hào)G06F17/30GK101620600SQ20081003989
公開(kāi)日2010年1月6日 申請(qǐng)日期2008年6月30日 優(yōu)先權(quán)日2008年6月30日
發(fā)明者謐 馮 申請(qǐng)人:上海全成通信技術(shù)有限公司