探索圖數(shù)據(jù)庫在數(shù)據(jù)資產(chǎn)可視化中的應(yīng)用
NoSQL數(shù)據(jù)庫分為四種類型,分別是:
鍵值(key/value)數(shù)據(jù)庫
列存儲(chǔ)數(shù)據(jù)庫
文檔型數(shù)據(jù)庫
圖數(shù)據(jù)庫
上圖就是db-engines.com對從2013年來所有數(shù)據(jù)庫種類發(fā)展趨勢的分析結(jié)果如圖展示。圖(Graph)是非常強(qiáng)大的工具,因?yàn)樗鼈兺ㄟ^以簡潔的形式表示數(shù)據(jù)關(guān)系,幫助商業(yè)世界和其他機(jī)構(gòu)中的人們理解數(shù)據(jù)集。有了合適的圖數(shù)據(jù)庫,企業(yè)可以以關(guān)系圖的形式可視化數(shù)據(jù),并對其進(jìn)行管理,以提高整體效能。比起傳統(tǒng)數(shù)據(jù)庫的數(shù)據(jù)存儲(chǔ),圖數(shù)據(jù)庫能夠清晰的展現(xiàn)點(diǎn)與點(diǎn)之間的關(guān)系。許多組織之所以接受圖數(shù)據(jù)庫,是因?yàn)樵絹碓蕉嗟男袠I(yè)認(rèn)識(shí)到這種數(shù)據(jù)庫技術(shù)的重要性,尤其在復(fù)雜的場景下,如物流,金融風(fēng)控,社交網(wǎng)絡(luò)管理,媒體傳播分析等行業(yè)正在發(fā)揮不可或缺的作用。
圖數(shù)據(jù)庫是分析數(shù)據(jù)間關(guān)聯(lián)的最佳技術(shù)
圖數(shù)據(jù)庫對于可以在不同場景下發(fā)揮作用,從企業(yè)應(yīng)用角度,業(yè)務(wù)用戶使用角度,數(shù)據(jù)開發(fā)者應(yīng)用角度都發(fā)揮著作用。
圖數(shù)據(jù)庫對于可以在不同場景下發(fā)揮作用,從企業(yè)應(yīng)用角度,業(yè)務(wù)用戶使用角度,數(shù)據(jù)開發(fā)者應(yīng)用角度都發(fā)揮著作用。
圖數(shù)據(jù)庫產(chǎn)品
依據(jù)db-engines.com網(wǎng)站對Graph DBMS的排名來看,目前主流的圖數(shù)據(jù)庫有:Neo4j,Janusgraph,Dgraph,ArangoDB,OrientDB,TigerGraph等。下面我們來介紹一下目前圖數(shù)據(jù)庫的分類都有哪些。
圖數(shù)據(jù)庫分類
原生數(shù)據(jù)庫:
代表數(shù)據(jù)庫為neo4j、orientdb。其原生體現(xiàn)在查點(diǎn)到邊或者邊到點(diǎn)的時(shí)候,不需要走原來關(guān)系型數(shù)據(jù)庫的B+索引,節(jié)點(diǎn)本身就有指向索引,類似于鏈表的指針概念
直接在關(guān)系型數(shù)據(jù)庫之上構(gòu)建的圖數(shù)據(jù)庫:
代表為AgensGraph,以及微軟的GraphView。SparkGraphX也可以基于關(guān)系型存儲(chǔ)結(jié)構(gòu)進(jìn)行轉(zhuǎn)化成圖結(jié)構(gòu),然后完成圖運(yùn)算
使用外置nosql存儲(chǔ)的數(shù)據(jù)庫:
以Titan/JanusGraph為代表,以及使用外置的索引生成工具如Elasticsearch,OLAP支持外接Spark等工具,以及Cassandra/Hbase等nosql數(shù)據(jù)庫。
在圖計(jì)算上基于batch進(jìn)行優(yōu)化的新一代圖數(shù)據(jù)庫:
如DGraph。DGraph的存儲(chǔ)結(jié)構(gòu)與cayley同樣借鑒了google的論文,將每個(gè)節(jié)點(diǎn)的屬性也作為一個(gè)節(jié)點(diǎn)與主節(jié)點(diǎn)產(chǎn)生聯(lián)系,這樣更有益于基于batch來設(shè)計(jì)運(yùn)算方法。
Neo4j
Neo4j圖數(shù)據(jù)庫,它是一個(gè)高性能的NOSQL圖形數(shù)據(jù)庫,它將結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)在網(wǎng)絡(luò)上而不是表中。它是一個(gè)嵌入式的、基于磁盤的、具備完全的事務(wù)特性的Java持久化引擎,但是它將結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)在網(wǎng)絡(luò)(從數(shù)學(xué)角度叫做圖)上而不是表中。
優(yōu)勢:
可集群,使用讀/寫負(fù)載平衡器將請求直接到一個(gè)集群
支持事物、鎖、頁面緩存
遍歷下:建立索引通常成本O(log(n)),但Neo4J的遍歷一個(gè)關(guān)系的復(fù)雜度趨向于O(1)
支持ACID事務(wù),它確保實(shí)時(shí)顯示數(shù)據(jù)的合法性和準(zhǔn)確性。
Cypher語法友好
劣勢:
Neo4j沒法存儲(chǔ)巨大的一張關(guān)系圖 ,因?yàn)樗恢С址制?/p>
因?yàn)閕ndex-free adjacency,遍歷快但是計(jì)算隨機(jī)兩個(gè)節(jié)點(diǎn)最短路徑性能不佳
索引:
index-free adjacency,擅長遍歷圖,以及計(jì)算不存在大量關(guān)系的節(jié)點(diǎn)的圖
ArangoDB
ArangoDB圖數(shù)據(jù)庫,它是一個(gè)原生多模型數(shù)據(jù)庫,兼有key/value鍵/值對、graph圖和document文檔數(shù)據(jù)模型,提供了涵蓋三種數(shù)據(jù)模型的統(tǒng)一的數(shù)據(jù)庫查詢語言,并允許在單個(gè)查詢中混合使用三種模型;谄浔镜丶啥嗄P吞匦,您可以搭建高性能程序,并且這三種數(shù)據(jù)模型均支持水平擴(kuò)展。
優(yōu)勢:
存儲(chǔ)空間占用下:采用了元數(shù)據(jù)模式存儲(chǔ)數(shù)據(jù);可通過內(nèi)存提速,CPU占用率低
支持主從集群
Multi-collection transactions
擴(kuò)展性好:JavaScript
用JavaScript和ArangoDB構(gòu)建應(yīng)用,F(xiàn)oxx微服務(wù)運(yùn)行在DB內(nèi)部,可快速訪問數(shù)據(jù)。
AQL功能很強(qiáng)大,配置編程遠(yuǎn)方便于、靈活于Neo4J、OrientDB
Neo4J的Cypher也比較強(qiáng)大,清晰,但是不利于調(diào)整,靈活性不夠
OrientDB,類SQL,查詢繁瑣,調(diào)整不便利,內(nèi)置SQL函數(shù)接口也不方便
劣勢:
插入性能稍低
索引:
自動(dòng)索引_key屬性,_from和_to屬性;保證V和E的查找速度
OrientDB
OrientDB是指兼具文檔數(shù)據(jù)庫的靈活性和圖形數(shù)據(jù)庫管理鏈接能力的可深層次擴(kuò)展的文檔-圖形數(shù)據(jù)庫管理系統(tǒng)。
優(yōu)勢:
安裝簡單,功能豐富
OrientDB是兼具文檔數(shù)據(jù)庫的靈活性和圖形數(shù)據(jù)庫管理鏈接能力的可深層次擴(kuò)展的文檔-圖形數(shù)據(jù)庫管理系統(tǒng)(NoSQL數(shù)據(jù)庫)
可選無模式、全模式或混合模式下。支持許多高級特性,諸如ACID事務(wù)、快速索引,原生和SQL查詢功能
可以JSON格式導(dǎo)入、導(dǎo)出文檔
若不執(zhí)行昂貴的JOIN操作的話,如同關(guān)系數(shù)據(jù)庫可在幾毫秒內(nèi)可檢索數(shù)以百計(jì)的鏈接文檔圖
劣勢:
坑很多
性能和可擴(kuò)展性不好
索引:
側(cè)重文檔數(shù)據(jù)庫,主要還是SB樹索引導(dǎo)致,空間浪費(fèi)比較大;插入節(jié)點(diǎn)與另外兩個(gè)數(shù)據(jù)庫(neo4j和ArangoDB)相差無幾,但是在插入關(guān)系中另外兩個(gè)數(shù)據(jù)庫都做了優(yōu)化,OrientDB無優(yōu)化,就掛了;在圖論計(jì)算力上性能優(yōu)異,但是在遍歷中還是優(yōu)化不夠,被甩開。
JanusGraph
開源 JanusGraph是一個(gè)可擴(kuò)展的圖數(shù)據(jù)庫,可以把包含數(shù)千億個(gè)頂點(diǎn)和邊的圖存儲(chǔ)在多機(jī)集群上。它支持事務(wù),支持?jǐn)?shù)千用戶實(shí)時(shí)、并發(fā)訪問存儲(chǔ)在其中的圖。
優(yōu)勢:
分布式部署,因此,支持集群
可以存儲(chǔ)大圖,比如包含數(shù)千億Vertices和edges的圖
支持?jǐn)?shù)千用戶實(shí)時(shí)、并發(fā)訪問。
集群節(jié)點(diǎn)可以線性擴(kuò)展,以支持更大的圖和更多的并發(fā)訪問用戶。
數(shù)據(jù)分布式存儲(chǔ),并且每一份數(shù)據(jù)都有多個(gè)副本,因此,有更好的計(jì)算性能和容錯(cuò)性。
支持在多個(gè)數(shù)據(jù)中心做高可用,支持熱備份。
通過集成大數(shù)據(jù)平臺(tái),比如Apache Spark、Apache Giraph、Apache Hadoop等,支持全局圖數(shù)據(jù)分析、報(bào)表、ETL
集成ElasticSearch、Apache Solr、Apache Lucene等系統(tǒng)后,可以支持全文搜索
在計(jì)算層上可使用Spark做計(jì)算,這點(diǎn)優(yōu)于Neo4j和OrientDB
即可OLAP也可OLTP,可以執(zhí)行批處理和實(shí)時(shí)處理
開源,基于Apache 2 Licence
支持各種后端存儲(chǔ)系統(tǒng),目前標(biāo)準(zhǔn)支持以下四種,當(dāng)然也可以增加第三方的存儲(chǔ)系統(tǒng):
Apache Cassandra
Apache HBase
Google Cloud Bigtable
Oracle BerkeleyDB

請輸入評論內(nèi)容...
請輸入評論/評論長度6~500個(gè)字
最新活動(dòng)更多
-
3月27日立即報(bào)名>> 【工程師系列】汽車電子技術(shù)在線大會(huì)
-
4月30日立即下載>> 【村田汽車】汽車E/E架構(gòu)革新中,新智能座艙挑戰(zhàn)的解決方案
-
5月15-17日立即預(yù)約>> 【線下巡回】2025年STM32峰會(huì)
-
即日-5.15立即報(bào)名>>> 【在線會(huì)議】安森美Hyperlux™ ID系列引領(lǐng)iToF技術(shù)革新
-
5月15日立即下載>> 【白皮書】精確和高效地表征3000V/20A功率器件應(yīng)用指南
-
5月16日立即參評 >> 【評選啟動(dòng)】維科杯·OFweek 2025(第十屆)人工智能行業(yè)年度評選
推薦專題
- 1 UALink規(guī)范發(fā)布:挑戰(zhàn)英偉達(dá)AI統(tǒng)治的開始
- 2 北電數(shù)智主辦酒仙橋論壇,探索AI產(chǎn)業(yè)發(fā)展新路徑
- 3 “AI寒武紀(jì)”爆發(fā)至今,五類新物種登上歷史舞臺(tái)
- 4 降薪、加班、裁員三重暴擊,“AI四小龍”已折戟兩家
- 5 國產(chǎn)智駕迎戰(zhàn)特斯拉FSD,AI含量差幾何?
- 6 光計(jì)算迎來商業(yè)化突破,但落地仍需時(shí)間
- 7 東陽光:2024年扭虧、一季度凈利大增,液冷疊加具身智能打開成長空間
- 8 地平線自動(dòng)駕駛方案解讀
- 9 封殺AI“照騙”,“淘寶們”終于不忍了?
- 10 優(yōu)必選:營收大增主靠小件,虧損繼續(xù)又逢關(guān)稅,能否乘機(jī)器人東風(fēng)翻身?