面向水利數(shù)據(jù)整合與共享的索引方法
【專利摘要】本發(fā)明提供一種面向水利數(shù)據(jù)整合與共享的索引方法,包括:S1:根據(jù)時間粒度對保存的數(shù)據(jù)進行劃分,定義不同粒度層次,并對時間粒度映射時間量化值,并且為數(shù)據(jù)進行對象分類,定義對象分類編碼,其中:所述保存的數(shù)據(jù)包括按時間采集的水利數(shù)據(jù)和按地區(qū)采集的水利數(shù)據(jù);S2:對分類后的數(shù)據(jù)按照索引機制建立實時索引和歷史索引;S3:對建立索引機制后的數(shù)據(jù)進行查詢,當按坐標查詢時,轉(zhuǎn)向步驟S4,當按對象分類查詢時,轉(zhuǎn)向步驟S5;S4:根據(jù)坐標與索引中的外包矩形關(guān)系進行查詢;S5:根據(jù)分類編碼序列與索引中的序列編碼進行按位“與或”運算來查詢;S6:若要繼續(xù)查詢新的數(shù)據(jù),則轉(zhuǎn)向步驟S4,否則結(jié)束。本發(fā)明提供方法能夠提高水利數(shù)據(jù)的檢索效率。
【專利說明】面向水利數(shù)據(jù)整合與共享的索引方法
【技術(shù)領域】
[0001] 本發(fā)明涉及水利信息化監(jiān)測【技術(shù)領域】,特別涉及一種面向水利數(shù)據(jù)整合與共享的 索引方法。
【背景技術(shù)】
[0002] 隨著水利信息化的發(fā)展,水利領域長期的業(yè)務實踐和天地一體的觀測體系形成了 日益豐富的水利大數(shù)據(jù)。數(shù)據(jù)的整合與共享可以使水利行業(yè)各部門充分發(fā)揮水利大數(shù)據(jù)的 綜合效益,減少不必要的數(shù)據(jù)采集等重復勞動及相應費用,實現(xiàn)水利業(yè)務協(xié)同,提高工作效 率,改善工作水平。目前,鑒于水利行業(yè)應用參差不齊、地區(qū)間發(fā)展不平衡、標準規(guī)范不足以 及數(shù)據(jù)中心初見端倪等現(xiàn)狀,各個相關(guān)水利部門迫切需要實現(xiàn)水利數(shù)據(jù)的整合與共享。
[0003] 目前,水利領域中的數(shù)據(jù)采取多點獲取、分布存儲、分散采集的方式,在實施數(shù)據(jù) 共享的過程中,高效查詢是提高數(shù)據(jù)共享效率的關(guān)鍵。水利數(shù)據(jù)是典型的時空數(shù)據(jù),并具有 海量性、分布性、自治性等特點,要實現(xiàn)面向水利數(shù)據(jù)整合與共享的索引方法,需要結(jié)合傳 統(tǒng)空間索引及分布式技術(shù),另外還必須解決以下幾個問題:
[0004] 1)數(shù)據(jù)的周期性、區(qū)域性查詢問題。在水利行業(yè)應用中,對時空數(shù)據(jù)的查詢除了基 本的點查詢、隨機范圍查詢等,還需要考慮按照周期、區(qū)域等水利行業(yè)常用時空范圍對數(shù)據(jù) 進行查詢。例如,在時間上按月、旬、日去查詢數(shù)據(jù),在空間上按省、市或者流域、子流域等范 圍去查詢。這類查詢往往由于范圍邊界無法用簡單的坐標描述,使得傳統(tǒng)空間索引方法對 其處理效率不高。
[0005] 2)對象數(shù)據(jù)查詢問題。水利部門為了數(shù)據(jù)整合,計劃將各流域數(shù)據(jù)按照水利領域 要素分類,并將數(shù)據(jù)以面向?qū)ο蟮哪P徒M織,數(shù)據(jù)被劃分為對象數(shù)據(jù)與屬性數(shù)據(jù),采用對象 編碼來唯一標識,即數(shù)據(jù)不只按時空屬性劃分,還融入了水利要素分類。對于水利多維主題 應用,涉及從多個類別的對象查詢數(shù)據(jù),如何快速定位到對象數(shù)據(jù),是這種數(shù)據(jù)組織方式帶 來的新問題。
[0006] 3)索引結(jié)構(gòu)與更新代價問題。水利數(shù)據(jù)在空間上呈非均勻分布,并且由于各地水 利信息化程度不一,數(shù)據(jù)密度存在較大差異,所建立的索引結(jié)構(gòu)必須能夠適應數(shù)據(jù)的非均 勻分布特性。隨著數(shù)據(jù)不斷錄入系統(tǒng),索引需要更新,水利數(shù)據(jù)呈海量態(tài)勢,對系統(tǒng)的吞吐 率有較高要求,索引的更新代價將成為一個值得重視的問題。
[0007] 針對水利數(shù)據(jù)分布不均勻,若采用傳統(tǒng)空間索引R樹索引空間維度,當數(shù)據(jù)在流 域邊界聚集時,易發(fā)生MBR橫跨多個流域的情況。如果希望按流域查詢數(shù)據(jù),當訪問到R樹 下層節(jié)點時,需要花費較大代價去判定數(shù)據(jù)的流域歸屬問題。另一方面,水利數(shù)據(jù)按面向?qū)?象方式組織后,通過對象編碼來唯一標識。對于水利多維主題應用,涉及從多個類別的對象 查詢數(shù)據(jù),如何利用對象編碼快速定位對象成為新的問題。
[0008] Hadoop具有擴容能力強、開發(fā)效率高、可靠性高、免費開源及良好的可移植性等優(yōu) 點,已經(jīng)成為當前分布式環(huán)境下的常用的計算框架和大規(guī)模存儲解決方案。其對應的分布 式數(shù)據(jù)庫HBase也成為分布式環(huán)境下的常用數(shù)據(jù)庫之一。在HBase中,數(shù)據(jù)按Region存 儲,Region是數(shù)據(jù)庫中最小的跨服務器存儲單元。我們?yōu)榱藢A克麛?shù)據(jù)建立索引,需 要借助Hadoop平臺及其相關(guān)技術(shù)。因此,我們希望提出一種適用于面向水利數(shù)據(jù)整合與共 享的索引方法,借助Hadoop開源框架實現(xiàn)負載均衡、冗余備份等功能,利用R樹對非均勻數(shù) 據(jù)建立索引,支持按坐標進行點查詢、隨機范圍查詢,還需將對象分類編碼與R樹結(jié)合形成 ER樹,從而支持對象分類查詢。同時,針對海量數(shù)據(jù),通過兩階段索引機制對實時數(shù)據(jù)和歷 史數(shù)據(jù)分開建立索引,從而降低索引更新代價,提高系統(tǒng)吞吐率。
[0009] 因此,針對現(xiàn)有水利數(shù)據(jù)存儲與查詢技術(shù)的缺陷,有必要提出一種更加高效的面 向水利數(shù)據(jù)整合與共享的索引方法,以解決前述的應用弊端。
【發(fā)明內(nèi)容】
[0010] 本發(fā)明的目的旨在提供本發(fā)明提供一種面向水利數(shù)據(jù)整合與共享的索引方法,采 用時間粒度劃分與時間維度索引、對象分類編碼與適用于對象分類查詢的空間索引、兩階 段索引機制等技術(shù),提高數(shù)據(jù)存儲、整合和檢索的效率,適于實用,從而提高系統(tǒng)吞吐率。 [0011] 為了實現(xiàn)上述目的,本發(fā)明提供一種面向水利數(shù)據(jù)整合與共享的索引方法,包括 如下步驟:S1 :根據(jù)時間粒度對保存的數(shù)據(jù)進行劃分,定義不同的粒度層次,并對時間粒度 映射時間量化值,并且為數(shù)據(jù)進行對象分類,定義對象分類編碼,其中:所述保存的數(shù)據(jù)包 括按時間采集的水利數(shù)據(jù)和按地區(qū)采集的水利數(shù)據(jù);S2 :對分類后的數(shù)據(jù)按照索引機制建 立實時索引和歷史索引;S3 :對建立索引機制后的數(shù)據(jù)進行查詢,當按坐標查詢時,轉(zhuǎn)向步 驟S4,當按對象分類查詢時,轉(zhuǎn)向步驟S5 ;S4:根據(jù)坐標與索引中的外包矩形關(guān)系進行查 詢;S5 :根據(jù)分類編碼序列與索引中的序列編碼進行按位"與或"運算來查詢;S6 :若要繼續(xù) 查詢新的數(shù)據(jù),則轉(zhuǎn)向步驟S4,否則結(jié)束。
[0012] 進一步地,所述索引機制包括:索引結(jié)構(gòu),其分為三層:第一層是按粗粒度時間間 隔建立的時間維度索引,采用線性表組織索引結(jié)構(gòu);第二層是按細粒度時間間隔建立的時 間維度索引,采用B+樹的結(jié)構(gòu);第三層是按空間劃分建立的Region表或本發(fā)明提出的ER 樹,其中:所述Region表記錄了存儲實時數(shù)據(jù)的Region表編號,所述ER樹的葉節(jié)點指向 HBase中存儲的實際數(shù)據(jù);在整個索引結(jié)構(gòu)中,第一層索引為全局索引,第二層和第三層為 本地索引,并且第一層和第二層為時間維度索引,第三層為空間維度索引。
[0013] 進一步地,所述歷史索引包括:對歷史數(shù)據(jù)建立時間維度索引與ER樹索引,其中: 對時間索引的B+樹可以提前建立好,對空間索引的ER樹可在一個時間間隔結(jié)束后,數(shù)據(jù)不 再改變的情況下,對這些數(shù)據(jù)建立ER樹索引,并將ER樹掛在相應的B+樹的葉子節(jié)點上;當 前時間段結(jié)束后,其對應的線性表項、B+樹、ER樹等索引結(jié)構(gòu)都不會再更新,實現(xiàn)了更新代 價的降低。
[0014] 進一步地,所述實時索引包括:采用了時間維度索引與Region表相結(jié)合的方式索 引實時數(shù)據(jù),其中:所述Region表為線性表結(jié)構(gòu),表項中記錄了存放實時數(shù)據(jù)的Region表 編號;當新數(shù)據(jù)錄入時,系統(tǒng)檢查其所在Region表,若編號已經(jīng)存在Region表中,則跳過, 否則,在Region表中追加一項記錄,存儲新的Region表編號;當前時段對應的B+樹的葉子 節(jié)點指向了這張 Region表,當查詢實時數(shù)據(jù)時,根據(jù)B+樹和Region表確定其可能存放于 哪些Region,然后再到Region中查詢;進入新的時間間隔后,原有的Region表可以刪除, 采用新表記錄當前數(shù)據(jù)存放的Region表編號。
[0015] 本發(fā)明提供的面向水利數(shù)據(jù)整合與共享的索引方法,具有以下有益效果:對時間 進行粒度劃分,更適用于特定周期的查詢,且以此將數(shù)據(jù)劃分為實時數(shù)據(jù)與歷史數(shù)據(jù),便于 兩階段索引機制的實現(xiàn);對象分類編碼可以利用了計算機按位"與"、"或"運算處理效率極 高的特性,提高了對象分類查詢效率;同時,通過"或"運算可以使序列涵蓋信息更豐富,降 低存儲代價;ER樹保持了 R樹的平衡特性,對非均勻分布數(shù)據(jù)有著較高的查詢效率;兩階段 索引機制對實時數(shù)據(jù)與歷史數(shù)據(jù)分開建立索引,時間維度索引可以提前建立好,歷史索引 可以放在后臺建立,實時索引更新效率1?,故提1? 了系統(tǒng)的插入吞吐率。
[0016] 本發(fā)明附加的方面和優(yōu)點將在下面的描述中部分給出,這些將從下面的描述中變 得明顯,或通過本發(fā)明的實踐了解到。
【專利附圖】
【附圖說明】
[0017] 圖1示出了根據(jù)本發(fā)明一實施方式的面向水利數(shù)據(jù)整合與共享的索引方法的流 程不意圖;
[0018] 圖2示出了根據(jù)本發(fā)明一實施方式的時間粒度層次劃分的示意圖;
[0019] 圖3示出了根據(jù)本發(fā)明一實施方式的索引框架的示意圖;
[0020] 圖4示出了根據(jù)本發(fā)明一實施方式的時間維度索引的示意圖;
[0021] 圖5示出了根據(jù)本發(fā)明一實施方式的ER樹結(jié)構(gòu)與編碼運算的示意圖。
【具體實施方式】
[0022] 下面詳細描述本發(fā)明的實施方式,所述實施方式的示例在附圖中示出,其中自始 至終相同或類似的標號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參 考附圖描述的實施方式是示例性的,僅用于解釋本發(fā)明,而不能解釋為對本發(fā)明的限制。
[0023] 本【技術(shù)領域】技術(shù)人員可以理解,除非特意聲明,這里使用的單數(shù)形式"一"、"一 個"、"所述"和"該"也可包括復數(shù)形式。應該進一步理解的是,本發(fā)明的說明書中使用的措 辭"包括"是指存在所述特征、整數(shù)、步驟、操作、元件和/或組件,但是并不排除存在或添加 一個或多個其他特征、整數(shù)、步驟、操作、元件、組件和/或它們的組。應該理解,當我們稱元 件被"連接"或"耦接"到另一元件時,它可以直接連接或耦接到其他元件,或者也可以存在 中間元件。此外,這里使用的"連接"或"耦接"可以包括無線連接或耦接。這里使用的措 辭"和/或"包括一個或更多個相關(guān)聯(lián)的列出項的任一單元和全部組合。
[0024] 本【技術(shù)領域】技術(shù)人員可以理解,除非另外定義,這里使用的所有術(shù)語(包括技術(shù) 術(shù)語和科學術(shù)語)具有與本發(fā)明所屬領域中的普通技術(shù)人員的一般理解相同的意義。還應 該理解的是,諸如通用字典中定義的那些術(shù)語應該被理解為具有與現(xiàn)有技術(shù)的上下文中的 意義一致的意義,并且除非像這里一樣定義,不會用理想化或過于正式的含義來解釋。
[0025] 圖1示出了根據(jù)本發(fā)明一實施方式的面向觸控屏的即時通訊程序中的組群消息 瀏覽方法的流程示意圖。如圖1所示,本發(fā)明提供一種面向水利數(shù)據(jù)整合與共享的索引方 法,可以包括如下步驟:S1 :根據(jù)時間粒度對保存的數(shù)據(jù)進行劃分,定義不同的粒度層次, 并對時間粒度映射時間量化值,并且為數(shù)據(jù)進行對象分類,定義對象分類編碼,其中:所述 保存的數(shù)據(jù)包括按時間采集的水利數(shù)據(jù)和按地區(qū)采集的水利數(shù)據(jù);S2 :對分類后的數(shù)據(jù)按 照索引機制建立實時索引和歷史索引;S3 :對建立索引機制后的數(shù)據(jù)進行查詢,當按坐標 查詢時,轉(zhuǎn)向步驟S4,當按對象分類查詢時,轉(zhuǎn)向步驟S5 ;S4 :根據(jù)坐標與索引中的外包矩 形關(guān)系進行查詢;S5 :根據(jù)分類編碼序列與索引中的序列編碼進行按位"與或"運算來查 詢;S6 :若要繼續(xù)查詢新的數(shù)據(jù),則轉(zhuǎn)向步驟S4,否則結(jié)束。
[0026] 進一步地,所述索引機制包括:索引結(jié)構(gòu),其分為三層:第一層是按粗粒度時間間 隔建立的時間維度索引,采用線性表組織索引結(jié)構(gòu);第二層是按細粒度時間間隔建立的時 間維度索引,采用B+樹的結(jié)構(gòu);第三層是按空間劃分建立的Region表或本發(fā)明提出的ER 樹,其中:所述Region表記錄了存儲實時數(shù)據(jù)的Region表編號,所述ER樹的葉節(jié)點指向 HBase中存儲的實際數(shù)據(jù);在整個索引結(jié)構(gòu)中,第一層索引為全局索引,第二層和第三層為 本地索引,并且第一層和第二層為時間維度索引,第三層為空間維度索引。
[0027] 進一步地,所述歷史索引包括:對歷史數(shù)據(jù)建立時間維度索引與ER樹索引,其中: 對時間索引的B+樹可以提前建立好,對空間索引的ER樹可在一個時間間隔結(jié)束后,數(shù)據(jù)不 再改變的情況下,對這些數(shù)據(jù)建立ER樹索引,并將ER樹掛在相應的B+樹的葉子節(jié)點上;當 前時間段結(jié)束后,其對應的線性表項、B+樹、ER樹等索引結(jié)構(gòu)都不會再更新,實現(xiàn)了更新代 價的降低。
[0028] 進一步地,所述實時索引包括:采用了時間維度索引與Region表相結(jié)合的方式索 引實時數(shù)據(jù),其中:所述Region表為線性表結(jié)構(gòu),表項中記錄了存放實時數(shù)據(jù)的Region表 編號;當新數(shù)據(jù)錄入時,系統(tǒng)檢查其所在Region表,若編號已經(jīng)存在Region表中,則跳過, 否則,在Region表中追加一項記錄,存儲新的Region表編號;當前時段對應的B+樹的葉子 節(jié)點指向了這張 Region表,當查詢實時數(shù)據(jù)時,根據(jù)B+樹和Region表確定其可能存放于 哪些Region,然后再到Region中查詢;進入新的時間間隔后,原有的Region表可以刪除, 采用新表記錄當前數(shù)據(jù)存放的Region表編號。
[0029] 本發(fā)明提供的面向水利數(shù)據(jù)整合與共享的索引方法,具有以下有益效果:對時間 進行粒度劃分,更適用于特定周期的查詢,且以此將數(shù)據(jù)劃分為實時數(shù)據(jù)與歷史數(shù)據(jù),便于 兩階段索引機制的實現(xiàn);對象分類編碼可以利用了計算機按位"與"、"或"運算處理效率極 高的特性,提高了對象分類查詢效率;同時,通過"或"運算可以使序列涵蓋信息更豐富,降 低存儲代價;ER樹保持了 R樹的平衡特性,對非均勻分布數(shù)據(jù)有著較高的查詢效率;兩階段 索引機制對實時數(shù)據(jù)與歷史數(shù)據(jù)分開建立索引,時間維度索引可以提前建立好,歷史索引 可以放在后臺建立,實時索引更新效率1?,故提1? 了系統(tǒng)的插入吞吐率。
[0030] 下面將結(jié)合本發(fā)明提出的面向水利數(shù)據(jù)整合與共享的索引方法具體說明五個步 驟的實現(xiàn)內(nèi)容。
[0031] 圖2示出了根據(jù)本發(fā)明一實施方式的時間粒度層次劃分的示意圖。如圖2所示,步 驟S1用于時間粒度劃分與對象分類編碼定義。為實現(xiàn)面向水利數(shù)據(jù)整合與共享的索引,按 照前面所述模型對時間進行多粒度層次劃分,如圖2所示。以水利數(shù)據(jù)為例,為便于說明, 假設只以兩種粒度("周"和"日")來劃分時間軸。先將時間軸按天分割為一些片段:T1、 Τ2…Τη+1(η彡0,Τη+1未必是一個完整的周期)等,每個片段表不一周的時間間隔。將Τ 進一步分為m段(一周包含七天,故這里m取7) :t7n+l、t7n+2、·'tTn+TOi彡0,某些應 用中每個t未必等長),每個片段表示一天的時間間隔。此時,可以看出,T表示一種粗粒度 時間劃分,t表示一種相對于T粒度較細的劃分。并且如果一個T表示一個周期,則每個t 都是相應T的一個子周期。只有當一個T的七個t都進行完畢,一個T才算結(jié)束。以時間 軸最右端且粒度最小的時間間隔(在圖2中即為t7n+7)作為當前時間段,其左邊的所有時 間段(即圖2中tl到t7n+6)共同構(gòu)成了歷史時間段,則當前時間段對應的數(shù)據(jù)為實時數(shù) 據(jù),歷史時間段對應的數(shù)據(jù)為歷史數(shù)據(jù)。
[0032] 水利數(shù)據(jù)的分類編碼是唯一的,為了便于后續(xù)空間查詢及對象分類查詢,本發(fā)明 采用二進制編碼來定義對象分類編碼(若水利數(shù)據(jù)自有的分類編碼是十進制,也可以映射 到這種二進制編碼),具體方式如下:以五位二進制編碼為例,對于單一類別," 10000"表示 "A"類,"01000"表示"B"類,"00100"表示"C"類,以此類推可以表示出"D"、"E"類等;對 于組合類," 11000"表示"AB"類," 10100"表示"AC"類," 11100"表示"ABC"類,以此類推 可以表示任意類別組合,即根據(jù)一個序列中"1"的分布情況,可以判斷出有哪些類別被這個 序列所涵蓋。這種二進制的類別編碼方式可以唯一標識某一類別或多種類別的組合,因為 水利數(shù)據(jù)可能同時屬于多個類別,若采用順序二進制編碼則無法實現(xiàn)一個編碼表示多個類 別的情況;
[0033] 圖3示出了根據(jù)本發(fā)明一實施方式的索引框架的示意圖。如圖3所示,步驟S2用 于索引建立。如圖3所示,面向水利數(shù)據(jù)整合與共享的索引框架分為三層:第一層是按粗粒 度時間間隔建立的時間維度索引,采用線性表組織索引結(jié)構(gòu);第二層是按細粒度時間間隔 建立的時間維度索引,采用B+樹的結(jié)構(gòu);第三層是按空間劃分建立的Region表或本發(fā)明提 出的ER樹,Region表記錄了存儲實時數(shù)據(jù)的Region表編號,ER樹的葉節(jié)點指向HBase中 存儲的實際數(shù)據(jù)。在整個索引結(jié)構(gòu)中,第一層索引為全局索引,后兩層為本地索引。具體描 述如下:首先,將時間軸按預定周期間隔進行劃分,以圖2為例,用線性表索引頂層粒度時 間間隔(圖2中為T),并作為整個系統(tǒng)的主索引,線性表中的每一項對應了一棵索引細時 間粒度(圖2中為t)的B+樹。由于這些時間間隔中的數(shù)據(jù)在一個粒度周期完成后不再改 變,故頂層粒度時間間隔結(jié)束后,所建立的B+樹結(jié)構(gòu)不再改變。此外,時間是單調(diào)遞增的, 因此線性表按時間順序增長,可以采用二分查找算法快速定位到索引細時間粒度的B+樹。 對數(shù)據(jù)的空間屬性,采用R樹索引,B+樹的葉子節(jié)點指向R樹的根節(jié)點。為提高索引的對 象分類查詢效率,在R樹節(jié)點中加入對象分類編碼信息形成ER樹,ER樹的葉節(jié)點記錄了索 引數(shù)據(jù)的ID。特別的,為了提高系統(tǒng)的吞吐率、減少索引的更新代價,采用兩種方法分別在 不同階段對數(shù)據(jù)進行索引(對實時數(shù)據(jù)用Region表索引,對歷史數(shù)據(jù)用ER樹索引)。
[0034] 圖4示出了根據(jù)本發(fā)明一實施方式的時間維度索引的示意圖。為了建立時間維度 索引,首先要將間隔進行量化。如圖4所示,對于一個粒度的時間段(如T2),以其區(qū)間的 左邊界或右邊界值來代表它,只要保證所有時間段的邊界不重合即可(如"左閉右開區(qū)間" 或"左開右閉區(qū)間")。這樣任意時間段被量化成一個值(如用20140215表示某一天,真正 的一天應該是從2014年02月15日00時00分00秒到2014年02月15日23時59分59 秒;則20140214表示前一天,20140216表示后一天;當粒度更細時,可用更多位編碼表示, 如20140215000000可表示到時、分、秒級別),隨著時間的推移,每個新增的時間段對應的 量化值往上遞增。本發(fā)明建立線性表來索引頂層粒度時間段對應的B+樹,表中的關(guān)鍵字為 頂層粒度時間量化值。索引細粒度時間間隔的B+樹根據(jù)粒度層次分為多層(如T2下面分 為t8、t9、…、tl4, t8也可向下繼續(xù)分為更細的間隔等),然后從上到下依次索引,即粗時 間粒度的B+樹索引細時間粒度的B+樹,直至索引到底層時間粒度B+樹為止。底層B+樹 的每個葉子節(jié)點指向索引空間維度的Region表或ER樹的根節(jié)點。
[0035] 圖5示出了根據(jù)本發(fā)明一實施方式的ER樹結(jié)構(gòu)與編碼運算的示意圖。如圖5所 示,對于水利數(shù)據(jù)空間維度,采用R樹索引可以解決數(shù)據(jù)分布不均、子樹深度不平衡等問 題。為提高對象分類查詢(特定區(qū)域查詢也屬于該類查詢)效率,本發(fā)明對傳統(tǒng)R樹進行 改進,在樹中每個節(jié)點增加二進制的對象分類編碼序列,形成適合對象分類查詢的ER樹 (Encoding R-Tree)。如圖5所示,ER樹的結(jié)構(gòu)與R樹類似,對空間目標建立傳統(tǒng)R樹索引, 樹中每一個節(jié)點的對象分類編碼序列都是由其下子節(jié)點或索引目標的編碼序列按位"或" 運算得到。
[0036] 兩階段索引機制的實現(xiàn)具體如下:水利數(shù)據(jù)為增量式增長,本發(fā)明對數(shù)據(jù)劃分成 實時數(shù)據(jù)和歷史數(shù)據(jù),對實時數(shù)據(jù)注重考慮索引更新代價,對歷史數(shù)據(jù)偏向考慮其查詢效 率。由前面對時間維度索引的描述可知,時間間隔(粒度)是事先定義好的,對時間索引的 B+樹可以提前建立好,對空間索引的ER樹可在一個時間間隔結(jié)束后,數(shù)據(jù)不再改變的情況 下,對這些數(shù)據(jù)建立ER樹索引,并將ER樹掛在相應的B+樹葉子節(jié)點上。當一個頂層粒度 的時間間隔結(jié)束后,其對應的線性表項、B+樹、ER樹等索引結(jié)構(gòu)都不會再更新,實現(xiàn)了更新 代價的降低。對于實時數(shù)據(jù),由于其數(shù)據(jù)量較小,我們采用了 B+樹與Region表相結(jié)合的方 式進行索引。B+樹與前面介紹的結(jié)構(gòu)相同,Region表結(jié)構(gòu)與前面介紹的線性表類似,表項 中記錄了存放實時數(shù)據(jù)的Region表編號,即新數(shù)據(jù)錄入時,系統(tǒng)檢查其所在Region,若編 號已經(jīng)存在Region表中,則跳過;否則,在Region表中追加一項記錄,存儲新的Region表 編號。當前時段對應的B+樹的葉子節(jié)點指向了這張Region表,當查詢實時數(shù)據(jù)時,根據(jù)B+ 樹和Region表確定其可能存放于哪些Region,然后再到Region中查詢。進入新的時間間 隔后,原有的Region表可以刪除,采用新表記錄當前數(shù)據(jù)存放的Region表編號;
[0037] 步驟S3,對數(shù)據(jù)進行查詢,若按坐標查詢,則轉(zhuǎn)向步驟S4 ;若按對象分類查詢,則 轉(zhuǎn)向步驟S5 ;
[0038] 步驟S4,根據(jù)坐標與索引中的外包矩形關(guān)系進行查詢。首先按照待查詢的時間范 圍根據(jù)時間線性表及B+樹定位到索引空間的ER樹。然后按照傳統(tǒng)R樹的查詢算法查詢具 體數(shù)據(jù);
[0039] 步驟S5,根據(jù)分類編碼序列與索引中的序列進行按位"與或"運算來查詢。首先按 照待查詢的時間范圍根據(jù)時間線性表及B+樹定位到索引空間的ER樹。按對象類別查詢某 個數(shù)據(jù)的信息時,只要先得出其相應的對象分類編碼序列,然后和ER樹中節(jié)點的編碼序列 按位"與"操作,若所得結(jié)果不變,說明要查找的數(shù)據(jù)就在該節(jié)點索引的子節(jié)點中。例如在 圖5中,要查詢P3這個目標,其對象分類編碼是0000001,先將這個序列與A節(jié)點(假設此 時A節(jié)點為ER樹的根節(jié)點)的序列做"與"運算,發(fā)現(xiàn)所得序列不變,故P3必定被節(jié)點A的 子樹索引;然后將P3的編碼序列與A節(jié)點的子節(jié)點的序列做"與"運算,發(fā)現(xiàn)和節(jié)點B的序 列運算后所得序列不變,故P3必定位于節(jié)點B的子節(jié)點中;再將目標序列與C、D、E節(jié)點中 的序列分別做"與"運算,發(fā)現(xiàn)只有與C節(jié)點的序列運算后所得序列不變,而C節(jié)點是葉子 節(jié)點,故目標就在其對應的MBR中,遍歷該節(jié)點數(shù)據(jù)項即可找到目標。這種方法利用了計算 機按位"與"、"或"運算處理效率極高的特性,提高了對象分類查詢效率;同時,通過"或"運 算可以使序列涵蓋信息更豐富,降低存儲代價。
[0040] 步驟S6,若要繼續(xù)查詢新的數(shù)據(jù),則轉(zhuǎn)向步驟S3 ;否則結(jié)束。
[0041] 面向水利數(shù)據(jù)整合與共享的索引方法,其特征在于,包括索引結(jié)構(gòu)設計和兩階段 索引機制兩部分,其中:所述索引結(jié)構(gòu)設計包括時間粒度劃分、對象分類編碼設計、索引框 架、時間維度索引結(jié)構(gòu)設計與空間索引結(jié)構(gòu)設計,所述兩階段索引機制包括對實時數(shù)據(jù)建 立實時索引、對歷史數(shù)據(jù)建立歷史索引兩部分;
[0042] 所述時間粒度劃分為:對時間軸按序切割成若干線段,每個線段又可以繼續(xù)細分 為子線段,切割的長度對應于時間的粒度(即"年"、"月"、"日"等時間粒度)。假設T為頂 層粒度劃分,t表示一種相對于T粒度較細的劃分。并且如果一個T表示一個周期,則每個 t都是相應T的一個子周期。只有當一個T的所有t都進行完畢,一個T才算結(jié)束。以時間 軸最右端且粒度最小的時間間隔其左邊的所有時間段共同構(gòu)成了歷史時間段,則當前時間 段對應的數(shù)據(jù)為實時數(shù)據(jù),歷史時間段對應的數(shù)據(jù)為歷史數(shù)據(jù);
[0043] 所述面向水利數(shù)據(jù)整合與共享的索引框架分為三層:第一層是按粗粒度時間間隔 建立的時間維度索引,采用線性表組織索引結(jié)構(gòu);第二層是按細粒度時間間隔建立的時間 維度索引,采用B+樹的結(jié)構(gòu);第三層是按空間劃分建立的Region表或本發(fā)明提出的ER樹, Region表記錄了存儲實時數(shù)據(jù)的Region表編號,ER樹的葉節(jié)點指向HBase中存儲的實際 數(shù)據(jù)。在整個索引結(jié)構(gòu)中,第一層索引為全局索引,后兩層為本地索引。前兩層為時間維度 索引,底層為空間維度索引;
[0044] 所述時間量化值為:對于一個粒度的時間段,即在時間軸上截取的一條時間線段, 以其區(qū)間的左邊界或右邊界值來代表它,只要保證所有時間段的邊界不重合即可(如"左 閉右開區(qū)間"或"左開右閉區(qū)間")。這樣任意時間段被量化成一個值。隨著時間的推移,每 個新增的時間段對應的量化值往上遞增;
[0045] 所述時間維度索引為:建立線性表來索引頂層粒度時間段對應的B+樹,表中的關(guān) 鍵字為頂層粒度時間量化值。索引細粒度時間間隔的B+樹根據(jù)粒度層次分為多層,然后從 上到下依次索引,即粗時間粒度的B+樹索引細時間粒度的B+樹,直至索引到底層時間粒度 B+樹為止。底層B+樹的每個葉子節(jié)點指向索引空間維度的Region表或ER樹的根節(jié)點;
[0046] 所述對象分類編碼采用二進制編碼來表示分類,具體方式如下:以五位二進制編 碼為例,對于單一類別," 10000"表示"A"類,"01000"表示"B"類,"00100"表示"C"類,以 此類推可以表示出"D"、"E"類等;對于組合類," 11000"表示"AB"類," 10100"表示"AC" 類," 11100"表示"ABC"類,以此類推可以表示任意類別組合,即根據(jù)一個序列中" 1"的分 布情況,可以判斷出有哪些類別被這個序列所涵蓋;
[0047] 所述空間維度索引為:在樹中每個節(jié)點增加二進制的對象分類編碼序列,形成適 合對象分類查詢的ER樹(Encoding R-Tree)。ER樹的結(jié)構(gòu)與R樹類似,對空間目標建立傳 統(tǒng)R樹索引,樹中每一個節(jié)點的對象分類編碼序列都是由其下子節(jié)點或索引目標的編碼序 列按位"或"運算得到。若要按對象類別查詢某個數(shù)據(jù)的信息,只要先得出其相應的對象分 類編碼序列,然后和ER樹中節(jié)點的編碼序列按位"與"操作,若所得結(jié)果不變,說明要查找 的數(shù)據(jù)就在該節(jié)點索引的子節(jié)點中;
[0048] 所述歷史索引為:對歷史數(shù)據(jù)建立時間維度索引與ER樹索引。對時間索引的B+樹 可以提前建立好,對空間索引的ER樹可在一個時間間隔結(jié)束后,數(shù)據(jù)不再改變的情況下, 對這些數(shù)據(jù)建立ER樹索引,并將ER樹掛在相應的B+樹葉子節(jié)點上。當前時間段結(jié)束后, 其對應的線性表項、B+樹、ER樹等索引結(jié)構(gòu)都不會再更新,實現(xiàn)了更新代價的降低;
[0049] 所述實時索引為:采用了時間維度索引與Region表相結(jié)合的方式索引實時數(shù)據(jù)。 Region表為線性表結(jié)構(gòu),表項中記錄了存放實時數(shù)據(jù)的Region表編號,即新數(shù)據(jù)錄入時, 系統(tǒng)檢查其所在Region,若編號已經(jīng)存在Region表中,則跳過;否則,在Region表中追加 一項記錄,存儲新的Region表編號。當前時段對應的B+樹的葉子節(jié)點指向了這張Region 表,當查詢實時數(shù)據(jù)時,根據(jù)B+樹和Region表確定其可能存放于哪些Region,然后再到 Region中查詢。進入新的時間間隔后,原有的Region表可以刪除,采用新表記錄當前數(shù)據(jù) 存放的Region表編號;
[0050] 所述兩階段索引機制為:對于實時數(shù)據(jù),采用B+樹與Region表組合的實時索引; 當前時間段結(jié)束后,對這個時間段中的數(shù)據(jù)重新建立ER樹,并使相應B+的葉子節(jié)點指向該 ER樹的根節(jié)點,形成歷史索引。B+樹可以提前建立好,重建ER樹可以放在后臺進行,不影 響實時數(shù)據(jù)進入系統(tǒng)。
[0051] 提出了面向水利數(shù)據(jù)整合與共享的索引方法。方法中先對時間粒度進行劃分,區(qū) 分實時數(shù)據(jù)與歷史數(shù)據(jù),設計了對象分類編碼;采用線性表與B+相結(jié)合對時間維度進行索 弓丨;將對象分類編碼引入R樹形成適用于對象分類查詢的ER樹;通過兩階段索引機制對實 時數(shù)據(jù)和歷史數(shù)據(jù)分開建立索引,從而降低索引更新代價,提高系統(tǒng)吞吐率。本發(fā)明解決了 在海量水利數(shù)據(jù)存儲與查詢中的索引更新代價高及對象分類查詢低效等問題。
[0052] 本發(fā)明為實現(xiàn)上述發(fā)明目的采用如下技術(shù)方案:
[0053] 面向水利數(shù)據(jù)整合與共享的索引方法,其特征在于,包括索引結(jié)構(gòu)設計和兩階段 索引機制兩部分,其中:所述索引結(jié)構(gòu)設計包括時間粒度劃分、對象分類編碼設計、索引框 架、時間維度索引結(jié)構(gòu)設計與空間索引結(jié)構(gòu)設計,所述兩階段索引機制包括對實時數(shù)據(jù)建 立實時索引、對歷史數(shù)據(jù)建立歷史索引兩部分;
[0054] 所述時間粒度劃分為:對時間軸按序切割成若干線段,每個線段又可以繼續(xù)細分 為子線段,切割的長度對應于時間的粒度(即"年"、"月"、"日"等時間粒度)。假設T為頂 層粒度劃分,t表示一種相對于T粒度較細的劃分。并且如果一個T表示一個周期,則每個 t都是相應T的一個子周期。只有當一個T的所有t都進行完畢,一個T才算結(jié)束。以時間 軸最右端且粒度最小的時間間隔其左邊的所有時間段共同構(gòu)成了歷史時間段,則當前時間 段對應的數(shù)據(jù)為實時數(shù)據(jù),歷史時間段對應的數(shù)據(jù)為歷史數(shù)據(jù);
[0055] 所述面向水利數(shù)據(jù)整合與共享的索引框架分為三層:第一層是按粗粒度時間間隔 建立的時間維度索引,采用線性表組織索引結(jié)構(gòu);第二層是按細粒度時間間隔建立的時間 維度索引,采用B+樹的結(jié)構(gòu);第三層是按空間劃分建立的Region表或本發(fā)明提出的ER樹, Region表記錄了存儲實時數(shù)據(jù)的Region表編號,ER樹的葉節(jié)點指向HBase中存儲的實際 數(shù)據(jù)。在整個索引結(jié)構(gòu)中,第一層索引為全局索引,后兩層為本地索引。前兩層為時間維度 索引,底層為空間維度索引;
[0056] 所述時間量化值為:對于一個粒度的時間段,即在時間軸上截取的一條時間線段, 以其區(qū)間的左邊界或右邊界值來代表它,只要保證所有時間段的邊界不重合即可(如"左 閉右開區(qū)間"或"左開右閉區(qū)間")。這樣任意時間段被量化成一個值。隨著時間的推移,每 個新增的時間段對應的量化值往上遞增;
[0057] 所述時間維度索引為:建立線性表來索引頂層粒度時間段對應的B+樹,表中的關(guān) 鍵字為頂層粒度時間量化值。索引細粒度時間間隔的B+樹根據(jù)粒度層次分為多層,然后從 上到下依次索引,即粗時間粒度的B+樹索引細時間粒度的B+樹,直至索引到底層時間粒度 B+樹為止。底層B+樹的每個葉子節(jié)點指向索引空間維度的Region表或ER樹的根節(jié)點;
[0058] 所述對象分類編碼采用二進制編碼來表示分類,具體方式如下:以五位二進制編 碼為例,對于單一類別," 10000"表示"A"類,"01000"表示"B"類,"00100"表示"C"類,以 此類推可以表示出"D"、"E"類等;對于組合類," 11000"表示"AB"類," 10100"表示"AC" 類," 11100"表示"ABC"類,以此類推可以表示任意類別組合,即根據(jù)一個序列中" 1"的分 布情況,可以判斷出有哪些類別被這個序列所涵蓋;
[0059] 所述空間維度索引為:在樹中每個節(jié)點增加二進制的對象分類編碼序列,形成適 合對象分類查詢的ER樹(Encoding R-Tree)。ER樹的結(jié)構(gòu)與R樹類似,對空間目標建立傳 統(tǒng)R樹索引,樹中每一個節(jié)點的對象分類編碼序列都是由其下子節(jié)點或索引目標的編碼序 列按位"或"運算得到。若要按對象類別查詢某個數(shù)據(jù)的信息,只要先得出其相應的對象分 類編碼序列,然后和ER樹中節(jié)點的編碼序列按位"與"操作,若所得結(jié)果不變,說明要查找 的數(shù)據(jù)就在該節(jié)點索引的子節(jié)點中;
[0060] 所述歷史索引為:對歷史數(shù)據(jù)建立時間維度索引與ER樹索引。對時間索引的B+樹 可以提前建立好,對空間索引的ER樹可在一個時間間隔結(jié)束后,數(shù)據(jù)不再改變的情況下, 對這些數(shù)據(jù)建立ER樹索引,并將ER樹掛在相應的B+樹葉子節(jié)點上。當前時間段結(jié)束后, 其對應的線性表項、B+樹、ER樹等索引結(jié)構(gòu)都不會再更新,實現(xiàn)了更新代價的降低;
[0061] 所述實時索引為:采用了時間維度索引與Region表相結(jié)合的方式索引實時數(shù)據(jù)。 Region表為線性表結(jié)構(gòu),表項中記錄了存放實時數(shù)據(jù)的Region表編號,即新數(shù)據(jù)錄入時, 系統(tǒng)檢查其所在Region,若編號已經(jīng)存在Region表中,則跳過;否則,在Region表中追加 一項記錄,存儲新的Region表編號。當前時段對應的B+樹的葉子節(jié)點指向了這張Region 表,當查詢實時數(shù)據(jù)時,根據(jù)B+樹和Region表確定其可能存放于哪些Region,然后再到 Region中查詢。進入新的時間間隔后,原有的Region表可以刪除,采用新表記錄當前數(shù)據(jù) 存放的Region表編號;
[0062] 所述兩階段索引機制為:對于實時數(shù)據(jù),采用B+樹與Region表組合的實時索引; 當前時間段結(jié)束后,對這個時間段中的數(shù)據(jù)重新建立ER樹,并使相應B+的葉子節(jié)點指向該 ER樹的根節(jié)點,形成歷史索引。B+樹可以提前建立好,重建ER樹可以放在后臺進行,不影 響實時數(shù)據(jù)進入系統(tǒng)。
[0063] 面向水利數(shù)據(jù)整合與共享的索引方法,其特征在于包括如下步驟:
[0064] 步驟S1,對時間進行粒度劃分,定義出不同的粒度層次,并對時間粒度映射時間量 化值;為數(shù)據(jù)進行對象分類,定義對象分類編碼;
[0065] 步驟S2,對數(shù)據(jù)按照兩階段索引機制建立索引;
[0066] 步驟S3,對數(shù)據(jù)進行查詢,若按坐標查詢,則轉(zhuǎn)向步驟S4 ;若按對象分類查詢,則 轉(zhuǎn)向步驟S5 ;
[0067] 步驟S4,根據(jù)坐標與索引中的外包矩形關(guān)系進行查詢;
[0068] 步驟S5,根據(jù)分類編碼序列與索引中的序列進行按位"與或"運算來查詢;
[0069] 步驟S6,若要繼續(xù)查詢新的數(shù)據(jù),則轉(zhuǎn)向步驟S3 ;否則結(jié)束。
[0070] 本發(fā)明采用上述技術(shù)方案,具有以下有益效果:對時間進行粒度劃分,更適用于特 定周期的查詢,且以此將數(shù)據(jù)劃分為實時數(shù)據(jù)與歷史數(shù)據(jù),便于兩階段索引機制的實現(xiàn);對 象分類編碼可以利用了計算機按位"與"、"或"運算處理效率極高的特性,提高了對象分類 查詢效率;同時,通過"或"運算可以使序列涵蓋信息更豐富,降低存儲代價;ER樹保持了 R 樹的平衡特性,對非均勻分布數(shù)據(jù)有著較高的查詢效率;兩階段索引機制對實時數(shù)據(jù)與歷 史數(shù)據(jù)分開建立索引,時間維度索引可以提前建立好,歷史索引可以放在后臺建立,實時索 引更新效率1?,故提1? 了系統(tǒng)的插入吞吐率。
[0071] 本【技術(shù)領域】技術(shù)人員可以理解,本發(fā)明可以涉及用于執(zhí)行本申請中所述操作中的 一項或多項操作的設備。所述設備可以為所需的目的而專門設計和制造,或者也可以包括 通用計算機中的已知設備,所述通用計算機有存儲在其內(nèi)的程序選擇性地激活或重構(gòu)。這 樣的計算機程序可以被存儲在設備(例如,計算機)可讀介質(zhì)中或者存儲在適于存儲電子 指令并分別耦聯(lián)到總線的任何類型的介質(zhì)中,所述計算機可讀介質(zhì)包括但不限于任何類型 的盤(包括軟盤、硬盤、光盤、CD-ROM、和磁光盤)、隨即存儲器(RAM)、只讀存儲器(ROM)、 電可編程ROM、電可擦ROM (EPROM)、電可擦除可編程ROM (EEPR0M)、閃存、磁性卡片或光線卡 片??勺x介質(zhì)包括用于以由設備(例如,計算機)可讀的形式存儲或傳輸信息的任何機構(gòu)。 例如,可讀介質(zhì)包括隨即存儲器(RAM)、只讀存儲器(ROM)、磁盤存儲介質(zhì)、光學存儲介質(zhì)、 閃存裝置、以電的、光的、聲的或其他的形式傳播的信號(例如載波、紅外信號、數(shù)字信號) 等。
[0072] 本【技術(shù)領域】技術(shù)人員可以理解,可以用計算機程序指令來實現(xiàn)這些結(jié)構(gòu)圖和/或 框圖和/或流圖中的每個框以及這些結(jié)構(gòu)圖和/或框圖和/或流圖中的框的組合??梢詫?這些計算機程序指令提供給通用計算機、專業(yè)計算機或其他可編程數(shù)據(jù)處理方法的處理器 來生成機器,從而通過計算機或其他可編程數(shù)據(jù)處理方法的處理器來執(zhí)行的指令創(chuàng)建了用 于實現(xiàn)結(jié)構(gòu)圖和/或框圖和/或流圖的框或多個框中指定的方法。
[0073] 本【技術(shù)領域】技術(shù)人員可以理解,本發(fā)明中已經(jīng)討論過的各種操作、方法、流程中的 步驟、措施、方案可以被交替、更改、組合或刪除。進一步地,具有本發(fā)明中已經(jīng)討論過的各 種操作、方法、流程中的其他步驟、措施、方案也可以被交替、更改、重排、分解、組合或刪除。 進一步地,現(xiàn)有技術(shù)中的具有與本發(fā)明中公開的各種操作、方法、流程中的步驟、措施、方案 也可以被交替、更改、重排、分解、組合或刪除。
[0074] 以上所述僅是本發(fā)明的部分實施方式,應當指出,對于本【技術(shù)領域】的普通技術(shù)人 員來說,在不脫離本發(fā)明原理的前提下,還可以做出若干改進和潤飾,這些改進和潤飾也應 視為本發(fā)明的保護范圍。
【權(quán)利要求】
1. 一種面向水利數(shù)據(jù)整合與共享的索引方法,其特征在于,包括如下步驟: 51 :根據(jù)時間粒度對保存的數(shù)據(jù)進行劃分,定義不同的粒度層次,對時間粒度映射時間 量化值,并且為數(shù)據(jù)進行對象分類,定義對象分類編碼,其中:所述保存的數(shù)據(jù)包括按時間 采集的水利數(shù)據(jù)和按地區(qū)采集的水利數(shù)據(jù); 52 :對分類后的數(shù)據(jù)按照索引機制建立實時索引和歷史索引; 53 :對建立索引機制后的數(shù)據(jù)進行查詢,當按坐標查詢時,轉(zhuǎn)向步驟S4,當按對象分類 查詢時,轉(zhuǎn)向步驟S5 ; 54 :根據(jù)坐標與索引中的外包矩形關(guān)系進行查詢; 55 :根據(jù)分類編碼序列與索引中的序列編碼進行按位的與或運算來查詢; 56 :若要繼續(xù)查詢新的數(shù)據(jù),則轉(zhuǎn)向步驟S4,否則結(jié)束。
2. 如權(quán)利要求1所述的方法,其特征在于,所述索引機制包括: 索引結(jié)構(gòu),其分為三層: 第一層是按粗粒度時間間隔建立的時間維度索引,采用線性表組織索引結(jié)構(gòu); 第二層是按細粒度時間間隔建立的時間維度索引,采用B+樹的結(jié)構(gòu); 第三層是按空間劃分建立的Region表或ER樹,其中:所述Region表記錄了存儲實時 數(shù)據(jù)的Region表編號,所述ER樹的葉節(jié)點指向HBase中存儲的實際數(shù)據(jù); 在整個索引結(jié)構(gòu)中,第一層索引為全局索引,第二層和第三層為本地索引,并且第一層 和第二層為時間維度索引,第三層為空間維度索引。
3. 如權(quán)利要求2所述的方法,其特征在于,所述歷史索引包括: 對歷史數(shù)據(jù)建立時間維度索引與ER樹相結(jié)合的索引,其中: 將時間維度索引的B+樹提前建立好,在一個時間間隔結(jié)束后且數(shù)據(jù)不再改變時,通過 空間維度索引的ER樹對所述歷史數(shù)據(jù)建立ER樹索引,并將ER樹掛在相應的B+樹的葉子 節(jié)點上; 當前時間段結(jié)束后,其對應的線性表項、B+樹、ER樹的索引都不再更新。
4. 如權(quán)利要求2所述的方法,其特征在于,所述實時索引包括: 對實時數(shù)據(jù)建立時間維度索引與Region表相結(jié)合的索引,其中: 所述Region表為線性表結(jié)構(gòu),表項中記錄了存放所述實時數(shù)據(jù)的Region表編號; 當新數(shù)據(jù)錄入時,系統(tǒng)檢查其所在Region表,若編號已經(jīng)存在于Region表中,貝U跳過, 否則,在Region表中追加一項記錄,存儲新的Region表編號; 當前時段對應的B+樹的葉子節(jié)點指向了這張 Region表,當查詢所述實時數(shù)據(jù)時,根據(jù) B+樹和Region表確定其可能存放于哪些Region,然后再到Region中查詢; 進入新的時間間隔后,原有的Region表可以刪除,采用新表記錄當前數(shù)據(jù)存放的 Region表編號。
【文檔編號】G06F17/30GK104090949SQ201410313144
【公開日】2014年10月8日 申請日期:2014年7月2日 優(yōu)先權(quán)日:2014年7月2日
【發(fā)明者】馮鈞, 盛震宇, 唐志賢, 許瀟, 王超, 査顯月, 杜丙帥, 朱躍龍, 萬定生, 李士進 申請人:河海大學