欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

基于用戶數(shù)據(jù)訪問模式的數(shù)據(jù)庫表格式轉(zhuǎn)換的方法和系統(tǒng)的制作方法

文檔序號:6509574閱讀:554來源:國知局
基于用戶數(shù)據(jù)訪問模式的數(shù)據(jù)庫表格式轉(zhuǎn)換的方法和系統(tǒng)的制作方法【專利摘要】提供了一種用于在聯(lián)網(wǎng)計算環(huán)境中基于用戶數(shù)據(jù)訪問模式在數(shù)據(jù)庫格式之間進(jìn)行轉(zhuǎn)換(例如,從關(guān)系數(shù)據(jù)庫格式轉(zhuǎn)換到散列表或“大表”數(shù)據(jù)庫格式)的方法?;诖鎯υ谟嬎銠C(jī)存儲裝置中的訪問模式集合來識別具有第一格式的第一數(shù)據(jù)庫表集合。然后可以提供(例如,訪問、擴(kuò)大和/或產(chǎn)生)與第一數(shù)據(jù)庫表集合對應(yīng)的具有第二數(shù)據(jù)庫格式的第二數(shù)據(jù)庫表集合。然后可以創(chuàng)建第一數(shù)據(jù)庫表集合與第二數(shù)據(jù)庫表集合之間的映射。然后可以基于查詢集合的至少一個條件來產(chǎn)生列集合。然后可以使用該列集合作為用于第二數(shù)據(jù)庫表集合的關(guān)鍵字?!緦@f明】基于用戶數(shù)據(jù)訪問模式的數(shù)據(jù)庫表格式轉(zhuǎn)換的方法和系統(tǒng)【
技術(shù)領(lǐng)域
】[0001]總的來講,本發(fā)明涉及數(shù)據(jù)庫表格式轉(zhuǎn)換。具體地講,本發(fā)明的實施例涉及聯(lián)網(wǎng)計算環(huán)境(例如,云計算環(huán)境)下基于用戶訪問模式(例如,查詢、插入、更新或刪除)從一個或多個關(guān)系數(shù)據(jù)庫表產(chǎn)生散列表(又名“大表”)數(shù)據(jù)庫表?!?br>背景技術(shù)
】[0002]聯(lián)網(wǎng)計算環(huán)境(例如,云計算環(huán)境)是前身網(wǎng)格環(huán)境的增強(qiáng)形式,由此可以通過一個或多個附加抽象層(例如,云層)來進(jìn)一步增強(qiáng)多個網(wǎng)格和其他計算資源,從而使得不同裝置對于終端消費(fèi)者表現(xiàn)為單個無縫資源池。這些資源可以包括比如物理或邏輯計算引擎、服務(wù)器和裝置、裝置存儲器和存儲裝置等這樣的東西。[0003]云計算模型提供用于應(yīng)用程序托管的方便工具。然而,因為云環(huán)境中托管的許多數(shù)據(jù)庫遵循表格數(shù)據(jù)庫模型,所以在將云計算模型應(yīng)用于數(shù)據(jù)庫架構(gòu)時可能存在挑戰(zhàn)。也就是說,傳統(tǒng)的關(guān)系數(shù)據(jù)庫模型可能不能應(yīng)用于設(shè)計將在云環(huán)境中被托管的應(yīng)用程序。因此,它通常依賴于用戶/消費(fèi)者理解表格數(shù)據(jù)庫格式所涉及的概念。就這點而論,通常手動地執(zhí)行從關(guān)系數(shù)據(jù)庫格式到表格數(shù)據(jù)庫格式的轉(zhuǎn)換,這可能很耗時而且容易出錯?!?br/>發(fā)明內(nèi)容】[0004]總的來講,本發(fā)明的實施例涉及在聯(lián)網(wǎng)計算環(huán)境(例如,云計算環(huán)境)中基于用戶數(shù)據(jù)訪問模式(例如,查詢、插入、更新或刪除的集合)在數(shù)據(jù)庫格式之間進(jìn)行轉(zhuǎn)換(例如,從關(guān)系數(shù)據(jù)庫格式轉(zhuǎn)換到散列表或“大表”數(shù)據(jù)庫格式)的方法。在典型的實施例中,基于存儲在計算機(jī)存儲裝置中的訪問模式集合來識別具有第一格式的第一數(shù)據(jù)庫表集合。然后可以提供(例如,訪問、擴(kuò)大和/或產(chǎn)生)與第一數(shù)據(jù)庫表集合對應(yīng)的具有第二數(shù)據(jù)庫格式的第二數(shù)據(jù)庫表集合。然后可以創(chuàng)建第一數(shù)據(jù)庫表集合與第二數(shù)據(jù)庫表集合之間的映射。然后可以基于訪問模式集合的至少一個條件來產(chǎn)生列集合。然后可以使用該列集合作為用于第二數(shù)據(jù)庫表集合的關(guān)鍵字。[0005]本發(fā)明的第一方面提供一種用于在聯(lián)網(wǎng)計算環(huán)境中基于用戶數(shù)據(jù)訪問模式轉(zhuǎn)換數(shù)據(jù)庫格式的計算機(jī)實現(xiàn)方法,該方法包括:基于存儲在計算機(jī)存儲裝置中的訪問模式集合來識別第一數(shù)據(jù)庫表集合,第一數(shù)據(jù)庫表集合具有第一格式,訪問模式集合指示對存儲在第一數(shù)據(jù)庫表集合中的數(shù)據(jù)的用戶數(shù)據(jù)查詢、插入、更新或刪除的集合;提供與第一數(shù)據(jù)庫表集合對應(yīng)的具有第二數(shù)據(jù)庫格式的第二數(shù)據(jù)庫表集合;創(chuàng)建第一數(shù)據(jù)庫表集合與第二數(shù)據(jù)庫表集合之間的映射;并且基于訪問模式集合的至少一個條件來產(chǎn)生用于第二數(shù)據(jù)庫表集合的關(guān)鍵字。[0006]本發(fā)明的第二方面提供一種用于在聯(lián)網(wǎng)計算環(huán)境中基于用戶數(shù)據(jù)訪問模式轉(zhuǎn)換數(shù)據(jù)庫格式的系統(tǒng),該系統(tǒng)包括:存儲器介質(zhì),包括指令;總線,與存儲器介質(zhì)耦合;以及處理器,與總線耦合,當(dāng)執(zhí)行這些指令時使該系統(tǒng)執(zhí)行以下步驟:基于存儲在計算機(jī)存儲裝置中的一組查詢來識別第一數(shù)據(jù)庫表集合,第一數(shù)據(jù)庫表集合具有第一格式,訪問模式集合指示對存儲在第一數(shù)據(jù)庫表集合中的數(shù)據(jù)的用戶數(shù)據(jù)查詢、插入、更新或刪除的集合;提供與第一數(shù)據(jù)庫表集合對應(yīng)的具有第二數(shù)據(jù)庫格式的第二數(shù)據(jù)庫表集合;創(chuàng)建第一數(shù)據(jù)庫表集合與第二數(shù)據(jù)庫表集合之間的映射;并且基于訪問模式集合的至少一個條件來產(chǎn)生用于第二數(shù)據(jù)庫表集合的關(guān)鍵字。[0007]本發(fā)明的第三方面提供一種用于在聯(lián)網(wǎng)計算環(huán)境中基于用戶數(shù)據(jù)訪問模式轉(zhuǎn)換數(shù)據(jù)庫格式的計算機(jī)程序產(chǎn)品,該計算機(jī)程序產(chǎn)品包括計算機(jī)可讀存儲介質(zhì)和存儲在該計算機(jī)可讀存儲介質(zhì)上的程序指令,以:基于存儲在計算機(jī)存儲裝置中的訪問模式集合來識別第一數(shù)據(jù)庫表集合,第一數(shù)據(jù)庫表集合具有第一格式,訪問模式集合指示對存儲在第一數(shù)據(jù)庫表集合中的數(shù)據(jù)的用戶數(shù)據(jù)查詢、插入、更新或刪除的集合;提供與第一數(shù)據(jù)庫表集合對應(yīng)的具有第二數(shù)據(jù)庫格式的第二數(shù)據(jù)庫表集合;創(chuàng)建第一數(shù)據(jù)庫表集合與第二數(shù)據(jù)庫表集合之間的映射;并且基于訪問模式集合的至少一個條件來產(chǎn)生用于第二數(shù)據(jù)庫表集合的關(guān)鍵字。[0008]本發(fā)明的第四方面提供一種用于部署用于在聯(lián)網(wǎng)計算環(huán)境中基于用戶數(shù)據(jù)訪問模式轉(zhuǎn)換數(shù)據(jù)庫格式的系統(tǒng)的方法,該方法包括:提供可操作為執(zhí)行以下步驟的計算機(jī)基礎(chǔ)設(shè)施:基于存儲在計算機(jī)存儲裝置中的訪問模式集合來識別第一數(shù)據(jù)庫表集合,第一數(shù)據(jù)庫表集合具有第一格式,訪問模式集合指示對存儲在第一數(shù)據(jù)庫表集合中的數(shù)據(jù)的用戶數(shù)據(jù)查詢、插入、更新或刪除的集合;提供與第一數(shù)據(jù)庫表集合對應(yīng)的具有第二數(shù)據(jù)庫格式的第二數(shù)據(jù)庫表集合;創(chuàng)建第一數(shù)據(jù)庫表集合與第二數(shù)據(jù)庫表集合之間的映射;并且基于訪問模式集合的至少一個條件來產(chǎn)生用于第二數(shù)據(jù)庫表集合的關(guān)鍵字。【專利附圖】【附圖說明】[0009]從以下結(jié)合附圖對本發(fā)明的各方面進(jìn)行的詳細(xì)描述,本發(fā)明的這些特征和其他特征將更易于理解,其中:[0010]圖1表示根據(jù)本發(fā)明一實施例的云計算節(jié)點;[0011]圖2表示根據(jù)本發(fā)明一實施例的云計算環(huán)境;[0012]圖3表示根據(jù)本發(fā)明一實施例的抽象模型層;[0013]圖4表不根據(jù)本發(fā)明一實施例的系統(tǒng)圖;[0014]圖5表示根據(jù)本發(fā)明一實施例的處理/組件流程圖;[0015]圖6表示根據(jù)本發(fā)明一實施例的方法流程圖。[0016]附圖不一定按比例繪制。附圖僅僅是示意性表示,并非意圖描繪本發(fā)明的特定參數(shù)。附圖意在于僅表示本發(fā)明的典型實施例,因此不應(yīng)被認(rèn)為限制本發(fā)明的范圍。在附圖中,相似的編號表示相似的元件。【具體實施方式】[0017]現(xiàn)在將在本文中參照附圖更充分地描述說明性實施例,在附圖中顯示了實施例。然而,本公開可以以許多不同的形式實施,不應(yīng)被解讀為限于本文所闡述的實施例。相反,提供這些實施例,以使得本公開將是透徹的、完整的,并且將把本公開的范圍充分傳達(dá)給本領(lǐng)域的技術(shù)人員。在描述中,可以省略公知的特征和技術(shù)的細(xì)節(jié),以避免不必要地模糊所給出的實施例。[0018]本文所使用的術(shù)語僅僅是出于描述特定示例實施例的目的,并非意圖限制本公開。如本文所使用的,單數(shù)形式“一”和“該”意圖也包括復(fù)數(shù)形式,除非上下文另有明確的指示。此外,術(shù)語“一”等的使用不表示數(shù)量的限制,而是表示所引用的項目中的至少一個的存在。術(shù)語“集合”意在于意指至少一個的數(shù)量。將進(jìn)一步理解,術(shù)語“包括”和/或“包含”在本說明書中被使用時表明所陳述的特征、區(qū)域、整數(shù)、步驟、操作、元件和/或組件的存在,但不排除一個或多個其他特征、區(qū)域、整數(shù)、步驟、操作、元件、組件和/或它們的組合的存在或添加。[0019]本發(fā)明的實施例涉及用于在聯(lián)網(wǎng)計算環(huán)境(例如,云計算環(huán)境)下基于用戶數(shù)據(jù)訪問模式(例如,查詢集合)在數(shù)據(jù)庫格式之間進(jìn)行轉(zhuǎn)換(例如,從關(guān)系數(shù)據(jù)庫格式轉(zhuǎn)換到散列表或“大表”數(shù)據(jù)庫格式)的方法。在典型的實施例中,基于存儲在計算機(jī)存儲裝置中的訪問模式集合來識別具有第一格式的第一數(shù)據(jù)庫表集合。然后可以提供(例如,訪問、擴(kuò)大和/或產(chǎn)生)與第一數(shù)據(jù)表集合對應(yīng)的具有第二數(shù)據(jù)庫格式的第二數(shù)據(jù)庫表集合。然后可以創(chuàng)建第一數(shù)據(jù)庫表集合與第二數(shù)據(jù)庫表集合之間的映射。然后可以基于訪問模式集合的至少一個條件來產(chǎn)生列集合。然后可以使用該列集合作為用于第二數(shù)據(jù)庫表集合的關(guān)鍵字。[0020]總的來講,散列表或“大表”數(shù)據(jù)庫格式將兩個任意的字符串值(例如,行關(guān)鍵字和列關(guān)鍵字)和時間戳(因此,三維映射)映射到相關(guān)聯(lián)的任意的字節(jié)陣列。大表格式可以被定義為稀疏的、分布式的多維排序映射。大表格式通常被設(shè)計為在大量機(jī)器之間縮放并且使得在沒有重大重構(gòu)的情況下增加更多的機(jī)器更加方便。每個表可以具有多個維度(例如,其中一個維度是關(guān)于允許版本管理和“垃圾”收集的時間的字段)??梢酝ㄟ^將表劃分為多個小塊(tablet)(例如,可以沿著被選擇為使得小塊將是某一大小(例如,大約200兆字節(jié))的行來劃分這些表的表段)來針對各種文件系統(tǒng)對這些表進(jìn)行優(yōu)化。[0021]當(dāng)表的大小具有增長超過指定限制的可能性時,可以使用各種算法(例如,BMDiff、Zippy壓縮算法(開源為Snappy))來壓縮小塊。小塊中的位置可以被記錄為多個專用小塊中的數(shù)據(jù)庫條目,這些專用小塊被稱為“META1”小塊??梢酝ㄟ^查詢“ΜΕΤΑ0”小塊來找到METAl小塊,“ΜΕΤΑ0”小塊通常駐留在它自己的服務(wù)器上,因為客戶端可能通常向它查詢“META1”小塊的位置。按照這些原則,METAO服務(wù)器通常不是一個瓶頸,因為發(fā)現(xiàn)并發(fā)送METAl位置所必需的處理器時間和帶寬通常為最小,并且客戶端可以高速緩存位置以使查詢最少。[0022]首先應(yīng)當(dāng)理解,盡管本公開包括關(guān)于云計算的詳細(xì)描述,但其中記載的技術(shù)方案的實現(xiàn)卻不限于云計算環(huán)境,而是能夠結(jié)合現(xiàn)在已知或以后開發(fā)的任何其它類型的計算環(huán)境而實現(xiàn)。[0023]云計算是一種服務(wù)交付模式,用于對共享的可配置計算資源池進(jìn)行方便、按需的網(wǎng)絡(luò)訪問。可配置計算資源是能夠以最小的管理成本或與服務(wù)提供者進(jìn)行最少的交互就能快速部署和釋放的資源,例如可以是網(wǎng)絡(luò)、網(wǎng)絡(luò)帶寬、服務(wù)器、處理、內(nèi)存、存儲、應(yīng)用、虛擬機(jī)和服務(wù)。這種云模式可以包括至少五個特征、至少三個服務(wù)模型和至少四個部署模型。[0024]特征包括:[0025]按需自助式服務(wù):云的消費(fèi)者在無需與服務(wù)提供者進(jìn)行人為交互的情況下能夠單方面自動地按需部署諸如服務(wù)器時間和網(wǎng)絡(luò)存儲等的計算能力。[0026]廣泛的網(wǎng)絡(luò)接入:計算能力可以通過標(biāo)準(zhǔn)機(jī)制在網(wǎng)絡(luò)上獲取,這種標(biāo)準(zhǔn)機(jī)制促進(jìn)了通過不同種類的瘦客戶機(jī)平臺或厚客戶機(jī)平臺(例如移動電話、膝上型電腦、個人數(shù)字助理PDA)對云的使用。[0027]資源池:提供者的計算資源被歸入資源池并通過多租戶(mult1-tenant)模式服務(wù)于多重消費(fèi)者,其中按需將不同的實體資源和虛擬資源動態(tài)地分配和再分配。一般情況下,消費(fèi)者不能控制或甚至并不知曉所提供的資源的確切位置,但可以在較高抽象程度上指定位置(例如國家、州或數(shù)據(jù)中心),因此具有位置無關(guān)性。[0028]迅速彈性:能夠迅速、有彈性地(有時是自動地)部署計算能力,以實現(xiàn)快速擴(kuò)展,并且能迅速釋放來快速縮小。在消費(fèi)者看來,用于部署的可用計算能力往往顯得是無限的,并能在任意時候都能獲取任意數(shù)量的計算能力。[0029]可測量的服務(wù):云系統(tǒng)通過利用適于服務(wù)類型(例如存儲、處理、帶寬和活躍用戶帳號)的某種抽象程度的計量能力,自動地控制和優(yōu)化資源效用。可以監(jiān)測、控制和報告資源使用情況,為服務(wù)提供者和消費(fèi)者雙方提供透明度。[0030]服務(wù)模型如下:[0031]軟件即服務(wù)(SaaS):向消費(fèi)者提供的能力是使用提供者在云基礎(chǔ)結(jié)構(gòu)上運(yùn)行的應(yīng)用??梢酝ㄟ^諸如網(wǎng)絡(luò)瀏覽器的瘦客戶機(jī)接口(例如基于網(wǎng)絡(luò)的電子郵件)從各種客戶機(jī)設(shè)備訪問應(yīng)用。除了有限的特定于用戶的應(yīng)用配置設(shè)置外,消費(fèi)者既不管理也不控制包括網(wǎng)絡(luò)、服務(wù)器、操作系統(tǒng)、存儲、乃至單個應(yīng)用能力等的底層云基礎(chǔ)結(jié)構(gòu)。[0032]平臺即服務(wù)(PaaS):向消費(fèi)者提供的能力是在云基礎(chǔ)結(jié)構(gòu)上部署消費(fèi)者創(chuàng)建或獲得的應(yīng)用,這些應(yīng)用利用提供者支持的程序設(shè)計語言和工具創(chuàng)建。消費(fèi)者既不管理也不控制包括網(wǎng)絡(luò)、服務(wù)器、操作系統(tǒng)或存儲的底層云基礎(chǔ)結(jié)構(gòu),但對其部署的應(yīng)用具有控制權(quán),對應(yīng)用托管環(huán)境配置可能也具有控制權(quán)。[0033]基礎(chǔ)結(jié)構(gòu)即服務(wù)(IaaS):向消費(fèi)者提供的能力是消費(fèi)者能夠在其中部署并運(yùn)行包括操作系統(tǒng)和應(yīng)用的任意軟件的處理、存儲、網(wǎng)絡(luò)和其他基礎(chǔ)計算資源。消費(fèi)者既不管理也不控制底層的云基礎(chǔ)結(jié)構(gòu),但是對操作系統(tǒng)、存儲和其部署的應(yīng)用具有控制權(quán),對選擇的網(wǎng)絡(luò)組件(例如主機(jī)防火墻)可能具有有限的控制權(quán)。[0034]部署模型如下:[0035]私有云:云基礎(chǔ)結(jié)構(gòu)單獨(dú)為某個組織運(yùn)行。云基礎(chǔ)結(jié)構(gòu)可以由該組織或第三方管理并且可以存在于該組織內(nèi)部或外部。[0036]共同體云:云基礎(chǔ)結(jié)構(gòu)被若干組織共享并支持有共同利害關(guān)系(例如任務(wù)使命、安全要求、政策和合規(guī)考慮)的特定共同體。共同體云可以由共同體內(nèi)的多個組織或第三方管理并且可以存在于該共同體內(nèi)部或外部。[0037]公共云:云基礎(chǔ)結(jié)構(gòu)向公眾或大型產(chǎn)業(yè)群提供并由出售云服務(wù)的組織擁有。[0038]混合云:云基礎(chǔ)結(jié)構(gòu)由兩個或更多部署模型的云(私有云、共同體云或公共云)組成,這些云依然是獨(dú)特的實體,但是通過使數(shù)據(jù)和應(yīng)用能夠移植的標(biāo)準(zhǔn)化技術(shù)或私有技術(shù)(例如用于云之間的負(fù)載平衡的云突發(fā)流量分擔(dān)技術(shù))綁定在一起。[0039]云計算環(huán)境是面向服務(wù)的,特點集中在無狀態(tài)性、低耦合性、模塊性和語意的互操作性。云計算的核心是包含互連節(jié)點網(wǎng)絡(luò)的基礎(chǔ)結(jié)構(gòu)。[0040]現(xiàn)在參考圖1,其中顯示了云計算節(jié)點的一個例子。圖1顯示的云計算節(jié)點10僅僅是適合的云計算節(jié)點的一個示例,不應(yīng)對本發(fā)明實施例的功能和使用范圍帶來任何限制??傊?,云計算節(jié)點10能夠被用來實現(xiàn)和/或執(zhí)行以上所述的任何功能。[0041]云計算節(jié)點10具有計算機(jī)系統(tǒng)/服務(wù)器12,其可與眾多其它通用或?qū)S糜嬎阆到y(tǒng)環(huán)境或配置一起操作。眾所周知,適于與計算機(jī)系統(tǒng)/服務(wù)器12—起操作的計算系統(tǒng)、環(huán)境和/或配置的例子包括但不限于:個人計算機(jī)系統(tǒng)、服務(wù)器計算機(jī)系統(tǒng)、瘦客戶機(jī)、厚客戶機(jī)、手持或膝上設(shè)備、基于微處理器的系統(tǒng)、機(jī)頂盒、可編程消費(fèi)電子產(chǎn)品、網(wǎng)絡(luò)個人電腦、小型計算機(jī)系統(tǒng)、大型計算機(jī)系統(tǒng)和包括上述任意系統(tǒng)的分布式云計算技術(shù)環(huán)境,等坐寸ο[0042]計算機(jī)系統(tǒng)/服務(wù)器12可以在由計算機(jī)系統(tǒng)執(zhí)行的計算機(jī)系統(tǒng)可執(zhí)行指令(諸如程序模塊)的一般語境下描述。通常,程序模塊可以包括執(zhí)行特定的任務(wù)或者實現(xiàn)特定的抽象數(shù)據(jù)類型的例程、程序、目標(biāo)程序、組件、邏輯、數(shù)據(jù)結(jié)構(gòu)等。計算機(jī)系統(tǒng)/服務(wù)器12可以在通過通信網(wǎng)絡(luò)鏈接的遠(yuǎn)程處理設(shè)備執(zhí)行任務(wù)的分布式云計算環(huán)境中實施。在分布式云計算環(huán)境中,程序模塊可以位于包括存儲設(shè)備的本地或遠(yuǎn)程計算系統(tǒng)存儲介質(zhì)上。[0043]如圖1所示,云計算節(jié)點10中的計算機(jī)系統(tǒng)/服務(wù)器12以通用計算設(shè)備的形式表現(xiàn)。計算機(jī)系統(tǒng)/服務(wù)器12的組件可以包括但不限于:一個或者多個處理器或者處理單元16,系統(tǒng)存儲器28,連接不同系統(tǒng)組件(包括系統(tǒng)存儲器28和處理單元16)的總線18。[0044]總線18表示幾類總線結(jié)構(gòu)中的一種或多種,包括存儲器總線或者存儲器控制器,外圍總線,圖形加速端口,處理器或者使用多種總線結(jié)構(gòu)中的任意總線結(jié)構(gòu)的局域總線。舉例來說,這些體系結(jié)構(gòu)包括但不限于工業(yè)標(biāo)準(zhǔn)體系結(jié)構(gòu)(ISA)總線,微通道體系結(jié)構(gòu)(MAC)總線,增強(qiáng)型ISA總線、視頻電子標(biāo)準(zhǔn)協(xié)會(VESA)局域總線以及外圍組件互連(PCI)總線。[0045]計算機(jī)系統(tǒng)/服務(wù)器12典型地包括多種計算機(jī)系統(tǒng)可讀介質(zhì)。這些介質(zhì)可以是能夠被計算機(jī)系統(tǒng)/服務(wù)器12訪問的任意可獲得的介質(zhì),包括易失性和非易失性介質(zhì),可移動的和不可移動的介質(zhì)。[0046]系統(tǒng)存儲器28可以包括易失性存儲器形式的計算機(jī)系統(tǒng)可讀介質(zhì),例如隨機(jī)存取存儲器(RAM)30和/或高速緩存存儲器32。計算機(jī)系統(tǒng)/服務(wù)器12可以進(jìn)一步包括其它可移動/不可移動的、易失性/非易失性計算機(jī)系統(tǒng)存儲介質(zhì)。僅作為舉例,存儲系統(tǒng)34可以用于讀寫不可移動的、非易失性磁介質(zhì)(圖1未顯示,通常稱為“硬盤驅(qū)動器”)。盡管圖1中未示出,可以提供用于對可移動非易失性磁盤(例如“軟盤”)讀寫的磁盤驅(qū)動器,以及對可移動非易失性光盤(例如⑶-ROM,DVD-ROM或者其它光介質(zhì))讀寫的光盤驅(qū)動器。在這些情況下,每個驅(qū)動器可以通過一個或者多個數(shù)據(jù)介質(zhì)接口與總線18相連。存儲器28可以包括至少一個程序產(chǎn)品,該程序產(chǎn)品具有一組(例如至少一個)程序模塊,這些程序模塊被配置以執(zhí)行本發(fā)明各實施例的功能。[0047]本發(fā)明的實施例可以被實現(xiàn)為計算機(jī)可讀信號介質(zhì),該計算機(jī)可讀信號介質(zhì)可以包括其中包含計算機(jī)可讀程序代碼的傳播數(shù)據(jù)信號(例如,基帶信號或者作為載波的一部分的信號)。這樣的傳播信號可以米取各種形式中的任何一種形式,包括,但不限于,電磁形式、光學(xué)形式或者它們的任何合適組合。計算機(jī)可讀信號介質(zhì)可以是不是計算機(jī)可讀存儲介質(zhì)的、可以傳送、傳播或傳輸程序的任何計算機(jī)可讀介質(zhì),該程序供指令執(zhí)行系統(tǒng)、設(shè)備或裝置使用或者與指令執(zhí)行系統(tǒng)、設(shè)備或裝置結(jié)合使用。[0048]可以使用任何合適的介質(zhì)(包括,但不限于,無線、有線、光纖電纜、射頻(RF)等或前述介質(zhì)的任何合適組合)來發(fā)送計算機(jī)可讀介質(zhì)上包含的程序代碼。[0049]具有一組(至少一個)程序模塊42的程序/實用工具40,可以存儲在存儲器28中,這樣的程序模塊42包括但不限于操作系統(tǒng)、一個或者多個應(yīng)用程序、其它程序模塊以及程序數(shù)據(jù),這些示例中的每一個或某種組合中可能包括網(wǎng)絡(luò)環(huán)境的實現(xiàn)。程序模塊42通常執(zhí)行本發(fā)明所描述的實施例中的功能和/或方法。[0050]計算機(jī)系統(tǒng)/服務(wù)器12也可以與一個或多個外部設(shè)備14(例如鍵盤、指向設(shè)備、顯示器24等)通信,還可與一個或者多個使得用戶能與該計算機(jī)系統(tǒng)/服務(wù)器12交互的設(shè)備通信,和/或與使得該計算機(jī)系統(tǒng)/服務(wù)器12能與一個或多個其它計算設(shè)備進(jìn)行通信的任何設(shè)備(例如網(wǎng)卡,調(diào)制解調(diào)器等等)通信。這種通信可以通過輸入/輸出(I/O)接口22進(jìn)行。并且,計算機(jī)系統(tǒng)/服務(wù)器12還可以通過網(wǎng)絡(luò)適配器20與一個或者多個網(wǎng)絡(luò)(例如局域網(wǎng)(LAN),廣域網(wǎng)(WAN)和/或公共網(wǎng)絡(luò),例如因特網(wǎng))通信。如圖所示,網(wǎng)絡(luò)適配器20通過總線18與計算機(jī)系統(tǒng)/服務(wù)器12的其它模塊通信。應(yīng)當(dāng)明白,盡管圖中未示出,其它硬件和/或軟件模塊可以與計算機(jī)系統(tǒng)/服務(wù)器12—起操作,包括但不限于:微代碼、設(shè)備驅(qū)動器、冗余處理單元、外部磁盤驅(qū)動陣列、RAID系統(tǒng)、磁帶驅(qū)動器以及數(shù)據(jù)備份存儲系統(tǒng)坐寸ο[0051]現(xiàn)在參考圖2,其中顯示了示例性的云計算環(huán)境50。如圖所示,云計算環(huán)境50包括云計算消費(fèi)者使用的本地計算設(shè)備可以與其相通信的一個或者多個云計算節(jié)點10,本地計算設(shè)備例如可以是個人數(shù)字助理(PDA)或移動電話54A,臺式電腦54B、筆記本電腦54C和/或汽車計算機(jī)系統(tǒng)54N。云計算節(jié)點10之間可以相互通信。可以在包括但不限于如上所述的私有云、共同體云、公共云或混合云或者它們的組合的一個或者多個網(wǎng)絡(luò)中將云計算節(jié)點10進(jìn)行物理或虛擬分組(圖中未顯示)。這樣,云的消費(fèi)者無需在本地計算設(shè)備上維護(hù)資源就能請求云計算環(huán)境50提供的基礎(chǔ)結(jié)構(gòu)即服務(wù)(IaaS)、平臺即服務(wù)(PaaS)和/或軟件即服務(wù)(SaaS)。應(yīng)當(dāng)理解,圖2顯示的各類計算設(shè)備54A-N僅僅是示意性的,云計算節(jié)點10以及云計算環(huán)境50可以與任意類型網(wǎng)絡(luò)上和/或網(wǎng)絡(luò)可尋址連接的任意類型的計算設(shè)備(例如使用網(wǎng)絡(luò)瀏覽器)通信。[0052]現(xiàn)在參考圖3,其中顯示了云計算環(huán)境50(圖2)提供的一組功能抽象層。首先應(yīng)當(dāng)理解,圖3所示的組件、層以及功能都僅僅是示意性的,本發(fā)明的實施例不限于此。如圖3所示,提供下列層和對應(yīng)功能:[0053]硬件和軟件層60包括硬件和軟件組件。硬件組件的例子包括:主機(jī),例如IBM?zSeries?;系統(tǒng);基于Rise(精簡指令集計算機(jī))體系結(jié)構(gòu)的服務(wù)器,例如IBMpSeries?系統(tǒng);ibmxSeries?系統(tǒng);ibmBladeCenter?系統(tǒng);存儲設(shè)備;網(wǎng)絡(luò)和網(wǎng)絡(luò)組件。軟件組件的例子包括:網(wǎng)絡(luò)應(yīng)用服務(wù)器軟件,例如ibmWebSphere?應(yīng)用服務(wù)器軟件;數(shù)據(jù)庫軟件,例如IBMDB2?數(shù)據(jù)庫軟件。(IBM,zSeries,pSeries,xSeries,BladeCenter,WebSphere以及DB2是國際商業(yè)機(jī)器公司在全世界各地的注冊商標(biāo))。[0054]虛擬層62提供一個抽象層,該層可以提供下列虛擬實體的例子:虛擬服務(wù)器、虛擬存儲、虛擬網(wǎng)絡(luò)(包括虛擬私有網(wǎng)絡(luò))、虛擬應(yīng)用和操作系統(tǒng),以及虛擬客戶端。[0055]在一個示例中,管理層64可以提供下述功能:資源供應(yīng)功能:提供用于在云計算環(huán)境中執(zhí)行任務(wù)的計算資源和其它資源的動態(tài)獲?。挥嬃亢投▋r功能:在云計算環(huán)境內(nèi)對資源的使用進(jìn)行成本跟蹤,并為此提供帳單和發(fā)票。在一個例子中,該資源可以包括應(yīng)用軟件許可。安全功能:為云的消費(fèi)者和任務(wù)提供身份認(rèn)證,為數(shù)據(jù)和其它資源提供保護(hù)。用戶門戶功能:為消費(fèi)者和系統(tǒng)管理員提供對云計算環(huán)境的訪問。服務(wù)水平管理功能:提供云計算資源的分配和管理,以滿足必需的服務(wù)水平。服務(wù)水平協(xié)議(SLA)計劃和履行功能--為根據(jù)SLA預(yù)測的對云計算資源未來需求提供預(yù)先安排和供應(yīng)。在管理層進(jìn)一步示出的是數(shù)據(jù)庫格式轉(zhuǎn)換,其表示基于本發(fā)明的實施例提供的功能。[0056]工作負(fù)載層66提供云計算環(huán)境可能實現(xiàn)的功能的示例。在該層中,可提供的工作負(fù)載或功能的示例包括:地圖繪制與導(dǎo)航;軟件開發(fā)及生命周期管理;虛擬教室的教學(xué)提供;數(shù)據(jù)分析處理;交易處理;以及消費(fèi)者數(shù)據(jù)存儲和備份。如以上所提及的,關(guān)于圖3所描述的前述所有示例僅僅是說明性的,本發(fā)明不限于這些示例。[0057]要理解,可以通過數(shù)據(jù)庫格式轉(zhuǎn)換功能(管理層64的數(shù)據(jù)庫格式轉(zhuǎn)換功能,其可以被有形地實施為程序/實用程序40(圖1)的程序代碼42的模塊)來執(zhí)行如本文典型地描述的本發(fā)明的所有功能。然而,情況不需要如此。相反,可以通過圖3中所示的層60-66中的任何一個來執(zhí)行/實現(xiàn)和/或啟用本文記載的功能。[0058]重申,盡管本公開包括關(guān)于云計算的詳細(xì)描述,但是本文記載的教導(dǎo)的實現(xiàn)不限于云計算環(huán)境。事實上,本發(fā)明的實施例意圖用現(xiàn)在已知或以后開發(fā)的任何類型的聯(lián)網(wǎng)計算環(huán)境來實現(xiàn)。[0059]如以上所記載的,本發(fā)明的實施例使得能夠基于關(guān)系數(shù)據(jù)庫模型(例如,用ddl或xml模式文件表達(dá))和數(shù)據(jù)訪問模式來創(chuàng)建大表??偟膩碇v,本發(fā)明的實施例將權(quán)衡利用用戶數(shù)據(jù)訪問模式(例如,查詢、插入、更新或刪除)來創(chuàng)建大表。也就是說,查詢、插入、更新或刪除中所涉及的數(shù)據(jù)(來自表和結(jié)點的數(shù)據(jù))被檢查/分析,并被使用來構(gòu)造大表。[0060]現(xiàn)在參照圖4,示出了描述本文所討論的根據(jù)本發(fā)明一實施例的功能的系統(tǒng)圖。要理解,可以在任何類型的聯(lián)網(wǎng)計算環(huán)境86(例如,云計算環(huán)境50)內(nèi)實施本文記載的教導(dǎo)。圖4中示出了可以被實現(xiàn)為單機(jī)計算機(jī)系統(tǒng)或聯(lián)網(wǎng)計算機(jī)系統(tǒng)的計算機(jī)系統(tǒng)/服務(wù)器12。在聯(lián)網(wǎng)計算環(huán)境86中實施本文記載的教導(dǎo)的情況下,每個客戶端無需具有數(shù)據(jù)庫格式轉(zhuǎn)換引擎(引擎70)。事實上,可以在與客戶端通信(例如,無線通信)以向其提供數(shù)據(jù)庫格式轉(zhuǎn)換的服務(wù)器或有服務(wù)器能力的裝置上加載引擎70。不管怎樣,如所描繪的,引擎70被示出在計算機(jī)系統(tǒng)/服務(wù)器12內(nèi)。一般來講,引擎70可以被實現(xiàn)為圖1的計算機(jī)系統(tǒng)12上的程序/實用程序40,并且可以能夠?qū)崿F(xiàn)本文記載的功能。如進(jìn)一步所示出的,引擎70(在一個實施例中)包括規(guī)則和/或計算引擎,該規(guī)則和/或計算引擎對一組(至少一個)規(guī)則/邏輯72進(jìn)行處理和/或據(jù)此提供數(shù)據(jù)庫格式轉(zhuǎn)換。[0061]按照這些原則,引擎70可以執(zhí)行與通用計算機(jī)類似的多種功能。具體地講,除了其他功能之外,引擎70可以(除了其他方面之外):基于訪問模式集合74A-N(例如,盡管未示出,但是訪問模式集合74A-N還可以從一個或多個計算機(jī)存儲裝置被訪問和/或存儲)來識別具有第一格式(例如,關(guān)系數(shù)據(jù)庫)的第一數(shù)據(jù)庫表集合80A-N(例如,被存儲在一個或多個計算機(jī)存儲裝置78中),訪問模式集合74A-N是對存儲在第一數(shù)據(jù)庫表集合80A-N中的數(shù)據(jù)的用戶數(shù)據(jù)查詢、插入、更新和/或刪除集合;提供與第一數(shù)據(jù)庫表集合80A-N對應(yīng)的具有第二數(shù)據(jù)庫格式(例如,大表/散列表數(shù)據(jù)庫格式)的第二數(shù)據(jù)庫表集合82A-N;從第一數(shù)據(jù)庫表集合80A-N產(chǎn)生非規(guī)范化表集合;擴(kuò)大第一數(shù)據(jù)庫表集合80A-N中的至少一個表,以得到第二數(shù)據(jù)庫表集合82A-N;創(chuàng)建第一數(shù)據(jù)庫表集合80A-N與第二數(shù)據(jù)庫表集合82A-N之間的映射76;基于訪問模式集合的至少一個條件來產(chǎn)生用于第二數(shù)據(jù)庫表集合的關(guān)鍵字;基于訪問模式集合74A-N的至少一個條件來產(chǎn)生列集合;使用該列集合作為用于第二數(shù)據(jù)庫表集合82A-N的關(guān)鍵字;和/或基于下列中的至少一個來將至少一個數(shù)據(jù)操作(例如,數(shù)據(jù)刪除操作、數(shù)據(jù)插入操作等)傳播到第二數(shù)據(jù)庫表集合82A-N:所述關(guān)鍵字、所述映射或所述至少一個條件。[0062]現(xiàn)在參照圖5,示出了根據(jù)本發(fā)明一實施例的組件流程圖。要提前理解的是,圖5中所示的組件中的一個或多個可以通過圖1-4的任一組件(例如,圖1的程序40、圖4的引擎70和/或計算機(jī)存儲裝置78等)來實現(xiàn)或者與任一組件結(jié)合實現(xiàn)。不管怎樣,如所示的,圖5概括地示出了以下組件:[0063]關(guān)系數(shù)據(jù)模型和訪問模式100:關(guān)系數(shù)據(jù)模型可以用數(shù)據(jù)定義語言(DDL)表示。訪問模式概括地表示對于關(guān)系數(shù)據(jù)模型的一個或多個操作(例如,查詢、數(shù)據(jù)插入操作、數(shù)據(jù)更新操作、數(shù)據(jù)刪除操作等)。[0064]大表解(solution)產(chǎn)生器102:通過將關(guān)系數(shù)據(jù)模型和訪問模式取作輸入,可以產(chǎn)生兩個或更多個對象,比如:定義大表名稱、表結(jié)構(gòu)的云數(shù)據(jù)表儲存庫配置和散列表定義104(例如,散列表定義、關(guān)鍵字定義等);和/或數(shù)據(jù)服務(wù)應(yīng)用程序編程接口(API)定義和實現(xiàn)邏輯106(例如,實現(xiàn)訪問模式的方法和/或邏輯)。[0065]云數(shù)據(jù)服務(wù)器110:通過部署數(shù)據(jù)服務(wù)API定義和實現(xiàn)邏輯106,云數(shù)據(jù)服務(wù)器110可以為一個或多個客戶端應(yīng)用程序108提供數(shù)據(jù)服務(wù)。這樣的服務(wù)可以包括訪問模式中所描述的操作。[0066]云數(shù)據(jù)儲存庫112:包含客戶端應(yīng)用程序所利用的數(shù)據(jù)的計算機(jī)存儲裝置。[0067]總的來講,通過圖5的組件的處理可以如下進(jìn)行:[0068]步驟Pl:基于關(guān)系數(shù)據(jù)模型和訪問模型100,大表解產(chǎn)生器102可以創(chuàng)建云數(shù)據(jù)儲存庫配置和散列表定義104以及數(shù)據(jù)服務(wù)API定義和實現(xiàn)邏輯106。[0069]步驟P2:將云數(shù)據(jù)儲存庫配置和散列表定義104部署到云數(shù)據(jù)儲存庫112中。[0070]步驟P3:將數(shù)據(jù)服務(wù)API定義和實現(xiàn)邏輯106部署到云數(shù)據(jù)服務(wù)器110中。[0071]步驟P4:客戶端應(yīng)用程序108通過云數(shù)據(jù)服務(wù)器110中部署的API來發(fā)出數(shù)據(jù)服務(wù)請求。[0072]步驟P5:云數(shù)據(jù)服務(wù)器110促成對存儲在云數(shù)據(jù)儲存庫112中的數(shù)據(jù)的訪問。[0073]步驟P6:云數(shù)據(jù)儲存庫112將被請求的數(shù)據(jù)傳送給云數(shù)據(jù)服務(wù)器110。[0074]步驟P7:云數(shù)據(jù)服務(wù)器110將服務(wù)請求結(jié)果返回給客戶端應(yīng)用程序108。[0075]說明件示例[0076]本節(jié)將描述用于實現(xiàn)本發(fā)明的至少一個實施例的說明性算法/處理。該算法將利用以下輸入和/或輸出:[0077]輸入:ER模型和訪問模式(例如,查詢、插入、更新或刪除等)[0078]輸出:大表模型[0079]步驟1:[0080]對于每個查詢,[0081](I)基于“FROM(從)”子句中指定的表來識別對應(yīng)的關(guān)系表。[0082](1.1)如果現(xiàn)存的大表涵蓋所識別的關(guān)系表,則進(jìn)入步驟(2)。[0083](1.2)如果現(xiàn)存的大表部分地涵蓋所識別的關(guān)系表(例如,大表/散列表通過表A與表B結(jié)合而形成,所識別的關(guān)系表包括表A、表B和表C),則應(yīng)當(dāng)通過所識別的沒有被涵蓋的表(比如,表C)來擴(kuò)大現(xiàn)存的大表。[0084](1.3)否則,從這些所識別的關(guān)系表產(chǎn)生非規(guī)范化表,該非規(guī)范化表形成新的大表。[0085]另外,創(chuàng)建每個所識別的關(guān)系表與所更新的或新產(chǎn)生的大表之間的映射。[0086](2)對指定的查詢條件(包括“=條件)中所提及的列創(chuàng)建列族。另外,需要對應(yīng)的輔助索引來確保搜索性能。例如,在比如“StudentID=’001’”的條件下,應(yīng)當(dāng)在列StudentID上構(gòu)建輔助索引。[0087](3)利用列族作為用于大表的關(guān)鍵字。[0088]可以注意到的是,在這個步驟結(jié)束時,如果關(guān)系數(shù)據(jù)庫表還未被映射到大表,則將創(chuàng)建具有該表的大表,并且將創(chuàng)建對應(yīng)的映射。[0089]步驟2:[0090]對于每個刪除操作:[0091](I)識別針對刪除操作中涉及的關(guān)系表映射的大表。[0092](2)對于每個大表,檢查刪除操作的條件[0093](2.1)如果訪問大表的關(guān)鍵字可以支持條件運(yùn)行,則進(jìn)入下一個大表;[0094](2.2)否則,如以上步驟I中所描述的那樣創(chuàng)建訪問大表的關(guān)鍵字。[0095]可以注意到的是,一旦映射被創(chuàng)建,就可以如下插入一個或多個數(shù)據(jù)操作:[0096]對于每個插入操作:[0097](I)識別針對插入操作中所涉及的關(guān)系表映射的大表。[0098](2)對于每個所識別的大表[0099](2.1)對于大表中的每個記錄,檢查待插入記錄與大表記錄之間的兼容性。例如,假設(shè)這個大表通過表A與表B之間的結(jié)合而形成,結(jié)合條件是A.StudentID=B.StudentID。假設(shè)現(xiàn)在我們需要將記錄插入到表A中。那么,我們需要檢查新插入的記錄中的StudentID列是否具有與大表記錄中的StudentID字段相同的值。如果它們是兼容的,則我們可以將新記錄插入到大表中,其中,待插入記錄與大表記錄中的其余字段結(jié)合。[0100](2.2)如果大表中沒有與待插入記錄兼容的記錄,則我們將把新記錄插入到僅具有待插入記錄的字段的大表中。[0101]可以通過刪除和插入來進(jìn)行更新,所以它的操作類似于插入和刪除。[0102]現(xiàn)在參照圖6,示出了根據(jù)本發(fā)明一實施例的方法流程圖。在步驟SI中,基于存儲在計算機(jī)存儲裝置中的用戶訪問模式集合來識別具有第一格式(例如,關(guān)系數(shù)據(jù)庫格式)的第一數(shù)據(jù)庫表集合(例如,用戶訪問模式集合指示對存儲在第一數(shù)據(jù)庫表集合中的數(shù)據(jù)的用戶數(shù)據(jù)檢索操作集合)。在步驟S2中,提供與第一數(shù)據(jù)庫表集合對應(yīng)的具有第二數(shù)據(jù)庫格式(例如,大表格式)的第二數(shù)據(jù)庫表集合。在步驟S3中,創(chuàng)建第一數(shù)據(jù)庫表集合與第二數(shù)據(jù)庫表集合之間的映射。在步驟S4中,基于用戶訪問模式集合的至少一個條件來產(chǎn)生列集合。在步驟S5中,使用該列集合作為用于第二數(shù)據(jù)庫表集合的關(guān)鍵字。[0103]盡管在本文中被示出和描述為數(shù)據(jù)庫格式轉(zhuǎn)換解決方案,但是要理解本發(fā)明還提供各種替代實施例。例如,在一個實施例中,本發(fā)明提供一種計算機(jī)可讀/可用介質(zhì),該計算機(jī)可讀/可用介質(zhì)包括使計算機(jī)基礎(chǔ)架構(gòu)能夠提供如本文所討論的數(shù)據(jù)庫格式轉(zhuǎn)換功能的計算機(jī)程序代碼。在這種意義上,計算機(jī)可讀/可用介質(zhì)包括實現(xiàn)本發(fā)明的各種處理中的每種處理的程序代碼。要理解,術(shù)語計算機(jī)可讀介質(zhì)或計算機(jī)可用介質(zhì)包括程序代碼的任何類型的物理實施例中的一個或多個。特別地,計算機(jī)可讀/可用介質(zhì)可以包括包含在一個或多個便攜式存儲制品(例如,光盤、磁盤、磁帶等)上、在計算裝置的一個或多個數(shù)據(jù)存儲部分(比如,存儲器28(圖1)和/或存儲系統(tǒng)34(圖1)(例如,固定盤、只讀存儲器、隨機(jī)存取存儲器、高速緩沖存儲器等))上的程序代碼。[0104]在另一個實施例中,本發(fā)明提供一種在訂閱、廣告和/或費(fèi)用的基礎(chǔ)上執(zhí)行本發(fā)明的處理的方法。也就是說,服務(wù)提供者(比如,解決方案整合者)可以對提供數(shù)據(jù)庫格式轉(zhuǎn)換功能進(jìn)行報價。在這種情況下,服務(wù)提供者可以創(chuàng)建、維護(hù)、支持(等等其他)如下計算機(jī)基礎(chǔ)架構(gòu)(比如,計算機(jī)系統(tǒng)12(圖1)),該計算機(jī)基礎(chǔ)架構(gòu)為一個或多個消費(fèi)者執(zhí)行本發(fā)明的處理。作為回報,服務(wù)提供者可以根據(jù)訂閱和/或費(fèi)用協(xié)議接收來自消費(fèi)者的付款,和/或服務(wù)提供者可以通過將廣告內(nèi)容出售給一個或多個第三方來接收付款。[0105]在又一個實施例中,本發(fā)明提供一種用于數(shù)據(jù)庫格式轉(zhuǎn)換的計算機(jī)實現(xiàn)方法。在這種情況下,可以提供計算機(jī)基礎(chǔ)架構(gòu)(比如,計算機(jī)系統(tǒng)12(圖1)),并且可以獲得(例如,創(chuàng)建、購買、使用、修改等)用于執(zhí)行本發(fā)明的處理的一個或多個系統(tǒng)并將這些系統(tǒng)部署到該計算機(jī)基礎(chǔ)架構(gòu)。在這種意義上,系統(tǒng)的部署可以包括下列中的一個或多個:(I)從計算機(jī)可讀介質(zhì)將程序代碼安裝在計算裝置(比如,計算機(jī)系統(tǒng)12(圖1))上;(2)將一個或多個計算裝置添加到計算機(jī)基礎(chǔ)架構(gòu);以及(3)合并和/或修改計算機(jī)基礎(chǔ)架構(gòu)的一個或多個現(xiàn)存系統(tǒng)以使得計算機(jī)基礎(chǔ)架構(gòu)能夠執(zhí)行本發(fā)明的處理。[0106]如本文所使用的,要理解術(shù)語“程序代碼”和“計算機(jī)程序代碼”是同義的,并且意指以任何語言、代碼或標(biāo)注對指令集的任何表達(dá),這些指令意圖使具有信息處理能力的計算裝置直接執(zhí)行特定功能或者在以下操作中的任一操作或兩個操作之后執(zhí)行特定功能:(a)轉(zhuǎn)換為另一種語言、代碼或標(biāo)注;和/或(b)以不同的有形形式再現(xiàn)。在這種意義上,程序代碼可以被實施為下列中的一個或多個:應(yīng)用程序/軟件程序、組件軟件/功能庫、操作系統(tǒng)、用于特定計算裝置的基本裝置系統(tǒng)/驅(qū)動器等。[0107]適合于存儲和/或執(zhí)行程序代碼的數(shù)據(jù)處理系統(tǒng)可以依此提供,并且可以包括通過系統(tǒng)總線與存儲器元件直接地或間接地通信耦合的至少一個處理器。存儲器元件可以包括,但不限于,在實際執(zhí)行程序代碼期間所利用的本地存儲器、大容量儲存器、以及提供至少一些程序代碼的臨時存儲以便減少執(zhí)行期間必須從大容量儲存器檢索代碼的次數(shù)的高速緩存。輸入/輸出和/或其他外部裝置(包括,但不限于,鍵盤、顯示器、定點裝置等河以直接與系統(tǒng)耦合,或者通過介于中間的裝置控制器與系統(tǒng)耦合。[0108]網(wǎng)絡(luò)適配器也可以與系統(tǒng)耦合以使得數(shù)據(jù)處理系統(tǒng)能夠通過介于中間的私有網(wǎng)絡(luò)或公共網(wǎng)絡(luò)的任何組合變?yōu)榕c其他數(shù)據(jù)處理系統(tǒng)、遠(yuǎn)程打印機(jī)、存儲裝置等耦合。說明性網(wǎng)絡(luò)適配器包括,但不限于,調(diào)制解調(diào)器、電纜調(diào)制解調(diào)器和以太網(wǎng)卡。[0109]已出于說明和描述的目的給出了本發(fā)明的各方面的前述描述。意圖不在于窮舉或者使本發(fā)明限于所公開的精確形式,并且顯然,許多修改和變化是可能的。對于本領(lǐng)域技術(shù)人員可以顯而易見的這樣的修改和變化意圖包括在如所附權(quán)利要求所限定的本發(fā)明的范圍內(nèi)?!緳?quán)利要求】1.一種用于在聯(lián)網(wǎng)計算環(huán)境中基于用戶數(shù)據(jù)訪問模式轉(zhuǎn)換數(shù)據(jù)庫格式的計算機(jī)實現(xiàn)方法,包括:基于存儲在計算機(jī)存儲裝置中的訪問模式集合來識別第一數(shù)據(jù)庫表集合,所述第一數(shù)據(jù)庫表集合具有第一格式,所述訪問模式集合指示對存儲在第一數(shù)據(jù)庫表集合中的數(shù)據(jù)的用戶數(shù)據(jù)查詢、插入、更新或刪除的集合;提供與第一數(shù)據(jù)庫表集合對應(yīng)的具有第二數(shù)據(jù)庫格式的第二數(shù)據(jù)庫表集合;創(chuàng)建第一數(shù)據(jù)庫表集合與第二數(shù)據(jù)庫表集合之間的映射;以及基于所述訪問模式集合的至少一個條件來產(chǎn)生用于第二數(shù)據(jù)庫表集合的關(guān)鍵字。2.根據(jù)權(quán)利要求1所述的計算機(jī)實現(xiàn)方法,所述第一格式是關(guān)系數(shù)據(jù)庫格式,所述第二格式是散列表格式。3.根據(jù)權(quán)利要求1所述的計算機(jī)實現(xiàn)方法,所述產(chǎn)生包括:基于所述訪問模式集合的所述至少一個條件來產(chǎn)生列集合;以及使用所述列集合作為用于第二數(shù)據(jù)庫表集合的關(guān)鍵字。4.根據(jù)權(quán)利要求1所述的計算機(jī)實現(xiàn)方法,所述提供包括從第一數(shù)據(jù)庫表集合產(chǎn)生非規(guī)范化表集合。5.根據(jù)權(quán)利要求1所述的計算機(jī)實現(xiàn)方法,所述提供包括擴(kuò)大第一數(shù)據(jù)庫表集合的至少一個表以得到第二數(shù)據(jù)庫表集合。6.根據(jù)權(quán)利要求1所述的計算機(jī)實現(xiàn)方法,還包括基于下列中的至少一個將至少一個數(shù)據(jù)操作傳播到第二數(shù)據(jù)庫表集合:所述關(guān)鍵字、所述映射或所述至少一個條件。7.根據(jù)權(quán)利要求6所述的計算機(jī)實現(xiàn)方法,所述至少一個數(shù)據(jù)操作是下列操作中的至少一個:數(shù)據(jù)查詢操作、數(shù)據(jù)更新操作、數(shù)據(jù)刪除操作或數(shù)據(jù)插入操作。8.一種用于在聯(lián)網(wǎng)計算環(huán)境中基于用戶數(shù)據(jù)訪問模式轉(zhuǎn)換數(shù)據(jù)庫格式的系統(tǒng),包括:存儲器介質(zhì),所述存儲器介質(zhì)包括指令;總線,所述總線與所述存儲器介質(zhì)耦合;以及處理器,所述處理器與所述總線耦合,當(dāng)執(zhí)行所述指令時使所述系統(tǒng)執(zhí)行以下步驟:基于存儲在計算機(jī)存儲裝置中的訪問模式集合來識別第一數(shù)據(jù)庫表集合,所述第一數(shù)據(jù)庫表集合具有第一格式,所述訪問模式集合指示對存儲在第一數(shù)據(jù)庫表集合中的數(shù)據(jù)的用戶數(shù)據(jù)查詢、插入、更新或刪除的集合;提供與第一數(shù)據(jù)庫表集合對應(yīng)的具有第二數(shù)據(jù)庫格式的第二數(shù)據(jù)庫表集合;創(chuàng)建第一數(shù)據(jù)庫表集合與第二數(shù)據(jù)庫表集合之間的映射;以及基于所述訪問模式集合的至少一個條件來產(chǎn)生用于第二數(shù)據(jù)庫表集合的關(guān)鍵字。9.根據(jù)權(quán)利要求8所述的系統(tǒng),所述第一格式是關(guān)系數(shù)據(jù)庫格式,所述第二格式是散列表格式。10.根據(jù)權(quán)利要求8所述的系統(tǒng),所述存儲器介質(zhì)進(jìn)一步包括用于使所述系統(tǒng)執(zhí)行以下步驟的指令:基于所述訪問模式集合的所述至少一個條件來產(chǎn)生列集合;以及使用所述列集合作為用于第二數(shù)據(jù)庫表集合的關(guān)鍵字。11.根據(jù)權(quán)利要求8所述的系統(tǒng),所述存儲器介質(zhì)進(jìn)一步包括用于使所述系統(tǒng)從第一數(shù)據(jù)庫表集合產(chǎn)生非規(guī)范化表集合的指令。12.根據(jù)權(quán)利要求8所述的系統(tǒng),所述存儲器介質(zhì)進(jìn)一步包括用于使所述系統(tǒng)擴(kuò)大第一數(shù)據(jù)庫表集合的至少一個表以得到第二數(shù)據(jù)庫表集合的指令。13.根據(jù)權(quán)利要求8所述的系統(tǒng),所述存儲器介質(zhì)進(jìn)一步包括用于使所述系統(tǒng)基于下列中的至少一個將至少一個數(shù)據(jù)操作傳播到第二數(shù)據(jù)庫表集合的指令:所述關(guān)鍵字、所述映射或所述至少一個條件。14.根據(jù)權(quán)利要求13所述的系統(tǒng),所述至少一個數(shù)據(jù)操作是下列操作中的至少一個:數(shù)據(jù)查詢操作、數(shù)據(jù)更新操作、數(shù)據(jù)刪除操作或數(shù)據(jù)插入操作。15.一種用于部署用于在聯(lián)網(wǎng)計算環(huán)境中基于用戶數(shù)據(jù)訪問模式轉(zhuǎn)換數(shù)據(jù)庫格式的系統(tǒng)的方法,包括:提供能夠操作為執(zhí)行以下步驟的計算機(jī)基礎(chǔ)設(shè)施:基于存儲在計算機(jī)存儲裝置中的訪問模式集合來識別第一數(shù)據(jù)庫表集合,所述第一數(shù)據(jù)庫表集合具有第一格式,所述訪問模式集合指示對存儲在第一數(shù)據(jù)庫表集合中的數(shù)據(jù)的用戶數(shù)據(jù)查詢、插入、更新或刪除的集合;提供與第一數(shù)據(jù)庫表集合對應(yīng)的具有第二數(shù)據(jù)庫格式的第二數(shù)據(jù)庫表集合;創(chuàng)建第一數(shù)據(jù)庫表集合與第二數(shù)據(jù)庫表集合之間的映射;以及基于所述訪問模式`集合的至少一個條件來產(chǎn)生用于第二數(shù)據(jù)庫表集合的關(guān)鍵字?!疚臋n編號】G06F17/30GK103678442SQ201310386726【公開日】2014年3月26日申請日期:2013年8月30日優(yōu)先權(quán)日:2012年8月30日【發(fā)明者】L·S·德盧卡,鄧豫,李姍姍,曾梁趙申請人:國際商業(yè)機(jī)器公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
浦城县| 新乡市| 石阡县| 栖霞市| 马山县| 时尚| 乡宁县| 登封市| 郸城县| 永吉县| 长子县| 邻水| 邯郸县| 凤阳县| 新津县| 涿鹿县| 墨玉县| 大冶市| 金川县| 岳阳县| 定安县| 泰州市| 阿勒泰市| 姚安县| 贵港市| 铜陵市| 山阴县| 香格里拉县| 阿荣旗| 抚远县| 宁远县| 汉阴县| 元氏县| 鲁山县| 咸宁市| 正宁县| 天柱县| 五华县| 焉耆| 镇雄县| 新津县|