欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

一種基于MPP引擎的跨數(shù)據(jù)中心快速查詢方法和系統(tǒng)與流程

文檔序號(hào):11519770閱讀:406來(lái)源:國(guó)知局
本發(fā)明涉及一種基于mpp(massivelyparallelprocessor,大規(guī)模并行處理)引擎的跨數(shù)據(jù)中心快速查詢技術(shù),特別是涉及元數(shù)據(jù)統(tǒng)一標(biāo)識(shí),實(shí)現(xiàn)數(shù)據(jù)可靠快速傳輸,優(yōu)化查詢分析引擎和支持多種結(jié)果導(dǎo)出方式的關(guān)鍵技術(shù),屬于大數(shù)據(jù)檢索領(lǐng)域。
背景技術(shù)
::隨著網(wǎng)絡(luò)和信息技術(shù)的不斷普及,人類產(chǎn)生的數(shù)據(jù)量正在呈指數(shù)級(jí)增長(zhǎng)。大約每?jī)赡攴环?,根?jù)監(jiān)測(cè),這個(gè)速度在2020年之前會(huì)繼續(xù)保持下去。這意味著人類在最近兩年產(chǎn)生的數(shù)據(jù)量相當(dāng)于之前產(chǎn)生的全部數(shù)據(jù)量??深A(yù)計(jì),到2020年全球數(shù)據(jù)將達(dá)到40zb。大量新數(shù)據(jù)源的出現(xiàn)則導(dǎo)致了非結(jié)構(gòu)化、半結(jié)構(gòu)化數(shù)據(jù)爆發(fā)式的增長(zhǎng)。信息數(shù)據(jù)的單位已達(dá)到tb-pb-eb-zb的級(jí)別。這些由我們創(chuàng)造的信息背后產(chǎn)生的這些數(shù)據(jù)早已經(jīng)遠(yuǎn)遠(yuǎn)超越了目前人力所能處理的范疇。如何管理和使用這些數(shù)據(jù),逐漸成為一個(gè)新的挑戰(zhàn)。在數(shù)據(jù)增長(zhǎng)的同時(shí),越來(lái)越多的企業(yè)依賴于海量數(shù)據(jù)分析結(jié)果來(lái)進(jìn)行關(guān)鍵業(yè)務(wù)決策。大規(guī)模數(shù)據(jù)下的交互式/離線數(shù)據(jù)分析,是實(shí)施數(shù)據(jù)分析和數(shù)據(jù)探索的主要途徑,具有廣泛的商業(yè)前景。在大數(shù)據(jù)存儲(chǔ)方面,出現(xiàn)了多種以分布式存儲(chǔ)系統(tǒng)和nosql數(shù)據(jù)庫(kù)為基礎(chǔ)的解決方案;分布式存儲(chǔ)系統(tǒng),支持在多臺(tái)存儲(chǔ)服務(wù)器上分擔(dān)存儲(chǔ)負(fù)荷和數(shù)據(jù)保存多副本,利用高性能的計(jì)算網(wǎng)絡(luò)提高傳輸速度和可靠性,利用位置服務(wù)器定位存儲(chǔ)信息,它不但提高了系統(tǒng)的可靠性、可用性和存取效率,還易于擴(kuò)展。nosql數(shù)據(jù)庫(kù),即非關(guān)系型數(shù)據(jù)庫(kù),包括key-value型(hbase)數(shù)據(jù)庫(kù)、文檔型(monogodb)數(shù)據(jù)庫(kù)、圖型(neo4j)數(shù)據(jù)庫(kù)。在數(shù)據(jù)檢索分析方面出現(xiàn)了側(cè)重不同應(yīng)用場(chǎng)景的檢索引擎,主要包括:1)hive?;趆adoop的一個(gè)數(shù)據(jù)倉(cāng)庫(kù)工具,它提供了一些列工具,可以用來(lái)進(jìn)行數(shù)據(jù)提取轉(zhuǎn)換加載(etl),可以將結(jié)構(gòu)化的數(shù)據(jù)文件映射為一張數(shù)據(jù)庫(kù)表,并提供完整的sql(structuredquerylanguage,結(jié)構(gòu)化查詢語(yǔ)言)查詢功能,為方便用戶使用map-reduce而封裝了一層sql。hive架構(gòu)主要包括如下組件:cli(commandlineinterface)、jdbc/odbc、thriftserver、webgui、metastore和driver(complier、optimizer和executor),這些組件可以分為兩大類:服務(wù)端組件和客戶端組件。服務(wù)端組件:driver組件,該組件包括complier、optimizer和executor,它的作用是將hiveql(類sql)語(yǔ)句進(jìn)行解析、編譯優(yōu)化,生成執(zhí)行計(jì)劃,然后調(diào)用底層mapreduce計(jì)算框架;metastore組件,元數(shù)據(jù)服務(wù)組件,該組件存儲(chǔ)hive元數(shù)據(jù),存儲(chǔ)在關(guān)系數(shù)據(jù)庫(kù)里,支持的關(guān)系數(shù)據(jù)庫(kù)包括derby、mysql,元數(shù)據(jù)對(duì)于hive十分重要,因此支持把metastore服務(wù)獨(dú)立安裝到遠(yuǎn)程的服務(wù)器集群中,從而解耦hive服務(wù)和metastore服務(wù),保證系統(tǒng)的健壯性;thrift服務(wù),thrift是facebook開(kāi)發(fā)的一個(gè)軟件框架,hive集成了該服務(wù),因此支持多種的編程語(yǔ)言調(diào)用hive接口??蛻舳私M件:cli(commandlineinterface),即命令行接口;thrift客戶端,用于支持多種hive架構(gòu)的客戶端接口,包括jdbc和odbc接口;webgui,支持通過(guò)網(wǎng)頁(yè)的方式訪問(wèn)hive所提供的服務(wù)。hive和關(guān)系數(shù)據(jù)庫(kù)存儲(chǔ)文件的系統(tǒng)不同,hive使用的是hadoop的hdfs(hadoop的分布式文件系統(tǒng)),關(guān)系數(shù)據(jù)庫(kù)則是服務(wù)器本地的文件系統(tǒng);hive使用的計(jì)算模型是mapreduce,而關(guān)系數(shù)據(jù)庫(kù)則是自己設(shè)計(jì)的計(jì)算模型;關(guān)系數(shù)據(jù)庫(kù)適用于實(shí)時(shí)查詢的業(yè)務(wù),hive則適用于海量數(shù)據(jù)數(shù)據(jù)挖掘;由于繼承自hadoop,hive易于擴(kuò)展存儲(chǔ)規(guī)模和計(jì)算能力,而關(guān)系數(shù)據(jù)庫(kù)不易擴(kuò)展。由于hive采用了sql,它的問(wèn)題域比map-reduce更窄,因?yàn)楹芏鄦?wèn)題,無(wú)法通過(guò)sql表達(dá),比如一些數(shù)據(jù)挖掘算法,推薦算法、圖像識(shí)別算法等,這些仍只能通過(guò)編寫(xiě)map-reduce完成。2)impala。impala是架構(gòu)于hadoop之上的開(kāi)源、高并發(fā)的mpp查詢引擎,被廣泛應(yīng)用于各種行業(yè)。impala是完全集成的,用以平衡hadoop的靈活性和可擴(kuò)展性,為bi/數(shù)據(jù)分析師提供低延遲、高并發(fā)的以讀為主的查詢。它將傳統(tǒng)分析數(shù)據(jù)庫(kù)的sql支持和多用戶性能與hadoop的靈活性和可擴(kuò)展性結(jié)合起來(lái),它通過(guò)利用hdfs、hbase、metastore、yarn、sentry等標(biāo)準(zhǔn)組件能夠讀取大多數(shù)廣泛使用的文件格式比如parquet、avro、rcfile來(lái)維護(hù)hadoop的靈活性;為了降低延遲,避免利用mr或者讀遠(yuǎn)程數(shù)據(jù),基于負(fù)責(zé)查詢執(zhí)行所有方面、作為hadoop基礎(chǔ)設(shè)施一部分運(yùn)行于各臺(tái)服務(wù)器上的deamon進(jìn)程實(shí)現(xiàn)了一個(gè)分布式架構(gòu)。impala是海量并發(fā)的查詢執(zhí)行引擎,運(yùn)行在現(xiàn)存hadoop集群的上百臺(tái)機(jī)器上。與傳統(tǒng)數(shù)據(jù)庫(kù)不同,與底層存儲(chǔ)引擎解耦。impala由三種服務(wù)構(gòu)成:impalad、statestored和catalogd。impalad(impaladaemonservice),接收客戶端查詢請(qǐng)求并生成查詢計(jì)劃,同時(shí)執(zhí)行從其他daemon發(fā)來(lái)的單個(gè)執(zhí)行片段。對(duì)于某一查詢,作為第一角色管理的daemon稱為協(xié)調(diào)者,impalad角色功能等同,有助于容錯(cuò)和負(fù)載均衡,可部署在集群中運(yùn)行datanode進(jìn)程的所有機(jī)器上,可允許impala利用數(shù)據(jù)本地化而不必通過(guò)網(wǎng)絡(luò)傳輸即可在文件系統(tǒng)中讀取數(shù)據(jù)塊。statestored是impala的元數(shù)據(jù)訂閱-發(fā)布服務(wù),它是單一實(shí)例,將集群元數(shù)據(jù)傳播到所有的impalad進(jìn)程。catalogd,impala的目錄資源庫(kù)和元數(shù)據(jù)訪問(wèn)網(wǎng)關(guān),通過(guò)catalogd,impalad可執(zhí)行ddl命令且與外部元數(shù)據(jù)存儲(chǔ)如hivemetastore同步,系統(tǒng)目錄的改變將由statestored廣播。技術(shù)實(shí)現(xiàn)要素:本發(fā)明的主要目的是在基于mpp引擎之上,實(shí)現(xiàn)跨數(shù)據(jù)中心的快速查詢,采用統(tǒng)一的元數(shù)據(jù)標(biāo)識(shí),依靠數(shù)據(jù)可靠快速傳輸實(shí)現(xiàn)跨數(shù)據(jù)中心快速查詢,同時(shí)優(yōu)化查詢分析引擎和支持多種結(jié)果導(dǎo)出方式,提升查詢效率,有效解決跨數(shù)據(jù)中心的查詢問(wèn)題。本發(fā)明采用的技術(shù)方案如下:一種基于mpp引擎的跨數(shù)據(jù)中心快速查詢方法,其步驟包括:1)將不同mpp引擎中的數(shù)據(jù)進(jìn)行統(tǒng)一標(biāo)記并存儲(chǔ)到元數(shù)據(jù)中,保證元數(shù)據(jù)在全局中心節(jié)點(diǎn)和各數(shù)據(jù)分中心節(jié)點(diǎn)的一致性;2)全局中心節(jié)點(diǎn)接收查詢請(qǐng)求并對(duì)其進(jìn)行語(yǔ)法解析,解析成功后生成每個(gè)數(shù)據(jù)分中心節(jié)點(diǎn)的查詢請(qǐng)求并將其發(fā)送到對(duì)應(yīng)的數(shù)據(jù)分中心節(jié)點(diǎn);3)各數(shù)據(jù)分中心節(jié)點(diǎn)接收查詢請(qǐng)求并對(duì)其進(jìn)行語(yǔ)法解析,通過(guò)元數(shù)據(jù)的相應(yīng)mpp引擎進(jìn)行查詢,查詢成功后將數(shù)據(jù)傳輸給全局中心節(jié)點(diǎn);4)全局中心節(jié)點(diǎn)接收到所有數(shù)據(jù)分中心節(jié)點(diǎn)回傳的數(shù)據(jù)后,將數(shù)據(jù)存儲(chǔ)到底層存儲(chǔ)引擎;5)全局中心節(jié)點(diǎn)利用mpp引擎對(duì)數(shù)據(jù)分中心節(jié)點(diǎn)返回的數(shù)據(jù)進(jìn)行快速查詢,并輸出查詢結(jié)果。進(jìn)一步地,步驟1)利用hive元數(shù)據(jù)組件將不同mpp引擎中的數(shù)據(jù)以數(shù)據(jù)表屬性的方式統(tǒng)一存儲(chǔ)到元數(shù)據(jù)中。進(jìn)一步地,步驟2)中若解析失敗,則返回語(yǔ)法錯(cuò)誤。進(jìn)一步地,步驟3)中若查詢失敗且沒(méi)有超過(guò)重查次數(shù),則進(jìn)行重查,若超過(guò)重查次數(shù),則返回查詢錯(cuò)誤。進(jìn)一步地,步驟3)中若數(shù)據(jù)傳輸成功,則數(shù)據(jù)分中心節(jié)點(diǎn)結(jié)束本次查詢,若傳輸失敗且沒(méi)有超過(guò)重傳次數(shù),則進(jìn)行重傳,否則返回傳輸錯(cuò)誤。進(jìn)一步地,步驟3)中各數(shù)據(jù)分中心節(jié)點(diǎn)在接受查詢請(qǐng)求后,通過(guò)jdbc/odbc在內(nèi)部執(zhí)行查詢,將查詢結(jié)果經(jīng)過(guò)http批量返回到全局中心節(jié)點(diǎn)。進(jìn)一步地,步驟5)中若全局中心節(jié)點(diǎn)查詢失敗且沒(méi)有超過(guò)重查次數(shù),則進(jìn)行重查,若超過(guò)重查次數(shù),則返回查詢錯(cuò)誤。進(jìn)一步地,步驟5)支持將查詢結(jié)果以多種方式導(dǎo)出保存,包括:以csv文件格式導(dǎo)出到本地磁盤(pán)中,并支持指定分隔符;導(dǎo)出到分布式文件系統(tǒng)中,并支持指定分隔符;支持導(dǎo)入到多種存儲(chǔ)引擎和nosql數(shù)據(jù)庫(kù)中。一種采用上述方法的基于mpp引擎的跨數(shù)據(jù)中心快速查詢系統(tǒng),其包括:元數(shù)據(jù)模塊,用于將不同mpp引擎中的數(shù)據(jù)進(jìn)行統(tǒng)一標(biāo)記并存儲(chǔ)到元數(shù)據(jù)中,保證元數(shù)據(jù)在全局中心節(jié)點(diǎn)和各數(shù)據(jù)分中心節(jié)點(diǎn)的一致性;數(shù)據(jù)傳輸模塊,負(fù)責(zé)跨數(shù)據(jù)中心的數(shù)據(jù)傳輸,其中包括全局中心節(jié)點(diǎn)下發(fā)查詢請(qǐng)求和數(shù)據(jù)分中心節(jié)點(diǎn)節(jié)點(diǎn)返回查詢數(shù)據(jù);查詢引擎模塊,負(fù)責(zé)各數(shù)據(jù)中心的具體查詢?nèi)蝿?wù),通過(guò)兼容多種mpp引擎實(shí)現(xiàn)透明查詢,通過(guò)重查機(jī)制屏蔽網(wǎng)絡(luò)和硬件問(wèn)題;結(jié)果導(dǎo)出模塊,負(fù)責(zé)將查詢結(jié)果導(dǎo)出并保存。進(jìn)一步地,所述結(jié)果導(dǎo)出模塊支持將查詢結(jié)果以多種方式導(dǎo)出并保存,包括:以csv文件格式導(dǎo)出到本地磁盤(pán)中,并支持指定分隔符;導(dǎo)出到分布式文件系統(tǒng)中,并支持指定分隔符;支持導(dǎo)入到多種存儲(chǔ)引擎和nosql數(shù)據(jù)庫(kù)中。本發(fā)明的主要?jiǎng)?chuàng)新點(diǎn)及有益效果如下:1)在元數(shù)據(jù)統(tǒng)一標(biāo)識(shí)方面,基于hive元數(shù)據(jù)組件,將不同存儲(chǔ)引擎的數(shù)據(jù)以數(shù)據(jù)表屬性的方式統(tǒng)一存儲(chǔ)到元數(shù)據(jù)中,保證元數(shù)據(jù)全局一致性。2)在跨數(shù)據(jù)中心傳輸方面,各數(shù)據(jù)中心獨(dú)立存儲(chǔ)、處理本中心內(nèi)數(shù)據(jù),同時(shí)實(shí)現(xiàn)多數(shù)據(jù)中心關(guān)聯(lián)查詢。利用確認(rèn)重發(fā)機(jī)制保證數(shù)據(jù)可靠高速傳輸,提高查詢效率。3)在查詢引擎方面,本發(fā)明兼容多種mpp引擎,使存儲(chǔ)于不同系統(tǒng)中的數(shù)據(jù)實(shí)現(xiàn)聯(lián)合查詢。4)在導(dǎo)出方面,本發(fā)明支持指定查詢結(jié)果導(dǎo)出格式,減少后續(xù)數(shù)據(jù)處理分析時(shí)間。結(jié)果由查詢結(jié)束后直接導(dǎo)出,避免大量中間過(guò)程的磁盤(pán)io操作,提高查詢效率。附圖說(shuō)明圖1為元數(shù)據(jù)統(tǒng)一標(biāo)識(shí)流程圖;圖2為跨數(shù)據(jù)中心傳輸數(shù)據(jù)模型示意圖;圖3為查詢分析流程圖;圖4為結(jié)果模型示意圖。具體實(shí)施方式下面通過(guò)具體實(shí)施例和附圖,對(duì)本發(fā)明做進(jìn)一步說(shuō)明。本發(fā)明的內(nèi)容主要包括以下幾個(gè)方面。第一,元數(shù)據(jù)標(biāo)識(shí)上,本發(fā)明采用統(tǒng)一的元數(shù)據(jù)標(biāo)識(shí),利用hive元數(shù)據(jù)組件將不同mpp引擎中的數(shù)據(jù)進(jìn)行統(tǒng)一標(biāo)記。包括數(shù)據(jù)表所屬存儲(chǔ)結(jié)構(gòu)、存儲(chǔ)類型等。并利用對(duì)應(yīng)mpp引擎進(jìn)行快速查詢。本發(fā)明所述的不同mpp引擎包括hive、spark、hbase等,使用mpp的方式將上述引擎統(tǒng)一整合在了一起,集中調(diào)度,并采用mpp的方式使用。第二,數(shù)據(jù)傳輸上,本發(fā)明通過(guò)確認(rèn)、重傳等機(jī)制提供高效可靠的數(shù)據(jù)傳輸。在數(shù)據(jù)中心內(nèi)部,通過(guò)jdbc/odbc(jdbc為javadatabaseconnectivity,java數(shù)據(jù)庫(kù)連接,odbc為opendatabaseconnectivity,開(kāi)放數(shù)據(jù)庫(kù)連接)等進(jìn)行查詢,實(shí)現(xiàn)批量數(shù)據(jù)傳輸;通過(guò)連接池實(shí)現(xiàn)并行快速查詢。在全局中心和數(shù)據(jù)分中心之間,利用http進(jìn)行快速數(shù)據(jù)傳輸,并通過(guò)確認(rèn)和重傳機(jī)制保證數(shù)據(jù)準(zhǔn)確性和可靠性,同時(shí)提高物理網(wǎng)絡(luò)容錯(cuò)性。第三,查詢分析引擎上,本發(fā)明通過(guò)優(yōu)化查詢計(jì)劃樹(shù)等機(jī)制實(shí)現(xiàn)高效快速查詢。在全局中心(或稱全局節(jié)點(diǎn)、全局中心節(jié)點(diǎn)),進(jìn)行查詢解析,驗(yàn)證查詢語(yǔ)法是否正確,盡快發(fā)現(xiàn)無(wú)效查詢;并重新生成每個(gè)數(shù)據(jù)中心對(duì)應(yīng)的查詢語(yǔ)法,并行分發(fā)給相應(yīng)數(shù)據(jù)分中心(或稱數(shù)據(jù)分中心節(jié)點(diǎn));在數(shù)據(jù)分中心接收查詢請(qǐng)求后,語(yǔ)法解析組件進(jìn)行語(yǔ)法分析,生成相應(yīng)查詢計(jì)劃,利用不同mpp引擎進(jìn)行查詢,返回查詢結(jié)果。第四,結(jié)果導(dǎo)出。本發(fā)明支持多種數(shù)據(jù)導(dǎo)出方式,以便于后續(xù)對(duì)結(jié)果數(shù)據(jù)的查看分析等。主要包括,支持以csv文件格式導(dǎo)出到本地磁盤(pán)中,并支持指定分隔符;支持導(dǎo)出到分布式文件系統(tǒng)(hdfs)中,并支持指定分隔符;支持導(dǎo)入到多種存儲(chǔ)引擎和nosql數(shù)據(jù)庫(kù)中。在基于mpp的跨數(shù)據(jù)中心快速查詢技術(shù)的設(shè)計(jì)上,本發(fā)明包括元數(shù)據(jù)模塊,數(shù)據(jù)傳輸模塊,查詢引擎模塊和結(jié)果導(dǎo)出模塊。元數(shù)據(jù)模塊,在hive元數(shù)據(jù)基礎(chǔ)上,增加統(tǒng)一標(biāo)識(shí),并實(shí)現(xiàn)持久化存儲(chǔ),同時(shí)保證元數(shù)據(jù)在全局節(jié)點(diǎn)和各數(shù)據(jù)中心的一致性。數(shù)據(jù)傳輸模塊,負(fù)責(zé)跨數(shù)據(jù)中心的數(shù)據(jù)傳輸,其中包括全局中心下發(fā)查詢請(qǐng)求和數(shù)據(jù)分中心節(jié)點(diǎn)返回查詢數(shù)據(jù)。查詢引擎模塊,負(fù)責(zé)各數(shù)據(jù)中心的具體查詢?nèi)蝿?wù),通過(guò)兼容多種mpp引擎實(shí)現(xiàn)透明查詢;通過(guò)重查機(jī)制屏蔽網(wǎng)絡(luò)和硬件問(wèn)題。結(jié)果導(dǎo)出模塊,負(fù)責(zé)結(jié)果數(shù)據(jù)重定向,通過(guò)指定重定向方式,將查詢結(jié)果保存至存儲(chǔ)系統(tǒng)中,便于后續(xù)數(shù)據(jù)再處理。其中重定向是指將結(jié)果的數(shù)據(jù)流按照要求導(dǎo)入到新的存儲(chǔ)的位置。其實(shí)現(xiàn)方式取決于程序?qū)崿F(xiàn),可以是文件的形式,也可以是一個(gè)數(shù)據(jù)流。圖1給出了元數(shù)據(jù)統(tǒng)一標(biāo)識(shí)流程圖,如圖所示,主要包括以下核心步驟。其中庫(kù)是對(duì)數(shù)據(jù)的邏輯抽象,與傳統(tǒng)關(guān)系型數(shù)據(jù)庫(kù)中的數(shù)據(jù)庫(kù)(database)是相同、等價(jià)的;表是指?jìng)鹘y(tǒng)意義上的關(guān)系型二維表,即關(guān)系型數(shù)據(jù)中的table。(1)根據(jù)數(shù)據(jù)庫(kù)名稱獲取系統(tǒng)內(nèi)唯一庫(kù)標(biāo)識(shí),即db_id。(2)若庫(kù)存在則繼續(xù)獲取表標(biāo)識(shí),如果庫(kù)不存在,返回語(yǔ)法錯(cuò)誤。(3)根據(jù)db_id和表名獲取系統(tǒng)內(nèi)唯一表標(biāo)識(shí),即tbl_id,若表不存在返回語(yǔ)法錯(cuò)誤。(4)根據(jù)tbl_id獲取表屬性,根據(jù)store屬性字段的屬性值選擇不同mpp查詢引擎。其中store是內(nèi)部的一個(gè)標(biāo)識(shí),用于識(shí)別存儲(chǔ)的類型,store可以譯為存儲(chǔ)類型。圖2給出了跨數(shù)據(jù)中心傳輸數(shù)據(jù)模型示意圖。通過(guò)全局中心下發(fā)查詢請(qǐng)求,各數(shù)據(jù)中心在接受查詢請(qǐng)求后,通過(guò)jdbc/odbc在本中心內(nèi)部執(zhí)行查詢,將查詢結(jié)果經(jīng)過(guò)http批量返回到全局中心節(jié)點(diǎn)。圖3給出了查詢分析流程圖,如圖所示,主要包括以下核心步驟:(1)全局中心節(jié)點(diǎn)在接收查詢請(qǐng)求后,進(jìn)行語(yǔ)法解析。(2)若解析成功,則重新生成每個(gè)數(shù)據(jù)分中心的查詢請(qǐng)求并將該請(qǐng)求發(fā)送到對(duì)應(yīng)數(shù)據(jù)分中心,并等待回傳數(shù)據(jù)。若解析失敗,則返回語(yǔ)法錯(cuò)誤。(3)數(shù)據(jù)分中心節(jié)點(diǎn)接收查詢請(qǐng)求后,進(jìn)行語(yǔ)法解析,通過(guò)元數(shù)據(jù)信息的相應(yīng)mpp引擎進(jìn)行查詢,若查詢成功則將數(shù)據(jù)返回給全局節(jié)點(diǎn),若查詢失敗且沒(méi)有超過(guò)重查次數(shù),則進(jìn)行重查,若超過(guò)重查次數(shù),則返回查詢失敗(返回查詢錯(cuò)誤)。(4)若數(shù)據(jù)傳輸成功,則數(shù)據(jù)分中心節(jié)點(diǎn)結(jié)束本次查詢,若傳輸失敗且沒(méi)有超過(guò)重傳次數(shù),則進(jìn)行重傳,否則返回傳輸失敗(返回傳輸錯(cuò)誤)。(5)若全局節(jié)點(diǎn)在規(guī)定時(shí)間內(nèi)接收到所有分中心回傳數(shù)據(jù),則將數(shù)據(jù)存儲(chǔ)到底層存儲(chǔ)引擎,否則返回查詢錯(cuò)誤。其中底層存儲(chǔ)引擎是指本地的存儲(chǔ)組件(服務(wù)),即部署在本地的hdfs組件。(6)全局節(jié)點(diǎn)利用mpp引擎對(duì)返回?cái)?shù)據(jù)進(jìn)行快速查詢,若查詢成功則將結(jié)果返回,若查詢失敗且沒(méi)有超過(guò)重查次數(shù),則進(jìn)行重查,若超過(guò)重查次數(shù),則返回查詢失敗(返回查詢錯(cuò)誤)。上述步驟(3)中的查詢是在分中心,涉及到的數(shù)據(jù)是該分中心的數(shù)據(jù);步驟(6)是將各個(gè)分中心的數(shù)據(jù)匯總后的再次處理,涉及到的數(shù)據(jù)來(lái)自各個(gè)分中心,是一個(gè)匯總的操作。這兩者執(zhí)行的層次不同,一個(gè)范圍較小,一個(gè)范圍較大。另外,兩者執(zhí)行的內(nèi)容也不同,比如一個(gè)統(tǒng)計(jì)結(jié)果,每個(gè)分中心返回分中心的統(tǒng)計(jì)結(jié)果,即步驟(3);但是需要在匯總點(diǎn)再累加一次才能返回最終的結(jié)果,即步驟(6)。上述重查次數(shù)、重傳次數(shù)可使用配置文件設(shè)定,即在配置文件中預(yù)先設(shè)定合適的值。圖4給出了導(dǎo)出模型示意圖。在查詢結(jié)束后,本發(fā)明支持將查詢結(jié)果以多種方式導(dǎo)出保存,包括以csv文件格式導(dǎo)出到本地磁盤(pán)中,并支持指定分隔符;支持導(dǎo)出到分布式文件系統(tǒng)(hdfs)中,并支持指定分隔符;支持導(dǎo)入到多種存儲(chǔ)引擎和nosql數(shù)據(jù)庫(kù)中。以上實(shí)施例僅用以說(shuō)明本發(fā)明的技術(shù)方案而非對(duì)其進(jìn)行限制,本領(lǐng)域的普通技術(shù)人員可以對(duì)本發(fā)明的技術(shù)方案進(jìn)行修改或者等同替換,而不脫離本發(fā)明的精神和范圍,本發(fā)明的保護(hù)范圍應(yīng)以權(quán)利要求書(shū)所述為準(zhǔn)。當(dāng)前第1頁(yè)12當(dāng)前第1頁(yè)12
當(dāng)前第1頁(yè)1 2 
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1
阳泉市| 合肥市| 无锡市| 宜良县| 两当县| 梧州市| 呼和浩特市| 南乐县| 曲水县| 吉林省| 黄浦区| 石狮市| 彩票| 长海县| 上饶县| 南宫市| 中山市| 桑植县| 孝义市| 内乡县| 枞阳县| 香格里拉县| 公主岭市| 鄂托克前旗| 华池县| 吉安县| 太保市| 兖州市| 双辽市| 儋州市| 白朗县| 临夏市| 乡城县| 郁南县| 宜兴市| 金沙县| 资溪县| 江陵县| 磐石市| 文水县| 广宗县|