国产精品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>

      用于對(duì)數(shù)據(jù)進(jìn)行建模的系統(tǒng)及方法

      文檔序號(hào):6625792閱讀:201來源:國(guó)知局
      用于對(duì)數(shù)據(jù)進(jìn)行建模的系統(tǒng)及方法
      【專利摘要】本發(fā)明涉及用于對(duì)數(shù)據(jù)進(jìn)行建模的系統(tǒng)及方法。本公開大體上描述了一種用于接收和聚合關(guān)于開處方者何時(shí)向患者提供無線設(shè)備應(yīng)用的匿名數(shù)據(jù)報(bào)告的計(jì)算機(jī)實(shí)現(xiàn)的方法、軟件以及系統(tǒng)。本公開討論了結(jié)合其他電子醫(yī)療信息來分析數(shù)據(jù)報(bào)告以生成關(guān)于保健過程中的場(chǎng)景的有用結(jié)論的方式。
      【專利說明】用于對(duì)數(shù)據(jù)進(jìn)行建模的系統(tǒng)及方法

      【背景技術(shù)】
      [0001] 保健數(shù)據(jù)可以以電子格式而被存儲(chǔ)并且存儲(chǔ)在各種存儲(chǔ)系統(tǒng)中。


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

      [0002] 在一個(gè)方面中,一些實(shí)現(xiàn)提供了一種用于向用戶提供對(duì)存儲(chǔ)在多個(gè)數(shù)據(jù)存儲(chǔ)系 統(tǒng)處的數(shù)據(jù)實(shí)體的訪問的計(jì)算機(jī)實(shí)現(xiàn)方法,該方法包括:接收包括成分元素(component element)的數(shù)據(jù)實(shí)體模型的定義;接收使所定義的數(shù)據(jù)實(shí)體模型的至少一個(gè)成分元素與 存儲(chǔ)在多個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)處的表示至少一個(gè)數(shù)據(jù)實(shí)體的數(shù)據(jù)相關(guān)的規(guī)范(specification); 基于所接收的規(guī)范將所接收的數(shù)據(jù)實(shí)體模型的定義轉(zhuǎn)換為將所述數(shù)據(jù)實(shí)體模型與存儲(chǔ)在 多個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)處的數(shù)據(jù)相鏈接的數(shù)據(jù)庫模式(schema);接收針對(duì)訪問存儲(chǔ)在多個(gè)數(shù) 據(jù)存儲(chǔ)系統(tǒng)之一處的部分?jǐn)?shù)據(jù)的請(qǐng)求;以及響應(yīng)于接收到所述請(qǐng)求并且根據(jù)所轉(zhuǎn)換的模 式,將所述請(qǐng)求配置為特定于所述數(shù)據(jù)存儲(chǔ)系統(tǒng)的數(shù)據(jù)訪問操作。
      [0003] 實(shí)現(xiàn)可以包括以下特征中的一個(gè)或者多個(gè)。在一種配置中,該方法可以進(jìn)一步包 括使得特定于所述數(shù)據(jù)存儲(chǔ)系統(tǒng)的數(shù)據(jù)訪問操作在所述數(shù)據(jù)存儲(chǔ)系統(tǒng)上被執(zhí)行。接收針對(duì) 訪問部分?jǐn)?shù)據(jù)的請(qǐng)求可以包括接收針對(duì)訪問至少一個(gè)數(shù)據(jù)實(shí)體的部分的數(shù)據(jù)訪問請(qǐng)求,并 且所述數(shù)據(jù)訪問請(qǐng)求可以以不特定于所述數(shù)據(jù)存儲(chǔ)系統(tǒng)的統(tǒng)一格式而被指定。該方法可以 進(jìn)一步包括接收由于在數(shù)據(jù)存儲(chǔ)系統(tǒng)上執(zhí)行數(shù)據(jù)訪問操作的結(jié)果。
      [0004] 在另一配置中,配置,該方法可以進(jìn)一步包括:接收數(shù)據(jù)實(shí)體模型的定義包括接收 用于數(shù)據(jù)實(shí)體模型中描述的至少一個(gè)成分元素的有效定義。該方法可以進(jìn)一步包括:根據(jù) 所述有效定義來驗(yàn)證要被訪問的至少一個(gè)數(shù)據(jù)實(shí)體的部分。
      [0005] 在又另一配置中,轉(zhuǎn)換所接收的數(shù)據(jù)實(shí)體模型的定義包括將所接收的數(shù)據(jù)實(shí)體模 型的定義轉(zhuǎn)換為用于按行存儲(chǔ)數(shù)據(jù)條目的至少一個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)和按列存儲(chǔ)數(shù)據(jù)條目的 至少另一個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)的數(shù)據(jù)庫模式。按行存儲(chǔ)數(shù)據(jù)條目的至少一個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)可以 包括結(jié)構(gòu)化查詢語言(SQL)數(shù)據(jù)庫管理系統(tǒng)。按列存儲(chǔ)數(shù)據(jù)條目的至少一個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng) 可以包括NoSQL數(shù)據(jù)庫管理系統(tǒng)。
      [0006] 在仍然另一配置中,該方法可以進(jìn)一步包括接收以可擴(kuò)展數(shù)據(jù)格式的規(guī)范和數(shù)據(jù) 實(shí)體模型的定義。該方法可以進(jìn)一步包括接收以可擴(kuò)展標(biāo)記語言(XML)的規(guī)范和數(shù)據(jù)實(shí)體 模型的定義。該方法可以另外包括接收以JavaScript對(duì)象表示法(JSON)格式的規(guī)范和數(shù) 據(jù)實(shí)體模型的定義。該方法可以另外包括將規(guī)范和數(shù)據(jù)實(shí)體模型的定義轉(zhuǎn)換為至少一個(gè)可 解析對(duì)象。該方法可以進(jìn)一步包括:解析至少一個(gè)可解析對(duì)象以生成用于多個(gè)數(shù)據(jù)存儲(chǔ)系 統(tǒng)中每一個(gè)的數(shù)據(jù)庫模式。
      [0007] 在仍然又另一配置中,該方法可以包括由于在數(shù)據(jù)存儲(chǔ)系統(tǒng)上執(zhí)行數(shù)據(jù)訪問操作 的結(jié)果以及接收指定與數(shù)據(jù)實(shí)體模型相關(guān)聯(lián)的顯示布局的指令。作為對(duì)其響應(yīng),該方法可 以包括使得數(shù)據(jù)實(shí)體模型的至少一個(gè)成分元素根據(jù)所指定的顯示布局而被顯示。作為對(duì)其 響應(yīng),該方法可以進(jìn)一步包括:將界面配置為報(bào)告工具;經(jīng)由該界面將執(zhí)行數(shù)據(jù)訪問操作 的結(jié)果發(fā)送至報(bào)告工具;以及使得至少一個(gè)成分元素根據(jù)所指定的顯示布局而被顯示。
      [0008] 在另一方面中,一些實(shí)現(xiàn)可以包括能夠與多個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)對(duì)接的服務(wù)器,該服 務(wù)器包括被配置為執(zhí)行以下操作的至少一個(gè)處理器:接收包括成分元素的數(shù)據(jù)實(shí)體模型的 定義;接收使所定義的數(shù)據(jù)實(shí)體模型的至少一個(gè)成分元素與存儲(chǔ)在多個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)處的 表示至少一個(gè)數(shù)據(jù)實(shí)體的數(shù)據(jù)相關(guān)的規(guī)范;基于所接收的規(guī)范將所接收的數(shù)據(jù)實(shí)體模型的 定義轉(zhuǎn)換為將所述數(shù)據(jù)實(shí)體模型與存儲(chǔ)在多個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)處的數(shù)據(jù)相鏈接的數(shù)據(jù)庫模 式;接收針對(duì)訪問存儲(chǔ)在多個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)之一處的部分?jǐn)?shù)據(jù)的請(qǐng)求;以及響應(yīng)于接收到 所述請(qǐng)求并且根據(jù)所轉(zhuǎn)換的模式,將所述請(qǐng)求配置為特定于所述數(shù)據(jù)存儲(chǔ)系統(tǒng)的數(shù)據(jù)訪問 操作。
      [0009] 實(shí)現(xiàn)可以包括以下特征中的一個(gè)或者多個(gè)。在一種配置中,該操作可以進(jìn)一步包 括使得特定于數(shù)據(jù)存儲(chǔ)系統(tǒng)的數(shù)據(jù)訪問操作在所述數(shù)據(jù)存儲(chǔ)系統(tǒng)上被執(zhí)行。接收針對(duì)訪問 部分?jǐn)?shù)據(jù)的請(qǐng)求可以包括接收針對(duì)訪問至少一個(gè)數(shù)據(jù)實(shí)體的部分的數(shù)據(jù)訪問請(qǐng)求,并且所 述數(shù)據(jù)訪問請(qǐng)求可以以不特定于所述數(shù)據(jù)存儲(chǔ)系統(tǒng)的統(tǒng)一格式而被指定。該操作可以進(jìn)一 步包括接收由于在數(shù)據(jù)存儲(chǔ)系統(tǒng)上執(zhí)行所述數(shù)據(jù)訪問操作的結(jié)果。
      [0010] 在另一配置中,配置,該操作可以進(jìn)一步包括:接收數(shù)據(jù)實(shí)體模型的定義包括接收 用于數(shù)據(jù)實(shí)體模型中描述的至少一個(gè)成分元素的有效定義。該操作可以進(jìn)一步包括根據(jù)所 述有效定義來驗(yàn)證要被訪問的至少一個(gè)數(shù)據(jù)實(shí)體的部分。
      [0011] 在又另一配置中,轉(zhuǎn)換所接收的數(shù)據(jù)實(shí)體模型的定義包括將所接收的數(shù)據(jù)實(shí)體 模型的定義轉(zhuǎn)換為用于按行存儲(chǔ)數(shù)據(jù)條目的至少一個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)和按列存儲(chǔ)數(shù)據(jù)條目 的至少另一個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)的數(shù)據(jù)庫模式。按行存儲(chǔ)數(shù)據(jù)條目的至少一個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)可 以包括結(jié)構(gòu)化查詢語言(SQL)數(shù)據(jù)庫管理系統(tǒng)。按列存儲(chǔ)數(shù)據(jù)條目的至少一個(gè)數(shù)據(jù)存儲(chǔ)系 統(tǒng)可以包括NoSQL數(shù)據(jù)庫管理系統(tǒng)。
      [0012] 在仍然另一配置中,該操作可以進(jìn)一步包括接收以可擴(kuò)展數(shù)據(jù)格式的規(guī)范和數(shù)據(jù) 實(shí)體模型的定義。該操作可以進(jìn)一步包括接收以可擴(kuò)展標(biāo)記語言(XML)的規(guī)范和數(shù)據(jù)實(shí)體 模型的定義。該操作可以另外包括接收以JavaScript對(duì)象表示法(JSON)格式的規(guī)范和數(shù) 據(jù)實(shí)體模型的定義。該操作可以另外包括將規(guī)范和數(shù)據(jù)實(shí)體模型的定義轉(zhuǎn)換為至少一個(gè)可 解析對(duì)象。該操作可以進(jìn)一步包括:解析至少一個(gè)可解析對(duì)象以生成用于多個(gè)數(shù)據(jù)存儲(chǔ)系 統(tǒng)中每一個(gè)的數(shù)據(jù)庫模式。
      [0013] 在仍然又另一配置中,該操作可以包括由于在數(shù)據(jù)存儲(chǔ)系統(tǒng)上執(zhí)行數(shù)據(jù)訪問操作 的結(jié)果和接收指定與數(shù)據(jù)實(shí)體模型相關(guān)聯(lián)的顯示布局的指令。作為對(duì)其響應(yīng),該操作可以 包括使得數(shù)據(jù)實(shí)體模型的至少一個(gè)成分元素根據(jù)所指定的顯示布局而被顯示。作為對(duì)其響 應(yīng),該操作可以進(jìn)一步包括:將界面配置為報(bào)告工具;經(jīng)由該界面將執(zhí)行數(shù)據(jù)訪問操作的 結(jié)果發(fā)送至報(bào)告工具;以及使得至少一個(gè)成分元素根據(jù)所指定的顯示布局而被顯示。
      [0014] 以上技術(shù)的實(shí)現(xiàn)包括方法、計(jì)算機(jī)程序產(chǎn)品和系統(tǒng)。該計(jì)算機(jī)程序產(chǎn)品被合適地 體現(xiàn)在非臨時(shí)機(jī)器可讀介質(zhì)中并且包括可由一個(gè)或者多個(gè)處理器執(zhí)行的指令。該指令被配 置為使得一個(gè)或者多個(gè)處理器執(zhí)行上述動(dòng)作。
      [0015] 該系統(tǒng)包括一個(gè)或者多個(gè)處理器以及嵌入在非臨時(shí)機(jī)器可讀介質(zhì)中的可由一個(gè) 或者多個(gè)處理器執(zhí)行的指令。該指令當(dāng)被執(zhí)行時(shí),被配置為使得一個(gè)或者多個(gè)處理器執(zhí)行 上述動(dòng)作。默認(rèn)位置不要使用任何外部數(shù)據(jù)庫,但是如果需要的話,該系統(tǒng)可以被配置為執(zhí) 行數(shù)據(jù)庫檢查。
      [0016] 在下面的附圖和描述中闡述了本說明書中描述的主題事項(xiàng)的一個(gè)或者多個(gè)方面 的細(xì)節(jié)。主題事項(xiàng)的其他特征、方面和優(yōu)點(diǎn)將根據(jù)描述、附圖以及權(quán)利要求書而變得顯而易 見。

      【專利附圖】

      【附圖說明】
      [0017] 圖1是示出根據(jù)一些實(shí)現(xiàn)的耦合到多個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)的web (網(wǎng)絡(luò))服務(wù)器的示 圖。
      [0018] 圖2A是示出根據(jù)一些實(shí)現(xiàn)的處理數(shù)據(jù)訪問請(qǐng)求的示例性工作流程的示圖。
      [0019] 圖2B是示出根據(jù)一些實(shí)現(xiàn)的系統(tǒng)管理員配置數(shù)據(jù)模型的示例性用戶界面的屏幕 截圖。
      [0020] 圖3圖示根據(jù)一些實(shí)現(xiàn)的示例性數(shù)據(jù)存儲(chǔ)配置。
      [0021] 圖4是示出根據(jù)一些實(shí)現(xiàn)的處理數(shù)據(jù)訪問請(qǐng)求的流程圖的示圖。
      [0022] 圖5A是示出根據(jù)一些實(shí)現(xiàn)的配置顯示輸出的流程圖的示圖。
      [0023] 圖5B是示出根據(jù)一些實(shí)現(xiàn)的生成顯示結(jié)果的流程圖的示圖。

      【具體實(shí)施方式】
      [0024] 本公開大體上描述了軟件設(shè)計(jì)者和多個(gè)具有不同檢索技術(shù)的異構(gòu)數(shù)據(jù)存儲(chǔ)系統(tǒng) 之間的界面。本文公開的實(shí)現(xiàn)包含動(dòng)態(tài)數(shù)據(jù)模型和存儲(chǔ)配置框架,通過其系統(tǒng)管理員可以 在服務(wù)器上指定要被建模的數(shù)據(jù)實(shí)體、每個(gè)數(shù)據(jù)實(shí)體的關(guān)聯(lián)屬性、這些數(shù)據(jù)實(shí)體之間的關(guān) 系,以及顯示布局和設(shè)計(jì)。該框架允許應(yīng)用軟件開發(fā)者使用一般化定義語言編寫用以訪問 存儲(chǔ)在多個(gè)底層存儲(chǔ)技術(shù)上的數(shù)據(jù)的應(yīng)用代碼。使用該框架,應(yīng)用軟件程序員可以不需要 知道底層存儲(chǔ)技術(shù)的細(xì)節(jié)?;诒疚墓_的實(shí)現(xiàn),應(yīng)用程序代碼能夠無縫地與多個(gè)底層數(shù) 據(jù)存儲(chǔ)技術(shù)交互,這是因?yàn)閼?yīng)用軟件程序員能夠?qū)W⒂谠搼?yīng)用的數(shù)據(jù)模型而不是任何底層 存儲(chǔ)或檢索技術(shù)的細(xì)節(jié)。此外,實(shí)現(xiàn)能夠包含適配器以容納新的或者還要被開發(fā)的存儲(chǔ)技 術(shù)。本文公開的實(shí)現(xiàn)可以是可擴(kuò)展的。
      [0025] 保健數(shù)據(jù)庫可以在保健中服務(wù)于中心角色,包括患者護(hù)理、管理、研究和教育。保 健數(shù)據(jù)可以大體上指的是由多個(gè)機(jī)構(gòu)所生成的患者的保健記錄,包括例如初級(jí)護(hù)理醫(yī)生、 醫(yī)院、診所、藥店等。這些機(jī)構(gòu)可以跨越國(guó)家,或者甚至世界。此類保健數(shù)據(jù)變得日益越來 越電子化。作為說明,圖片存檔及通信系統(tǒng)(PACS)可以管理在醫(yī)院的放射科或心臟病科獲 得的患者的圖像數(shù)據(jù)。通常,診斷測(cè)試結(jié)果、治療用服藥史、手術(shù)史、或者甚至家族史和遺傳 素質(zhì)都能成為患者的保健數(shù)據(jù)的部分。以電子形式的此類保健數(shù)據(jù)可以向患者和治療醫(yī)生 提供對(duì)相關(guān)保健數(shù)據(jù)的容易訪問。作為另一說明,保險(xiǎn)事務(wù)可以電子地進(jìn)行。實(shí)際上,為了 提供更快的服務(wù)和更容易的訪問,越來越多的保險(xiǎn)公司電子地處理保險(xiǎn)要求和支付基金。 [0026] 為了提供服務(wù)品質(zhì),保健數(shù)據(jù)庫被預(yù)期成跨不同機(jī)構(gòu)和技術(shù)的邊界而起作用。這 些電子數(shù)據(jù)庫可以由國(guó)內(nèi)或者甚至跨國(guó)的任何地方的不同機(jī)構(gòu)所托管。這些電子數(shù)據(jù)庫可 以利用各種數(shù)據(jù)存儲(chǔ)系統(tǒng)。在保健數(shù)據(jù)庫中使用的數(shù)據(jù)存儲(chǔ)技術(shù)的示例可以包括但不限 于SQL (結(jié)構(gòu)化查詢語言)數(shù)據(jù)服務(wù)器、非SQL數(shù)據(jù)服務(wù)器、網(wǎng)絡(luò)附接存儲(chǔ)(NAS)服務(wù)器、直 接附接存儲(chǔ)(DAS)設(shè)備、存儲(chǔ)區(qū)域網(wǎng)絡(luò)(SAN)存儲(chǔ)等。示例性數(shù)據(jù)存儲(chǔ)技術(shù)還可以包括云 存儲(chǔ),電子保健數(shù)據(jù)可以通過所述云存儲(chǔ)而被存儲(chǔ)在由第三方管理的虛擬化存儲(chǔ)池中。
      [0027] 對(duì)于上下文,通過在速度和大容量存儲(chǔ)設(shè)備的容量方面的硬件改進(jìn)以及處理器和 聯(lián)網(wǎng)速度方面的類似進(jìn)展而促進(jìn)以電子形式的保健數(shù)據(jù)在大小方面增長(zhǎng)得更大。保健數(shù)據(jù) 庫可以采用跨具有不同存儲(chǔ)技術(shù)的單獨(dú)的數(shù)據(jù)庫服務(wù)器簇的大表來劃分。例如,與快速局 域網(wǎng)耦合的存儲(chǔ)區(qū)域網(wǎng)絡(luò)(SAN)和網(wǎng)絡(luò)附接存儲(chǔ)(NAS)以及光纖通道技術(shù)使得能夠?qū)崿F(xiàn)數(shù) 據(jù)庫的還更大、更松散耦合的配置和分布式計(jì)算功率。分布式數(shù)據(jù)庫存儲(chǔ)器的示例性實(shí)現(xiàn) 可以包括X/Open XA標(biāo)準(zhǔn)和Oracle RACrelies,這兩者都采用數(shù)據(jù)存儲(chǔ)服務(wù)器之間的高速 網(wǎng)絡(luò)聯(lián)接。在描述數(shù)據(jù)存儲(chǔ)技術(shù)的上下文中,服務(wù)器、系統(tǒng)和設(shè)備可以互換地使用。
      [0028] 圖1是示出根據(jù)一些實(shí)現(xiàn)的耦合至多個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)108至112的服務(wù)器102的 示圖。服務(wù)器102可以是與本文描述一致的任何計(jì)算機(jī)或計(jì)算裝置。服務(wù)器102可以被配 置為處理數(shù)據(jù)訪問請(qǐng)求104和106。數(shù)據(jù)訪問請(qǐng)求104和106可以由患者、初級(jí)護(hù)理醫(yī)生、 治療醫(yī)生、物理治療師或者保險(xiǎn)提供商所提交。數(shù)據(jù)訪問請(qǐng)求104和106可以嘗試訪問跨 多個(gè)存儲(chǔ)技術(shù)存儲(chǔ)的數(shù)據(jù),這如由數(shù)據(jù)存儲(chǔ)系統(tǒng)108至112所實(shí)現(xiàn)的。
      [0029] 如上所述的與多個(gè)存儲(chǔ)技術(shù)對(duì)接的一種解決方案將是把大的條件邏輯塊寫入到 運(yùn)行服務(wù)器102上的數(shù)據(jù)庫應(yīng)用程序??刂茐K可以允許該應(yīng)用程序采用與特定的底層數(shù)據(jù) 存儲(chǔ)技術(shù)一致的方式與多個(gè)底層數(shù)據(jù)存儲(chǔ)技術(shù)中的每一個(gè)交互。這個(gè)方法表示了一種用以 處理用于每個(gè)特定底層數(shù)據(jù)存儲(chǔ)技術(shù)的界面的"硬連線"方法。通常,可以要求特定于每個(gè) 底層數(shù)據(jù)存儲(chǔ)技術(shù)的數(shù)據(jù)結(jié)構(gòu)的顯性知識(shí)。甚至在用于特定底層數(shù)據(jù)存儲(chǔ)技術(shù)的隔離界面 的實(shí)現(xiàn)中,可能也不放棄此類知識(shí)要求。因此,為了實(shí)現(xiàn)該解決方案,用以描述特定于底層 數(shù)據(jù)存儲(chǔ)技術(shù)的對(duì)象以及對(duì)象關(guān)系的數(shù)據(jù)結(jié)構(gòu)被硬連線到運(yùn)行在服務(wù)器102上的數(shù)據(jù)庫 應(yīng)用程序中。因而,此類解決方案可以使數(shù)據(jù)結(jié)構(gòu)的復(fù)雜規(guī)范成為必要,從而導(dǎo)致了具有增 多的錯(cuò)誤出現(xiàn)和針對(duì)維護(hù)的降低適合性的脆弱實(shí)現(xiàn)。
      [0030] 對(duì)象關(guān)系建模(ORM)技術(shù)可以采用面向?qū)ο缶幊陶Z言在以其他方式不兼容類型 系統(tǒng)之間變換數(shù)據(jù)。實(shí)際上,該變換創(chuàng)建了一種可以在編程語言內(nèi)被使用的"虛擬對(duì)象數(shù) 據(jù)庫"。對(duì)于上下文,面向?qū)ο螅?0)編程中的數(shù)據(jù)管理任務(wù)通常通過幾乎總是非標(biāo)量值的 操縱對(duì)象來實(shí)現(xiàn)。作為說明,具有居住地址、家庭電話號(hào)碼、初級(jí)護(hù)理醫(yī)生的姓名和保單信 息的條目的患者地址簿可以被實(shí)現(xiàn)為一個(gè)對(duì)象。所實(shí)現(xiàn)的對(duì)象包括用以保持每個(gè)數(shù)據(jù)條目 項(xiàng)的性質(zhì)/字段。所實(shí)現(xiàn)的對(duì)象還可以包括用以訪問數(shù)據(jù)條目項(xiàng)的各種方法,諸如例如,檢 索電話號(hào)碼、更新保單號(hào)等。然而,許多流行的數(shù)據(jù)庫產(chǎn)品(諸如,結(jié)構(gòu)化查詢語言(SQL) 數(shù)據(jù)庫管理系統(tǒng)(DBMS))能夠僅存儲(chǔ)和操縱標(biāo)量值,諸如在表內(nèi)被組織的整數(shù)和字符串。 ORM技術(shù)嘗試將對(duì)象值變換為較簡(jiǎn)單的值的組以供在數(shù)據(jù)庫中存儲(chǔ)(以及在檢索時(shí)將它們 變換回去)。
      [0031] 使用ORM技術(shù)的商業(yè)的和開放源包是可用的。例如,諸如Hibernate和NHibemate 的包能夠執(zhí)行對(duì)象關(guān)系映射。然而,這些現(xiàn)有的包僅解決軟件應(yīng)用程序和目標(biāo)DBMS之間的 層處的變換。可能難以解決較高級(jí)別(即應(yīng)用級(jí)別)處的該問題。此外,現(xiàn)有的軟件包(諸 如Hibernate和NHibemate)不能與較新的NoSQL技術(shù)對(duì)接。
      [0032] 對(duì)于上下文,NoSQL數(shù)據(jù)庫提供了用于存儲(chǔ)和檢索數(shù)據(jù)的使用較松散的一致性模 型而不是傳統(tǒng)的關(guān)系數(shù)據(jù)庫的機(jī)制。針對(duì)該NoSQL方法的動(dòng)機(jī)包括可用性之上的設(shè)計(jì)簡(jiǎn) 化、水平定標(biāo)和較精密控制。NoSQL數(shù)據(jù)庫通常包括針對(duì)簡(jiǎn)單檢索和附加操作而優(yōu)化的關(guān)鍵 值存儲(chǔ)區(qū),以使得可以在延遲和吞吐量方面獲得顯著的性能益處。NoSQL數(shù)據(jù)庫在大數(shù)據(jù)和 實(shí)時(shí)web應(yīng)用中尋找顯著的和增長(zhǎng)的產(chǎn)業(yè)使用。與諸如SQL DBMS之類的傳統(tǒng)事務(wù)數(shù)據(jù)庫 系統(tǒng)對(duì)比,NoSQL數(shù)據(jù)庫不一定能夠給出完整的原子性、一致性、隔離性和持久性(ACID)保 證。作為代替,NoSQL數(shù)據(jù)庫實(shí)現(xiàn)通常可以僅提供最終一致性或者NoSQL數(shù)據(jù)庫實(shí)現(xiàn)可以將 事務(wù)限制為單個(gè)的數(shù)據(jù)項(xiàng)。該對(duì)比特征意味著給定在其期間沒有附加改變被生成的充分長(zhǎng) 的時(shí)間段,所有的更新可以被預(yù)期為最終通過系統(tǒng)傳播。盡管大部分的NoSQL系統(tǒng)實(shí)現(xiàn)可 以通過單文檔處理事務(wù),但一些NoSQL系統(tǒng)(諸如extreme Scale、Foundation DEkOrient DB、Wakanda DB和djondb)可以通過多個(gè)文檔執(zhí)行事務(wù),這類似于RDBMS系統(tǒng)通過多行所支 持的。NoSQL數(shù)據(jù)庫通常水平地定標(biāo),從而意味著更低成本的商業(yè)系統(tǒng)的添加能提高包括更 快響應(yīng)于數(shù)據(jù)查詢的能力的聚合計(jì)算性能。因而,當(dāng)性能和實(shí)時(shí)性比一致性更重要時(shí)(如 在索引大量文檔、服務(wù)高流量網(wǎng)站上的頁面、以及遞送流媒體中),NoSQL數(shù)據(jù)庫通??梢?管理大量的數(shù)據(jù)。
      [0033] 在提供數(shù)據(jù)存儲(chǔ)解決方案中,一些公司和研究者可以爭(zhēng)論關(guān)系數(shù)據(jù)庫管理系統(tǒng)的 限制。例如,一些供貨商(諸如GigaSpace)提倡不同于主流的關(guān)系數(shù)據(jù)庫模型的基于空間 的架構(gòu),以達(dá)到最高性能和可擴(kuò)展性。其他的供貨商(諸如,Base One)相信主流的關(guān)系數(shù) 據(jù)庫技術(shù)會(huì)進(jìn)一步增強(qiáng)可擴(kuò)展性。此外,NoSQL架構(gòu)(諸如,谷歌的BigTable)已經(jīng)被證明 會(huì)進(jìn)一步增強(qiáng)針對(duì)專門應(yīng)用的可擴(kuò)展性。作為進(jìn)一步的發(fā)展,被定位為BigTable的后續(xù)物 的谷歌的大規(guī)模分布式Spanner技術(shù)支持通用數(shù)據(jù)庫事務(wù)并提供更常規(guī)的基于SQL的查詢 語言。因此,從具有不同的、間或的、極化的實(shí)現(xiàn)主導(dǎo)思想的各種供應(yīng)商可得到無數(shù)的數(shù)據(jù) 存儲(chǔ)技術(shù)。
      [0034] 在管理大的且異構(gòu)的數(shù)據(jù)集中,軟件產(chǎn)業(yè)致力于解決與無數(shù)的數(shù)據(jù)存儲(chǔ)解決方案 進(jìn)行對(duì)接的問題,包括例如SQL存儲(chǔ)系統(tǒng)和NoSQL存儲(chǔ)系統(tǒng)。也就是說,難以在應(yīng)用層處為 軟件設(shè)計(jì)者提供統(tǒng)一的界面來訪問存儲(chǔ)在各種底層數(shù)據(jù)存儲(chǔ)系統(tǒng)上的數(shù)據(jù)。
      [0035] 盡管在應(yīng)用層處支持多種存儲(chǔ)技術(shù)可能是困難的,但這樣的統(tǒng)一界面使得應(yīng)用軟 件程序員能夠高效地開發(fā)代碼。
      [0036] 首先,應(yīng)用程序代碼可以修改或更新可以采用不受底層存儲(chǔ)系統(tǒng)的特質(zhì)影響的方 式在特定的應(yīng)用程序中使用的數(shù)據(jù)模型。作為代替,底層存儲(chǔ)系統(tǒng)可以根據(jù)所修改的數(shù)據(jù) 模型進(jìn)行動(dòng)作。因此,應(yīng)用代碼可以關(guān)于底層數(shù)據(jù)存儲(chǔ)實(shí)現(xiàn)而是可維護(hù)的且靈活的。
      [0037] 其次,應(yīng)用軟件程序員可以不再必須為托管由應(yīng)用程序所引用的數(shù)據(jù)的每個(gè)特定 的數(shù)據(jù)存儲(chǔ)系統(tǒng)編寫特定的應(yīng)用代碼。換言之,軟件程序員能從如何實(shí)現(xiàn)底層存儲(chǔ)技術(shù)的 詳細(xì)知識(shí)的負(fù)擔(dān)中解脫。因此,應(yīng)用軟件程序員能聚焦于編寫可維護(hù)的代碼,從而減少了用 以針對(duì)大數(shù)據(jù)應(yīng)用而實(shí)現(xiàn)和修改軟件程序的開發(fā)時(shí)間。
      [0038] 圖2是示出根據(jù)一些實(shí)現(xiàn)的動(dòng)態(tài)數(shù)據(jù)模型和存儲(chǔ)配置的示例性架構(gòu)的示圖。配置 數(shù)據(jù)1通常指代意在用于配置對(duì)象關(guān)系模型中的實(shí)體和它們的關(guān)系的數(shù)據(jù)。在一些實(shí)現(xiàn) 中,一般化的配置數(shù)據(jù)1塊除了其他事物之外尤其可以表示實(shí)體結(jié)構(gòu)2、實(shí)體關(guān)系3、實(shí)體顯 示引導(dǎo)4以及實(shí)體行為5。在一些實(shí)現(xiàn)中,可擴(kuò)展標(biāo)記語言(XML)可以被選擇以表示配置數(shù) 據(jù)1。在其他實(shí)現(xiàn)中,其他可擴(kuò)展編程語言(諸如JSON)可以被用于表示方案。
      [0039] 實(shí)體結(jié)構(gòu)2可以大體上指代指定對(duì)象關(guān)系模型中的實(shí)體的布局的配置信息,包括 針對(duì)每個(gè)屬性的組成屬性和適用的屬性數(shù)據(jù)類型。組成屬性和對(duì)應(yīng)的適用屬性數(shù)據(jù)類型通 ??梢员环Q為成分元素。
      [0040] 下面的XML代碼摘錄示出了實(shí)體結(jié)構(gòu)2的示例性RelaxNG緊湊(RNC)模式定義。
      [0041]
      [

      【權(quán)利要求】
      1. 一種用于向用戶提供對(duì)存儲(chǔ)在多個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)處的數(shù)據(jù)實(shí)體的訪問的計(jì)算機(jī)實(shí) 現(xiàn)方法,所述方法包括: 接收包括成分元素的數(shù)據(jù)實(shí)體模型的定義; 接收使所定義的數(shù)據(jù)實(shí)體模型的至少一個(gè)成分元素與存儲(chǔ)在多個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)處的 表示至少一個(gè)數(shù)據(jù)實(shí)體的數(shù)據(jù)相關(guān)的規(guī)范; 基于所接收的規(guī)范將所接收的數(shù)據(jù)實(shí)體模型的定義轉(zhuǎn)換為將所述數(shù)據(jù)實(shí)體模型與存 儲(chǔ)在多個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)處的數(shù)據(jù)相鏈接的數(shù)據(jù)庫模式; 接收針對(duì)訪問存儲(chǔ)在多個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)之一處的部分?jǐn)?shù)據(jù)的請(qǐng)求;以及 響應(yīng)于接收到所述請(qǐng)求并且根據(jù)所轉(zhuǎn)換的模式,將所述請(qǐng)求配置為特定于所述數(shù)據(jù)存 儲(chǔ)系統(tǒng)的數(shù)據(jù)訪問操作。
      2. 根據(jù)權(quán)利要求1的方法,進(jìn)一步包括: 使得特定于所述數(shù)據(jù)存儲(chǔ)系統(tǒng)的所述數(shù)據(jù)訪問操作在所述數(shù)據(jù)存儲(chǔ)系統(tǒng)上被執(zhí)行。
      3. 根據(jù)權(quán)利要求2的方法,其中接收針對(duì)訪問部分?jǐn)?shù)據(jù)的請(qǐng)求包括接收針對(duì)訪問至少 一個(gè)數(shù)據(jù)實(shí)體的部分的數(shù)據(jù)訪問請(qǐng)求,并且其中所述數(shù)據(jù)訪問請(qǐng)求以不特定于所述數(shù)據(jù)存 儲(chǔ)系統(tǒng)的統(tǒng)一格式而被指定。
      4. 根據(jù)權(quán)利要求2的方法,進(jìn)一步包括: 接收由于在數(shù)據(jù)存儲(chǔ)系統(tǒng)上執(zhí)行所述數(shù)據(jù)訪問操作的結(jié)果。
      5. 根據(jù)權(quán)利要求1的方法,進(jìn)一步包括: 接收數(shù)據(jù)實(shí)體模型的定義包括接收用于數(shù)據(jù)實(shí)體模型中描述的至少一個(gè)成分元素的 有效定義。
      6. 根據(jù)權(quán)利要求5的方法,進(jìn)一步包括: 根據(jù)所述有效定義來驗(yàn)證要被訪問的所述至少一個(gè)數(shù)據(jù)實(shí)體的部分。
      7. 根據(jù)權(quán)利要求1的方法,其中轉(zhuǎn)換所接收的數(shù)據(jù)實(shí)體模型的定義包括將所接收的數(shù) 據(jù)實(shí)體模型的定義轉(zhuǎn)換為用于按行存儲(chǔ)數(shù)據(jù)條目的至少一個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)和按列存儲(chǔ)數(shù) 據(jù)條目的至少另一個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)的數(shù)據(jù)庫模式。
      8. 根據(jù)權(quán)利要求7的方法,其中按行存儲(chǔ)數(shù)據(jù)條目的至少一個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)包括結(jié)構(gòu) 化查詢語言(SQL)數(shù)據(jù)庫管理系統(tǒng)。
      9. 根據(jù)權(quán)利要求7的方法,其中按列存儲(chǔ)數(shù)據(jù)條目的至少另一個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)包括 NoSQL數(shù)據(jù)庫管理系統(tǒng)。
      10. 根據(jù)權(quán)利要求1的方法,進(jìn)一步包括: 接收以可擴(kuò)展數(shù)據(jù)格式的規(guī)范和數(shù)據(jù)實(shí)體模型的定義。
      11. 根據(jù)權(quán)利要求10的方法,進(jìn)一步包括: 接收以可擴(kuò)展標(biāo)記語言(XML)的規(guī)范和數(shù)據(jù)實(shí)體模型的定義。
      12. 根據(jù)權(quán)利要求11的方法,進(jìn)一步包括: 接收以JavaScript對(duì)象表示法(JS0N)格式的規(guī)范和數(shù)據(jù)實(shí)體模型的定義。
      13. 根據(jù)權(quán)利要求12的方法,進(jìn)一步包括: 將規(guī)范和數(shù)據(jù)實(shí)體模型的定義轉(zhuǎn)換為至少一個(gè)可解析對(duì)象。
      14. 根據(jù)權(quán)利要求13的方法,其中進(jìn)一步包括:解析所述至少一個(gè)可解析對(duì)象以生成 用于多個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)中每一個(gè)的數(shù)據(jù)庫模式。
      15. 根據(jù)權(quán)利要求4的方法,進(jìn)一步包括: 接收指定與所述數(shù)據(jù)實(shí)體模型相關(guān)聯(lián)的顯示布局的指令。
      16. 根據(jù)權(quán)利要求15的方法,進(jìn)一步包括: 使得所述數(shù)據(jù)實(shí)體模型的至少一個(gè)成分元素根據(jù)所指定的顯示布局而被顯示。
      17. 根據(jù)權(quán)利要求15的方法,進(jìn)一步包括: 將界面配置為報(bào)告工具; 經(jīng)由所述界面,將執(zhí)行所述數(shù)據(jù)訪問操作的結(jié)果發(fā)送給所述報(bào)告工具;以及 使得所述至少一個(gè)成分元素根據(jù)所指定的顯示布局而被顯示。
      18. -種能夠與多個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)對(duì)接的服務(wù)器,所述服務(wù)器包括被配置為執(zhí)行以下 操作的至少一個(gè)處理器: 接收包括成分元素的數(shù)據(jù)實(shí)體模型的定義; 接收使所定義的數(shù)據(jù)實(shí)體模型的至少一個(gè)成分元素與存儲(chǔ)在多個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)處的 表示至少一個(gè)數(shù)據(jù)實(shí)體的數(shù)據(jù)相關(guān)的規(guī)范; 基于所接收的規(guī)范將所接收的數(shù)據(jù)實(shí)體模型的定義轉(zhuǎn)換為將所述數(shù)據(jù)實(shí)體模型與存 儲(chǔ)在多個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)處的數(shù)據(jù)相鏈接的數(shù)據(jù)庫模式; 接收針對(duì)訪問存儲(chǔ)在多個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)之一處的部分?jǐn)?shù)據(jù)的請(qǐng)求;以及 響應(yīng)于接收到所述請(qǐng)求并且根據(jù)所轉(zhuǎn)換的模式,將所述請(qǐng)求配置為特定于所述數(shù)據(jù)存 儲(chǔ)系統(tǒng)的數(shù)據(jù)訪問操作。
      19. 根據(jù)權(quán)利要求18的服務(wù)器,其中所述操作進(jìn)一步包括: 使得特定于數(shù)據(jù)存儲(chǔ)系統(tǒng)的數(shù)據(jù)訪問操作在所述數(shù)據(jù)存儲(chǔ)系統(tǒng)上被執(zhí)行。
      20. 根據(jù)權(quán)利要求19的服務(wù)器,其中接收針對(duì)訪問部分?jǐn)?shù)據(jù)的請(qǐng)求包括接收針對(duì)訪問 至少一個(gè)數(shù)據(jù)實(shí)體的部分的數(shù)據(jù)訪問請(qǐng)求,并且其中所述數(shù)據(jù)訪問請(qǐng)求以不特定于所述數(shù) 據(jù)存儲(chǔ)系統(tǒng)的統(tǒng)一格式而被指定。
      21. 根據(jù)權(quán)利要求19的服務(wù)器,進(jìn)一步包括: 接收由于在數(shù)據(jù)存儲(chǔ)系統(tǒng)上執(zhí)行所述數(shù)據(jù)訪問操作的結(jié)果。
      22. 根據(jù)權(quán)利要求18的服務(wù)器,其中所述操作進(jìn)一步包括: 接收數(shù)據(jù)實(shí)體模型的定義包括接收用于數(shù)據(jù)實(shí)體模型中描述的至少一個(gè)成分元素的 有效定義。
      23. 根據(jù)權(quán)利要求22的服務(wù)器,其中所述操作進(jìn)一步包括: 根據(jù)所述有效定義來驗(yàn)證要被訪問的所述至少一個(gè)數(shù)據(jù)實(shí)體的部分。
      24. 根據(jù)權(quán)利要求18的服務(wù)器,其中轉(zhuǎn)換所接收的所述數(shù)據(jù)實(shí)體模型的定義包括將所 接收的所述數(shù)據(jù)實(shí)體模型的定義轉(zhuǎn)換為用于按行存儲(chǔ)數(shù)據(jù)條目的至少一個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng) 和按列存儲(chǔ)數(shù)據(jù)條目的至少另一個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)的數(shù)據(jù)庫模式。
      25. 根據(jù)權(quán)利要求24的服務(wù)器,其中按行存儲(chǔ)數(shù)據(jù)條目的至少一個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)包括 結(jié)構(gòu)化查詢語言(SQL)數(shù)據(jù)庫管理系統(tǒng)。
      26. 根據(jù)權(quán)利要求25的服務(wù)器,其中按列存儲(chǔ)數(shù)據(jù)條目的至少另一個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)包 括NoSQL數(shù)據(jù)庫管理系統(tǒng)。
      27. 根據(jù)權(quán)利要求18的服務(wù)器,進(jìn)一步包括: 接收以可擴(kuò)展數(shù)據(jù)格式的規(guī)范和數(shù)據(jù)實(shí)體模型的定義。
      28. 根據(jù)權(quán)利要求27的服務(wù)器,進(jìn)一步包括: 接收以可擴(kuò)展標(biāo)記語言(XML)的規(guī)范和數(shù)據(jù)實(shí)體模型的定義。
      29. 根據(jù)權(quán)利要求28的服務(wù)器,進(jìn)一步包括: 接收以JavaScript對(duì)象表示法(JSON)格式的規(guī)范和數(shù)據(jù)實(shí)體模型的定義。
      30. 根據(jù)權(quán)利要求29的服務(wù)器,進(jìn)一步包括: 將規(guī)范和數(shù)據(jù)實(shí)體模型的定義轉(zhuǎn)換為至少一個(gè)可解析對(duì)象。
      31. 根據(jù)權(quán)利要求30的服務(wù)器,其中進(jìn)一步包括:解析所述至少一個(gè)可解析對(duì)象以生 成用于多個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)中每一個(gè)的數(shù)據(jù)庫模式。
      32. 根據(jù)權(quán)利要求21的服務(wù)器,進(jìn)一步所述操作進(jìn)一步包括: 接收指定與所述數(shù)據(jù)實(shí)體模型相關(guān)聯(lián)的顯示布局的指令。
      33. 根據(jù)權(quán)利要求32的服務(wù)器,其中所述操作進(jìn)一步包括: 根據(jù)所指定的顯示布局來顯示所述數(shù)據(jù)實(shí)體模型的至少一個(gè)成分元素。
      34. 根據(jù)權(quán)利要求32的服務(wù)器,其中所述操作進(jìn)一步包括: 將界面配置為報(bào)告工具; 經(jīng)由所述界面,將執(zhí)行所述數(shù)據(jù)訪問操作的結(jié)果發(fā)送給所述報(bào)告工具;以及 使得所述至少一個(gè)成分元素根據(jù)所指定的顯示布局而被顯示。
      35. -種計(jì)算機(jī)可讀介質(zhì),包括了軟件指令,所述軟件指令在由計(jì)算機(jī)的一個(gè)或者多個(gè) 處理器執(zhí)行時(shí),使得所述計(jì)算機(jī)執(zhí)行以下操作: 接收包括成分元素的數(shù)據(jù)實(shí)體模型的定義; 接收使所定義的數(shù)據(jù)實(shí)體模型的至少一個(gè)成分元素與存儲(chǔ)在多個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)處的 表示至少一個(gè)數(shù)據(jù)實(shí)體的數(shù)據(jù)相關(guān)的規(guī)范; 基于所接收的規(guī)范將所接收的數(shù)據(jù)實(shí)體模型的定義轉(zhuǎn)換為將所述數(shù)據(jù)實(shí)體模型與存 儲(chǔ)在多個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)處的數(shù)據(jù)相鏈接的數(shù)據(jù)庫模式; 接收針對(duì)訪問存儲(chǔ)在多個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)之一處的部分?jǐn)?shù)據(jù)的請(qǐng)求;以及 響應(yīng)于接收到所述請(qǐng)求并且根據(jù)所轉(zhuǎn)換的模式,將所述請(qǐng)求配置為特定于所述數(shù)據(jù)存 儲(chǔ)系統(tǒng)的數(shù)據(jù)訪問操作。
      【文檔編號(hào)】G06F9/44GK104376037SQ201410445248
      【公開日】2015年2月25日 申請(qǐng)日期:2014年7月17日 優(yōu)先權(quán)日:2013年7月18日
      【發(fā)明者】C·哈恩, D·斯拉格, S·邁勒斯 申請(qǐng)人:Ims保健公司
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1