專利名稱:用于取回視圖中的數(shù)據(jù)項批注的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及信息管理的領(lǐng)域。具體地說,本發(fā)明涉及一種用于將批注與視圖中的數(shù)據(jù)項關(guān)聯(lián)的改進(jìn)方法。
背景技術(shù):
信息管理系統(tǒng)包括工具及應(yīng)用,所述工具及應(yīng)用存儲數(shù)據(jù)、分析數(shù)據(jù)及對數(shù)據(jù)執(zhí)行某一形式的計算,以便向用戶提供對數(shù)據(jù)的某種有意義的理解。信息管理系統(tǒng)可包括收集、分析及報告信息的任何數(shù)目的應(yīng)用,如數(shù)據(jù)庫應(yīng)用和電子表格應(yīng)用。通過使用關(guān)系型數(shù)據(jù)庫應(yīng)用的實例,使用關(guān)系模型以便定義具有與其它數(shù)據(jù)元素同樣的屬性的數(shù)據(jù)元素之間的關(guān)系。例如,消費者與發(fā)票可具有“一對多”關(guān)系。這意味著一個消費者可具有“許多”發(fā)票,但一張發(fā)票不具有“許多”消費者,因為發(fā)票傾向于對特定消費者而言是唯一的。一旦已定義了關(guān)系,便可接著創(chuàng)建采用預(yù)定義關(guān)系的查詢以 便提供有意義的報告。例如,可定義一個查詢以查詢數(shù)據(jù)源,以便查明特定消費者具有多少張未付(outstanding)發(fā)票。在一種在線分析處理系統(tǒng)中,通常在星型或雪花型模式(schema)上對基礎(chǔ)數(shù)據(jù)結(jié)構(gòu)建模。所述系統(tǒng)包括稱為測量且通過稱為維度的事項分類的數(shù)值型事實(numericfact)。從事實表中的記錄導(dǎo)出測量,且從維度表導(dǎo)出維度。在數(shù)據(jù)倉庫中,維度是將數(shù)據(jù)集中的每一項目分類為非重疊區(qū)域的數(shù)據(jù)元素。生成視圖,所述視圖顯示測量及與測量關(guān)聯(lián)的事實,即,數(shù)據(jù)及描述數(shù)據(jù)的性質(zhì)的描述符。例如,數(shù)據(jù)可采取“等離子屏幕電視”的形式,且“等離子屏幕電視”的維度是“產(chǎn)品”。另一實例可見于電子表格中,其中數(shù)據(jù)被填入“組成”列及行的單元格中。通常,使用數(shù)據(jù)進(jìn)行某種計算分析,且(例如)以表格形式等來顯示結(jié)果。然而,所有以上類型的應(yīng)用的共同點在于分析數(shù)據(jù),且向用戶顯示結(jié)果以供審閱和/或進(jìn)一步分析。通常,當(dāng)生成報告或視圖時,報告的查看者可能希望對報告/視圖中的一個或多個項目進(jìn)行批注。盡管此情形通過向數(shù)據(jù)所在的單元格添加注釋而是可能的,但當(dāng)重新運行查詢且隨后刷新報告數(shù)據(jù)時,將出現(xiàn)問題。這是因為注釋并不跟隨顯示于報告中的第一位置處的數(shù)據(jù),且在刷新報告時,數(shù)據(jù)現(xiàn)在顯示于報告中的第二位置處。問題在于,注釋仍顯示于第一位置處,但數(shù)據(jù)已移動至不同位置,且因此注釋現(xiàn)在引用不正確的數(shù)據(jù)。用于解決此問題的一種現(xiàn)有技術(shù)解決方案可見于描述一種方法的美國專利申請案第2006/0212469號中,所述方法用于將項目元數(shù)據(jù)與電子表格中的項目相關(guān)聯(lián),使得當(dāng)項目移動至電子表格中的不同單元格時,注釋亦與項目一起移動。此情形通過在電子表格自身中創(chuàng)建索引來實現(xiàn),所述索引創(chuàng)建至元數(shù)據(jù)表的索引。然而,此解決方案的問題在于,雖然項目元數(shù)據(jù)將與表中的項目一起移動至新單元格,但此解決方案僅在數(shù)據(jù)包含在電子表格自身內(nèi)的情況下起作用。因此,現(xiàn)有技術(shù)仍依賴數(shù)據(jù)的單元格位置來確定將注釋移動至的位置。此解決方案在以下情形下不起作用數(shù)據(jù)由外部數(shù)據(jù)源提供和/或生成報告的查詢被重新運行。另外,現(xiàn)有技術(shù)解決方案需要將元數(shù)據(jù)索引“插入”項目的單元格中,因此需要通過修改基礎(chǔ)電子表格的結(jié)構(gòu)使其具有ID字段。因此,本發(fā)明試圖減輕上述問題。
發(fā)明內(nèi)容
從第一方面考慮,本發(fā)明提供一種取回與視圖中的數(shù)據(jù)項關(guān)聯(lián)的批注的方法,其中所述視圖由信息管理系統(tǒng)查詢數(shù)據(jù)源而生成,所述方法包括以下步驟接收查詢的輸出;分析所述查詢的輸出以識別一個或多個數(shù)據(jù)項,其中數(shù)據(jù)項包括數(shù)據(jù)值和與該數(shù)據(jù)值關(guān)聯(lián)的屬性;對于每個所識別的數(shù)據(jù)值 和屬性,識別與所述數(shù)據(jù)值和所述屬性中的每一個關(guān)聯(lián)的唯一值,其中與所述數(shù)據(jù)值關(guān)聯(lián)的所識別的唯一值和與所述屬性關(guān)聯(lián)的所識別的唯一值形成唯一值集合;從數(shù)據(jù)儲存器識別與所述唯一值集合對應(yīng)的先前記錄的唯一值集合;響應(yīng)于肯定的判定,判定所述先前記錄的唯一值集合是否包括關(guān)聯(lián)批注;以及響應(yīng)于肯定的第二判定,從所述數(shù)據(jù)儲存器取回所述批注。有利地,本發(fā)明提供將批注(多個)與視圖中的數(shù)據(jù)項關(guān)聯(lián)并取回所述批注(多個)的能力。批注是傳達(dá)待與數(shù)據(jù)項關(guān)聯(lián)的信息的任何形式的注釋或元數(shù)據(jù)。數(shù)據(jù)項包括數(shù)據(jù)及數(shù)據(jù)屬性。數(shù)據(jù)被表征為已從諸如數(shù)據(jù)倉庫的外部數(shù)據(jù)源查詢的數(shù)據(jù)或已對其執(zhí)行某一形式的計算分析的數(shù)據(jù)。數(shù)據(jù)屬性包括列和行標(biāo)題,即,給出數(shù)據(jù)的上下文含義的屬性。當(dāng)接收到查詢時,將查詢基礎(chǔ)數(shù)據(jù)源,且返回查詢的結(jié)果以供進(jìn)一步分析。作為元組(tuple)集合而返回結(jié)果。每一維度(即,每一單元格位置)可通過元組(即,行、列、數(shù)據(jù))來表示。如果批注與數(shù)據(jù)項關(guān)聯(lián),則元組可包括行、列、數(shù)據(jù)及批注。針對每一數(shù)據(jù)項(在元組中識別的行、列及數(shù)據(jù))識別唯一生成的值。如果數(shù)據(jù)集包括額外標(biāo)題或分組,則將此信息包括至所述額外標(biāo)題或分組。所述唯一值中的每一個唯一值的組合形成唯一值集合,其被記錄在批注數(shù)據(jù)儲存器中的索引元組表中。將批注存儲在批注表中,且針對批注表中存儲的每一批注生成唯一關(guān)鍵字(key)。所述唯一關(guān)鍵字與批注的關(guān)聯(lián)唯一值集合一起存儲。唯一值可在所有視圖上或基于每個視圖為唯一的。當(dāng)重新運行查詢且將新維度或新屬性引入查詢的結(jié)果時,S卩,如果該查詢正在查詢一個數(shù)據(jù)源以判定“哪些國家已銷售了多于500臺電視機”,則第一次執(zhí)行該查詢,其可返回這些國家英國、法國。然而,在后續(xù)查詢時,可能存在新的可用數(shù)據(jù),且該查詢的結(jié)果可將額外國家(諸如,德國及美國)返回至所述結(jié)果中。因此,分析新查詢的結(jié)果以識別形成所生成查詢的結(jié)果的數(shù)據(jù)項。視圖中的每一數(shù)據(jù)項(數(shù)據(jù)值和屬性,或數(shù)據(jù)值及維度)與元組相關(guān)聯(lián),所述元組具有來自每一維度的屬性。分析所述元組中的每一數(shù)據(jù)項以識別唯一值。記錄每一所識別的唯一值以形成唯一值集合,其中所述唯一值集合表示查詢結(jié)果中的元組。在表中執(zhí)行查找以識別是否已記錄先前唯一值集合,其中所述先前唯一值集合為與當(dāng)前“正被分析”的唯一值集合相同的值。如果判定為肯定的,則取回與已記錄的值集合關(guān)聯(lián)的唯一關(guān)鍵字,且該唯一關(guān)鍵字允許執(zhí)行查找以便定位關(guān)聯(lián)批注。“正被分析”的唯一值集合然后被映射回至所述數(shù)據(jù)項中的每個數(shù)據(jù)項且呈現(xiàn)在視圖中,從而顯示所述查詢的結(jié)果。優(yōu)選地,本發(fā)明提供一種方法,還包括在視圖中顯示所識別的數(shù)據(jù)項中的每一個和所述關(guān)聯(lián)批注。優(yōu)選地,本發(fā)明提供一種方法,其中從所述數(shù)據(jù)儲存器取回所述批注進(jìn)一步包括將所述唯一值集合內(nèi)的所述唯一值中的每一個映射回如在所述查詢的輸出中識別的所述唯一值的關(guān)聯(lián)數(shù)據(jù)項;以及在視圖中顯示所述數(shù)據(jù)項與所述關(guān)聯(lián)批注。優(yōu)選地,本發(fā)明提供一種方法,其中數(shù)據(jù)項包括數(shù)據(jù)和所述數(shù)據(jù)的已通過查詢數(shù)據(jù)源而取回的關(guān)聯(lián)屬性。優(yōu)選地,本發(fā)明提供一種方法,其中數(shù)據(jù)的屬性包括如在視圖中顯示的列和/或行標(biāo)題。優(yōu)選地,本發(fā)明提供一種方法,其中批注包括字符串、整數(shù)值、URL、至信息源的其它指針或鏈接。 優(yōu)選地,本發(fā)明提供一種方法,其中批注可與視圖中的任何位置處的數(shù)據(jù)項關(guān)聯(lián)。優(yōu)選地,本發(fā)明提供一種方法,其中批注與一個或多個視圖中的多個數(shù)據(jù)項關(guān)聯(lián)。優(yōu)選地,本發(fā)明提供一種方法,其中所述數(shù)據(jù)源是在所述信息管理系統(tǒng)外部的數(shù)據(jù)源。從另一方面考慮,本發(fā)明提供一種將批注與視圖中的數(shù)據(jù)項關(guān)聯(lián)的方法,其中所述視圖從在視圖中呈現(xiàn)查詢的結(jié)果而生成,所述方法包括以下步驟接收指令以將批注與視圖中的數(shù)據(jù)項關(guān)聯(lián);從所述數(shù)據(jù)項確定與所述視圖中的所述數(shù)據(jù)值關(guān)聯(lián)的一個或多個屬性;對于每一數(shù)據(jù)值及其關(guān)聯(lián)屬性,確定與所述數(shù)據(jù)值及其關(guān)聯(lián)屬性相關(guān)聯(lián)的唯一值;記錄所述唯一值中的每一個以創(chuàng)建唯一值集合,所述唯一值集合表示所述數(shù)據(jù)項及所述數(shù)據(jù)項的屬性;以及生成用于將所請求的批注與所述唯一值集合關(guān)聯(lián)的唯一值。從另一方面考慮,本發(fā)明提供一種取回與視圖中的數(shù)據(jù)項關(guān)聯(lián)的批注的裝置,其中所述視圖由信息管理系統(tǒng)查詢數(shù)據(jù)源而生成,所述裝置包括以下組件用于接收查詢的輸出的映射組件;用于分析所述查詢的輸出以識別一個或多個數(shù)據(jù)項的映射組件,其中數(shù)據(jù)項包括數(shù)據(jù)值和與該數(shù)據(jù)值關(guān)聯(lián)的屬性;用于識別與每個數(shù)據(jù)值和所述數(shù)據(jù)值中的每個數(shù)據(jù)值的屬性關(guān)聯(lián)的唯一值的映射組件,其中與所述數(shù)據(jù)值關(guān)聯(lián)的所識別的唯一值和與所述屬性關(guān)聯(lián)的所識別的唯一值形成唯一值集合;用于從數(shù)據(jù)儲存器識別與所述唯一值集合對應(yīng)的先前記錄的唯一值集合的映射組件;用于響應(yīng)于肯定的判定而判定所述先前記錄的唯一值集合是否包括關(guān)聯(lián)批注的映射組件;以及用于響應(yīng)于肯定的第二判定而從所述數(shù)據(jù)儲存器取回所述批注的映射組件。從另一方面考慮,本發(fā)明提供一種包括計算機程序代碼的計算機程序,所述計算機程序代碼在加載至計算機系統(tǒng)中且執(zhí)行時執(zhí)行如上文所描述的方法的所有步驟。
現(xiàn)在將僅通過實例參考附圖描述本發(fā)明的各實施例,這些附圖是圖Ia及圖Ib是本發(fā)明的一個優(yōu)選實施例可在其中操作的數(shù)據(jù)處理系統(tǒng)的示意性表不;圖2是詳細(xì)描述如本領(lǐng)域公知的信息管理系統(tǒng)的示意圖;圖3是根據(jù)本發(fā)明的一個優(yōu)選實施例的詳細(xì)描述信息管理系統(tǒng)上的組件的示意圖4是根據(jù)本發(fā)明的一個優(yōu)選實施例的展示信息管理系統(tǒng)生成的具有關(guān)聯(lián)批注的報告的一個實例的不意圖;圖5是根據(jù)本發(fā)明的一個優(yōu)選實施例的展示索引創(chuàng)建器組件的各組件的示意圖;圖6a及圖6b是根據(jù)本發(fā)明的一個優(yōu)選實施例的展示實例視圖及表示視圖中的維度的元組的示意圖;及圖7是根據(jù)本發(fā)明的一個優(yōu)選實施例的詳細(xì)描述數(shù)據(jù)庫應(yīng)用的處理步驟的流程圖。
具體實施例方式圖Ia及圖Ib詳細(xì)描述與本發(fā)明的一個優(yōu)選實施例一起使用的數(shù)據(jù)處理系統(tǒng)100。數(shù)據(jù)處理系統(tǒng)100包括彼此協(xié)作以便提供本發(fā)明的益處的硬件115及軟件120。通常,數(shù)據(jù)處理系統(tǒng)100包括某一形式的存儲構(gòu)件120,在存儲構(gòu)件120中本地地在數(shù)據(jù)處理系統(tǒng)上 或經(jīng)由數(shù)據(jù)處理系統(tǒng)100外部的存儲構(gòu)件145來存儲數(shù)據(jù);存儲及內(nèi)存構(gòu)件115,其用于存儲并運行可操作以在所述數(shù)據(jù)處理系統(tǒng)上使用的信息管理應(yīng)用;輸入構(gòu)件125,其用于輸入指令及與信息管理應(yīng)用的操作關(guān)聯(lián)的數(shù)據(jù);及顯示構(gòu)件130,其用于查看數(shù)據(jù)庫應(yīng)用的輸出。信息管理應(yīng)用可以服務(wù)器模式135或客戶端模式150操作。當(dāng)以服務(wù)器模式135操作時,客戶端設(shè)備150可操作以經(jīng)由網(wǎng)絡(luò)140連接至服務(wù)器??蛻舳嗽O(shè)備150可經(jīng)由任何形式的有線網(wǎng)絡(luò)構(gòu)件140或無線網(wǎng)絡(luò)構(gòu)件140連接至服務(wù)器135??蛻舳嗽O(shè)備150包括輸入構(gòu)件155及輸出構(gòu)件160,及用于與數(shù)據(jù)處理系統(tǒng)100交互的內(nèi)存及存儲構(gòu)件165??蛻舳嗽O(shè)備150為包括輸入/輸出處理構(gòu)件的任何設(shè)備,諸如膝上型計算機、桌上型計算機、筆記本型計算機、移動電話或其它多功能手持型移動計算設(shè)備。以服務(wù)器模式135操作的數(shù)據(jù)處理系統(tǒng)100可操作以與多個客戶端設(shè)備150通信且接收來自多個客戶端設(shè)備150的指令。圖2詳細(xì)描述如本領(lǐng)域中公知的信息管理系統(tǒng)200。然而,本領(lǐng)域技術(shù)人員將了解,本發(fā)明適用于任何活動數(shù)據(jù)庫應(yīng)用或電子表格應(yīng)用,藉此分析并報告數(shù)據(jù)。此定義被視為涵蓋在線交易處理應(yīng)用,以及數(shù)據(jù)挖掘應(yīng)用、關(guān)系型數(shù)據(jù)庫應(yīng)用、多維數(shù)據(jù)庫以及電子表格應(yīng)用等,它們共享與數(shù)據(jù)庫應(yīng)用等關(guān)聯(lián)的許多特性。如根據(jù)各優(yōu)選實施例解釋的本發(fā)明旨在適用于以格式化方式顯示來自所生成的查詢結(jié)果的任何應(yīng)用,且其中當(dāng)所顯示數(shù)據(jù)移動至格式化顯示器中的另一位置時,與所顯示數(shù)據(jù)關(guān)聯(lián)的批注需要與所顯示數(shù)據(jù)持續(xù)地關(guān)聯(lián)。數(shù)據(jù)儲存器225存儲與活動或?qū)嶓w有關(guān)的數(shù)據(jù),以便在由信息管理系統(tǒng)200進(jìn)行分析時提供歷史、當(dāng)前及預(yù)測性分析以及商業(yè)運營(business operation)的視圖。數(shù)據(jù)儲存器225可采取如在本領(lǐng)域中公知的數(shù)據(jù)倉庫或數(shù)據(jù)超市的形式。數(shù)據(jù)儲存器225可與信息管理應(yīng)用200分離,即,位于不同服務(wù)器上但在同一服務(wù)器機柜內(nèi),或位于與信息管理系統(tǒng)200不同的地理位置。備選地,數(shù)據(jù)儲存器225可與信息管理系統(tǒng)200位于同一服務(wù)器上。數(shù)據(jù)可采取結(jié)構(gòu)化數(shù)據(jù)的形式,通常,結(jié)構(gòu)化數(shù)據(jù)是通過數(shù)據(jù)模型而建模的數(shù)據(jù)。備選地,數(shù)據(jù)可為非結(jié)構(gòu)化的數(shù)據(jù),即,可見于需要語義分析以便分析并報告數(shù)據(jù)的含義的電子郵件、SMS、即時消息傳送中的數(shù)據(jù)。
在一個優(yōu)選實施例中,建模器(modeller)組件220提供其中對基礎(chǔ)數(shù)據(jù)建模以便描述表示和存取數(shù)據(jù)的方式的手段。數(shù)據(jù)模型通常定義數(shù)據(jù)元素及所定義數(shù)據(jù)元素之間的關(guān)系。數(shù)據(jù)模型可為關(guān)系實體模型或星型或雪花型模式等。查詢構(gòu)建器205使得用戶能夠通過查詢生成器組件230構(gòu)建查詢以供執(zhí)行。查詢生成器組件230分析位于相關(guān)數(shù)據(jù)儲存器225中的數(shù)據(jù),且以視圖或報告215的形式返回相關(guān)數(shù)據(jù)。查詢可采取“1998年在多個地理區(qū)中銷售了多少臺電視機? ”的形式。視圖生成器210接收來自查詢生成器組件230的所生成查詢,且生成用于顯示查詢結(jié)果的視圖215。
視圖215或報告215可為所述形式或通過用戶定義的任何格式。視圖215亦可描述為原始數(shù)據(jù)集的一個方面的視圖215,所述原始數(shù)據(jù)集已基于用戶定義的準(zhǔn)則被查詢。術(shù)語視圖215用于描述任何形式的輸出顯示,藉此向用戶顯示查詢結(jié)果。視圖215或報告215通常在已對數(shù)據(jù)源執(zhí)行查詢之后生成。視圖215或報告215顯示查詢結(jié)果。術(shù)語“視圖”將貫穿本說明書的剩余部分使用,且理解為涵蓋查詢的所有顯示輸出。圖4中示出查詢的簡化輸出。視圖215為“2001年全世界銷售了多少臺ABC公司的電視機”的查詢的輸出。藉此,第一列400列出相關(guān)產(chǎn)品(即,電視機),第二列405列出地理區(qū),第三列410列出銷售的數(shù)目或測量,且第四列415列出時間標(biāo)度(即,所查詢的時間段)。每一行435顯示查詢結(jié)果,且由列標(biāo)題進(jìn)行分類。列400與行435之間的相交點為單元格440,或亦稱為維度425,并且維度包括數(shù)據(jù)值445??蓪?shù)據(jù)值視為可從查詢生成的數(shù)據(jù)。圖3詳細(xì)描述本發(fā)明的一個優(yōu)選實施例。存在與現(xiàn)有技術(shù)信息管理應(yīng)用共享的多個核心組件,即,數(shù)據(jù)儲存器225、建模器組件220及查詢構(gòu)建器205,因此,將不進(jìn)一步解釋這些組件。根據(jù)本發(fā)明的一個優(yōu)選實施例,修改后的信息管理系統(tǒng)300包括批注數(shù)據(jù)儲存器305、修改后的查詢生成器組件340、用于生成視圖335的修改后的視圖生成器組件310、映射組件315、映射表325、用于創(chuàng)建索引元組表的索引創(chuàng)建器組件320,及代碼生成器組件330。當(dāng)用戶提交查詢時,查詢構(gòu)建器組件230將查詢格式化為查詢語言,且查詢生成器組件340查詢數(shù)據(jù)儲存器225以搜尋所需信息。在本發(fā)明的一個優(yōu)選實施例中,查詢生成器組件340將查詢作為元組集合返回至視圖生成器組件310。元組包括值的集合,其中元組中的所述值中的每個值表示數(shù)據(jù)庫表中的一個維度。例如,如果生成詢問“2001年在德國銷售了多少臺電視機”的查詢,則查詢可返回以下數(shù)據(jù)“2001年在德國銷售了 500臺電視機”本領(lǐng)域技術(shù)人員將認(rèn)識到,此實例僅出于說明目的,且通??梢匀缭趫D4中展示的結(jié)構(gòu)化表格格式返回結(jié)果。然而,出于高效存儲及取回的目的,結(jié)果可如下作為元組存儲于數(shù)據(jù)儲存器305中〈產(chǎn)品=電視機,國家=德國,時間=2001,測量=500〉本領(lǐng)域技術(shù)人員將認(rèn)識到,以上元組僅出于說明目的,且在實際中元組將具有更復(fù)雜的數(shù)據(jù)結(jié)構(gòu)。重要的是指出元組不僅存儲查詢結(jié)果(數(shù)據(jù)值),而且存儲與查詢結(jié)果有關(guān)的行標(biāo)題、列標(biāo)題及子標(biāo)題。因此,元組存儲數(shù)據(jù)值及數(shù)據(jù)值的屬性。將貫穿說明書使用術(shù)語數(shù)據(jù)項以描述數(shù)據(jù)值及其關(guān)聯(lián)維度或?qū)傩浴T俅螀⒖磮D4,其展示針對ABC公司的等離子電視機的銷售的查詢的結(jié)果的簡化視圖。僅出于說明目的,展示第五列,其中用戶可將注釋/批注440添加至報告中的行中。在此實例中,用戶已添加的對2001年在德國銷售的電視機的數(shù)目的批注為“進(jìn)步”440。此批注440與整個行435關(guān)聯(lián),但亦可與數(shù)據(jù)項425、445、450之一而非組成該行的全體數(shù)據(jù)項關(guān)聯(lián)。因此,對于此實例,元組可以為如下〈產(chǎn)品=電視機,國家=德國,時間=2001,測量=500,批注=進(jìn)步〉批注440可采取字符串、整數(shù)值或至外部數(shù)據(jù)源的鏈接或指針的形式。外部數(shù)據(jù)源225可為網(wǎng)頁、文檔或用于傳送信息的任何其它形式。批注440可與顯示在組成整個報告的單元格、列及行中的任何數(shù)目的數(shù)據(jù)項關(guān)聯(lián),或批注可與關(guān)聯(lián)于特定單元格位置的單個數(shù)據(jù)項關(guān)聯(lián)。在用戶正查看報告時,批注440可與數(shù)據(jù)項相關(guān)聯(lián),或在刷新查詢且更新維度并將其顯示于不同視圖中時,可顯示批注。批注440可顯示于一個或多個關(guān)聯(lián)數(shù)據(jù)項正被顯示在其中的單元格位置425、450,455處或顯示于額外列中,如圖4中所說明。備選地,批注440可通過使鼠標(biāo)“暫留”在包括與批注關(guān)聯(lián)的數(shù)據(jù)項(多個)的行上來顯示。批注440可經(jīng)由其它顯示手段顯示于對話框中,所述對話框經(jīng)由鼠標(biāo)或菜單功能操作來觸發(fā)。本領(lǐng)域技術(shù)人員將認(rèn)識到,在不偏離本發(fā)明的范圍的情況下,存在顯示與數(shù)據(jù)項關(guān)聯(lián)的批注440的多種方式。批注440存儲在批注數(shù)據(jù)儲存器305內(nèi)的批注表中。批注440可被修正或刪除(或與數(shù)據(jù)項關(guān)聯(lián)的其它批注),且所有改變被更新并反映在批注數(shù)據(jù)儲存器305內(nèi)的批注表中。因此,批注440亦可與顯示在列而非行中的匯總項目關(guān)聯(lián),這是因為批注440可與視圖或報告中的任何單元格位置中的任何數(shù)據(jù)值440或數(shù)據(jù)值的屬性400、405、410、415、420關(guān)聯(lián)。為了將批注與顯示在視圖335中的一個或多個數(shù)據(jù)項相關(guān)聯(lián),將批注鏈接至作為查詢結(jié)果的一部分而生成的元組。對于所生成視圖的一個方面,將存在許多元組。例如,使用展示于圖4中的視圖,包括“進(jìn)步”的批注的元組可如下〈產(chǎn)品=ABC公司的等離子電視,地理區(qū)=DE,時間=2001,值=5000,批注=進(jìn)
步>參看圖5,包含在以上元組中的數(shù)據(jù)項存儲于批注存儲器305內(nèi)的元組索引表505中,且批注440存儲在批注存儲器305內(nèi)的批注表510中。存儲在元組索引表505中的元組經(jīng)由唯一生成的關(guān)鍵字550鏈接至其在批注表510中的關(guān)聯(lián)批注440。然而,本領(lǐng)域技術(shù)人員將認(rèn)識到,在不偏離本發(fā)明的范圍的情況下,存在可能的其它存儲配置。在以上實例中,字符串“進(jìn)步”440亦將存儲在批注數(shù)據(jù)儲存器305中的批注表510中。然而,如果批注440引用網(wǎng)頁,則至網(wǎng)頁的URL引用將存儲在批注數(shù)據(jù)儲存器305內(nèi)的批注表510中。為了取回與元組關(guān)聯(lián)的批注,索引創(chuàng)建器組件320創(chuàng)建所存儲元組的索引520。在此實例中,索引創(chuàng)建器表500包括多個行525至555,每一行525至555表不兀組或基礎(chǔ)數(shù)據(jù)模式中的唯一識別的數(shù)據(jù)項。例如,如果基礎(chǔ)數(shù)據(jù)模式是包括事實表(其具有、以下維度包括國家、地址及郵政編碼的地理區(qū),包括電視機、收音機、音頻系統(tǒng)、烤面包器的產(chǎn)品,包括2001、2002、2003、2004及2005的年份)的星型模式,則這些數(shù)據(jù)項亦可在索引創(chuàng)建器表500中列出。因此,表內(nèi)的行的數(shù)目隨著與星型模式關(guān)聯(lián)的維度的數(shù)目而線性地增大。備選地,可在第一次提交對元組中的數(shù)據(jù)項的存儲操作時(即,在檢測到對批注及批注的關(guān)聯(lián)元組的保存操作時)創(chuàng)建索引創(chuàng)建器表500中的行525至555。首先,索引創(chuàng)建器組件320分析待提交至存儲器的元組、檢測元組中的第一數(shù)據(jù)項、在索引創(chuàng)建器表500中執(zhí)行查找 ,且檢測在元組中識別的第一數(shù)據(jù)項是否位于表的行525 至 555 中。如果判定為否定的,即,第一數(shù)據(jù)項并不存在,則將第一數(shù)據(jù)項放置在表500的行525至555中,且向第一數(shù)據(jù)項給予唯一生成的識別符515。所生成的識別符515存儲在索引創(chuàng)建器表500中。針對元組中的每一數(shù)據(jù)項繼續(xù)此處理,直至元組中的所有數(shù)據(jù)項均已被分析為止。對于每一提交操作,可存在具有許多數(shù)據(jù)項的許多元組。例如,采用如下元組<國家=德國,產(chǎn)品=電視機,時間=2001,測量=5000,批注=進(jìn)步〉索引創(chuàng)建器組件320通過查看位于元組中的第一數(shù)據(jù)項(即,“國家”)而開始,且識別在索引創(chuàng)建表500中不存在針對“國家”的表項,并將數(shù)據(jù)項“國家”放置在表500內(nèi)的可用行525中,且向“國家”指派為(例如)值I的唯一識別符515 (針對表500中的每個唯一表項生成唯一值)。索引創(chuàng)建器組件320定位元組中的下一項目(即,“德國”),判定在索引創(chuàng)建器表中不存在針對“德國”的表項且將數(shù)據(jù)項“德國”添加至索引創(chuàng)建器表500中的下一可用行530,并向數(shù)據(jù)項“德國”指派值“2”。接下來,索引創(chuàng)建器組件320定位元組中的下一項目(即,“產(chǎn)品”),判定在索引創(chuàng)建器表500中不存在針對“產(chǎn)品”的表項且將數(shù)據(jù)項“產(chǎn)品”添加至索引創(chuàng)建器表500中的下一可用行540,并向數(shù)據(jù)項“產(chǎn)品”指派值“4”。接下來,索引創(chuàng)建器組件320單位元組中的下一項目(即,“電視機”),判定在索引創(chuàng)建器表中不存在針對“電視機”的表項且將數(shù)據(jù)項“電視機”添加至索引創(chuàng)建器表500中的下一可用行545,并向數(shù)據(jù)項電視指派值“5”。接下來,索引創(chuàng)建器組件320定位元組中的下一項目(即,“時間”),且判定在索引創(chuàng)建器表500中不存在針對“時間”的表項且將數(shù)據(jù)項“時間”添加至索引創(chuàng)建器表500中的下一可用行545,并向數(shù)據(jù)項“時間”指派值“ 10”。針對在元組中識別的每個數(shù)據(jù)項繼續(xù)此處理,使得每個數(shù)據(jù)項已記錄于索引創(chuàng)建表500中,且生成唯一值并使所述唯一值與數(shù)據(jù)項中的每一個相關(guān)聯(lián)。如果索引創(chuàng)建器組件320識別元組中的批注屬性,則索引創(chuàng)建器組件320將批注值(即,字符串、整數(shù)值、至其它信息的指針或鏈接)寫入數(shù)據(jù)儲存器305內(nèi)的批注表510中,且創(chuàng)建唯一關(guān)鍵字550并將唯一關(guān)鍵字550與批注440相關(guān)聯(lián)。對于任何給定元組,可存在許多批注。唯一關(guān)鍵字550亦與元組索引表505中的數(shù)據(jù)值的相應(yīng)集合520相關(guān)聯(lián)。其它信息(諸如,創(chuàng)建批注的人員及創(chuàng)建批注的日期及時間)亦可與批注一起存儲。針對提交至存儲器的每一元組及關(guān)聯(lián)批注執(zhí)行上述處理。當(dāng)用戶在查看視圖的同時添加批注時,或每當(dāng)刷新報告且將所有現(xiàn)存批注“拉入”報告中時,此情形可發(fā)生。在隨后檢測到至批注數(shù)據(jù)儲存器305的提交操作時,索引創(chuàng)建器組件320將再次分析元組的每一數(shù)據(jù)項。當(dāng)索引創(chuàng)建器組件320在索引創(chuàng)建表500中執(zhí)行查找且檢測到元組的數(shù)據(jù)項已記錄在索引創(chuàng)建表500中時,索引創(chuàng)建器組件320接著移動至元組中的下一項目且檢測下一數(shù)據(jù)項是否已記錄在索引創(chuàng)建表500中。如果已記錄該數(shù)據(jù)項,則索引創(chuàng)建器組件320再次移動至元組中的下一數(shù)據(jù)項,直至已分析且對照索引創(chuàng)建表500中記錄的表項檢查所有數(shù)據(jù)項為止。僅在索引創(chuàng)建器組件320判定元組的數(shù)據(jù)項未記錄在索引創(chuàng)建表500中時,索引創(chuàng)建器組件320才將數(shù)據(jù)項記錄在索引創(chuàng)建表500中且生成唯一識別符515以與記錄在索引創(chuàng)建表500中的項目關(guān)聯(lián)。數(shù)據(jù)項亦包括與視圖中的數(shù)據(jù)項相關(guān)聯(lián)的批注。如果索引創(chuàng)建器組件320檢測到數(shù)據(jù)項已記錄在索引創(chuàng)建表500中,則索引創(chuàng)建器組件320識別與數(shù)據(jù)項關(guān)聯(lián)的唯一識別符515且將該唯一識別符515寫入元組索引表505。因此,得到的值集合520是唯一地識別元組中的所有數(shù)據(jù)項(包括任何關(guān)聯(lián)批注440)的值集合。該值集合520存儲在元組索引表505中,且批注存儲在批注表510中。備選地,可以一起存儲值集合520及批注440。作為額外步驟,所述值集合中的每個值可使用已知散列技術(shù)進(jìn)行散列以便提供批 注的更快搜索及取回。因此,存儲在批注數(shù)據(jù)儲存器305中的是這樣的值集合其唯一地識別與批注440關(guān)聯(lián)的維度(即,視圖中的位置參考點(單元格位置))的集合。因此,當(dāng)由于a)來自外部數(shù)據(jù)源225的數(shù)據(jù)已被刷新而刷新視圖335或b)已重新運行查詢而刷新視圖335時,接著對于視圖335中的每一維度集合,映射組件315查詢元組索引表505以識別是否存在與顯示于當(dāng)前視圖335中的維度匹配的維度(即,元組參考)的集合。如果定位相同的參考集合,則從批注數(shù)據(jù)儲存器305中的批注表510查詢關(guān)聯(lián)批注,且將其取回以便與適當(dāng)數(shù)據(jù)項一起顯示在視圖335中。由于基礎(chǔ)數(shù)據(jù)源已被更新或查詢自身已改變,所以可刷新查詢。因此,當(dāng)查詢構(gòu)建器組件230接收新查詢以進(jìn)行處理時,以上文所描述的方式處理該查詢。然而,此次視圖生成器組件310需要判定待生成的視圖是否包括需要與關(guān)聯(lián)數(shù)據(jù)項一起顯示的任何批注440。此處理通過映射組件315來處置。當(dāng)查詢生成器組件340將來自查詢的元組集合返回至視圖生成器310時,映射組件315攔截查詢生成器組件340與視圖生成器組件310之間的此通信,且通過分析元組中的數(shù)據(jù)項而開始。如前所述,識別元組中的第一數(shù)據(jù)項,且在索引創(chuàng)建表500中執(zhí)行查找,以識別與第一數(shù)據(jù)項關(guān)聯(lián)的唯一識別符。映射組件315將所識別的值寫入至內(nèi)存。接下來,映射組件315識別元組中的第二數(shù)據(jù)項并在索引創(chuàng)建表500中執(zhí)行查找,且定位與第二數(shù)據(jù)項關(guān)聯(lián)的唯一識別符并將所識別的值寫入至內(nèi)存。此處理繼續(xù),直至元組中的每一數(shù)據(jù)項均與在索引創(chuàng)建表500中定位的唯一值關(guān)聯(lián)為止。因此,映射組件315創(chuàng)建唯一地識別元組中的數(shù)據(jù)項的組合的值集合,該元組為查詢的輸出。然而,如果映射組件未能在索引表中定位數(shù)據(jù)項,則處理停止,且需要針對索引創(chuàng)建器組件中的數(shù)據(jù)項創(chuàng)建唯一值。接下來,映射組件315獲取創(chuàng)建的值集合且在元組索引表505中執(zhí)行查找,以判定是否存在記錄于元組索引表505中的對應(yīng)的唯一值集合。如果映射組件315識別到對應(yīng)的值集合,則連同關(guān)聯(lián)批注440 —起將所識別的值集合取回至視圖生成器組件310以便生成視圖335,視圖335現(xiàn)在包括與特定元組關(guān)聯(lián)的批注440。例如,如果查詢詢問以下問題“2001年在英國銷售了多少臺電視機? ”則查詢生成器組件340將返回以下元組〈產(chǎn)品=電視機,國家=英國,時間=2001,測量=80,000>映射組件315獲取以上元組,且在索引創(chuàng)建表500中執(zhí)行查找并生成以下值集合 〈4.5.1.3.10.11.7.8〉此時并不知曉是否存在已針對元組〈產(chǎn)品=電視機,國家=英國,時間=2001,測量80,000〉而存儲的任何批注。因此,映射組件315在元組索引表505中執(zhí)行查找以搜尋值集合〈4. 5. I. 3. 10. 11. 7. 8>,從而識別對應(yīng)的值集合520。如果找到,則映射組件315將此值寫入至映射表325。映射組件315針對在元組中識別的每一項目繼續(xù)此處理。例如,如果元組為〈產(chǎn)品=電視機,國家=英國,測量=250000〉則映射組件315將使用來自索引創(chuàng)建表500的信息得到以下值集合。<4. 5. I. 3. 7. 9>映射組件315在元組索引表505中執(zhí)行查找以搜尋對應(yīng)的值組合520。然而,數(shù)據(jù)值的次序無關(guān)緊要,只要值集合520包括相同數(shù)據(jù)值。如果在單個值集合中找到對應(yīng)的值組合,則取回所識別的值集合。執(zhí)行進(jìn)一步的查找以判定是否存在與所識別的值集合關(guān)聯(lián)的唯一生成的關(guān)鍵字550,且如果存在,則使用唯一關(guān)鍵字550來取回關(guān)聯(lián)批注。執(zhí)行反向查找以從所述值集合“回到”數(shù)據(jù)項以便使視圖生成器組件310能夠生成視圖335,視圖335顯示所請求的查詢的結(jié)果及任何關(guān)聯(lián)批注440。圖6a例示了視圖335的一個實例,視圖335包括許多不同零售渠道的列標(biāo)題605。每個行610與不同時間段有關(guān),且單元格615中的數(shù)據(jù)615為特定時間段的銷售量。標(biāo)簽a、b及c描繪與箭頭指向的數(shù)據(jù)值關(guān)聯(lián)的批注。圖6b例示了與圖6a中例示的視圖相同的視圖,但是例示由索引創(chuàng)建器組件325針對圖6a中例示的數(shù)據(jù)而生成的元組。因此,對于圖6a中給出的批注,給出以下維度a= (2004,戶外用品商店,數(shù)量)b=(2006,高爾夫用品商店,數(shù)量)C= (2004,體育用品商店,數(shù)量)其中通過如參考圖5描述的處理針對批注a、b及c而生成的元組為a=(12: :10: :3)b=(26: :19: :8)c=(14: :10: :5)且采取與批注“a”關(guān)聯(lián)的元組,可通過代碼生成器組件330生成以下代碼。
權(quán)利要求
1.一種取回與視圖中的數(shù)據(jù)項關(guān)聯(lián)的批注的方法,其中所述視圖由信息管理系統(tǒng)查詢數(shù)據(jù)源而生成,所述方法包括以下步驟 接收查詢的輸出; 分析所述查詢的輸出以識別一個或多個數(shù)據(jù)項,其中數(shù)據(jù)項包括數(shù)據(jù)值和與該數(shù)據(jù)值關(guān)聯(lián)的屬性; 對于每個所識別的數(shù)據(jù)值和屬性,識別與所述數(shù)據(jù)值和所述屬性中的每一個關(guān)聯(lián)的唯一值,其中與所述數(shù)據(jù)值關(guān)聯(lián)的所識別的唯一值和與所述屬性關(guān)聯(lián)的所識別的唯一值形成唯一值集合; 從數(shù)據(jù)儲存器識別與所述唯一值集合對應(yīng)的先前記錄的唯一值集合; 響應(yīng)于肯定的判定,判定所述先前記錄的唯一值集合是否包括關(guān)聯(lián)批注;以及 響應(yīng)于肯定的第二判定,從所述數(shù)據(jù)儲存器取回所述批注。
2.如權(quán)利要求I的方法,還包括在視圖中顯示所識別的數(shù)據(jù)項中的每一個和所述關(guān)聯(lián)批注。
3.如權(quán)利要求I的方法,其中從所述數(shù)據(jù)儲存器取回所述批注進(jìn)一步包括將所述唯一值集合內(nèi)的所述唯一值中的每一個映射回如在所述查詢的輸出中識別的所述唯一值的關(guān)聯(lián)數(shù)據(jù)項;以及在視圖中顯示所述數(shù)據(jù)項與所述關(guān)聯(lián)批注。
4.如權(quán)利要求I的方法,其中數(shù)據(jù)項包括數(shù)據(jù)和所述數(shù)據(jù)的已通過查詢數(shù)據(jù)源而取回的關(guān)聯(lián)屬性。
5.如權(quán)利要求2的方法,其中數(shù)據(jù)的屬性包括如在視圖中顯示的列和/或行標(biāo)題。
6.如權(quán)利要求I的方法,其中批注包括字符串、整數(shù)值、URL、至信息源的其它指針或鏈接。
7.如權(quán)利要求I的方法,其中批注可與視圖中的任何位置處的數(shù)據(jù)項關(guān)聯(lián)。
8.如權(quán)利要求I的方法,其中批注與一個或多個視圖中的多個數(shù)據(jù)項關(guān)聯(lián)。
9.如權(quán)利要求I的方法,其中所述數(shù)據(jù)源是在所述信息管理系統(tǒng)外部的數(shù)據(jù)源。
10.一種取回與視圖中的數(shù)據(jù)項關(guān)聯(lián)的批注的裝置,其中所述視圖由信息管理系統(tǒng)查詢數(shù)據(jù)源而生成,所述裝置包括以下組件 用于接收查詢的輸出的映射組件; 用于分析所述查詢的輸出以識別一個或多個數(shù)據(jù)項的映射組件,其中數(shù)據(jù)項包括數(shù)據(jù)值和與該數(shù)據(jù)值關(guān)聯(lián)的屬性; 用于識別與每個數(shù)據(jù)值和所述數(shù)據(jù)值中的每個數(shù)據(jù)值的屬性關(guān)聯(lián)的唯一值的映射組件,其中與所述數(shù)據(jù)值關(guān)聯(lián)的所識別的唯一值和與所述屬性關(guān)聯(lián)的所識別的唯一值形成唯一值集合; 用于從數(shù)據(jù)儲存器識別與所述唯一值集合對應(yīng)的先前記錄的唯一值集合的映射組件; 用于響應(yīng)于肯定的判定而判定所述先前記錄的唯一值集合是否包括關(guān)聯(lián)批注的映射組件;以及 用于響應(yīng)于肯定的第二判定而從所述數(shù)據(jù)儲存器取回所述批注的映射組件。
11.一種包括計算機程序代碼的計算機程序,所述計算機程序代碼在加載至計算機系統(tǒng)中且執(zhí)行時執(zhí)行如權(quán)利要求I至9中的任一權(quán)利要求的方法的所有步驟。
全文摘要
一種取回與視圖中的數(shù)據(jù)項關(guān)聯(lián)的批注的方法,其中所述視圖由信息管理系統(tǒng)查詢數(shù)據(jù)源而生成,所述方法包括以下步驟接收查詢的輸出;分析所述查詢的輸出以識別一個或多個數(shù)據(jù)項,其中數(shù)據(jù)項包括數(shù)據(jù)值和與該數(shù)據(jù)值關(guān)聯(lián)的屬性;對于每個所識別的數(shù)據(jù)值和屬性,識別與所述數(shù)據(jù)值和所述屬性中的每一個關(guān)聯(lián)的唯一值,其中與所述數(shù)據(jù)值關(guān)聯(lián)的所識別的唯一值和與所述屬性關(guān)聯(lián)的所識別的唯一值形成唯一值集合;從數(shù)據(jù)儲存器識別與所述唯一值集合對應(yīng)的先前記錄的唯一值集合;響應(yīng)于肯定的判定,判定所述先前記錄的唯一值集合是否包括關(guān)聯(lián)批注;以及響應(yīng)于肯定的第二判定,從所述數(shù)據(jù)儲存器取回所述批注。
文檔編號G06F17/30GK102648466SQ201080053432
公開日2012年8月22日 申請日期2010年11月9日 優(yōu)先權(quán)日2009年12月3日
發(fā)明者C·C·麥西, J·P·伯蘭德, M·瓦蘭德 申請人:國際商業(yè)機器公司