W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
OrientDB的主要特點是支持多模型對象,即它支持不同的模型,如文檔,圖形,鍵/值和真實對象。 它包含一個單獨的API來支持所有這四個模型。
術(shù)語Document模型屬于NoSQL數(shù)據(jù)庫。 這意味著數(shù)據(jù)存儲在文檔中,文檔組稱為集合。 技術(shù)上,文檔意味著一組鍵/值對或者也稱為字段或?qū)傩浴?/p>
OrientDB使用類,集群和鏈接等概念來存儲,分組和分析文檔。
下表說明了關(guān)系模型,文檔模型和OrientDB文檔模型之間的比較:
關(guān)系模型 | 文檔模型 | OrientDB文檔模型 |
---|---|---|
表 | 集合 | 級或集群 |
行 | 文件 | 文件 |
縱行 | 鍵/值對 | 文檔字段 |
關(guān)系 | 不可用 | 鏈接 |
圖形數(shù)據(jù)結(jié)構(gòu)是可以以通過邊(Arc)互連的頂點(節(jié)點)的形式存儲數(shù)據(jù)的數(shù)據(jù)模型。 OrientDB圖數(shù)據(jù)庫的想法來自屬性圖。 頂點和邊是Graph模型的主要工件。 它們包含屬性,這些屬性可以使它們看起來類似于文檔。
下表顯示了圖形模型,關(guān)系數(shù)據(jù)模型和OrientDB圖形模型之間的比較。
關(guān)系模型 | 圖模型 | OrientDB圖模型 |
---|---|---|
表 | 頂點和邊緣階層 | 延伸“V”(用于頂點)和“E”(用于邊緣) |
行 | 頂點 | 頂點 |
縱行 | 頂點和邊屬性 | 頂點和邊屬性 |
關(guān)系 | 邊緣 | 邊緣 |
鍵/值模型意味著數(shù)據(jù)可以以鍵/值對的形式存儲,其中值可以是簡單和復雜類型。 它可以支持文檔和圖形元素作為值。
下表說明了關(guān)系模型,鍵/值模型和OrientDB鍵/值模型之間的比較。
關(guān)系模型 | 鍵/值模型 | OrientDB鍵/值模型 |
---|---|---|
表 | 桶 | 類或集群 |
行 | 鍵/值對 | 文件 |
縱行 | 不可用 | 文檔字段或頂點/邊緣屬性 |
關(guān)系 | 不可用 | 鏈接 |
這種模式已經(jīng)由面向?qū)ο蟮某绦蛟O計繼承,并支持類之間的繼承 (子類型擴展超類型), 多態(tài)性 ,當你引用一個基類, 直接從綁定 /編程語言中使用的對象。
下表說明關(guān)系模型,對象模型,以及OrientDB對象模型之間的比較。
關(guān)系模型 | 對象模型 | OrientDB對象模型 |
---|---|---|
表 | 類 | 級或集群 |
行 | 目的 | 文檔或頂點 |
縱行 | Object屬性 | 文檔字段或頂點/邊屬性 |
關(guān)系 | 指針 | 鏈接 |
在詳細介紹之前,最好先了解與OrientDB相關(guān)的基本術(shù)語。以下是一些重要的術(shù)語。
您可以從數(shù)據(jù)庫加載并存儲在數(shù)據(jù)庫中的最小單位。記錄可以存儲四種類型。
1、文件
2、記錄字節(jié)
3、頂點
4、邊緣
當OrientDB生成記錄時,數(shù)據(jù)庫服務器自動為記錄分配單位標識符,稱為RecordID(RID)。 RID看起來像#:。 表示集群標識號,表示集群中記錄的絕對位置。
文檔是OrientDB中最靈活的記錄類型。文檔是軟類型的,并且由具有定義的約束的模式類定義,但是您也可以插入沒有任何模式的文檔,即它也支持無模式模式。
文檔可以通過以JSON格式導出和導入輕松處理。例如,查看以下JSON示例文檔。它定義文檔詳細信息。
{ "id" : "1201", "name" : "Jay", "job" : "Developer", "creations" : [ { "name" : "Amiga", "company" : "Commodore Inc." }, { "name" : "Amiga 500", "company" : "Commodore Inc." } ] }
記錄類型與RDBMS中的BLOB類型相同。 OrientDB可以加載和存儲文檔記錄類型以及二進制數(shù)據(jù)。
OrientDB數(shù)據(jù)庫不僅是一個文檔數(shù)據(jù)庫,而且是一個圖形數(shù)據(jù)庫。諸如Vertex和Edge的新概念用于以圖形的形式存儲數(shù)據(jù)。在圖數(shù)據(jù)庫中,最基本的數(shù)據(jù)單位是節(jié)點,在OrientDB中稱為頂點。頂點存儲數(shù)據(jù)庫的信息。
有一個單獨的記錄類型稱為Edge,將一個頂點連接到另一個頂點。邊是雙向的,只能連接兩個頂點。在OrientDB中有兩種類型的邊,一種是規(guī)則的,另一種是輕量的。
該類是一種數(shù)據(jù)模型和從面向?qū)ο缶幊谭独L制的概念。基于傳統(tǒng)文檔數(shù)據(jù)庫模型,數(shù)據(jù)以收集的形式存儲,而在關(guān)系數(shù)據(jù)庫中,模型數(shù)據(jù)存儲在表中。 OrientDB遵循文檔API以及OPPS范例。作為一個概念,OrientDB中的類與關(guān)系數(shù)據(jù)庫中的表具有最接近的關(guān)系,但是(與表不同)類可以是無模式的,模式完整的或混合的。類可以從其他類繼承,創(chuàng)建類的樹。每個類都有自己的一個或多個集群(默認情況下創(chuàng)建,如果沒有定義)。
集群是用于存儲記錄,文檔或頂點的重要概念。簡單來說,Cluster是存儲一組記錄的地方。默認情況下,OrientDB將為每個類創(chuàng)建一個集群。類的所有記錄都存儲在與該類具有相同名稱的同一集群中。您可以在數(shù)據(jù)庫中創(chuàng)建多達32,767(2 ^ 15-1)個集群。
CREATE類是用于創(chuàng)建具有特定名稱的集群的命令。創(chuàng)建集群后,可以使用集群通過在創(chuàng)建任何數(shù)據(jù)模型期間指定名稱來保存記錄。
OrientDB支持兩種關(guān)系:引用和嵌入。引用關(guān)系意味著它存儲到關(guān)系的目標對象的直接鏈接。嵌入關(guān)系意味著它在嵌入它的記錄中存儲關(guān)系。這種關(guān)系比參考關(guān)系更強。
數(shù)據(jù)庫是訪問實際存儲的接口。 IT了解高級概念,例如查詢,模式,元數(shù)據(jù),索引等。 OrientDB還提供多種數(shù)據(jù)庫類型。有關(guān)這些類型的更多信息,請參閱數(shù)據(jù)庫類型。
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: