亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種大數(shù)據(jù)分布式文件導(dǎo)出方法

文檔序號:6385587閱讀:299來源:國知局
專利名稱:一種大數(shù)據(jù)分布式文件導(dǎo)出方法
技術(shù)領(lǐng)域
本發(fā)明涉及一種大數(shù)據(jù)分布式文件導(dǎo)出方法,屬于數(shù)據(jù)處理技術(shù)領(lǐng)域。
背景技術(shù)
云存儲系統(tǒng)是在云計算(cloud computing)概念上延伸和發(fā)展出來的一個新的概 念,是指通過集群應(yīng)用、網(wǎng)格技術(shù)或分布式文件系統(tǒng)等技術(shù),將網(wǎng)絡(luò)中大量不同類型的存儲 設(shè)備通過應(yīng)用軟件集合起來協(xié)同工作,共同對外提供數(shù)據(jù)存儲和業(yè)務(wù)訪問功能的數(shù)據(jù)服務(wù) 系統(tǒng)。當(dāng)云計算系統(tǒng)運算和處理的核心是大量數(shù)據(jù)的存儲和管理時,云計算系統(tǒng)中也需要 配置大量的存儲設(shè)備,那么云計算系統(tǒng)就轉(zhuǎn)變成為一個云存儲系統(tǒng),所以云存儲系統(tǒng)是一 個以數(shù)據(jù)存儲和管理為核心的云計算系統(tǒng)。
云存儲系統(tǒng)使存儲完全虛擬化,這樣可以大大簡化應(yīng)用的環(huán)節(jié),從而為客戶節(jié)省 建設(shè)成本,并且向客戶提供了更穩(wěn)定的存儲性能以及更強大的共享功能,云存儲系統(tǒng)中的 存儲設(shè)備對使用者完全透明,任何地方在被授權(quán)的情況下都可以通過網(wǎng)絡(luò)與云存儲系統(tǒng)進 行連接。
在傳統(tǒng)的大數(shù)據(jù)文件導(dǎo)出方法中,首先是查詢一批數(shù)據(jù)后寫入文件中,查詢一批 數(shù)據(jù)使用的時間取決于數(shù)據(jù)庫的數(shù)據(jù)量大小、SQL復(fù)雜程度及時間條件的跨度。寫入文件 也是一個比較耗時的過程,并且沒有辦法在云存儲系統(tǒng)的基礎(chǔ)上把幾個服務(wù)器的數(shù)據(jù)合并 到一個文件中,如果要合并云存儲系統(tǒng)的數(shù)據(jù)則需要在程序中進行查詢合并,這樣的效率 會更慢,導(dǎo)出一個上百萬條數(shù)據(jù)的文件耗時很長。
所以,基于云存儲系統(tǒng)的大數(shù)據(jù)導(dǎo)出需求應(yīng)運而生。但是,目前的大數(shù)據(jù)文件導(dǎo)出 方法還是傳統(tǒng)的單服務(wù)器分步驟進行,目前還沒有可以保證數(shù)據(jù)完整及正確性的分布式數(shù) 據(jù)文件導(dǎo)出機制。
圖4為傳統(tǒng)的數(shù)據(jù)文件導(dǎo)出過程示意圖。如圖4所示,傳統(tǒng)的查詢和寫入文件是 串行模式,用戶請求服務(wù)器查詢數(shù)據(jù),會根據(jù)服務(wù)器壓力、數(shù)據(jù)庫的數(shù)據(jù)量及查詢語句的復(fù) 雜程度決定本次操作的速度,等所有工作進行完成后,下載到用戶指定的位置。
在申請?zhí)枮?00910166485.0的中國發(fā)明專利申請中,公開了一種數(shù)據(jù)導(dǎo)出的方 法和裝置,所述方法包括接收待導(dǎo)出數(shù)據(jù)的導(dǎo)出條件和導(dǎo)出配置信息,所述導(dǎo)出配置信息 包括單個任務(wù)的最大線程數(shù)和每個線程的單次記錄數(shù);根據(jù)所述導(dǎo)出條件、最大線程數(shù)和 單次記錄數(shù)生成導(dǎo)出任務(wù);依據(jù)所述導(dǎo)出任務(wù)對所述待導(dǎo)出數(shù)據(jù)進行導(dǎo)出。所述方法及裝 置避免了在大數(shù)據(jù)量情況下,單線程操作的響應(yīng)時間過長的問題,提高了大數(shù)據(jù)量的導(dǎo)出 效率。發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問題在于提供一種大數(shù)據(jù)分布式文件導(dǎo)出方法。
為實現(xiàn)上述的發(fā)明目的,本發(fā)明采用以下技術(shù)方案
一種大數(shù)據(jù)分布式文件導(dǎo)出方法,用于由查詢服務(wù)器、作為云存儲服務(wù)器的多個數(shù)據(jù)檢索服務(wù)器、文件合并服務(wù)器相互連接形成的查詢系統(tǒng),包括以下步驟
S1:拆解查詢語句步驟
所述查詢服務(wù)器根據(jù)預(yù)定的條件,將源查詢語句分拆解析成若干個子查詢語句, 分發(fā)給所述多個數(shù)據(jù)檢索服務(wù)器;
S2 :分布式云存儲查詢步驟
接收到所述子查詢語句的所述數(shù)據(jù)檢索服務(wù)器,進行并行查詢;
S3:寫入文件步驟
所述數(shù)據(jù)檢索服務(wù)器將子檢索結(jié)果并行寫入子文件;
S4 :合并文件并導(dǎo)出的步驟
所述文件合并服務(wù)器根據(jù)所述預(yù)定條件,抓取所述子文件并將所述子文件進行合 并,然后導(dǎo)出。
所述查詢解析服務(wù)器將所述子查詢語句發(fā)送給所述數(shù)據(jù)檢索服務(wù)器,同時向隊列 服務(wù)器發(fā)送注冊消息,注冊狀態(tài)。
所述數(shù)據(jù)檢索服務(wù)器在完成數(shù)據(jù)檢索后,把數(shù)據(jù)寫成文件,并通知所述隊列服務(wù)器。
檢查消息狀態(tài),在確認所有所述數(shù)據(jù)檢索服務(wù)器完成文件的寫入時,通知文件合 并服務(wù)器抓取文件;
在確認未全部完成時,通知錯誤處理服務(wù)器,由錯誤處理服務(wù)器通知隊列服務(wù)器 出錯信息,并向所述查詢解析服務(wù)器發(fā)出重發(fā)請求,返回步驟SI。
本發(fā)明所提供的大數(shù)據(jù)分布式文件導(dǎo)出方法采用分布式方式導(dǎo)出大量數(shù)據(jù),可以 保證數(shù)據(jù)的完整及正確性,并且可以支持橫向擴展,從而快速安全地導(dǎo)出大批量數(shù)據(jù)到文 件中。


圖1為本發(fā)明所提供的大數(shù)據(jù)分布式文件導(dǎo)出方法的概略過程示意圖2為本發(fā)明所提供的大數(shù)據(jù)分布式文件導(dǎo)出方法的詳細過程示意圖3為本發(fā)明所提供的大數(shù)據(jù)分布式文件導(dǎo)出方法的流程圖4為傳統(tǒng)的數(shù)據(jù)文件導(dǎo)出過程示意圖。
具體實施方式
下面結(jié)合

本發(fā)明的技術(shù)方案。在此以云存儲服務(wù)器為例進行說明。
如圖1所示,本發(fā)明所提供的一種大數(shù)據(jù)分布式文件導(dǎo)出方法,主要包括以下步 驟
S1:拆解查詢語句步驟
查詢服務(wù)器根據(jù)時間條件或其他預(yù)定的條件,先把查詢語句分拆解析成若干個子 查詢語句,之后根據(jù)各個云存儲服務(wù)器的壓力情況,把子查詢語句分發(fā)給壓力相對小的云 存儲服務(wù)器上。
S2 :分布式數(shù)據(jù)查詢步驟
接收到子查詢語句的云存儲服務(wù)器,根據(jù)子查詢語句進行查詢,實現(xiàn)并行查詢。
S3 :寫入文件步驟
各個云存儲服務(wù)器將查詢結(jié)果并行寫入子文件,發(fā)送給文件合并服務(wù)器。
S4 :合并文件并導(dǎo)出的步驟
文件合并服務(wù)器根據(jù)前述拆解時的預(yù)定條件,將各個子文件進行合并,然后導(dǎo)出, 完成導(dǎo)出請求。
下面結(jié)合圖2和圖3進行詳細說明。
查詢解析服務(wù)器接收到文件導(dǎo)出請求后,執(zhí)行下述步驟
S1:拆解查詢語句步驟。在這一步驟中,查詢解析服務(wù)器根據(jù)預(yù)定規(guī)則對查詢請求 (源查詢語句)進行拆解。查詢解析服務(wù)器將拆解后的查詢請求(子查詢語句)發(fā)送給各個數(shù) 據(jù)檢索服務(wù)器,同時向隊列服務(wù)器發(fā)送注冊消息,注冊信息中包含組標識和請求機器標識、 數(shù)據(jù)檢索服務(wù)器標識。隊列服務(wù)器根據(jù)注冊信息生成身份認證標識。身份認證標識包含組 標識、請求機器標識、數(shù)據(jù)檢索服務(wù)器標識、請求文件標識和隨機標識。其中組標識是表示 用于查詢同一個源查詢語句的多個身份認證標識;請求機器標識表示發(fā)出子查詢語句的查 詢解析服務(wù)器;數(shù)據(jù)檢索服務(wù)器標識表示收到并執(zhí)行該子查詢語句的數(shù)據(jù)檢索服務(wù)器。
通常大數(shù)據(jù)的導(dǎo)出,是用戶需要某個特定時間段內(nèi)的所有數(shù)據(jù),例如,開始時 間是2011-01-01,結(jié)束時間是2012-12-13,導(dǎo)出該時間段內(nèi)的所有數(shù)據(jù),如果直接查找 2011-01-01至2012-12-13之間的數(shù)據(jù),因為時間跨度大,一次性檢索數(shù)據(jù)多所以會很慢才 能完成數(shù)據(jù)獲取。
而在本實施例中,會根據(jù)預(yù)先設(shè)定的拆解規(guī)則自動將2011-01-01至2012-12-13 拆分成7天為一個單元的多個小跨度條件如=2011-01-01至2011-01-01,2011-01-08至 2011-01-14等等一直拆解到最后一個時間,如果最后一個單元未滿七天則以實際時間為準。
可以理解,拆解規(guī)則除了是時間拆解之外,也可以是其他的拆解條件,例如將某部 門的檢索任務(wù)拆解為多個子部門或多個部門成員,例如將所有學(xué)校拆解為各個小學(xué),將各 小學(xué)分別拆解為一年級、二年級、三年級等。也可以是將按查詢條件的屬性進行拆解,例如 將職員分為1970年出生的員工、1971年出生的員工和1972年出生的員工等等。
S2:分布式數(shù)據(jù)查詢步驟。在此步驟中,數(shù)據(jù)檢索服務(wù)器根據(jù)拆解后的子查詢語句 進行檢索,并且在檢索完成后,向隊列服務(wù)器注冊狀態(tài)。
查詢解析服務(wù)器通過分布式程序把每個查詢分發(fā)到多臺數(shù)據(jù)檢索服務(wù)器上進行 數(shù)據(jù)檢索。這樣就會把應(yīng)該一個數(shù)據(jù)檢索服務(wù)器承擔(dān)的壓力分解給多臺數(shù)據(jù)檢索服務(wù)器分 擔(dān),檢索時速度會顯著提升。在本實施例中,每臺數(shù)據(jù)檢索服務(wù)器最多只承擔(dān)7天的數(shù)據(jù)檢 索,比承擔(dān)2011-01-01到2012-12-13這2年的數(shù)據(jù)檢索任務(wù),減少了很多壓力,速度就提 高了近100倍。
如圖2所示,如果某個數(shù)據(jù)檢索服務(wù)器出現(xiàn)錯誤,未成完成檢索,則注冊狀態(tài)為未 完成;負責(zé)檢查消息狀態(tài)是否是全部完成的狀態(tài)檢查服務(wù)器發(fā)現(xiàn)未完成狀態(tài),就會向錯誤 處理服務(wù)器發(fā)出沒有全部完成的消息。錯誤處理服務(wù)器向查詢解析服務(wù)器發(fā)出重新發(fā)送請 求。查詢解析服務(wù)器收到重新發(fā)送請求后,根據(jù)請求的內(nèi)容向相應(yīng)的數(shù)據(jù)檢索服務(wù)器重新 發(fā)出出錯的子查詢語句的請求。重新發(fā)送請求中包含出錯的數(shù)據(jù)檢索服務(wù)器標識、組標識 和請求機器標識。
S3 :寫入文件步驟。數(shù)據(jù)檢索完成后,系統(tǒng)會在每臺數(shù)據(jù)檢索服務(wù)器上把數(shù)據(jù)寫成 文件,并向隊列服務(wù)器注冊狀態(tài)為全部完成。
狀態(tài)檢查服務(wù)器檢查消息狀態(tài),在確認全部完成全部文件的寫入時通知文件合并 服務(wù)器抓取文件;在確認未全部完成時通知錯誤處理服務(wù)器,由錯誤處理服務(wù)器通知隊列 服務(wù)器出錯信息,并向查詢解析服務(wù)器發(fā)出重發(fā)請求,返回步驟SI。
S4:合并文件并導(dǎo)出的步驟。等所有數(shù)據(jù)文件寫入完成后,會交由合并文件服務(wù) 器。合并文件服務(wù)器收到狀態(tài)檢查服務(wù)器的消息,根據(jù)消息中的組標識和數(shù)據(jù)檢索服務(wù)器 標識,向相應(yīng)的數(shù)據(jù)檢索服務(wù)器去抓取該組標識下的所有文件并在服務(wù)器端合并所有文 件,之后供用戶下載。合并文件服務(wù)器合并所有的子文件為一個目標文件,最后下載目標文 件到用戶的指定位置。
因為檢索、文件寫入等操作都是分布式的,所以此發(fā)明的文件導(dǎo)出速度快,并且具 有很好的可擴展性。
因為原先屬于一個查詢的數(shù)據(jù)被分解成多個,并同步執(zhí)行,如何保證數(shù)據(jù)正確性, 如何保證數(shù)據(jù)完整性,就成為重要的問題。為此,本發(fā)明利用注冊隊列機制保證數(shù)據(jù)完整 性,利用錯誤處理機制保證數(shù)據(jù)正確性,利用唯一身份標識中的數(shù)據(jù)檢索服務(wù)器標識來保 證橫向擴展多臺服務(wù)時數(shù)據(jù)不會錯亂,橫向擴展還可以保證在很大的數(shù)據(jù)量的基礎(chǔ)上做文 件導(dǎo)出。
查詢解析器發(fā)送請求給云服務(wù)器(數(shù)據(jù)檢索服務(wù)器)進行數(shù)據(jù)檢索的同時也會發(fā) 送一個注冊消息,把請求注冊進隊列服務(wù),注冊信息就作為從請求開始一直到執(zhí)行結(jié)束時 的唯一身份認證,中間處理時可以根據(jù)該身份認證去實時監(jiān)控請求狀態(tài),如果出現(xiàn)異常,錯 誤處理服務(wù)會重新發(fā)送錯誤的請求重新執(zhí)行,這樣就可以保證在分布式導(dǎo)出數(shù)據(jù)時不會因 為某一個服務(wù)出現(xiàn)故障而使導(dǎo)出操作整個失敗,就可以保證數(shù)據(jù)的完整性。
所有子檢索執(zhí)行完成后,隊列服務(wù)器會發(fā)送消息告訴文件合并服務(wù),同時把同一 個查詢拆分的所有子檢索信息發(fā)送給文件合并服務(wù),文件合并時會統(tǒng)一抓取一個源查詢分 解的所有子檢索,同時按照順序合并所有子檢索,就可以保證數(shù)據(jù)的正確性。
如果某一個身份認證的請求重新發(fā)送的次數(shù)超過系統(tǒng)定義的次數(shù),系統(tǒng)會給管理 員發(fā)送一個警報消息,并把異常請求存儲到異常信息隊列中,并停止該異常請求的查詢?nèi)?務(wù),從而結(jié)束查詢?nèi)蝿?wù)。
本發(fā)明具有以下優(yōu)點
1.自動根據(jù)時間條件拆解查詢語句,自動化解析。
2.拆解完后的查詢語句會把各自的數(shù)據(jù)寫入文件,分布式進行。
3.服務(wù)器端進行文件合并,也就是云端操作。
4.導(dǎo)出上百萬條數(shù)據(jù)到文件中只需幾秒左右。
本發(fā)明所述方法中,分解完查詢后可以分布在不同服務(wù)器上進行文件寫入,之后 統(tǒng)一合并。由于屬于分布式查詢合并文件,所以可以在云存儲系統(tǒng)的基礎(chǔ)上合并幾個服務(wù) 器上的數(shù)據(jù),就會把壓力分攤。
本發(fā)明使快速的分布式導(dǎo)出云存儲數(shù)據(jù)得以實現(xiàn),并且可以支持橫向擴展,可以 快速安全地導(dǎo)出大批量數(shù)據(jù)到文件中。
上面對本發(fā)明所提供的大數(shù)據(jù)分布式文件導(dǎo)出方法進行了詳細的說明。對本領(lǐng)域的一般技術(shù)人員而言,在不背離本發(fā)明實質(zhì)精神的前提下對它所做的任何顯而易見的改動,都將構(gòu)成對本發(fā)明專利權(quán)的侵犯,將承擔(dān)相應(yīng)的法律責(zé) 任。
權(quán)利要求
1.ー種大數(shù)據(jù)分布式文件導(dǎo)出方法,用于由查詢服務(wù)器、多個數(shù)據(jù)檢索服務(wù)器、文件合并服務(wù)器相互連接形成的查詢系統(tǒng),其特征在于包括以下步驟 51:拆解查詢語句步驟 所述查詢服務(wù)器根據(jù)預(yù)定的條件,將源查詢語句分拆解析成若干個子查詢語句,分發(fā)給所述多個數(shù)據(jù)檢索服務(wù)器; 52:分布式數(shù)據(jù)查詢步驟 接收到所述子查詢語句的所述數(shù)據(jù)檢索服務(wù)器,進行并行查詢; 53:寫入文件步驟 所述數(shù)據(jù)檢索服務(wù)器將子檢索結(jié)果并行寫入子文件; S4:合并文件并導(dǎo)出的步驟 所述文件合并服務(wù)器根據(jù)所述預(yù)定條件,抓取所述子文件并將所述子文件進行合井,然后導(dǎo)出。
2.如權(quán)利要求1所述的大數(shù)據(jù)分布式文件導(dǎo)出方法,其特征在于 所述查詢解析服務(wù)器將所述子查詢語句發(fā)送給所述數(shù)據(jù)檢索服務(wù)器,同時向隊列服務(wù)器發(fā)送注冊消息。
3.如權(quán)利要求2所述的大數(shù)據(jù)分布式文件導(dǎo)出方法,其特征在于 注冊信息中包含組標識和請求機器標識、數(shù)據(jù)檢索服務(wù)器標識, 其中,所述組標識是表示用于查詢同一個源查詢語句的多個身份認證標識;所述請求機器標識表示發(fā)出子查詢語句的查詢解析服務(wù)器;所述數(shù)據(jù)檢索服務(wù)器標識表示收到并執(zhí)行子查詢語句的數(shù)據(jù)檢索服務(wù)器。
4.如權(quán)利要求2所述的大數(shù)據(jù)分布式文件導(dǎo)出方法,其特征在于 所述數(shù)據(jù)檢索服務(wù)器在完成數(shù)據(jù)檢索后,把數(shù)據(jù)寫入文件,并向所述隊列服務(wù)器注冊狀態(tài)。
5.如權(quán)利要求1或4所述的大數(shù)據(jù)分布式文件導(dǎo)出方法,其特征在于 狀態(tài)檢查服務(wù)器檢查消息狀態(tài),在確認所有所述數(shù)據(jù)檢索服務(wù)器完成文件的寫入?yún)?,通知文件合并服?wù)器抓取文件; 在確認未全部完成時,通知錯誤處理服務(wù)器,由錯誤處理服務(wù)器向所述查詢解析服務(wù)器發(fā)出重發(fā)請求,返回步驟SI。
6.如權(quán)利要求1所述的大數(shù)據(jù)分布式文件導(dǎo)出方法,其特征在于 合并文件服務(wù)器收到所述狀態(tài)檢查服務(wù)器的消息,向相應(yīng)的數(shù)據(jù)檢索服務(wù)器去抓取該組標識下的所有文件并在服務(wù)器端合并所有文件。
7.如權(quán)利要求1所述的大數(shù)據(jù)分布式文件導(dǎo)出方法,其特征在于 所述狀態(tài)檢查服務(wù)器的消息中包含組標識和數(shù)據(jù)檢索服務(wù)器標識。
8.如權(quán)利要求1所述的大數(shù)據(jù)分布式文件導(dǎo)出方法,其特征在于 所述查詢解析器發(fā)送請求給所述數(shù)據(jù)檢索服務(wù)器進行數(shù)據(jù)檢索的同時也會發(fā)送注冊消息給所述隊列服務(wù)服務(wù)器,將所述注冊信息作為從請求開始一直到執(zhí)行結(jié)束時的唯一身份認證,井根據(jù)所述注冊信息去實時監(jiān)控所述請求的狀態(tài)。
全文摘要
本發(fā)明公開一種大數(shù)據(jù)分布式文件導(dǎo)出方法,包括以下步驟查詢服務(wù)器根據(jù)預(yù)定的條件,將源查詢語句分拆解析成若干個子查詢語句,分發(fā)給多個數(shù)據(jù)檢索服務(wù)器;接收到子查詢語句的數(shù)據(jù)檢索服務(wù)器,進行并行查詢;數(shù)據(jù)檢索服務(wù)器將子檢索結(jié)果并行寫入子文件;文件合并服務(wù)器根據(jù)預(yù)定條件,抓取子文件并將子文件進行合并,然后導(dǎo)出。本發(fā)明采用分布式方式導(dǎo)出大量數(shù)據(jù),可以保證數(shù)據(jù)的完整及正確性,并且可以支持橫向擴展,從而快速安全地導(dǎo)出大批量數(shù)據(jù)到文件中。
文檔編號G06F17/30GK103034735SQ201210575868
公開日2013年4月10日 申請日期2012年12月26日 優(yōu)先權(quán)日2012年12月26日
發(fā)明者吳為民, 武繼孔, 靳山虎 申請人:北京訊鳥軟件有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1