新四季網

用於非關係與關係型資料庫間數據交互的方法和裝置製造方法

2023-04-27 18:48:56

用於非關係與關係型資料庫間數據交互的方法和裝置製造方法【專利摘要】本發明公開了一種用於非關係和關係型資料庫間數據及數據結構交互的方法和裝置,其中該方法包括:獲取源資料庫的第一物理模型;定義第一物理模型對應的資料庫的數據特徵和查詢特徵;根據第一物理模型、數據特徵和查詢特徵生成中間模型;根據預設策略、中間模型的數據結構及中間模型所包含的數據特徵和查詢特徵,將中間模型轉換為目標資料庫的第二物理模型;建立第一物理模型-中間模型-第二物理模型的映射關係,並根據映射關係將源資料庫中的數據導出到目標資料庫中。本發明實施例的方法,在關係型資料庫的數據模型和非關係型資料庫的存儲結構間建立中間模型,從而為在關係型資料庫和非關係型資料庫之間進行存儲結構和數據轉換提供模型支撐。【專利說明】用於非關係與關係型資料庫間數據交互的方法和裝置【
技術領域:
】[0001]本發明涉及網際網路【
技術領域:
】,尤其涉及一種用於非關係與關係型資料庫間數據及數據結構交互的方法和裝置。【
背景技術:
】[0002]隨著網際網路的快速發展,網際網路中數據的種類和規模都在以驚人的速度增長,「大數據」時代的來臨已經成為現實。目前,由於傳統的關係型資料庫在應對大數據的存儲、查詢和分析等需求時,出現了性能和規模上的瓶頸,因此各種非關係型資料庫(NoSQL資料庫)應運而生,成為數據存儲和分析領域的一支新生力量。[0003]NoSQL為非關係型數據存儲的廣義定義,它打破了長久以來關係型資料庫與ACID(一種資料庫事務正確執行的四個基本要素的縮寫,四個基本要素為:原子性(Atomicity)、一致性(Consistency)、隔離性(Isolation)、持久性(Durability))理論大一統的局面。非關係型資料庫的數據存儲不需要固定的表結構,通常也不存在連接操作,並且,在大數據存取上具備關係型資料庫無法比擬的性能優勢。非關係型資料庫以不同的存儲結構為分類依據,可分為Key-Value資料庫、列族資料庫、文檔型資料庫和圖資料庫等。雖然各種非關係型資料庫在存儲結構和存儲方式上有極大的區別,但是共通之處都為採取靈活的存儲結構、面向應用、有較高的性能。[0004]面對非關係型資料庫的存儲性能和規模優勢,越來越多的網際網路應用商開始轉向非關係型資料庫。例如,在同一個應用中同時使用關係型資料庫和非關係型資料庫、或是將數據在關係型資料庫和非關係型資料庫之間進行導入導出、分析非關係型資料庫的數據結構等,都是非關係型資料庫研究和應用的重要研究方向。[0005]但是,由於非關係型資料庫一般沒有固定的存儲規則(或模型),因此,將數據從關係型資料庫導入非關係型資料庫時,需要通過應用的性能和規模需求動態設計存儲方式。而當數據從非關係型資料庫導入關係型資料庫時,因非關係型資料庫的非結構化特性,將在關係型資料庫中建立相應的表結構,以及將數據從非關係型資料庫映射到關係型資料庫的表結構,都是十分困難的問題。因此,如何在關係型資料庫系統與非關係型資料庫系統之間進行模型轉換,並實現兩類系統之間數據的有效遷移已成為學術界和工業界研究的重點。【
發明內容】[0006]本發明旨在至少在一定程度上解決相關技術中的技術問題之一。[0007]為此,本發明的第一個目的在於提出一種用於非關係與關係型資料庫間數據及數據結構交互的方法。該方法在關係型資料庫的數據模型和非關係型資料庫的存儲結構間建立中間模型,從而為在關係型資料庫和非關係型資料庫之間進行存儲結構和數據轉換提供模型支撐。[0008]本發明的第二個目的在於提出一種用於非關係與關係型資料庫間數據及數據結構交互的裝置。[0009]為了實現上述目的,本發明第一方面實施例的用於非關係與關係型資料庫間數據及數據結構交互的方法,包括:獲取源資料庫的第一物理模型;定義所述第一物理模型對應的資料庫的數據特徵和查詢特徵;根據所述第一物理模型、所述數據特徵和查詢特徵生成中間模型;根據預設策略、所述中間模型的數據結構及所述中間模型所包含的數據特徵和查詢特徵,將所述中間模型轉換為目標資料庫的第二物理模型;建立所述第一物理模型-中間模型-第二物理模型的映射關係,並根據所述映射關係將所述源資料庫中的數據導出到所述目標資料庫中。[0010]根據本發明實施例的用於非關係與關係型資料庫間數據及數據結構交互的方法,可根據源資料庫中的第一物理模型、源資料庫中的數據特徵和查詢特徵生成中間模型,並根據預設策略、中間模型的數據結構及中間模型包含的數據特徵和查詢特徵,將中間模型轉換為目標資料庫的第二物理模型,以及建立第一物理模型-中間模型-第二物理模型的映射關係,並根據映射關係將源資料庫中的數據導出到目標資料庫中,以實現不同類型資料庫之間數據及數據結構的交互,至少具有以下優點:(1)在非關係型資料庫尚不具備統一完備的數據模型的情況下,本發明能夠完成從關係型資料庫到非關係型資料庫的模型和數據的映射和遷移工作,具有很強的新穎性和獨創性;(2)通過依據中間模型中的數據特徵和查詢特徵,動態地將中間模型轉化為不同的目標資料庫的存儲模型,提高了實用性和通用性。[0011]為了實現上述目的,本發明第二方面實施例的用於非關係與關係型資料庫間數據及數據結構交互的裝置,包括:獲取模塊,用於獲取源資料庫的第一物理模型;定義模塊,用於定義所述第一物理模型對應的資料庫的數據特徵和查詢特徵;生成模型,用於根據所述第一物理模型、所述數據特徵和查詢特徵生成中間模型;轉換模塊,用於根據預設策略、所述中間模型的數據結構及所述中間模型所包含的數據特徵和查詢特徵,將所述中間模型轉換為目標資料庫的第二物理模型;建立模塊,用於建立所述第一物理模型-中間模型-第二物理模型的映射關係,並根據所述映射關係將所述源資料庫中的數據導出到所述目標資料庫中。[0012]根據本發明實施例的用於非關係與關係型資料庫間數據及數據結構交互的裝置,可根據源資料庫中的第一物理模型、源資料庫中的數據特徵和查詢特徵生成中間模型,並根據預設策略、中間模型的數據結構及中間模型包含的數據特徵和查詢特徵,將中間模型轉換為目標資料庫的第二物理模型,以及建立第一物理模型-中間模型-第二物理模型的映射關係,並根據映射關係將源資料庫中的數據導出到目標資料庫中,以實現不同類型資料庫之間數據及數據結構的交互,至少具有以下優點:(I)在非關係型資料庫尚不具備統一完備的數據模型的情況下,本發明能夠完成從關係型資料庫到非關係型資料庫的模型和數據的映射和遷移工作,具有很強的新穎性和獨創性;(2)通過依據中間模型中的數據特徵和查詢特徵,動態地將中間模型轉化為不同的目標資料庫的存儲模型,提高了實用性和通用性。[0013]本發明附加的方面和優點將在下面的描述中部分給出,部分將從下面的描述中變得明顯,或通過本發明的實踐了解到。【專利附圖】【附圖說明】[0014]圖1是根據本發明一個實施例的用於非關係與關係型資料庫間數據及數據結構交互的方法的流程圖;[0015]圖2是根據本發明實施例的中間模型的結構示意圖;[0016]圖3是根據本發明實施例的中間模型的示意圖;[0017]圖4是根據本發明實施例的關係型資料庫的實體-關係模型的示意圖;[0018]圖5是根據本發明實施例的具有「大數據量」標籤的關係的兩個實體進行模型轉換後得到的物理模型的示意圖;[0019]圖6是根據本發明一個實施例的用於非關係與關係型資料庫間數據及數據結構交互的裝置的結構示意圖。【具體實施方式】[0020]下面詳細描述本發明的實施例,所述實施例的示例在附圖中示出,其中自始至終相同或類似的標號表示相同或類似的元件或具有相同或類似功能的元件。下面通過參考附圖描述的實施例是示例性的,旨在用於解釋本發明,而不能理解為對本發明的限制。[0021]目前,在現有理論成果中,對關係型資料庫已有關係模型(Relationalmodel)作為邏輯模型及實體-關係模型((Entity-relationshipmodel)作為概念模型可對其進行完備的描述。通常地,可以用實體-關係圖對一個關係型資料庫的模型進行描述。而對關係型資料庫的以行-列為基礎的表結構及表之間的關係,可用表關係圖進行表示,其中,在資料庫表關係圖中,每個實體可代表關係型資料庫的一張表,實體的屬性可代表表的列,而實體間的關係可代表與表間的鍵關係。[0022]對於非關係型資料庫,由於其存儲數據結構的多樣性(如KeyValue/文檔形式/列族形式等),目前尚未有一個統一的數據模型能夠描述其數據結構。但其數據結構都可歸類於包含層次的複合鍵值對結構。[0023]本發明圍繞將數據在關係型資料庫系統和非關係型資料庫之間進行導入導出的問題,在非關係型資料庫的模型構建與模型應用方面提出了新的思想。[0024]下面參考附圖描述根據本發明實施例的用於非關係與關係型資料庫間數據及數據結構交互的方法和裝置。[0025]圖1是根據本發明一個實施例的用於非關係與關係型資料庫間數據及數據結構交互的方法的流程圖。[0026]如圖1所示,該用於非關係與關係型資料庫間數據及數據結構交互的方法可以包括:[0027]S101,獲取源資料庫的第一物理模型。[0028]其中,在本發明的實施例中,源資料庫可為關係型資料庫和非關係型資料庫中的任意一種;第一物理模型可為實體-關係模型和層次模型中的任意一種。當源資料庫為關係型資料庫時,源資料庫的第一物理模型可為實體-關係模型;當源資料庫為非關係型資料庫時,第一物理模型可為層次模型。[0029]舉例而言,以源資料庫為關係型資料庫為例,可通過現有的模型提取工具從關係型資料庫中提取出該關係型資料庫的物理模型(即實體-關係模型)。其中,在本發明的實施例中,現有的模型提取工具可為官方提供的資料庫管理工具,如Mysql對應的管理工具可為phpMyAdmin、SQLServer對應的管理工具可為MicrosoftSQLServer的各種版本等。[0030]應當理解,當源資料庫為非關係型資料庫時,如Hypertable、MongoDB>ApacheCassandra等,所指的模型提取工具一般均為第三方提供的,且大多為開源軟體,如mongodb-Variety等,數據建模人員可自定義這些開源的提供工具以便於資料庫的開發及使用。[0031]S102,定義第一物理模型對應的資料庫的數據特徵和查詢特徵。[0032]在本發明的實施例中,第一物理模型可具有多個對象,每個對象均可包含若干的數據特徵和查詢特徵。數據特徵和查詢特徵均可有其固定的名字,並可以以標註的形式與對應的對象關聯。其中,數據特徵可描述在實際數據存儲中對應的對象的存儲特點,如一個實體的「大數據量」特徵,表示在實際存儲的數據中,被標註的對象擁有較大的數據量。此夕卜,查詢特徵可描述在實際數據系統應用中,在進行查詢和分析等操作時,對應的對象涉及的查詢特點,如一個屬性的「常被查詢」特徵,表示該屬性在實際數據應用當中常被進行查詢操作。[0033]S103,根據第一物理模型、數據特徵和查詢特徵生成中間模型。[0034]具體而言,在源資料庫中,由於各個實體可能會存在多種數據特徵和查詢特徵,所以,可先將這些數據特徵和查詢特徵進行挖掘以獲取第一物理模型對應的資料庫中的數據特徵和查詢特徵,之後可將這些數據特徵和查詢特徵附加至該第一物理模型中以生成中間模型。[0035]其中,在本發明的實施例中,中間模型可具有多個對象,每個對象可包含多個數據特徵和查詢特徵,數據特徵和查詢特徵均可以以標註的形式與對應的對象關聯。例如,圖2是根據本發明實施例的中間模型的結構示意圖,如圖2所示,中間模型可包含對象,還可包含實體、屬性、關係等,「實體」、「屬性」、「關係」均為對象的一種繼承。實體可表示一個離散的對象,可以代表對實際生產中一類對象的總稱,如學生、僱員、公司、班級等。關係可描述兩個或更多實體間相互如何關聯,如在公司和僱員之間有名為「僱傭」的關聯。此外,實體可以擁有屬性,一個實體擁有的屬性數是固定的,屬性可描述實體的特徵,如學生可擁有學號、姓名、身高、體重等屬性。[0036]舉例而言,如圖3所示,在該中間模型中,包含mb_UserInfo(用戶信息)、mb_Blog(博客)、mb_Tag(標籤)三個實體,這三個實體分別包含對應的屬性,如mb_UserInfo(用戶信息)包括nickName(姓名)、Phone(電話)、Email(郵箱地址)、City(城市)等,mb_Blog(博客)包括Uid(用戶ID(Identity,身份標識號碼))、MessageContent(信息內容)、DateTime(日期)等,mb_Tag(標籤)包括MID(標籤ID(Identity,身份標識號碼))、tagContent(標籤內容)、dateTime(日期)等。而mb_UserInfo(用戶信息)、和mb_Blog(博客)、mb_Blog(博客)和mb_Tag(標籤)間,分別存在關係。本中間模型的重點是在各對象上標註了數據特徵和查詢特徵,如在mb_Tag實體上含有「常被添加的」標註,說明該實體在資料庫實際存儲中常被進行添加(append)操作。[0037]S104,根據預設策略、中間模型的數據結構及中間模型所包含的數據特徵和查詢特徵,將中間模型轉換為目標資料庫的第二物理模型。[0038]其中,在本發明的實施例中,預設策略可理解為約定俗成的經驗、數據模型轉換所遵循的準則和/或規則等。[0039]應當理解,在本發明的實施例中,由於中間模型是由源資料庫中的數據特徵和查詢特徵附加到第一物理模型中以生成的,因此,中間模型所包含的數據特徵和查詢特徵與源資料庫中定義的數據特徵和查詢特徵是一致的。[0040]具體地,在生成中間模型之後,可根據中間模型的數據結構及其包括的數據特徵和查詢特徵,可以通過預設策略,將中間模型自動地轉換為目標資料庫的第二物理模型,從而在進行數據和模型遷移時,該中間模型可以映射成符合應用要求的不同的資料庫的物理模型。其中,在本發明的實施例中,目標資料庫可為關係型資料庫和非關係型資料庫中的任意一種;第二物理模型可為實體-關係模型和層次模型中的任意一種。應當理解,當目標資料庫為非關係型資料庫時,目標資料庫的第二物理模型可為層次模型;當目標資料庫為關係型資料庫時,第二物理模型可為實體-關係模型。[0041]需要說明的是,本發明的實施例主要應用於非關係型資料庫與關係型資料庫之間數據及數據結構的交互,即從關係型資料庫遷移數據到非關係型資料庫、或從非關係型資料庫遷移數據到關係型資料庫以實現不同類型資料庫之間數據及數據結構的交互。也就是說,當源資料庫為關係型資料庫時,目標資料庫可為非關係型資料庫,第一物理模型可為實體-關係模型,第二物理模型可為層次模型;當源資料庫為非關係型資料庫時,目標資料庫可為關係型資料庫,第一物理模型可為層次模型,第二物理模型可為實體-關係模型。[0042]S105,建立第一物理模型-中間模型-第二物理模型的映射關係,並根據映射關係將源資料庫中的數據導出到目標資料庫中。[0043]具體地,中間模型中具有一系列的數據特徵和查詢特徵,可根據這些數據特徵和查詢特徵以及目標資料庫,通過預設策略進行模型的轉換和映射,以建立第一物理模型-中間模型-第二物理模型的映射關係,之後可根據該映射關係將源資料庫中的數據導出到目標資料庫中,以實現不同類型資料庫之間數據及數據結構的交互。[0044]根據本發明實施例的用於非關係與關係型資料庫間數據及數據結構交互的方法,可根據源資料庫中的第一物理模型、源資料庫中的數據特徵和查詢特徵生成中間模型,並根據預設策略、中間模型的數據結構及中間模型包含的數據特徵和查詢特徵,將中間模型轉換為目標資料庫的第二物理模型,以及建立第一物理模型-中間模型-第二物理模型的映射關係,並根據映射關係將源資料庫中的數據導出到目標資料庫中,以實現不同類型資料庫之間數據及數據結構的交互,至少具有以下優點:(I)在非關係型資料庫尚不具備統一完備的數據模型的情況下,本發明能夠完成從關係型資料庫到非關係型資料庫的模型和數據的映射和遷移工作,具有很強的新穎性和獨創性;(2)通過依據中間模型中的數據特徵和查詢特徵,動態地將中間模型轉化為不同的目標資料庫的存儲模型,提高了實用性和通用性。[0045]為了使得本發明的描述更加清楚,下面舉例說明。[0046]例如,以從關係型資料庫遷移數據到非關係型資料庫為例,對於一個存儲用戶信息、用戶撰寫的博客及博客的標籤的關係型資料庫來說,可提取出其實體-關係模型。如圖4所示,為關係型資料庫的實體-關係模型,具有mb_userinfo(用戶信息)、mb_blog(博客)和mb_tag(標籤)這三個實體,以及這三個實體對應的屬性、實體之間的關係。在該實體-關係模型當中,各實體可能存在多種數據特徵和查詢特徵,可將這些數據特徵和查詢特徵進行挖掘,並附加到該實體-關係模型中,即可得到用於數據遷移的中間模型。如圖3所示,在該中間模型中,定義了一系列數據特徵和查詢特徵,可根據這些數據特徵和查詢特徵,以及非關係型資料庫,通過預設策略進行模型的轉換和映射,之後可根據該映射將關係型資料庫中的數據導出到非關係型資料庫中,以實現不同類型資料庫間數據及數據結構的交互。[0047]需要說明的是,在本發明的實施例中,當中間模型中實體間的關係包含特殊的數據特徵和/或查詢特徵時,應採取特殊的策略對其進行模型轉換。例如,如圖3所示,在該中間模型中,mb_Blog(博客)與mb_Tag(標籤)間的關係包含「大數據量」標籤,表明這兩個實體間的關係量較大。對於多數非關係型資料庫(如MongoDB等),處理這種具有緊密關係的情況時,可將這兩個實體存儲在同一個MongoDB集合內,以滿足查詢性能。因此,可通過中間模型的數據特徵以及預設策略,即可得到非關係型資料庫(以MongoDB為例)的物理模型。可見,在目標資料庫的物理模型中,mb_Tag集合按照數據特徵可被存儲在mb_Blog集合中(如圖5所示),滿足了MongoDB的查詢性能。[0048]為了實現上述實施例,本發明還提出一種用於非關係與關係型資料庫間數據及數據結構交互的裝置。[0049]圖6是根據本發明一個實施例的用於非關係與關係型資料庫間數據及數據結構交互的裝置的結構示意圖。[0050]如圖6所示,該用於非關係與關係型資料庫間數據及數據結構交互的裝置可以包括:獲取模塊10、定義模塊20、生成模塊30、轉換模塊40和建立模塊50。[0051]具體地,獲取模塊10用於獲取源資料庫的第一物理模型。其中,在本發明的實施例中,源資料庫可為關係型資料庫和非關係型資料庫中的任意一種;第一物理模型可為實體-關係模型和層次模型中的任意一種。當源資料庫為關係型資料庫時,源資料庫的第一物理模型可為實體-關係模型;當源資料庫為非關係型資料庫時,第一物理模型可為層次模型。[0052]舉例而言,以源資料庫為關係型資料庫為例,獲取模塊10可通過現有的模型提取工具從關係型資料庫中提取出該關係型資料庫的物理模型(即實體-關係模型)。其中,在本發明的實施例中,現有的模型提取工具可為官方提供的資料庫管理工具,如Mysql對應的管理工具可為phpMyAdmin、SQLServer對應的管理工具可為MicrosoftSQLServer的各種版本等。[0053]應當理解,當源資料庫為非關係型資料庫時,如Hypertable、MongoDB>ApacheCassandra等,所指的模型提取工具一般均為第三方提供的,且大多為開源軟體,如mongodb-Variety等,數據建模人員可自定義這些開源的提供工具以便於資料庫的開發及使用。[0054]定義模塊20用於定義第一物理模型對應的資料庫的數據特徵和查詢特徵。在本發明的實施例中,第一物理模型可具有多個對象,每個對象均可包含若干的數據特徵和查詢特徵。數據特徵和查詢特徵均可有其固定的名字,並可以以標註的形式與對應的對象關聯。[0055]其中,在本發明的實施例中,數據特徵可描述在實際數據存儲中對應的對象的存儲特徵,如一個實體的「大數據量」特徵,表示在實際存儲的數據中,被標註的對象擁有較大的數據量。此外,查詢特徵可描述在實際數據系統應用中,在進行查詢和分析等操作時,對應的對象涉及的查詢特點,如一個屬性的「常被查詢」特徵,表示該屬性在實際數據應用當中常被進行查詢操作。[0056]生成模塊30用於根據第一物理模型、數據特徵和查詢特徵生成中間模型。具體而言,在源資料庫中,由於各個實體可能會存在多種數據特徵和查詢特徵,所有,生成模塊30可先將這些數據特徵和查詢特徵進行挖掘以獲取第一物理模型對應的資料庫中的數據特徵和查詢特徵,之後可將這些數據特徵和查詢特徵附加至該第一物理模型中以生成中間模型。[0057]其中,在本發明的實施例中,中間模型可具有多個對象,每個對象可包含多個數據特徵和查詢特徵,數據特徵和查詢特徵均可以以標註的形式與對應的對象關聯。例如,圖2為本發明實施例的中間模型的結構示意圖,如圖2所示,中間模型可包含對象,還可包含實體、屬性、關係等,「實體」、「屬性」、「關係」均為對象的一種繼承。實體可表示一個離散的對象,可以代表對實際生產中一類對象的總稱,如學生、僱員、公司、班級等。關係可描述兩個或更多實體間相互如何關聯,如在公司和僱員之間有名為「僱傭」的關聯。此外,實體可以擁有屬性,一個實體擁有的屬性數是固定的,屬性可描述實體的特徵,如學生可擁有學號、姓名、身高、體重等屬性。[0058]舉例而言,如圖3所示,在該中間模型中,包含mb_UserInfo(用戶信息)、mb_Blog(博客)、mb_Tag(標籤)三個實體,這三個實體分別包含對應的屬性,如mb_UserInfo(用戶信息)包括nickName(姓名)、Phone(電話)、Email(郵箱地址)、City(城市)等,mb_Blog(博客)包括Uid(用戶ID)、MessageContent(信息內容)、DateTime(日期)等,mb_Tag(標籤)包括MID(標籤ID)、tagContent(標籤內容)、dateTime(日期)等。而mb_UserInfo(用戶信息)、和mb_Blog(博客)、mb_Blog(博客)和mb_Tag(標籤)間,分別存在關係。本中間模型的重點是在各對象上標註了數據特徵和查詢特徵,如在mb_Tag實體上含有「常被添加的」標註,說明該實體在資料庫實際存儲中常被進行添加(append)操作。[0059]轉換模塊40用於根據預設策略、中間模型的數據結構及中間模型所包含的數據特徵和查詢特徵,將中間模型轉換為目標資料庫的第二物理模型。其中,在本發明的實施例中,預設策略可理解為約定俗成的經驗、數據模型轉換所遵循的準則和/或規則等。[0060]應當理解,在本發明的實施例中,由於中間模型是由源資料庫中的數據特徵和查詢特徵附加到第一物理模型中以生成的,因此,中間模型所包含的數據特徵和查詢特徵與源資料庫中定義的數據特徵和查詢特徵是一致的。[0061]更具體地,轉換模塊40在生成模塊30生成中間模型之後,可根據中間模型的數據結構及其包括的數據特徵和查詢特徵,可以通過預設策略,將中間模型自動地轉換為目標資料庫的第二物理模型,從而在進行數據和模型遷移時,該中間模型可以映射成符合應用要求的不同的資料庫的物理模型。其中,在本發明的實施例中,目標資料庫可為關係型資料庫和非關係型資料庫中的任意一種;第二物理模型可為實體-關係模型和層次模型中的任意一種。應當理解,當目標資料庫為非關係型資料庫時,目標資料庫的第二物理模型可為層次模型;當目標資料庫為關係型資料庫時,第二物理模型可為實體-關係模型。[0062]需要說明的是,本發明的實施例主要應用於非關係型資料庫與關係型資料庫之間數據及數據結構的交互,即從關係型資料庫遷移數據到非關係型資料庫、或從非關係型資料庫遷移數據到關係型資料庫以實現不同類型資料庫之間數據及數據結構的交互。也就是說,當源資料庫為關係型資料庫時,目標資料庫可為非關係型資料庫,第一物理模型可為實體-關係模型,第二物理模型可為層次模型;當源資料庫為非關係型資料庫時,目標資料庫可為關係型資料庫,第一物理模型可為層次模型,第二物理模型可為實體-關係模型。[0063]建立模型50用於建立第一物理模型-中間模型-第二物理模型的映射關係,並根據映射關係將源資料庫中的數據導出到目標資料庫中。更具體地,中間模型中具有一系列的數據特徵和查詢特徵,建立模型50可根據這些數據特徵和查詢特徵以及目標資料庫,通過預設策略進行模型的轉換和映射,以建立第一物理模型-中間模型-第二物理模型的映射關係,之後可根據該映射關係將源資料庫中的數據導出到目標資料庫中,以實現不同類型資料庫之間數據及數據結構的交互。[0064]根據本發明實施例的用於非關係與關係型資料庫間數據及數據結構交互的裝置,可通過生成模塊根據源資料庫的第一物理模型、源資料庫的數據特徵和查詢特徵生成中間模型,轉換模塊根據預設策略、中間模型的數據結構及中間模型所包含的數據特徵和查詢特徵,將中間模型轉換為目標資料庫的第二物理模型,建立模型建立第一物理模型-中間模型-第二物理模型的映射關係,並根據映射關係將源資料庫中的數據導出到目標資料庫中,以實現不同類型資料庫之間數據及數據結構的交互,至少具有以下優點:(I)在非關係型資料庫尚不具備統一完備的數據模型的情況下,本發明能夠完成從關係型資料庫到非關係型資料庫的模型和數據的映射和遷移工作,具有很強的新穎性和獨創性;(2)通過依據中間模型中的數據特徵和查詢特徵,動態地將中間模型轉化為不同的目標資料庫的存儲模型,提高了實用性和通用性。[0065]需要說明的是,本發明除在不同資料庫間數據導入導出的使用外,還可作為面向資料庫管理人員的不同資料庫的進入接口。通過本發明實施例中的中間模型,可以以一個統一的結構訪問不同的資料庫。由此,可具備很強的擴展性和簡便性。[0066]流程圖中或在此以其他方式描述的任何過程或方法描述可以被理解為,表示包括一個或更多個用於實現特定邏輯功能或過程的步驟的可執行指令的代碼的模塊、片段或部分,並且本發明的優選實施方式的範圍包括另外的實現,其中可以不按所示出或討論的順序,包括根據所涉及的功能按基本同時的方式或按相反的順序,來執行功能,這應被本發明的實施例所屬【
技術領域:
】的技術人員所理解。[0067]在流程圖中表示或在此以其他方式描述的邏輯和/或步驟,例如,可以被認為是用於實現邏輯功能的可執行指令的定序列表,可以具體實現在任何計算機可讀介質中,以供指令執行系統、裝置或設備(如基於計算機的系統、包括處理器的系統或其他可以從指令執行系統、裝置或設備取指令並執行指令的系統)使用,或結合這些指令執行系統、裝置或設備而使用。就本說明書而言,"計算機可讀介質"可以是任何可以包含、存儲、通信、傳播或傳輸程序以供指令執行系統、裝置或設備或結合這些指令執行系統、裝置或設備而使用的裝置。計算機可讀介質的更具體的示例(非窮盡性列表)包括以下:具有一個或多個布線的電連接部(電子裝置),可攜式計算機盤盒(磁裝置),隨機存取存儲器(RAM),只讀存儲器(R0M),可擦除可編輯只讀存儲器(EPR0M或閃速存儲器),光纖裝置,以及可攜式光碟只讀存儲器(⑶ROM)。另外,計算機可讀介質甚至可以是可在其上列印所述程序的紙或其他合適的介質,因為可以例如通過對紙或其他介質進行光學掃描,接著進行編輯、解譯或必要時以其他合適方式進行處理來以電子方式獲得所述程序,然後將其存儲在計算機存儲器中。[0068]應當理解,本發明的各部分可以用硬體、軟體、固件或它們的組合來實現。在上述實施方式中,多個步驟或方法可以用存儲在存儲器中且由合適的指令執行系統執行的軟體或固件來實現。例如,如果用硬體來實現,和在另一實施方式中一樣,可用本領域公知的下列技術中的任一項或他們的組合來實現:具有用於對數據信號實現邏輯功能的邏輯門電路的離散邏輯電路,具有合適的組合邏輯門電路的專用集成電路,可編程門陣列(PGA),現場可編程門陣列(FPGA)等。[0069]本【
技術領域:
】的普通技術人員可以理解實現上述實施例方法攜帶的全部或部分步驟是可以通過程序來指令相關的硬體完成,所述的程序可以存儲於一種計算機可讀存儲介質中,該程序在執行時,包括方法實施例的步驟之一或其組合。[0070]此外,在本發明各個實施例中的各功能單元可以集成在一個處理模塊中,也可以是各個單元單獨物理存在,也可以兩個或兩個以上單元集成在一個模塊中。上述集成的模塊既可以採用硬體的形式實現,也可以採用軟體功能模塊的形式實現。所述集成的模塊如果以軟體功能模塊的形式實現並作為獨立的產品銷售或使用時,也可以存儲在一個計算機可讀取存儲介質中。[0071]上述提到的存儲介質可以是只讀存儲器,磁碟或光碟等。[0072]在本說明書的描述中,參考術語「一個實施例」、「一些實施例」、「示例」、「具體示例」、或「一些示例」等的描述意指結合該實施例或示例描述的具體特徵、結構、材料或者特點包含於本發明的至少一個實施例或示例中。在本說明書中,對上述術語的示意性表述不必須針對的是相同的實施例或示例。而且,描述的具體特徵、結構、材料或者特點可以在任一個或多個實施例或示例中以合適的方式結合。此外,在不相互矛盾的情況下,本領域的技術人員可以將本說明書中描述的不同實施例或示例以及不同實施例或示例的特徵進行結合和組合。[0073]儘管上面已經示出和描述了本發明的實施例,可以理解的是,上述實施例是示例性的,不能理解為對本發明的限制,本領域的普通技術人員在本發明的範圍內可以對上述實施例進行變化、修改、替換和變型。【權利要求】1.一種用於非關係與關係型資料庫間數據及數據結構交互的方法,其特徵在於,包括:獲取源資料庫的第一物理模型;定義所述第一物理模型對應的資料庫的數據特徵和查詢特徵;根據所述第一物理模型、所述數據特徵和查詢特徵生成中間模型;根據預設策略、所述中間模型的數據結構及所述中間模型所包含的數據特徵和查詢特徵,將所述中間模型轉換為目標資料庫的第二物理模型;建立所述第一物理模型-中間模型-第二物理模型的映射關係,並根據所述映射關係將所述源資料庫中的數據導出到所述目標資料庫中。2.根據權利要求1所述的方法,其特徵在於,所述源資料庫、目標資料庫均為關係型資料庫和非關係型資料庫中的任意一種;所述第一物理模型、第二物理模型均為實體-關係模型和層次模型中的任意一種。3.根據權利要求1或2所述的方法,其特徵在於,當所述源資料庫為所述關係型資料庫時,所述目標資料庫為所述非關係型資料庫,所述第一物理模型為所述實體-關係模型,所述第二物理模型為所述層次模型;當所述源資料庫為所述非關係型資料庫時,所述目標資料庫為所述關係型資料庫,所述第一物理模型為所述層次模型,所述第二物理模型為所述實體-關係模型。4.根據權利要求1所述的方法,其特徵在於,所述根據第一物理模型、所述數據特徵和查詢特徵生成中間模型包括:獲取所述第一物理模型對應的資料庫中的數據特徵和查詢特徵,並將所述數據特徵和查詢特徵附加至所述第一物理模型中以生成所述中間模型。5.根據權利要求1或4所述的方法,其特徵在於,所述中間模型具有多個對象,每個所述對象包含多個所述數據特徵和查詢特徵,所述數據特徵和查詢特徵均以標註的形式與對應的對象關聯。6.一種用於非關係與關係型資料庫間數據及數據結構交互的裝置,其特徵在於,包括:獲取模塊,用於獲取源資料庫的第一物理模型;定義模塊,用於定義所述第一物理模型對應的資料庫的數據特徵和查詢特徵;生成模塊,用於根據所述第一物理模型、所述數據特徵和查詢特徵生成中間模型;轉換模塊,用於根據預設策略、所述中間模型的數據結構及所述中間模型所包含的數據特徵和查詢特徵,將所述中間模型轉換為目標資料庫的第二物理模型;建立模塊,用於建立所述第一物理模型-中間模型-第二物理模型的映射關係,並根據所述映射關係將所述源資料庫中的數據導出到所述目標資料庫中。7.根據權利要求6所述的裝置,其特徵在於,所述源資料庫、目標資料庫均為關係型資料庫和非關係型資料庫中的任意一種;所述第一物理模型、第二物理模型均為實體-關係模型和層次模型中的任意一種。8.根據權利要求6或7所述的裝置,其特徵在於,當所述源資料庫為所述關係型資料庫時,所述目標資料庫為所述非關係型資料庫,所述第一物理模型為所述實體-關係模型,所述第二物理模型為所述層次模型;當所述源資料庫為所述非關係型資料庫時,所述目標資料庫為所述關係型資料庫,所述第一物理模型為所述層次模型,所述第二物理模型為所述實體-關係模型。9.根據權利要求6所述的裝置,其特徵在於,所述生成模塊還用於:獲取所述第一物理模型對應的資料庫中的數據特徵和查詢特徵,並將所述數據特徵和查詢特徵附加至所述第一物理模型中以生成所述中間模型。10.根據權利要求6或9所述的裝置,其特徵在於,所述中間模型具有多個對象,每個所述對象包含多個所述數據特徵和查詢特徵,所述數據特徵和查詢特徵均以標註的形式與對應的對象關聯。【文檔編號】G06F17/30GK103810275SQ201410050425【公開日】2014年5月21日申請日期:2014年2月13日優先權日:2014年2月13日【發明者】丁貴廣,林運禎申請人:清華大學

同类文章

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

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有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-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀