• 
    <ul id="o6k0g"></ul>
    <ul id="o6k0g"></ul>
    當前位置: 首頁 > 專利查詢>微軟公司專利>正文

    變換的上下文知曉數據源管理制造技術

    技術編號:8271254 閱讀:147 留言:0更新日期:2013-01-31 03:25
    本發明專利技術涉及變換的上下文知曉數據源管理。通過對多個數據源使用相同的源代碼來輔助本地、群集和云執行之間的移植。源代碼中所敘述的數據源標識符映射到不同執行目標處的數據源。使用分解API而不改變開發者的源代碼,產生適合于連續目標的可執行代碼。可編輯的數據源映射是按項目的,維護在文件或項目特性中,以及放置在具有可執行代碼的可分發的軟件包中。減少了開發者在他們的源代碼中確定執行目標以及在源代碼中顯式地處理不同的執行位置的負擔。源代碼可不需要絕對路徑數據源標識符或用于檢測執行位置的代碼。源到源轉換注入創建文件夾、文件或云容器的調用。數據源分解可基于以數據源標識符為根的相對路徑。

    【技術實現步驟摘要】
    用于管理數據源的方法和系統
    本專利技術涉及數據源管理,尤其涉及將單個源代碼與用于不同執行上下文的多個數據源相協調的工具和技術。
    技術介紹
    適合于在單個機器上運行的計算機程序有時可由開發者修改來改為在多個機器上運行,以便利用額外的處理能力和/或額外的存儲器。例如,開發者可能想要采用原始被編寫成在單個臺式計算機上執行的程序,并使其改為在諸如計算群集或計算云之類的一組計算機上運行。更為一般地,開發者可能想要應用特定的處理邏輯來處理不同的數據源,并且不希望明示地將每個數據源指定為該邏輯的參數。計算群集是通過快速局域網或其他相對快的通信機制鏈接在一起的一組計算機。在從群集外查看時,群集內的計算機彼此協作就像單個功能強的計算機一樣。計算云是可配置的計算資源(如服務器、存儲、應用和軟件服務)的共享的聯網池。隨著用戶的計算需求的增長或收縮,云的資源可快速地對用戶可用以及可被容易地釋放。應用可由云服務器提供給瀏覽器,使得不需要應用的本地安裝的客戶機副本。群集和云的各種定義已被使用。出于當前討論的目的,群集包括少于一千個處理核和/或駐留在單個建筑物內。相反,計算云包括一千或更多個核,和/或駐留在兩個或更多個建筑物內。
    技術實現思路
    將程序從本地執行上下文移植到群集或云執行可涉及乏味的且易于出錯的源代碼改變,且更為具體地,可涉及修改程序中所使用的對數據源的引用的改變。對于開發者來說,針對極其不同的大小的數據集來運行程序是非常有挑戰的。本文描述的某些實施例以給予對各種各樣的數據集的訪問的方式來增加程序的可移植性,如用多個可供選擇的計算數據源自動管理單個源代碼算法的方式。例如,在某些情形中,存在數據源映射,其中某一數據源標識符被映射到相應執行目標處的相當不同大小的多個數據源,如本地機器處的數百G字節對群集處的數T字節以及云中的數十或數百T字節。一實施例接收將數據源標識符敘述為數據源的源代碼。在標識第一執行目標之后,該實施例從該源代碼自動產生被適合于第一執行目標的第一可執行代碼。也就是說,當在第一執行目標中執行時,該可執行代碼將用第一執行目標的映射的數據源作為數據源標識符所標識的數據源來操作。在標識具有與第一執行目標不同的數據源的第二執行目標之后,該實施例自動地——從同一源代碼——產生被適合于該第二執行目標的第二可執行代碼。也就是說,當在第二執行目標中執行時,第二可執行代碼將用第二執行目標的映射的數據源作為被標識的數據源,而不是使用第一執行目標的數據源來操作。如所述,這種移植是在不要求開發者編輯源代碼的情況下來實現的。在某些實施例中,數據源映射被維護在文本配置文件中,而在某些實施例中,它是從非文本項目特性、項目頭部或另一項目特定結構中讀取的。在某些實施例中,數據源映射被放置在可分發的軟件包中,從而便于可移植性,而不管包中的可執行代碼當前支持哪些執行位置。一實施例可減少或消除開發者在源代碼中確定執行目標以及在源代碼中顯式地處理不同的執行位置的負擔。在某些實施例中,例如,源代碼不需要絕對路徑數據源標識符。一實施例可提供靈活性,以幫助開發者用一個機器本地的較小數據子集來快速地完成源代碼迭代,然后針對云或群集上的更大數據來測試所選的程序迭代。某些實施例利用自動源到源轉換機制來移植代碼。移植數據源可不僅僅包含物理存儲位置標識符串的替代。例如,在某些實施例中,從造成第一可執行代碼的相同源代碼生成第二可執行代碼涉及源到源轉換,該源到源轉換注入不存在于開發者的源版本中的調用,如文件夾創建調用、云容器創建調用、或文件創建調用。其他映射可涉及數據庫連接以及不僅僅是基于文件的存儲,例如映射不同的數據庫服務器,如本地、企業、云服務器、或開發服務器和生產服務器。諸如文件系統(如NTFSTM系統)和云存儲(如AzureTM存儲或其他云存儲)之類的存儲系統可具有不同的存儲結構,且某些實施例提供了那些存儲結構之間的映射(微軟公司的標記)。從開發者的觀點,某些實施例獲得數據源映射,其中某一數據源標識符被映射到各相應執行目標處的多個數據源。然后,該實施例從數據源映射和源代碼自動生成數據源分解,而不要求開發者對源代碼的任何改變。不同數據源分解對應于不同的執行目標,如對應于使用通用資源標識符的某一云數據源,或某一群集數據源。執行目標可由開發者指定,或可按默認指定。在某些實施例中,數據源分解可基于以數據源標識符為根的相對路徑。某些實施例將接受來自開發者的對數據源映射的修改。從架構的觀點,某些實施例包括邏輯處理器和與邏輯處理器可操作地通信的存儲器。數據源映射駐留在存儲器中,并具有被映射到各相應的不同執行目標處的多個不同數據源的某一數據源標識符。數據源映射駐留或維持在例如文本配置文件、非文本項目特性、項目特定的結構、和/或用戶特定的結構中。源代碼也駐留在存儲器中,且在源代碼內數據源標識符被敘述為數據源。駐留在存儲器中的可執行代碼產生器具有指令,在執行時在不同時間從相同源代碼自動產生多個不同的可執行代碼,每個可執行代碼引用這些數據源中的不同一個。在某些實施例中,源代碼不需要用于檢測執行位置的代碼。在某些實施例中,源代碼不需要絕對路徑數據源標識符。某些實施例包括可執行代碼產生器產生的可執行代碼,該可執行代碼包含源代碼中不存在的注入的代碼,例如文件夾創建調用、云容器創建調用、和/或文件創建調用。在某些實施例中,可執行代碼產生器包括分解API。分解API包括指令,在由處理器執行時會將相對路徑和執行目標分解成包含物理路徑的數據源分解。在某些實施例中,可執行代碼產生器包括源到源轉換器。不同的實施例可采取一個或多個總體方法。在一個方法中,在本地機器上,源代碼被轉換成用于指定的執行目標的中間代碼(IC)或可執行代碼(EC)。然后,IC或EC被部署并運行在該可執行目標上。在第二方法中,源代碼首先被部署到一執行目標上。為該執行目標設計的產生器當場轉換該代碼。在第三方法中,源代碼被轉換就好像數據相對于該代碼是本地的。然后,當代碼被部署到其中數據處于遠程位置的一環境中時,預任務將首先下載該數據,使得代碼可訪問本地數據。所給出的示例只是說明性的。本
    技術實現思路
    并不旨在標識所要求保護主題的關鍵特征或必要特征,也不旨在用于限制所要求保護主題的范圍。相反地,提供本概述是為了以簡化的形式介紹將在以下詳細描述中進一步描述的一些概念。本專利技術由權利要求書限定,在本
    技術實現思路
    與權利要求書有沖突的情況下,應該以權利要求書為準。附圖說明將參考附圖給出更具體的描述。這些附圖只示出了選定的方面,且因此不完全確定覆蓋或范圍。圖1是示出計算機系統并且還示出配置的存儲介質實施例的框圖,該計算機系統具有至少一個處理器、至少一個存儲器、源代碼以及一般將存在于多個網絡節點上的操作環境中的其他項目;圖2是示出一示例架構中的變換的上下文知曉數據源管理;以及圖3是示出一些過程的步驟和配置的存儲介質實施例的流程圖。具體實施方式概覽隨著某些領域面對數據激增,利用對大型和各種各樣的數據集進行更迅速且強大的處理,如在群集或云中的分布式處理,變得有益處。傳統的桌面和其他單節點計算機具有相對有限的處理能力和容量來處理大量數據,因此更多的開發者和工程師希望使用來自不同源的更大的數據集來在群集或云上運行他們的桌面應用。例如,開發者可能想要使用小的數據子集在本文檔來自技高網
    ...
    變換的上下文知曉數據源管理

    【技術保護點】
    一種用于協作地管理源代碼和多個可供選擇的計算數據源的方法,所述方法包括以下步驟:獲得數據源映射,在所述數據源映射中特定數據源標識符被映射到各相應執行目標處的多個數據源;接收將所述數據源標識符敘述為數據源的開發者源代碼;標識第一執行目標;從所述開發者源代碼自動產生第一可執行代碼,所述第一可執行代碼在所述第一執行目標中執行時將以所述第一執行目標的映射的數據源作為所述數據源標識符所標識的數據源來操作;標識具有與所述第一執行目標不同的數據源的第二執行目標;以及從相同的源代碼自動產生第二可執行代碼,所述第二可執行代碼在所述第二執行目標中執行時將以所述第二執行目標的映射的數據源而不是以所述第一執行目標的數據源作為所標識的數據源來操作。

    【技術特征摘要】
    2011.09.07 US 13/226,6791.一種用于協作地管理源代碼和多個可供選擇的計算數據源的方法,所述方法包括以下步驟:獲得數據源映射,在所述數據源映射中至少一個數據源標識符被映射到各相應執行目標處的多個數據源;接收將所述數據源標識符敘述為數據源的開發者源代碼;標識第一執行目標;從所述開發者源代碼和所述數據源映射自動產生第一可執行代碼,所述第一可執行代碼在所述第一執行目標中執行時將以所述第一執行目標的映射的數據源作為所述數據源標識符所標識的數據源來操作;標識具有與所述第一執行目標不同的數據源的第二執行目標;以及從相同的源代碼和所述數據源映射自動產生第二可執行代碼,所述第二可執行代碼在所述第二執行目標中執行時將以所述第二執行目標的映射的數據源而不是以所述第一執行目標的數據源作為所標識的數據源來操作。2.如權利要求1所述的方法,其特征在于,執行目標標識步驟標識以下中的至少兩個:本地執行目標、群集執行目標、云執行目標。3.如權利要求1所述的方法,其特征在于,從相同的源代碼和所述數據源映射自動產生第二可執行代碼的步驟包括執行將開發者源代碼轉換為中間源代碼的源到源轉換,所述源到源轉換注入以下中的至少一個:文件夾創建調用、云容器創建調用、文件創建調用。4.一種供開發者使用的方法,所述方法包括以下步驟:獲得數據源映射,在所述數據源映射中至少一個數據源標識符被映射到各相應執行目標處的多個數據源;以...

    【專利技術屬性】
    技術研發人員:A·AC·察奧曹陽張蒲生
    申請(專利權)人:微軟公司
    類型:發明
    國別省市:

    網友詢問留言 已有0條評論
    • 還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。

    1
    主站蜘蛛池模板: 日本无码色情三级播放| YY111111少妇无码理论片| 熟妇人妻中文a∨无码| 免费无码又爽又刺激高潮软件| 亚洲最大av无码网址| 无码精品A∨在线观看中文| 亚洲精品无码久久久久秋霞| 久久无码AV中文出轨人妻| 少妇无码一区二区二三区| 亚洲一级Av无码毛片久久精品| 无码毛片视频一区二区本码| 亚洲国产综合无码一区二区二三区 | 无码熟妇人妻av| 国精无码欧精品亚洲一区| 国模无码视频一区| 亚洲毛片无码专区亚洲乱| 一本一道AV无码中文字幕| 在线看片无码永久免费aⅴ| 亚洲AV人无码激艳猛片| 国产午夜精华无码网站| 亚洲国产精品成人AV无码久久综合影院 | 最新亚洲春色Av无码专区| 亚洲啪啪AV无码片| 无码人妻AⅤ一区二区三区水密桃| 亚洲中文久久精品无码1| 日韩av无码中文字幕| 久久久无码精品国产一区| 丝袜无码一区二区三区| 熟妇人妻系列aⅴ无码专区友真希| 日韩毛片免费无码无毒视频观看| 无码午夜人妻一区二区三区不卡视频| 中文无码vs无码人妻 | 亚洲AV永久无码精品一百度影院| 亚洲精品无码专区2| 人妻丰满?V无码久久不卡| 夜夜精品无码一区二区三区| 亚洲 无码 在线 专区| 亚洲精品人成无码中文毛片| 精品久久久久久无码国产| 国产成人麻豆亚洲综合无码精品| 一本一道av中文字幕无码|