隨著技術(shù)的發(fā)展,我們對數(shù)據(jù)的需求已經(jīng)不再局限于對數(shù)據(jù)本身的獲取了,我們還需要獲取數(shù)據(jù)與數(shù)據(jù)間的關(guān)系(也就是連接數(shù)據(jù))。
簡單地說,我們可以說圖數(shù)據(jù)庫主要用于存儲更多的連接數(shù)據(jù)(因?yàn)閳D結(jié)構(gòu)相比其他數(shù)據(jù)結(jié)構(gòu)而言,能保存更多的數(shù)據(jù)間的關(guān)系)。
如果我們使用 RDBMS 數(shù)據(jù)庫來存儲更多連接的數(shù)據(jù),那么它們不能提供用于遍歷大量數(shù)據(jù)的適當(dāng)性能。 在這些情況下,Graph Database 提高了應(yīng)用程序性能。
如今,大多數(shù)社交網(wǎng)絡(luò)應(yīng)用程序(如Facebook,Google +,LinkedIn,Twitter,Yammer 等)和視頻托管應(yīng)用程序(如 Google YouTube,F(xiàn)lickr,Yahoo Video等)都在使用更多連接的數(shù)據(jù)。
我們將觀察什么是連接數(shù)據(jù)? 以及這些應(yīng)用程序如何與某些實(shí)時應(yīng)用程序存儲數(shù)據(jù)。
使用 Google+(GooglePlus)應(yīng)用程序來了解現(xiàn)實(shí)世界中 Graph 數(shù)據(jù)庫的需求。 觀察下面的圖表。
在這里,我們用圓圈表示了 Google+應(yīng)用個人資料。
在上圖中,輪廓“A”具有圓圈以連接到其他輪廓:家庭圈(B,C,D)和朋友圈(B,C)。
再次,如果我們打開配置文件“B”,我們可以觀察以下連接的數(shù)據(jù)。
像這樣,這些應(yīng)用程序包含大量的結(jié)構(gòu)化,半結(jié)構(gòu)化和非結(jié)構(gòu)化的連接數(shù)據(jù)。 在 RDBMS 數(shù)據(jù)庫中表示這種非結(jié)構(gòu)化連接數(shù)據(jù)并不容易。
如果我們在 RDBMS 數(shù)據(jù)庫中存儲這種更多連接的數(shù)據(jù),那么檢索或遍歷是非常困難和緩慢的。
所以要表示或存儲這種更連接的數(shù)據(jù),我們應(yīng)該選擇一個流行的圖數(shù)據(jù)庫。
圖形DBMS非常容易地存儲這種更多連接的數(shù)據(jù)。 它將每個配置文件數(shù)據(jù)作為節(jié)點(diǎn)存儲在內(nèi)部,它與相鄰節(jié)點(diǎn)連接的節(jié)點(diǎn),它們通過關(guān)系相互連接。
他們存儲這種連接的數(shù)據(jù)與上面的圖表中的相同,這樣檢索或遍歷是非常容易和更快的。
利用 Facebook 應(yīng)用程序了解現(xiàn)實(shí)世界中 Graph 數(shù)據(jù)庫的需求。
在上面的圖中,F(xiàn)acebook Profile“A”已經(jīng)連接到他的朋友,喜歡他的一些朋友,發(fā)送消息給他的一些朋友,跟隨他喜歡的一些名人。
這意味著大量的連接數(shù)據(jù)配置文件A.如果我們打開其他配置文件,如配置文件B,我們將看到類似的大量的連接數(shù)據(jù)。
注-通過觀察上述兩個應(yīng)用程序,它們有很多更多的連接數(shù)據(jù)。 它是非常容易存儲和檢索,這種更連接的數(shù)據(jù)與圖形數(shù)據(jù)庫。
更多建議: