新四季網

用於基於web的圖表可視化的可擴展性的製作方法

2023-05-04 14:22:41

專利名稱:用於基於web的圖表可視化的可擴展性的製作方法
用於基於WEB的圖表可視化的可擴展性
背景技術:
計算機和軟體對人們的日常生活的主要貢獻中的一種是諸如文字處理、電子表格計算和圖表表現等的廣泛使用的任務的自動化。這些應用程式不僅自動化並使各種任務可被任何人使用,而且它們也增加了操縱各種各樣的文檔和數據的許多新的能力。直到最近, 典型的環境包括帶有被安裝在其上的單機或聯網的計算機。因而,用戶使用也被本地存儲的數據藉助於在他們的本地的計算機上安裝和執行的應用程式來工作。這一方法的一個缺點是,每當可獲得更新版本、替換計算設備等等時,必須重新安裝應用程式,且用戶需要在其上安裝有軟體的機器上工作。近來的無需將全尺寸應用程式安裝在用戶的計算機上的負擔就提供相同的文檔創建和操縱能力的趨勢是允許用戶通過web訪問來執行相同的任務。在典型的web訪問服務中,用戶可以利用受控的服務來通過諸如網際網路等的聯網介質創建新的文檔、操縱現有的文檔。文檔可以由受控的服務存儲或被存儲在用戶的本地計算機處。典型的web訪問服務是用於數據可視化(例如圖表表現)。一些數據可視化管線受限於刷新來自一組有限的已知數據源的數據。在沒有允許插入來自定製數據源的數據的規定的情況下,在渲染數據的瀏覽器請求被web伺服器處理時,來自非本機的源數據必須適配成受支持的數據源。

發明內容
提供本概述以便以簡化形式介紹下面在詳細描述中進一步描述的概念的選集。本概述不旨在排他性地標識所要求保護的本主題的關鍵特徵或必要特徵,也不旨在輔助確定所要求保護的本主題的範圍。各實施方式針對允許圖表更新引擎起動定製代碼模塊的可擴展的體系結構和數據流。根據一些實施方式的接口允許數據源的第三方創建,並使得它們對於基於web的圖表服務來說是可見的,且可以從圖表更新引擎調用。因而,可以從中檢索圖表數據的許多數據源以及操縱和聚集輸入數據的方式是可以通過使用根據各實施方式的數據模型的代碼來擴展的。從下列詳細描述的閱讀和關聯的圖的查閱中可以明顯看出這些和其他特徵和優點。應理解,前述的一般描述和下列的詳細描述兩者是解釋性的且不限制所要求保護的方


圖1是其中可以實現各實施方式的闡釋示例web可訪問的圖表表現服務的概念圖;圖2是闡釋在基於web的圖表表現服務中的數據的更新期間的數據流的順序圖;圖3是闡釋根據各實施方式的在基於web的圖表表現服務中的數據的更新期間數據流的另一時序圖;圖4是闡釋實現各實施方式的帶有多個數據源的基於web的圖表表現服務中的主要組件的概念圖;圖5是其中可以實現根據各實施方式的系統的聯網環境;圖6是其中可以實現各實施方式的示例計算操作環境的框圖;以及圖7闡釋提供根據各實施方式的web可訪問的圖表表現服務的過程的邏輯流程圖。
具體實施例方式如以上簡要地描述的,可擴展的體系結構和數據流可以被用來允許圖表更新引擎起動用於檢索、操縱和聚集來自各種源的數據的定製代碼模塊,且接口被用來允許通過定製數據模塊與非本機的數據源通信。在下列的詳細描述中,對附圖進行引用,附圖形成詳細描述的部分,且作為闡釋具體的實施方式或示例而示出附圖。可以組合這些方面,可以利用其他方面,且可以在不偏離本公開內容的精神或範圍的前提下做出結構改變。因此不應以限制的意義理解下列的詳細描述,且本發明的範圍由所附權利要求及其等效物來界定。儘管將在結合在個人計算就的作業系統上運行的應用程式執行的程序模塊的一般上下文中描述各實施方式,但本領域中的技術人員將認識到,各方面也可以與其他程序模塊組合實現。一般地,程序模塊包括執行特定任務或實現特定抽象數據類型的例程、程序、組件、數據結構和其他類型的結構。此外,本領域中的技術人員將明白,各實施方式可以與包括手持式設備、多處理器系統、基於微處理器的或可編程的消費者電子設備、小型計算機、 大型計算機和可比擬的計算設備在內的其他計算機系統配置一起實踐。各實施方式也可以在分布式計算環境中實踐,分布式計算環境中任務由通過通信網絡連結的遠程處理設備執行。在分布式計算環境中,程序模塊可以位於本地存儲器存儲設備和遠程存儲器存儲設備兩者。可以將各實施方式實現為計算機實現的過程(方法)、計算系統或製品,例如電腦程式產品或計算機可讀介質。電腦程式產品可以是可由計算機系統讀取的且編碼包括用於引起計算機或計算系統執行示例過程的指令在內的電腦程式的計算機存儲介質。計算機可讀存儲介質可以例如經由易失性計算機存儲器、非易失性存儲器、硬碟驅動器、閃速驅動器、軟盤或緊緻盤以及類似介質中的一種或多種實現。電腦程式產品也可以是載波 (例如調頻信號或調相信號)或可由計算系統讀取的、編碼用於執行計算機過程的指令的電腦程式的介質上的傳播的信號。貫穿這一說明書,術語「平臺」可以是用於管理基於Web的圖表表現服務數據的軟體組件和硬體組件的組合。平臺的示例包括但不限於在多個伺服器上執行的受控服務、在單個伺服器上執行的應用程式和類似的系統。術語「伺服器」 一般是指通常在聯網環境中執行一個或多個軟體程序的計算設備。然而,伺服器也可以被實現為在一個或多個計算設備上執行的被看作是網絡上的伺服器的虛擬伺服器(軟體程序)。參見圖1,闡釋其中可以實現各實施方式的示例web可訪問的圖表表現服務的概念圖100。在圖1的示例系統100中,用戶的web服務106通過在伺服器108上執行的一個或多個web應用程式提供圖表可視化功能,供用戶102通過諸如在計算設備104上執行的瀏覽器等的通用應用程式訪問該系統。為了發起該服務,用戶102從主機服務106的服務
6器108請求圖表。作為響應,伺服器108與圖表服務後端112的伺服器114通信,以檢索數據、計算公式、關係等等。各圖表可以包括靜態元素或動態元素。例如,一些形狀、連接器和其他元素的屬性可以通過動態方式來定義,例如取決於來自可以在渲染時間輪詢的可更新的數據源(例如從被存儲在其他地方的數據接收形狀信息的數據條(data bar))的數據。在一些情況中, 在圖表的元素之間的動態關係可以確定個體形狀的屬性和連接器(例如組織結構圖)的屬性。圖表可視化服務可以包括受支持的數據源的列表,例如SQL表、Excel 電子表格、 WSS 列表等等。根據各實施方式的系統可以將那些受支持的數據源擴展到由定製數據模塊使用為該服務定義的接口來定義的任何數據源。圖2闡釋在基於web的圖表表現服務中的數據的更新期間的數據流的時序圖200。 使用諸如web瀏覽器等的渲染應用程式,圖表使用者可以向web服務222的伺服器群發出對所公布的圖的請求031)。web服務222可以將對圖表Q32)的請求引導到諸如更新引擎等的圖表服務後端。圖表服務後端224(更新引擎)可以從數據存儲2 檢索圖表定義 (233,234)並解析它,尋找指示去哪裡檢索用於所定義的圖表視覺效果的數據的所嵌入的信息和相關的數據連通性信息。根據一種實施方式,如果找到了一些記錄集,則可以為每一記錄集提取(239)下列信息引用受支持的數據源的連接字符串;待執行的針對受支持的數據源的查詢字符串;以及預期在查詢運行之後從受支持的數據源返回的記錄集數據的模式定義。對於連接到受支持的數據源每一數據連接,圖表服務後端可以調用內建數據提供器040),內建數據提供器(MO)連接到受支持的數據源,通過運行上面針對受支持的數據源定義的查詢來檢索特定的數據,並針對以上所描述的模式驗證所返回的記錄集。然後,圖表服務後端224(更新引擎)可以通過以下來刷新和返回041)圖表視覺效果定義從圖表定義解析和提取用於數據連接的圖表元素的視覺效果定義;重新評估每一圖表元素的每一屬性(例如背景顏色、高度)的公布時間公式,且根據來自瀏覽器的請求的類型以向量或光柵格式渲染圖表。web服務222可以用經更新的圖表042)回復由瀏覽器發出的請求。沒有數據源可擴展性時,圖表更新管線通常限於僅在更新引擎處用內建數據提供器刷新來自數據源的數據。那些數據源可以包括順序查詢語言(SQL)表、電子表格表和類似的廣泛使用的數據源(例如WSS列表)。此外,一旦在公布時間被編碼到圖表中,被用於刷新圖表的可視元素數據聚集和操縱公式就可以是永久不變的。圖3闡釋在根據各實施方式的基於web的圖表表現服務中的數據的更新期間的數據流的另一時序圖300。根據一些實施方式,通過允許第三方用戶創建基於web的圖表表現服務可見的定製數據提供器代碼(也被稱為定製數據模塊或定製數據提供器)以及通過允許圖表公布器在它們的數據圖表中引用定製數據模塊來提供數據源可擴展性。一旦檢測到對定製數據模塊的引用,基於web的圖表表現服務就可以將數據檢索操作委託給所引用的數據模塊。儘管數據模塊必須實現預定義的抽象類(例如DiagramRefreshAddOn類),但開發者可以實現各種抽象的成員的內部定義,這給他們提供了從任何數據源檢索數據(或在數據模塊中生成數據)以及操縱要注入到圖表表現服務刷新管線的數據的靈活性。
圖300中所表示的交互是在根據各實施方式的系統的相同的組件之間進行的,其中從圖表請求到圖表定義步驟的返回與結合圖2描述的動作相似。不同於圖200,如果更新引擎遇到不能由內建數據提供器處理的連接字符串,則圖表表現服務後端2M可以嘗試查找引用定製數據模塊(335)的連接字符串。示例模塊可以是以下形式「Assembly = 〈assembly〉;Class = ;〈additional information〉」其中〈assembly〉是數據模塊程序集的共享空間名稱,〈class〉是實現數據模塊抽象類的共享空間類名稱(包括名稱空間),且〈additional information〉是以格式[[Key = Value]...]的附加連接/查詢信息。如果提取了連接字符串,則也可以提取針對數據源執行的有效的查詢字符串。也提取預期在查詢運行之後要從數據源返回的數據的模式定義。對於對定製數據源的每一引用,圖表表現服務後端2M可以將刷新委託給關聯的數據模塊。這需要圖表表現服務後端更新引擎返回(336)到接收最初的圖表請求的前端伺服器(web服務22 ,並嘗試查找匹配以上所描述的〈assembly〉和〈class〉令牌的任何定製數據模塊。如果找到所有所引用的定製數據模塊,則前端伺服器上的更新引擎代碼可以通過以下動作來開始對數據的並行查詢和異步查詢調用每一數據模塊上的數據檢索(337) (例如BeginGetData),以及將以下內容作為參數傳入圖表請求者的網絡上下文以便允許查詢的個性化、如先前所討論的所提取的「附加信息」、以及其他類似的信息。數據模塊運行它們的數據檢索、生成和聚集代碼。通過回調系統,前端伺服器(web服務22 上的代碼可以管理數據模塊數據檢索、錯誤和掛起。如果一個或多個數據模塊不能執行,則整個請求失敗,且可以將錯誤返回給最終用戶。如果沒有發生錯誤,則數據模塊將所檢索的數據的結構化(例如串行化的數據集)表示返回給數據模塊驅動代碼。數據返回被發送(338)給圖表表現服務後端224,圖表表現服務後端2M將該數據集成到圖表更新操作中與其他數據提供器(定製或內建)的數據合作。當數據模塊定製代碼遭遇異常時,開發者可以創建他們自己的異常對象並將其指派給數據模塊的錯誤特性,以便將該異常傳播給更新引擎,以便進行進一步動作。也可以用關聯的異常消息將異常顯示給最終用戶。對於連接到受支持的數據源(包括由定製數據模塊定義的數據源)的每一數據連接(239,M0),圖表更新引擎調用硬編碼數據檢索代碼,該硬編碼數據檢索代碼連接到受支持的外部數據源、通過運行針對該數據源定義的查詢來檢索特定的數據、並且針對以上所描述的模式驗證所返回的數據。然後,圖表更新引擎可以通過解析和提取數據連接的圖表元素的視覺效果定義、 重新評估每一圖表元素的每一屬性的公布時間公式(該公式可以包含對從預定義的和定製的數據源檢索的外部數據的引用)、以及根據來自最終用戶的請求的類型以向量格式或光柵格式渲染圖表來刷新圖表視覺效果定義。如圖2中,web服務用經更新的圖表(M2)回復請求031)。圖200和圖300中的組件和動作僅出於闡釋目的,且不構成對各實施方式的限制。 其他組件、軟體或硬體和配置可以被用於為基於web的圖表可視化提供可擴展性。圖4是闡釋實現各實施方式的帶有多個數據源的基於web的圖表表現服務中的主要組件的概念圖。如許多基於web的服務中,基於web的圖表表現服務包括在三個主要組件之間的信息的交換執行諸如瀏覽器等的客戶機應用程式的客戶機設備452、實際上執行用於圖表的渲染的計算的圖表服務後端456、以及在客戶機應用程式和圖表服務後端 456之間協調的web服務前端454。因而,在客戶機應用程式請求帶有對外部數據源的引用的圖表時,web服務前端妨4將請求轉發給圖表服務後端456。對於並不固有地受圖標可視化服務支持的數據源,可以通過採用採用定製數據模塊來獲得可擴展性。模塊可以被安裝在web服務伺服器上,且可以由數據連接字符串標識符標識。對於每一外部數據源,圖表服務後端456可以將數據連接信息傳送到前端454。web服務前端妨4將數據連接信息傳遞給實現預定義的抽象類的對應模塊。例如,數據模塊可以包括以下(被示出為偽代碼)
權利要求
1.一種至少部分地在用於可擴展的基於web的圖表可視化服務的計算設備中執行的方法,所述方法包括響應於接收到對包括對外部數據源的引用的圖表231的請求,將所述請求提供給更新引擎224,以便確定受支持的數據源和用於不受支持的數據源的定製數據模塊; 從所述更新引擎2M接收定製數據模塊標識符336 ; 調用由所述標識符指示的定製數據模塊; 從所述定製數據模塊接收數據和異常的其中之一; 如果接收到數據,則將所述數據轉發給所述更新引擎224 ;以及通過接收基於來自所述更新引擎224的所轉發的數據而更新的所述圖表241的渲染, 在客戶機應用程式處協調所請求的圖表的呈現。
2.如權利要求1所述的方法,進一步包括如果從所述定製數據模塊接收到異常,則將異常消息提供給所述客戶機應用程式。
3.如權利要求1所述的方法,其特徵在於,所述更新引擎2M被配置為對來自所述受支持的數據源的數據執行更新,並且對於來自所述不受支持的數據源的數據則委託給對應的定製數據模塊。
4.如權利要求1所述的方法,其特徵在於,所述數據與來自以下組中的至少一個相關聯所請求的圖表中的元素的形狀、大小、位置和屬性。
5.如權利要求1所述的方法,進一步包括一旦確定所有定製數據模塊,就對每一定製數據模塊啟動並行查詢和異步查詢。
6.如權利要求5所述的方法,其特徵在於,發起請求的客戶機應用程式的網絡標識符和附加的連接和查詢信息被作為參數傳送給每一定製數據模塊。
7.如權利要求1所述的方法,其特徵在於,每一定製數據模塊被配置為檢索、生成和聚集數據並採用回調來返回。
8.如權利要求1所述的方法,進一步包括解析和提取連接到外部數據的圖表元素的視覺效果定義; 重新評估帶有對外部數據的引用的圖表元素的每一屬性的公布時間公式;以及渲染所述圖表。
9.一種用於執行用於可擴展的基於web的圖表可視化的圖表服務的系統,所述系統包括web前端(WFE)伺服器,其被配置為響應於從瀏覽器接收對包括對外部數據源的引用的圖表231的請求,將所述請求轉發給更新引擎224;從所述更新引擎2M接收引用定製數據模塊的連接字符串; 調用所述定製數據模塊以便從所述外部數據源檢索、生成和聚集數據; 從所述定製數據模塊接收預定義格式的數據; 將所接收的數據轉發給所述更新引擎224 ; 從所述更新引擎2M接收經渲染的圖表241 ;以及將經渲染的圖表241提供給所述瀏覽器M2 ;以及被配置為執行所述更新引擎241的後端伺服器,其中所述後端引擎被配置為對於帶有對受支持的外部數據源的每一圖表元素,將用於所述受支持的數據源的連接字符串返回給所述WFE;對於帶有對不受支持的外部數據源的每一圖表元素,確定用於定製數據模塊的連接字符串;以及如果找到定製數據模塊,則將所述用於定製數據模塊的連接字符串返回給所述WFE;否則將錯誤代碼返回給所述WFE。
10.如權利要求9所述的系統,其特徵在於,所述用於定製數據模塊的連接字符串包括所述定製數據模塊的名稱、用於實現所述定製數據模塊類的類以及預定義格式的附加的連接和查詢信息。
11.如權利要求9所述的系統,其特徵在於,所述更新引擎2M還被配置為返回要針對所述受支持的數據源執行的查詢字符串以及預期要從所述受支持的數據源返回的數據的模式定義。
12.如權利要求11所述的系統,其特徵在於,所述更新引擎2M還被配置為連接到所述受支持的數據源、通過執行由所述查詢字符串定義的查詢來檢索所述數據以及針對所述模式驗證所述數據,且其中每一定製數據模塊被配置為通過來自所述WFE的回調系統檢索和聚集數據並將所述數據返回給所述WFE。
13.一種其上存儲有用於可擴展的基於web的圖表可視化服務的指令的計算機可讀存儲介質,所述指令包括接收對包括對外部數據源的引用的圖表231的請求;對於對受支持的數據源的引用確定所引用的數據源;連接到所引用的數據源;通過執行查詢來檢索數據;以及驗證所檢索的數據;對於對不受支持的數據源的引用確定用於來自所引用的不受支持的數據源的數據的定製數據模塊; 通過將發起請求的客戶機應用程式的網絡上下文和連接/查詢信息傳遞給所述定製數據模塊來調用所確定的定製數據模塊;以及從所述定製數據模塊接收數據; 解析和提取數據連接的圖表元素的視覺效果定義; 計算所述圖表元素的公布時間公式; 基於所更新的公布時間公式來渲染所請求的圖表;以及將經渲染的圖表242提供給所述發起請求的客戶機應用程式。
14.如權利要求13所述的計算機可讀介質,其特徵在於,所述定製數據模塊還被配置為基於所述網絡上下文來認證請求者,且其中在後端伺服器基於從受支持的和不受支持的數據源接收的數據來渲染所請求的圖表231,且所渲染的圖表被web前端伺服器提供給所述發起請求的客戶機應用程式。
15.如權利要求13所述的計算機可讀介質,其特徵在於,所述指令還包括調用所述定製數據模塊以及通過並行回調和異步回調的其中之一來接收數據。
全文摘要
通過允許圖表更新引擎起動定製數據模塊來實現基於WEB的圖表可視化服務中的可擴展體系結構和數據流。用於不固有地受支持的數據源的數據模塊通過專門定義的接口(例如.NET程序集)由第三方創建,且使得它對基於WEB的圖表服務可見並可以從圖表更新引擎調用。因而,可以從中檢索圖表數據的許多數據源以及操縱和聚集輸入的數據的方式是可以通過代碼來擴展的。
文檔編號G06F9/44GK102292719SQ200980155363
公開日2011年12月21日 申請日期2009年12月4日 優先權日2009年1月21日
發明者A·馬修, E·奇科什, P-J·阿里達, R·羅伽納坦 申請人:微軟公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀