專利名稱:數(shù)據(jù)查詢系統(tǒng)及方法
技術(shù)領(lǐng)域:
本發(fā)明涉及數(shù)據(jù)查詢技術(shù)領(lǐng)域,特別涉及一種數(shù)據(jù)查詢系統(tǒng)及方法。
背景技術(shù):
經(jīng)營分析系統(tǒng)是以業(yè)務(wù)運營支撐系統(tǒng)(BOSS,Business & Operation Support System)中的數(shù)據(jù)為基礎(chǔ),構(gòu)建統(tǒng)一的經(jīng)營分析數(shù)據(jù)庫,幫助企業(yè)的經(jīng)營決策層了解企業(yè)經(jīng)營的現(xiàn)狀,發(fā)現(xiàn)企業(yè)運營的優(yōu)勢和劣勢,預(yù)測未來發(fā)展趨勢,對客戶進(jìn)行細(xì)分,指導(dǎo)營銷部門和客服部門進(jìn)行有針對性的營銷和高效的客戶關(guān)系管理。每個企業(yè)可能包含多個經(jīng)營分析系統(tǒng),每個經(jīng)營分析系統(tǒng)負(fù)責(zé)為對應(yīng)地理區(qū)域內(nèi)的經(jīng)營分析用戶提供經(jīng)營分析數(shù)據(jù)的查詢等處理,每個經(jīng)營分析系統(tǒng)中都存儲有對應(yīng)地理區(qū)域內(nèi)的經(jīng)營分析數(shù)據(jù)??梢杂眠壿嬓畔⒒蛭锢硇畔砻枋龈鱾€經(jīng)營分析數(shù)據(jù),各個經(jīng)營分析數(shù)據(jù)的邏輯信息按照邏輯結(jié)構(gòu)組合成邏輯模型,邏輯信息主要從邏輯及業(yè)務(wù)角度來描述經(jīng)營分析數(shù)據(jù),主要描述“做什么”,各個經(jīng)營分析數(shù)據(jù)的物理信息按照物理結(jié)構(gòu)組合稱為物理模型,物理信息主要從經(jīng)營分析數(shù)據(jù)的存儲方式的角度來描述經(jīng)營分析數(shù)據(jù),主要描述“如何做”。 經(jīng)營分析用戶在經(jīng)營分析系統(tǒng)中查詢經(jīng)營分析數(shù)據(jù)時,一般直接將該經(jīng)營分析數(shù)據(jù)的物理信息通知給經(jīng)營分析系統(tǒng),由于物理信息反映經(jīng)營分析數(shù)據(jù)的存儲方式,因此經(jīng)營分析系統(tǒng)可以根據(jù)物理信息從數(shù)據(jù)庫服務(wù)器中查找出經(jīng)營分析數(shù)據(jù)提供給經(jīng)營分析用戶?,F(xiàn)有技術(shù)中,每個經(jīng)營分析系統(tǒng)使用獨立的處理軟件為經(jīng)營分析用戶提供數(shù)據(jù)查詢等處理,通常將經(jīng)營分析數(shù)據(jù)的物理信息編碼到處理軟件中,因此需要針對各個經(jīng)營分析系統(tǒng),分別將該經(jīng)營分析系統(tǒng)中的經(jīng)營分析數(shù)據(jù)的物理信息編碼到相應(yīng)的處理軟件中, 若某些經(jīng)營分析數(shù)據(jù)的物理信息發(fā)生變化,則需要修改已編碼到處理軟件中的物理信息, 這就使得數(shù)據(jù)查詢的靈活性較低。
發(fā)明內(nèi)容
本發(fā)明實施例提供一種數(shù)據(jù)查詢系統(tǒng)及方法,用以解決現(xiàn)有技術(shù)中存在的查詢數(shù)據(jù)時的靈活性較低的問題。本發(fā)明實施例技術(shù)方案如下—種數(shù)據(jù)查詢系統(tǒng),包括經(jīng)營分析系統(tǒng)、數(shù)據(jù)查詢裝置、元數(shù)據(jù)系統(tǒng)和數(shù)據(jù)倉庫, 所述數(shù)據(jù)查詢裝置包括邏輯信息獲取單元、語法分析單元、模型翻譯單元和數(shù)據(jù)查詢單元, 其中邏輯信息獲取單元,用于從經(jīng)營分析系統(tǒng)獲取需查詢的數(shù)據(jù)的邏輯信息;語法分析單元,用于對邏輯信息獲取單元獲取的邏輯信息進(jìn)行解析,解析出各邏輯查詢信息;模型翻譯單元,用于分別對每個邏輯查詢信息進(jìn)行解析,解析出至少一個邏輯模型元數(shù)據(jù),在元數(shù)據(jù)系統(tǒng)存儲的邏輯模型元數(shù)據(jù)和物理模型元數(shù)據(jù)的對應(yīng)關(guān)系中,查找每個邏輯模型元數(shù)據(jù)對應(yīng)的物理模型元數(shù)據(jù),根據(jù)查找到的各物理模型元數(shù)據(jù),生成與該邏輯查詢信息對應(yīng)的物理查詢信息,根據(jù)生成的各物理查詢信息,生成查詢所述數(shù)據(jù)所需的物理信息;數(shù)據(jù)查詢單元,用于根據(jù)生成的物理信息,在數(shù)據(jù)倉庫中查找所述數(shù)據(jù)。
一種數(shù)據(jù)查詢方法,該方法包括步驟從經(jīng)營分析系統(tǒng)獲取需查詢的數(shù)據(jù)的邏輯信息;對獲取的邏輯信息進(jìn)行解析,解析出各邏輯查詢信息;分別對每個邏輯查詢信息進(jìn)行解析,解析出至少一個邏輯模型元數(shù)據(jù),在元數(shù)據(jù)系統(tǒng)存儲的邏輯模型元數(shù)據(jù)和物理模型元數(shù)據(jù)的對應(yīng)關(guān)系中,查找每個邏輯模型元數(shù)據(jù)對應(yīng)的物理模型元數(shù)據(jù),根據(jù)查找到的各物理模型元數(shù)據(jù),生成與該邏輯查詢信息對應(yīng)的物理查詢信息,根據(jù)生成的各物理查詢信息,生成查詢所述數(shù)據(jù)所需的物理信息;根據(jù)生成的物理信息,在數(shù)據(jù)倉庫中查找所述數(shù)據(jù)。本發(fā)明實施例技術(shù)方案中,數(shù)據(jù)查詢裝置中的邏輯信息獲取單元首先從經(jīng)營分析系統(tǒng)中獲取用戶需查詢的數(shù)據(jù)的邏輯信息,由于邏輯信息不能直接用來查詢數(shù)據(jù),因此需要語法分析單元對獲取的邏輯信息進(jìn)行解析,解析出各邏輯查詢信息,然后模型翻譯單元分別對每個邏輯查詢信息進(jìn)行解析,解析出至少一個邏輯模型元數(shù)據(jù),在元數(shù)據(jù)系統(tǒng)存儲的邏輯模型元數(shù)據(jù)和物理模型元數(shù)據(jù)的對應(yīng)關(guān)系中,查找每個邏輯模型元數(shù)據(jù)對應(yīng)的物理模型元數(shù)據(jù),根據(jù)查找到的各物理模型元數(shù)據(jù),生成與該邏輯查詢信息對應(yīng)的物理查詢信息,根據(jù)生成的各物理查詢信息,生成查詢所述數(shù)據(jù)所需的物理信息,數(shù)據(jù)查詢單元根據(jù)生成的物理信息,在數(shù)據(jù)倉庫中查找所述數(shù)據(jù),由上可見,本發(fā)明實施例技術(shù)方案的數(shù)據(jù)查詢系統(tǒng)中的元數(shù)據(jù)系統(tǒng)存儲了邏輯模型元數(shù)據(jù)和物理模型元數(shù)據(jù)的對應(yīng)關(guān)系,在查詢數(shù)據(jù)時可以根據(jù)該對應(yīng)關(guān)系確定查詢數(shù)據(jù)所需的物理信息,這就避免了現(xiàn)有技術(shù)將數(shù)據(jù)的物理信息編碼到處理軟件中,在某些數(shù)據(jù)的物理信息發(fā)生變化時,需要修改已編碼到處理軟件中的物理信息的問題,這就有效地提高了查詢數(shù)據(jù)的靈活性。
圖1為本發(fā)明實施例中,數(shù)據(jù)查詢系統(tǒng)結(jié)構(gòu)示意圖;圖2為本發(fā)明實施例中,數(shù)據(jù)查詢方法流程示意圖;圖3為本發(fā)明實施例中,數(shù)據(jù)查詢方法具體實現(xiàn)流程示意圖數(shù)據(jù)查詢系統(tǒng)結(jié)構(gòu)示意圖。
具體實施例方式下面結(jié)合各個附圖對本發(fā)明實施例技術(shù)方案的主要實現(xiàn)原理具體實施方式
及其對應(yīng)能夠達(dá)到的有益效果進(jìn)行詳細(xì)地闡述。如圖1所示,為本發(fā)明實施例中的數(shù)據(jù)查詢系統(tǒng)結(jié)構(gòu)示意圖,數(shù)據(jù)查詢系統(tǒng)包括經(jīng)營分析系統(tǒng)11、數(shù)據(jù)查詢裝置12、元數(shù)據(jù)系統(tǒng)13和數(shù)據(jù)倉庫14,經(jīng)營分析系統(tǒng)11負(fù)責(zé)獲得需查詢的數(shù)據(jù)的邏輯信息,數(shù)據(jù)查詢裝置12從經(jīng)營分析系統(tǒng)11中獲取需查詢的數(shù)據(jù)的邏輯信息,可以主動獲取,也可以由經(jīng)營分析系統(tǒng)11發(fā)送,數(shù)據(jù)查詢裝置12根據(jù)獲取的邏輯信息以及元數(shù)據(jù)系統(tǒng)13中存儲的邏輯元數(shù)據(jù)和物理元數(shù)據(jù)的對應(yīng)關(guān)系,生成查詢數(shù)據(jù)所需的物理信息,然后在數(shù)據(jù)倉庫14中查找所述數(shù)據(jù),其中數(shù)據(jù)查詢裝置包括邏輯信息獲取單元121、語法分析單元122、模型翻譯單元123和數(shù)據(jù)查詢單元124,其中邏輯信息獲取單元121,用于從經(jīng)營分析系統(tǒng)11獲取需查詢的數(shù)據(jù)的邏輯信息;語法分析單元122,用于對邏輯信息獲取單元121獲取的邏輯信息進(jìn)行解析,解析出各邏輯查詢信息;
模型翻譯單元123,用于分別對語法分析單元122解析出的每個邏輯查詢信息進(jìn)行解析,解析出至少一個邏輯模型元數(shù)據(jù),在元數(shù)據(jù)系統(tǒng)13存儲的邏輯模型元數(shù)據(jù)和物理模型元數(shù)據(jù)的對應(yīng)關(guān)系中,查找每個邏輯模型元數(shù)據(jù)對應(yīng)的物理模型元數(shù)據(jù),根據(jù)查找到的各物理模型元數(shù)據(jù),生成與該邏輯查詢信息對應(yīng)的物理查詢信息,根據(jù)生成的各物理查詢信息,生成查詢所述數(shù)據(jù)所需的物理信息;數(shù)據(jù)查詢單元124,用于根據(jù)模型翻譯單元123生成的物理信息,在數(shù)據(jù)倉庫14中查找所述數(shù)據(jù)。較佳地,為了提高數(shù)據(jù)查詢速度和查詢效率,本發(fā)明實施例提出數(shù)據(jù)查詢裝置12 還可以進(jìn)一步包括元數(shù)據(jù)緩存處理單元,用于將查找到的物理模型元數(shù)據(jù)與邏輯模型元數(shù)據(jù)的對應(yīng)關(guān)系進(jìn)行緩存,模型翻譯單元123再次查找相同的邏輯模型元數(shù)據(jù)時,可以直接從元數(shù)據(jù)緩存處理單元緩存的對應(yīng)關(guān)系中查找對應(yīng)的物理模型元數(shù)據(jù),從而能夠有效地提高查詢速度和查詢效率。較佳地,本發(fā)明實施例提出數(shù)據(jù)查詢裝置12還可以進(jìn)一步包括信息緩存處理單元,用于將獲取的邏輯信息和生成的物理信息的對應(yīng)關(guān)系進(jìn)行緩存,邏輯信息獲取單元121 再次獲取到相同的邏輯信息時,模型翻譯單元123直接從信息緩存處理單元緩存的對應(yīng)關(guān)系中查找對應(yīng)的物理信息,從而有效地提高了查詢速度和查詢效率。較佳地,其中上述邏輯查詢信息包括邏輯查詢結(jié)果信息、邏輯查詢來源信息和邏輯查詢條件信息;物理查詢信息包括物理查詢結(jié)果信息、物理查詢來源信息和物理查詢條件fe息。較佳地,數(shù)據(jù)查詢單元1 根據(jù)生成的物理信息中的物理查詢來源信息,確定數(shù)據(jù)倉庫14中存儲所述數(shù)據(jù)的數(shù)據(jù)源,以及根據(jù)生成的物理信息中的物理查詢結(jié)果信息和物理查詢條件信息,在確定出的數(shù)據(jù)源所存儲的各數(shù)據(jù)中,查找所述數(shù)據(jù)。較佳地,模型翻譯單元123對邏輯查詢信息進(jìn)行解析前,語法分析單元122還可以進(jìn)一步根據(jù)預(yù)設(shè)的校驗規(guī)則,對獲取的邏輯信息進(jìn)行語法正確性校驗,若校驗失敗,則返回失敗提示信息。相應(yīng)的,本發(fā)明實施例還提供一種數(shù)據(jù)查詢方法,其方法流程圖如圖2所示,其具體處理過程如下步驟21,從經(jīng)營分析系統(tǒng)獲取需查詢的數(shù)據(jù)的邏輯信息;本發(fā)明實施例中,用戶在需要查詢數(shù)據(jù)時,可以向經(jīng)營分析系統(tǒng)發(fā)送攜帶有該數(shù)據(jù)的邏輯信息的查詢請求,其中該查詢請求中還可以進(jìn)一步攜帶有該用戶的身份信息,經(jīng)營分析系統(tǒng)接收到查詢請求后,將該查詢請求發(fā)送給數(shù)據(jù)查詢裝置,數(shù)據(jù)查詢裝置首先根據(jù)查詢請求中攜帶的身份信息,對該用戶進(jìn)行身份驗證,若驗證通過,則為該用戶進(jìn)行查詢操作,若驗證不通過,則可以向該用戶發(fā)送驗證失敗提示消息。本發(fā)明實施例中,數(shù)據(jù)的邏輯信息也可以稱為邏輯模型查詢語句,邏輯模型查詢語句所使用的語言可以類似結(jié)構(gòu)化查詢語言(SQL,Structured Query Language),數(shù)據(jù)查詢裝置獲取的邏輯信息可以為經(jīng)營分析系統(tǒng)按照預(yù)設(shè)的封裝方式進(jìn)行封裝后得到的,預(yù)設(shè)的封裝方式可以但不限于為可擴展標(biāo)記語言(XML,Extensible Markup Language)封裝方式。數(shù)據(jù)查詢裝置在接收到查詢請求后,可以進(jìn)一步根據(jù)預(yù)設(shè)的校驗規(guī)則,對獲取到的邏輯信息進(jìn)行語法正確性校驗,若校驗成功,則為該用戶進(jìn)行查詢操作,若校驗失敗,則向該用戶返回語法校驗失敗提示信息,其中可以但不限于通過正則表達(dá)式等方法進(jìn)行語法正確性校驗,其過程與SQL的語法檢查過程類似。步驟22,對獲取的邏輯信息進(jìn)行解析,解析出各邏輯查詢信息;數(shù)據(jù)的邏輯信息主要描述“做什么”,物理信息主要描述“如何做”,而要查詢數(shù)據(jù)必須要知道下述三種信息查詢什么數(shù)據(jù)、在哪些數(shù)據(jù)中查詢、查詢該數(shù)據(jù)的約束條件,上述三種信息在邏輯模型中稱為邏輯查詢信息,分別為邏輯查詢結(jié)果信息、邏輯查詢來源信息、邏輯查詢條件信息,上述三種信息在物理模型中稱為物理查詢信息,分別為物理查詢結(jié)果信息、物理查詢來源信息、物理查詢條件信息。步驟23,分別對每個邏輯查詢信息進(jìn)行解析,解析出至少一個邏輯模型元數(shù)據(jù);每個邏輯查詢信息都對應(yīng)至少一個邏輯模型元數(shù)據(jù),每個物理查詢信息都對應(yīng)至少一個物理模型元數(shù)據(jù),例如,要查詢的經(jīng)營分析數(shù)據(jù)為地區(qū)a的個人用戶資料中,用戶 A的手機號碼和客戶編號,邏輯查詢結(jié)果信息為手機號碼和客戶編號,其對應(yīng)的兩個邏輯模型元數(shù)據(jù)分別為“手機號碼”和“客戶編號”,兩個邏輯模型元數(shù)據(jù)分別對應(yīng)不同的物理模型元數(shù)據(jù),兩個物理模型元數(shù)據(jù)可以生成物理查詢結(jié)果信息。也就是說邏輯信息實質(zhì)上是多個邏輯模型元數(shù)據(jù)的組合,物理信息實質(zhì)上是多個物理模型元數(shù)據(jù)的組合。步驟M,在元數(shù)據(jù)系統(tǒng)存儲的邏輯模型元數(shù)據(jù)和物理模型元數(shù)據(jù)的對應(yīng)關(guān)系中, 查找每個邏輯模型元數(shù)據(jù)對應(yīng)的物理模型元數(shù)據(jù);為了提高數(shù)據(jù)查詢速度和查詢效率,本發(fā)明實施例提出將查找到的物理模型元數(shù)據(jù)與邏輯模型元數(shù)據(jù)的對應(yīng)關(guān)系進(jìn)行緩存,后續(xù)再次查找相同的邏輯模型元數(shù)據(jù)時,直接從緩存的對應(yīng)關(guān)系中查找對應(yīng)的物理模型元數(shù)據(jù),也就是說數(shù)據(jù)查詢裝置從每個邏輯查詢信息中解析出各邏輯模型元數(shù)據(jù)后,可以先在緩存的物理模型元數(shù)據(jù)與邏輯模型元數(shù)據(jù)的對應(yīng)關(guān)系中查找與解析出的每個邏輯模型元數(shù)據(jù)對應(yīng)的物理模型元數(shù)據(jù),若沒有查找到, 則在元數(shù)據(jù)系統(tǒng)存儲的邏輯模型元數(shù)據(jù)和物理模型元數(shù)據(jù)的對應(yīng)關(guān)系中進(jìn)行查找,從而能夠有效地提高查詢速度和查詢效率。步驟25,根據(jù)查找到的各物理模型元數(shù)據(jù),生成與該邏輯查詢信息對應(yīng)的物理查詢信息;其中物理查詢信息可以但不限于包括物理查詢結(jié)果信息、物理查詢來源信息、物理查詢條件信息。步驟沈,根據(jù)生成的各物理查詢信息,生成查詢所述數(shù)據(jù)所需的物理信息;其中數(shù)據(jù)的物理信息也可以稱為物理模型查詢語句,物理模型查詢語句可以但不限于使用SQL。本發(fā)明實施例提出,將獲取到的邏輯信息和生成的物理信息的對應(yīng)關(guān)系進(jìn)行緩存,后續(xù)再次獲取到該邏輯信息時,直接從緩存的邏輯信息和物理信息的對應(yīng)關(guān)系中查找對應(yīng)的物理信息,也就是說數(shù)據(jù)查詢裝置獲取到邏輯信息后,首先在緩存的邏輯信息和物理信息的對應(yīng)關(guān)系中查找對應(yīng)的物理信息,若未查找到,則對該邏輯信息進(jìn)行解析,解析出各邏輯查詢信息,然后再對各邏輯查詢信息進(jìn)行解析,解析出各邏輯模型元數(shù)據(jù),在元數(shù)據(jù)系統(tǒng)存儲的邏輯模型元數(shù)據(jù)和物理模型元數(shù)據(jù)的對應(yīng)關(guān)系中,查找各邏輯模型元數(shù)據(jù)對應(yīng)的物理模型元數(shù)據(jù),然后根據(jù)各物理模型元數(shù)據(jù)生成各物理查詢信息,再根據(jù)各物理查詢信息生成查詢所述數(shù)據(jù)所需的物理信息,從而能夠有效地提高查詢速度和查詢效率。步驟27,根據(jù)生成的物理信息,在數(shù)據(jù)倉庫中查找所述數(shù)據(jù)。由于生成的物理信息由物理查詢結(jié)果信息、物理查詢來源信息、物理查詢條件信息組成,而物理查詢來源信息表示了在哪些數(shù)據(jù)中查詢該數(shù)據(jù),因此數(shù)據(jù)查詢裝置可以首先根據(jù)物理信息中的物理查詢來源信息,確定數(shù)據(jù)倉庫中存儲需查詢的數(shù)據(jù)的數(shù)據(jù)源,即確定出存儲該數(shù)據(jù)的數(shù)據(jù)庫、文本文件或數(shù)據(jù)表等,然后根據(jù)生成的物理信息中的物理查詢結(jié)果信息和物理查詢條件信息,在確定出的數(shù)據(jù)源所存儲的各數(shù)據(jù)中,查找所述數(shù)據(jù)。若物理查詢來源信息對應(yīng)多個數(shù)據(jù)源,例如對應(yīng)多個數(shù)據(jù)庫,也就是說確定出的存儲有需查詢的數(shù)據(jù)的數(shù)據(jù)庫有多個,則可以按照預(yù)設(shè)的查詢順序,依次在確定出的多個數(shù)據(jù)庫中查詢所述數(shù)據(jù)。在查找到所述數(shù)據(jù)后,數(shù)據(jù)查詢裝置可以按照預(yù)設(shè)的編碼規(guī)則,對查找到的數(shù)據(jù)進(jìn)行編碼,形成數(shù)據(jù)流或數(shù)據(jù)文件,再將編碼后的數(shù)據(jù)流或數(shù)據(jù)文件發(fā)送給經(jīng)營分析系統(tǒng), 由經(jīng)營分析系統(tǒng)提供給用戶。由上述處理過程可知,本發(fā)明實施例技術(shù)方案中,數(shù)據(jù)查詢裝置中的邏輯信息獲取單元首先從經(jīng)營分析系統(tǒng)中獲取用戶需查詢的數(shù)據(jù)的邏輯信息,由于邏輯信息不能直接用來查詢數(shù)據(jù),因此需要語法分析單元對獲取的邏輯信息進(jìn)行解析,解析出各邏輯查詢信息,然后模型翻譯單元分別對每個邏輯查詢信息進(jìn)行解析,解析出至少一個邏輯模型元數(shù)據(jù),在元數(shù)據(jù)系統(tǒng)存儲的邏輯模型元數(shù)據(jù)和物理模型元數(shù)據(jù)的對應(yīng)關(guān)系中,查找每個邏輯模型元數(shù)據(jù)對應(yīng)的物理模型元數(shù)據(jù),根據(jù)查找到的各物理模型元數(shù)據(jù),生成與該邏輯查詢信息對應(yīng)的物理查詢信息,根據(jù)生成的各物理查詢信息,生成查詢所述數(shù)據(jù)所需的物理信息,數(shù)據(jù)查詢單元根據(jù)生成的物理信息,在數(shù)據(jù)倉庫中查找所述數(shù)據(jù),由上可見,本發(fā)明實施例技術(shù)方案的數(shù)據(jù)查詢系統(tǒng)中的元數(shù)據(jù)系統(tǒng)存儲了邏輯模型元數(shù)據(jù)和物理模型元數(shù)據(jù)的對應(yīng)關(guān)系,在查詢數(shù)據(jù)時可以根據(jù)該對應(yīng)關(guān)系確定查詢數(shù)據(jù)所需的物理信息,這就避免了現(xiàn)有技術(shù)將數(shù)據(jù)的物理信息編碼到處理軟件中,在某些數(shù)據(jù)的物理信息發(fā)生變化時,需要修改已編碼到處理軟件中的物理信息的問題,這就有效地提高了查詢數(shù)據(jù)的靈活性。下面給出更為具體的實施方式。如圖3所示,為本發(fā)明實施例中數(shù)據(jù)查詢方法具體實現(xiàn)流程圖,其具體處理過程如下步驟31,數(shù)據(jù)查詢裝置從經(jīng)營分析系統(tǒng)獲取經(jīng)營分析用戶發(fā)送的查詢請求,該查詢請求中攜帶有需查詢的經(jīng)營分析數(shù)據(jù)的邏輯信息以及該經(jīng)營分析用戶的身份信息;步驟32,根據(jù)獲取到的查詢請求中攜帶的身份信息,對該經(jīng)營分析用戶進(jìn)行身份驗證;步驟33,若步驟32的驗證結(jié)果為通過,則根據(jù)預(yù)設(shè)的校驗規(guī)則,對獲取到的的查詢請求中攜帶的邏輯信息進(jìn)行語法正確性校驗;步驟34,若步驟33的校驗結(jié)果為成功,則將獲取到的查詢請求中攜帶的邏輯信息進(jìn)行解析,解析出各邏輯查詢信息,包括邏輯查詢結(jié)果信息、邏輯查詢來源信息、邏輯查詢條件信息;步驟35,對解析出的每個邏輯查詢信息進(jìn)行解析,解析出至少一個邏輯模型元數(shù)據(jù);
步驟36,針對解析出的每個邏輯查詢信息,在數(shù)據(jù)倉庫存儲的邏輯模型元數(shù)據(jù)和物理模型元數(shù)據(jù)的對應(yīng)關(guān)系中,查找解析出的每個邏輯模型元數(shù)據(jù)對應(yīng)的物理模型元數(shù)據(jù);步驟37,針對解析出的每個邏輯查詢信息,根據(jù)解析出的各物理模型元數(shù)據(jù),生成與該邏輯查詢信息對應(yīng)的物理查詢信息;步驟38,根據(jù)生成的各物理查詢信息,生成與獲取到的邏輯信息對應(yīng)的物理信息;步驟39,根據(jù)生成的物理信息中的物理查詢來源信息,確定數(shù)據(jù)倉庫中存儲需查詢的經(jīng)營分析數(shù)據(jù)的數(shù)據(jù)源;步驟310,根據(jù)生成的物理信息中的物理查詢結(jié)果信息和物理查詢條件信息,在確定出的數(shù)據(jù)源所存儲的各經(jīng)營分析數(shù)據(jù)中,查找經(jīng)營分析用戶需查詢的經(jīng)營分析數(shù)據(jù);步驟311,按照預(yù)設(shè)的編碼規(guī)則,對查找到的經(jīng)營分析數(shù)據(jù)進(jìn)行編碼,形成數(shù)據(jù)流或數(shù)據(jù)文件;步驟312,將編碼后的數(shù)據(jù)流或數(shù)據(jù)文件發(fā)送給經(jīng)營分析系統(tǒng),由經(jīng)營分析系統(tǒng)提供給上述經(jīng)營分析用戶。顯然,本領(lǐng)域的技術(shù)人員可以對本發(fā)明進(jìn)行各種改動和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動和變型在內(nèi)。
權(quán)利要求
1.一種數(shù)據(jù)查詢系統(tǒng),其特征在于,包括經(jīng)營分析系統(tǒng)、數(shù)據(jù)查詢裝置、元數(shù)據(jù)系統(tǒng)和數(shù)據(jù)倉庫,所述數(shù)據(jù)查詢裝置包括邏輯信息獲取單元、語法分析單元、模型翻譯單元和數(shù)據(jù)查詢單元,其中邏輯信息獲取單元,用于從經(jīng)營分析系統(tǒng)獲取需查詢的數(shù)據(jù)的邏輯信息;語法分析單元,用于對邏輯信息獲取單元獲取的邏輯信息進(jìn)行解析,解析出各邏輯查詢信息;模型翻譯單元,用于分別對每個邏輯查詢信息進(jìn)行解析,解析出至少一個邏輯模型元數(shù)據(jù),在元數(shù)據(jù)系統(tǒng)存儲的邏輯模型元數(shù)據(jù)和物理模型元數(shù)據(jù)的對應(yīng)關(guān)系中,查找每個邏輯模型元數(shù)據(jù)對應(yīng)的物理模型元數(shù)據(jù),根據(jù)查找到的各物理模型元數(shù)據(jù),生成與該邏輯查詢信息對應(yīng)的物理查詢信息,根據(jù)生成的各物理查詢信息,生成查詢所述數(shù)據(jù)所需的物理 fn息;數(shù)據(jù)查詢單元,用于根據(jù)生成的物理信息,在數(shù)據(jù)倉庫中查找所述數(shù)據(jù)。
2.如權(quán)利要求1所述的數(shù)據(jù)查詢系統(tǒng),其特征在于,所述數(shù)據(jù)查詢裝置還包括元數(shù)據(jù)緩存處理單元,用于將查找到的物理模型元數(shù)據(jù)與邏輯模型元數(shù)據(jù)的對應(yīng)關(guān)系進(jìn)行緩存;模型翻譯單元再次查找相同的邏輯模型元數(shù)據(jù)時,直接從元數(shù)據(jù)緩存處理單元緩存的對應(yīng)關(guān)系中查找對應(yīng)的物理模型元數(shù)據(jù)。
3.如權(quán)利要求1所述的數(shù)據(jù)查詢系統(tǒng),其特征在于,所述數(shù)據(jù)查詢裝置還包括信息緩存處理單元,用于將所述邏輯信息和所述物理信息的對應(yīng)關(guān)系進(jìn)行緩存;邏輯信息獲取單元再次獲取到所述邏輯信息時,模型翻譯單元直接從信息緩存處理單元緩存的對應(yīng)關(guān)系中查找對應(yīng)的物理信息。
4.如權(quán)利要求1所述的數(shù)據(jù)查詢系統(tǒng),其特征在于,邏輯查詢信息包括邏輯查詢結(jié)果信息、邏輯查詢來源信息和邏輯查詢條件信息;物理查詢信息包括物理查詢結(jié)果信息、物理查詢來源信息和物理查詢條件信息。
5.如權(quán)利要求4所述的數(shù)據(jù)查詢系統(tǒng),其特征在于,數(shù)據(jù)查詢單元根據(jù)生成的物理信息中的物理查詢來源信息,確定數(shù)據(jù)倉庫中存儲所述數(shù)據(jù)的數(shù)據(jù)源,以及根據(jù)生成的物理信息中的物理查詢結(jié)果信息和物理查詢條件信息,在確定出的數(shù)據(jù)源所存儲的各數(shù)據(jù)中, 查找所述數(shù)據(jù)。
6.如權(quán)利要求1所述的數(shù)據(jù)查詢系統(tǒng),其特征在于,所述模型翻譯單元對邏輯查詢信息進(jìn)行解析前,所述語法分析單元根據(jù)預(yù)設(shè)的校驗規(guī)則,對獲取的邏輯信息進(jìn)行語法正確性校驗,若校驗失敗,則返回失敗提示信息。
7.一種數(shù)據(jù)查詢方法,其特征在于,包括從經(jīng)營分析系統(tǒng)獲取需查詢的數(shù)據(jù)的邏輯信息;對獲取的邏輯信息進(jìn)行解析,解析出各邏輯查詢信息;分別對每個邏輯查詢信息進(jìn)行解析,解析出至少一個邏輯模型元數(shù)據(jù),在元數(shù)據(jù)系統(tǒng)存儲的邏輯模型元數(shù)據(jù)和物理模型元數(shù)據(jù)的對應(yīng)關(guān)系中,查找每個邏輯模型元數(shù)據(jù)對應(yīng)的物理模型元數(shù)據(jù),根據(jù)查找到的各物理模型元數(shù)據(jù),生成與該邏輯查詢信息對應(yīng)的物理查詢信息,根據(jù)生成的各物理查詢信息,生成查詢所述數(shù)據(jù)所需的物理信息;根據(jù)生成的物理信息,在數(shù)據(jù)倉庫中查找所述數(shù)據(jù)。
8.如權(quán)利要求7所述的數(shù)據(jù)查詢方法,其特征在于,還包括將查找到的物理模型元數(shù)據(jù)與邏輯模型元數(shù)據(jù)的對應(yīng)關(guān)系進(jìn)行緩存; 后續(xù)再次查找相同的邏輯模型元數(shù)據(jù)時,直接從緩存的對應(yīng)關(guān)系中查找對應(yīng)的物理模型元數(shù)據(jù)。
9.如權(quán)利要求7所述的數(shù)據(jù)查詢方法,其特征在于,還包括 將所述邏輯信息和所述物理信息的對應(yīng)關(guān)系進(jìn)行緩存;后續(xù)再次獲取到所述邏輯信息時,直接從緩存的對應(yīng)關(guān)系中查找對應(yīng)的物理信息。
10.如權(quán)利要求7所述的數(shù)據(jù)查詢方法,其特征在于,邏輯查詢信息包括邏輯查詢結(jié)果信息、邏輯查詢來源信息和邏輯查詢條件信息;物理查詢信息包括物理查詢結(jié)果信息、物理查詢來源信息和物理查詢條件信息。
11.如權(quán)利要求7所述的數(shù)據(jù)查詢方法,其特征在于,根據(jù)生成的物理信息,在數(shù)據(jù)倉庫中查找所述數(shù)據(jù),具體包括根據(jù)生成的物理信息中的物理查詢來源信息,確定數(shù)據(jù)倉庫中存儲所述數(shù)據(jù)的數(shù)據(jù)源;根據(jù)生成的物理信息中的物理查詢結(jié)果信息和物理查詢條件信息,在確定出的數(shù)據(jù)源所存儲的各數(shù)據(jù)中,查找所述數(shù)據(jù)。
12.如權(quán)利要求7所述的數(shù)據(jù)查詢方法,其特征在于,在對邏輯查詢信息進(jìn)行解析之前,還包括根據(jù)預(yù)設(shè)的校驗規(guī)則,對獲取的邏輯信息進(jìn)行語法正確性校驗,若校驗失敗,則返回失敗提示信息。
全文摘要
本發(fā)明公開了一種數(shù)據(jù)查詢系統(tǒng)及方法,包括經(jīng)營分析系統(tǒng)、數(shù)據(jù)查詢裝置、元數(shù)據(jù)系統(tǒng)和數(shù)據(jù)倉庫,數(shù)據(jù)查詢裝置包括邏輯信息獲取單元、語法分析單元、模型翻譯單元和數(shù)據(jù)查詢單元,邏輯信息獲取單元從經(jīng)營分析系統(tǒng)獲取邏輯信息;語法分析單元針對該邏輯信息解析出各邏輯查詢信息;模型翻譯單元分別針對每個邏輯查詢信息解析出至少一個邏輯模型元數(shù)據(jù),分別在元數(shù)據(jù)系統(tǒng)中查找對應(yīng)的物理模型元數(shù)據(jù),根據(jù)查找到的物理模型元數(shù)據(jù)生成各物理查詢信息,根據(jù)生成的各物理查詢信息生成物理信息;數(shù)據(jù)查詢單元根據(jù)生成的物理信息在數(shù)據(jù)倉庫中查找數(shù)據(jù)。采用本發(fā)明技術(shù)方案,解決了現(xiàn)有技術(shù)中存在的對數(shù)據(jù)進(jìn)行查詢時的靈活性較低的問題。
文檔編號G06F17/30GK102402522SQ20101027991
公開日2012年4月4日 申請日期2010年9月9日 優(yōu)先權(quán)日2010年9月9日
發(fā)明者何鴻凌, 曾成, 沈瑋寧 申請人:中國移動通信集團(tuán)上海有限公司