国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種異構(gòu)數(shù)據(jù)源的實體化方法及其引擎的制作方法

      文檔序號:6622283閱讀:275來源:國知局
      一種異構(gòu)數(shù)據(jù)源的實體化方法及其引擎的制作方法
      【專利摘要】本發(fā)明涉及計算機應(yīng)用【技術(shù)領(lǐng)域】,特別涉及一種異構(gòu)數(shù)據(jù)源的實體化方法及其引擎。本發(fā)明將分布式查詢過程中產(chǎn)生在數(shù)據(jù)緩沖緩存區(qū)中的臨時表轉(zhuǎn)移到持久數(shù)據(jù)池中,其核心包括通道控制器、持久數(shù)據(jù)池兩個部分。通道控制器負責(zé)管理數(shù)據(jù)從分布式查詢引擎進入實體化引擎;持久化數(shù)據(jù)池提供數(shù)據(jù)最終的存儲空間。本發(fā)明解決了云數(shù)據(jù)庫系統(tǒng)查詢過程中產(chǎn)生的中間結(jié)果持久化問題;可以用于云數(shù)據(jù)庫系統(tǒng)查詢數(shù)據(jù)的管理上。
      【專利說明】一種異構(gòu)數(shù)據(jù)源的實體化方法及其引擎

      【技術(shù)領(lǐng)域】
      [0001] 本發(fā)明涉及計算機應(yīng)用【技術(shù)領(lǐng)域】,特別涉及到一種異構(gòu)數(shù)據(jù)源的實體化方法及其 引擎。

      【背景技術(shù)】
      [0002] 在企業(yè)信息化建設(shè)過程中,由于各業(yè)務(wù)系統(tǒng)建設(shè)和實施數(shù)據(jù)管理系統(tǒng)的階段性、 技術(shù)性以及其它經(jīng)濟和人為因素的影響,導(dǎo)致企業(yè)在發(fā)展過程中積累了大量采用不同存儲 方式的業(yè)務(wù)數(shù)據(jù);包括采用的數(shù)據(jù)管理系統(tǒng)也大不相同,從簡單的文件數(shù)據(jù)庫到復(fù)雜的網(wǎng) 絡(luò)數(shù)據(jù)庫,構(gòu)成了企業(yè)的異構(gòu)數(shù)據(jù)源。這些分散的不同業(yè)務(wù)的數(shù)據(jù)管理系統(tǒng)雖然能夠滿足 業(yè)務(wù)數(shù)據(jù)存儲和管理要求,但在許多情況下,企業(yè)領(lǐng)導(dǎo)要做出一項決策,往往需要查詢多個 基于各種異構(gòu)數(shù)據(jù)源的業(yè)務(wù)系統(tǒng)和外部系統(tǒng),進行大量數(shù)據(jù)分析后才能做出決策。
      [0003] 因此,異構(gòu)數(shù)據(jù)源的整合與集成是企業(yè)信息化建設(shè)過程經(jīng)常遇到的一個現(xiàn)實問 題,也是制約企業(yè)各種應(yīng)用信息系統(tǒng)建設(shè)和數(shù)據(jù)共享程度,以及信息化建設(shè)投資重復(fù)或負 擔(dān)重的一個重要因素。
      [0004] 云數(shù)據(jù)庫系統(tǒng)是進行異構(gòu)數(shù)據(jù)源的整合與集成的重要方法。然而,如何云數(shù)據(jù)庫 系統(tǒng)在查詢過程中產(chǎn)生的中間結(jié)果持久化到一個存儲空間中是一個關(guān)鍵問題。


      【發(fā)明內(nèi)容】

      [0005] 本發(fā)明解決的技術(shù)問題之一在于提供一種支持異構(gòu)數(shù)據(jù)源實體化的方法,解決云 數(shù)據(jù)庫系統(tǒng)在查詢過程中產(chǎn)生的中間結(jié)果持久化到一個存儲空間問題。
      [0006] 本發(fā)明解決的技術(shù)問題之二在于提供一種異構(gòu)數(shù)據(jù)源的實體化引擎,解決云數(shù)據(jù) 庫系統(tǒng)在查詢過程中產(chǎn)生的中間結(jié)果持久化到一個存儲空間問題。
      [0007] 本發(fā)明解決上述技術(shù)問題之一的技術(shù)方案是:
      [0008] 所述方法是將云數(shù)據(jù)庫系統(tǒng)在分布式查詢過程中產(chǎn)生在數(shù)據(jù)緩沖緩存區(qū)中的臨 時表轉(zhuǎn)移到持久數(shù)據(jù)池中,形成實體表;以保存一段相對較長的時間。
      [0009] 所述的云數(shù)據(jù)庫系統(tǒng)可以是MySQL、Oracle、SQL Server、DB2,涉及的文件系統(tǒng)可 以是如Excel文件、KV文件,以及Web Service。
      [0010] 所述的方法對數(shù)據(jù)實體化過程全生命周期管理,包括創(chuàng)建實體表、數(shù)據(jù)載入、刷新 實體表、刪除實體表,以及訪問交互表。
      [0011] 所述的實體化在動態(tài)訪問的過程中被系統(tǒng)自動實現(xiàn),整個過程無需用戶干預(yù)。
      [0012] 本發(fā)明解決上述技術(shù)問題之二的技術(shù)方案是:
      [0013] 所述的實體化引擎包括通道控制器、交換表和持久化數(shù)據(jù)池三個組成部分;
      [0014] 所述的通道控制器,負責(zé)管理數(shù)據(jù)從分布式查詢引擎進入實體化引擎的通道;
      [0015] 所述的交換表,存儲實體化引擎需要的一些元數(shù)據(jù),包括實體表與虛擬表的映射 關(guān)系、實體表的創(chuàng)建時間、最近一次更新時間、訪問次數(shù)等;
      [0016] 所述的持久化數(shù)據(jù)池,存儲大量的實體表,是實體化過程中數(shù)據(jù)最終流向的目的 地。
      [0017] 所述的通道控制器包括數(shù)據(jù)的持久化以及實體表的生命周期管理。
      [0018] 本發(fā)明的方法和引擎具有以下有益效果:
      [0019] 1、可以使用存儲空間的數(shù)據(jù)來響應(yīng)后續(xù)的查詢請求,從而大幅減少系統(tǒng)的響應(yīng)時 間,提高系統(tǒng)的性能,降低底層數(shù)據(jù)源的處理壓力。
      [0020] 2、可以利用存儲空間中的數(shù)據(jù)提供數(shù)據(jù)分析以及數(shù)據(jù)挖掘的能力,支持迭代、回 歸等算法,增強云數(shù)據(jù)庫系統(tǒng)在OLAP (Online Analytical Processing)方面的能力。本發(fā) 明支持多種數(shù)據(jù)庫系統(tǒng)(MySQL、Oracle、SQL Server、DB2)以及文件系統(tǒng)(Excel文件、KV 文件)。

      【專利附圖】

      【附圖說明】
      [0021] 下面結(jié)合附圖對本發(fā)明進一步說明:
      [0022] 圖1是本發(fā)明的邏輯架構(gòu)圖;
      [0023] 圖2是本發(fā)明的通道控制原理圖。

      【具體實施方式】
      [0024] 云數(shù)據(jù)庫的分布式查詢引擎在接收到一個查詢請求時,會調(diào)用解析器(Query Parser)將請求解析成一個查詢計劃,然后調(diào)用優(yōu)化器(Query Optimizer)對查詢計劃進 行優(yōu)化,如過濾條件下推、虛擬索引、視圖合并等優(yōu)化策略,以提高查詢計劃的執(zhí)行效率。在 執(zhí)行查詢計劃的過程中,會將遠程的各個數(shù)據(jù)源(Data Source)中的數(shù)據(jù)抽取到本地的數(shù) 據(jù)緩沖緩存區(qū)(Data Buffer Cache)中,進行計算處理,并返回最終的查詢結(jié)果。因此,一 個查詢計劃中用到的虛擬表(視圖)基本上會緩存到數(shù)據(jù)緩沖緩存區(qū)中,形成相應(yīng)的臨時 表(Temp Table)〇
      [0025] 實體化本質(zhì)上是一個數(shù)據(jù)轉(zhuǎn)移的過程,臨時表可以作為實體化的數(shù)據(jù)來源。實體 化的過程就是將分布式查詢過程中產(chǎn)生在數(shù)據(jù)緩沖緩存區(qū)(Data Buffer Cache)中的臨時 表轉(zhuǎn)移到持久數(shù)據(jù)池中,形成實體表的過程。
      [0026] 實體表和臨時表有兩個重要的區(qū)別:
      [0027] 1.生命周期:實體表是持久存在于存儲空間中,生命周期較長,而臨時表目的是 為了支持查詢計劃中某些計算必須要在一個集中的點完成,一個查詢結(jié)束后,臨時表的生 命周期也就結(jié)束了,因此生命周期較短;
      [0028] 2.存放位置:實體表存放在持久數(shù)據(jù)池中,而臨時表存儲在數(shù)據(jù)緩沖緩存區(qū)中;
      [0029] -次查詢計劃中,只有最頂層的虛擬表(實體)產(chǎn)生的臨時表才可能用來作為實 體化。因為,系統(tǒng)會對查詢計劃進行優(yōu)化,比如將一些過濾條件下推到子虛擬表(視圖)上 去執(zhí)行,此時,系統(tǒng)會在運行時改變虛擬表(視圖)的定義。而最頂層的虛擬表(視圖)的 定義在運行時,系統(tǒng)不會改變。
      [0030] 如圖所示,為了提高組件的獨立性,本發(fā)明在設(shè)計上將實體化的功能封裝成一個 單獨的服務(wù)組件-實體化引擎(Materialize Engine)。實體化引擎包括三個重要的組成 部分:
      [0031] 一、通道控制器(Channel Controller):負責(zé)管理數(shù)據(jù)從分布式查詢引擎 (Distributed Query Engine)進入實體化引擎(Materialize Engine)的通道,具體來說 包括數(shù)據(jù)的持久化以及實體表(Entity Table)的生命周期管理;即通道控制器(channel Controller)用于管理虛擬表(視圖)的數(shù)據(jù)從數(shù)據(jù)緩沖緩存區(qū)進出持久數(shù)據(jù)池的通道,負 責(zé)維護實體表的生命周期,主要提供的功能包括:創(chuàng)建實體表、數(shù)據(jù)載入、刷新實體表、刪除 實體表,以及訪問交互表。
      [0032] 通道控制器的邏輯架構(gòu)圖2所示,主要包括6個部分:
      [0033] 1. SQL-Based API :主要提供實體表的創(chuàng)建、數(shù)據(jù)載入、刷新、刪除,提供的是SQL 的接口;
      [0034] 2. Meta API :提供獲取實體表元數(shù)據(jù)的接口;
      [0035] 3. Load Worker :載入線程,負責(zé)將數(shù)據(jù)從分布式引擎中載入到持久化數(shù)據(jù)池中;
      [0036] 4. Swap Worker :交換線程,在檢測到持久數(shù)據(jù)池中已用數(shù)據(jù)量達到一個閾值 (MAX_P00L_THRESH0LD)時,啟動交換線程,根據(jù)LRU算法,刪除那些很久沒被訪問過的"僵 尸實體表";
      [0037] 5. Purge Worker :清理線程,定期掃描Swap Table,刪除游離實體表,游離實體表 對應(yīng)的虛擬表已經(jīng)被刪除掉了;
      [0038] 6、Refresh Worker :刷新線程,定期刷新訪問頻率高的實體表到最新狀態(tài)
      [0039] 二、交換表(Swap Table):存儲實體化引擎需要的一些元數(shù)據(jù),包括實體表與虛擬 表的映射關(guān)系、實體表的創(chuàng)建時間、最近一次更新時間、訪問次數(shù)等。
      [0040] 三、持久化數(shù)據(jù)池 (Persistent Data Pool):存儲大量的實體表,是實體化過程中 數(shù)據(jù)最終流向的目的地。臨時表最終會被轉(zhuǎn)移到持久數(shù)據(jù)池中,形成實體表。在系統(tǒng)中,持 久數(shù)據(jù)池只有一個,是一個基于MySQL Cluster的機群。可以在MySQL Cluster上面創(chuàng)建 一個數(shù)據(jù)庫來存儲實體表,為了簡單起見,所有的實體表都存儲在一個數(shù)據(jù)庫中。
      [0041] 持久化數(shù)據(jù)池中有兩個數(shù)據(jù)庫:
      [0042] 1.實體庫:存儲實體表,所有實體表都存放在實體庫中;
      [0043] 2.產(chǎn)出庫:存儲產(chǎn)出表,所有的產(chǎn)出表都存放在產(chǎn)出庫中。
      【權(quán)利要求】
      1. 一種異構(gòu)數(shù)據(jù)資源的實體化方法,其特征在于:所述方法是將云數(shù)據(jù)庫系統(tǒng)在分布 式查詢過程中產(chǎn)生在數(shù)據(jù)緩沖緩存區(qū)中的臨時表轉(zhuǎn)移到持久數(shù)據(jù)池中,形成實體表;以保 存一段相對較長的時間。
      2. 根據(jù)權(quán)利要求1所述的實體化方法,其特征在于:所述的云數(shù)據(jù)庫系統(tǒng)可以是 MySQL、Oracle、SQL Server、DB2,涉及的文件系統(tǒng)可以是如Excel文件、KV文件,以及Web Service。
      3. 根據(jù)權(quán)利要求1所述的實體化方法,其特征在于:所述的方法對數(shù)據(jù)實體化過程全 生命周期管理,包括創(chuàng)建實體表、數(shù)據(jù)載入、刷新實體表、刪除實體表,以及訪問交互表。
      4. 根據(jù)權(quán)利要求2所述的實體化方法,其特征在于:所述的方法對數(shù)據(jù)實體化過程全 生命周期管理,包括創(chuàng)建實體表、數(shù)據(jù)載入、刷新實體表、刪除實體表,以及訪問交互表。
      5. 根據(jù)權(quán)利要求1至4任一項所述的實體化方法,其特征在于:所述的實體化在動態(tài) 訪問的過程中被系統(tǒng)自動實現(xiàn),整個過程無需用戶干預(yù)。
      6. -種實現(xiàn)權(quán)利要求1至5任一項方法的實體化引擎,其特征在于:所述的實體化引 擎包括通道控制器、交換表和持久化數(shù)據(jù)池三個組成部分; 所述的通道控制器,負責(zé)管理數(shù)據(jù)從分布式查詢引擎進入實體化引擎的通道; 所述的交換表,存儲實體化引擎需要的一些元數(shù)據(jù),包括實體表與虛擬表的映射關(guān)系、 實體表的創(chuàng)建時間、最近一次更新時間、訪問次數(shù)等; 所述的持久化數(shù)據(jù)池,存儲大量的實體表,是實體化過程中數(shù)據(jù)最終流向的目的地。
      7. 根據(jù)權(quán)利要求6所述的實體化引擎,其特征在于:所述的通道控制器包括數(shù)據(jù)的持 久化以及實體表的生命周期管理。
      【文檔編號】G06F17/30GK104156419SQ201410377598
      【公開日】2014年11月19日 申請日期:2014年8月3日 優(yōu)先權(quán)日:2014年8月3日
      【發(fā)明者】謝毅, 岳強, 袁子牧, 徐志偉 申請人:廣東電子工業(yè)研究院有限公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1