原生圖數(shù)據(jù)庫三個被低估的優(yōu)點
譯文譯者 | 布加迪
審校 | 孫淑娟
如果你被告知圖數(shù)據(jù)庫的目的是使你能夠?qū)⒔M織的數(shù)據(jù)視為一個圖,那么你還沒有被告知足夠多的信息。
圖數(shù)據(jù)庫為你解決的真正問題是:系統(tǒng)中的故障在哪里?哪些交易模式可能表明惡意企圖?哪些治療組合對于最難治的疾病最有效?
將關(guān)系融入到數(shù)據(jù)中后,數(shù)據(jù)會在你最需要的時候顯示這種關(guān)系。
它不僅僅涉及可視化的圓圈和箭頭??梢暬寮皇窃鷪D數(shù)據(jù)庫。原生圖工具解釋了關(guān)系,以及由關(guān)系衍生而來的所有概念(比如相關(guān)性、完整性、概率、可靠性、偏誤和脆弱性)。這樣一來,來自這些關(guān)系的信息可以被數(shù)據(jù)庫定位、分析,然后向你解釋。
一、認知問題
圖數(shù)據(jù)庫生產(chǎn)商Neo4j的用戶創(chuàng)新高級主管Michael Hunger表示,人類通常會觀察世界,然后處理他們所看到的相互關(guān)聯(lián)的元素。
但是當這些人需要用關(guān)系數(shù)據(jù)庫來表示這些相同的元素時,問題在于,一旦他們實際使用技術(shù)即數(shù)據(jù)庫,就需要忘記所有的相互關(guān)系。
關(guān)系可以融入到關(guān)系數(shù)據(jù)庫中,但需要付出相當大的精力,加上大量的內(nèi)存和存儲——當這些資源由云平臺提供時,需要高昂的費用。
因此為了節(jié)省時間和金錢,組織往往淡化理解相互關(guān)系方面的需求。后來當它們需要深入分析時,依賴只能從數(shù)據(jù)庫模式的表層推斷信息的附件和擴展件。
技術(shù)研究公司Omdia的人工智能平臺、分析和數(shù)據(jù)首席分析師Bradley Shimmin表示,不僅僅是金融公司需要了解欺詐檢測,其他公司也需要能夠了解員工下個月會不會辭職。
圖分析能夠跨多個維度來查看,為數(shù)據(jù)添加的上下文和含義,而表格數(shù)據(jù)對上下文和含義一無所知。
二、什么是原生圖數(shù)據(jù)庫?
在傳統(tǒng)的關(guān)系數(shù)據(jù)庫模型中,數(shù)據(jù)分布在多個表中,通過鍵連接。運行SQL查詢通常意味著連接多個表和多個索引查詢。
圖1.美國小企業(yè)創(chuàng)新研究(SBIR)計劃的
創(chuàng)業(yè)生態(tài)系統(tǒng)模型
在這里被描述為Neo4j圖數(shù)據(jù)庫模型
相比之下,在Neo4j屬性圖模型中,重點是數(shù)據(jù)元素之間的關(guān)系。這些元素作為“節(jié)點”來存儲,其屬性可以由任意數(shù)量的鍵/值對表示。
節(jié)點可以通過任意數(shù)量的關(guān)系來連接。節(jié)點和關(guān)系都可能有“屬性”。在圖模型中,關(guān)系數(shù)據(jù)庫表中的列或行表示為節(jié)點的屬性。
使用原生圖數(shù)據(jù)庫,整個堆棧都圍繞這個數(shù)據(jù)模型進行了優(yōu)化,從查詢語言到文件存儲,不一而足。原生圖數(shù)據(jù)庫在分析這種關(guān)系時會更高效,因為它們一開始就被融入到模型中。
區(qū)分原生圖數(shù)據(jù)庫和運行在關(guān)系數(shù)據(jù)庫上的圖層非常重要。后者以圖的形式提供結(jié)果,但仍必須執(zhí)行連接及其他操作,才能將來自整個數(shù)據(jù)庫的數(shù)據(jù)匯集在一起。這會導(dǎo)致延遲和過多消耗計算資源,規(guī)模擴展后這一切會暴露得更明顯。
開發(fā)圖數(shù)據(jù)庫在創(chuàng)建過程中需要額外的工作,因為你還得插入這些關(guān)系。所涉及的工作量以后會得到回報,你可以更輕松地推斷出數(shù)據(jù)之間的聯(lián)系。
回報來自這三個被低估的優(yōu)點:
1.可遍歷性:建立聯(lián)系
圖數(shù)據(jù)庫使你能夠“遵循”關(guān)系。如果你讀取數(shù)據(jù),又想要追蹤或遍歷這些關(guān)系,你會受益匪淺。
Neo4j的開發(fā)者關(guān)系工程師William Lyon指出了一項名為“無索引鄰近”的功能,該功能是圖數(shù)據(jù)庫所特有的。這基本上意味著你可以從一個節(jié)點遍歷到任何其他節(jié)點,無需進行索引查找。
圖2.圖模型的一部分,其中三個Twitter用戶相互關(guān)注
但關(guān)注程度不成比例
可遍歷性揭露了它們之間關(guān)系的范圍和限制
這種可遍歷性不僅使跟蹤數(shù)據(jù)之間的關(guān)系變得更容易,還減少了執(zhí)行查詢所需的計算,從而減少了管理計算過程所需的人力。
至于關(guān)系數(shù)據(jù)庫,你必須計算組合在一起的內(nèi)容,然后要有某種方法將它們合并在一起。這意味著更多的連接或跳點。數(shù)據(jù)庫中的數(shù)據(jù)量越大,所需的連接和跳點勢必越多。
相比之下,換成圖數(shù)據(jù)庫,數(shù)據(jù)庫中是否有80億人并不重要。如果專注于Joe,只對Joe的關(guān)系感興趣,可以完全忽略其他人。
這還使得圖數(shù)據(jù)庫對于分析層次數(shù)據(jù)特別有用,比如分析一家擁有200000名員工和數(shù)十個管理層的公司。
圖3.由于可遍歷性,Neo4j的Cypher查詢語言
用四行代碼揭示了三層深度的關(guān)系
而不是用復(fù)雜的腳本
在關(guān)系數(shù)據(jù)庫中對這種龐大而復(fù)雜的層次結(jié)構(gòu)進行操作意味著數(shù)十萬個自連接:將人員或員工表與經(jīng)理、與他們的經(jīng)理或與每個人員指定的經(jīng)理相連接。
換成圖數(shù)據(jù)庫,這只是跟蹤層次結(jié)構(gòu)上下關(guān)系的問題。
圖數(shù)據(jù)庫格式對數(shù)據(jù)科學(xué)家也特別有吸引力——他們不喜歡與關(guān)系數(shù)據(jù)庫打交道,因為它有已執(zhí)行的嚴格的模式。在開始工作之前,你必須事先定義并實施數(shù)據(jù)的模式。
相比之下,圖方法更快、更直觀,使你更容易迭代完善數(shù)據(jù)模型。
2.可解釋性:便攜式白板
如果人類從關(guān)系和聯(lián)系來看待世界,那么數(shù)據(jù)庫應(yīng)該能夠推斷出關(guān)系和聯(lián)系的含義。
這個原則好比你試圖找到的結(jié)果的輸出具有“對白板友好性”。當研究型醫(yī)師與同事交流結(jié)果時,通常以Excel表格或某種表格的格式表示。大體而言,這些格式等同于完整的數(shù)據(jù)庫。
同時,圖向人類展示了一個即時的信息結(jié)果。你可以把白板上的這個豐富模型放到數(shù)據(jù)庫中,因為關(guān)系和實體是一等公民,但你也并不失去所有業(yè)務(wù)人員。
推薦系統(tǒng)是圖數(shù)據(jù)庫的核心用例。如果你能說“我們向你推薦這本書,因為它與你評價很高的其他書有相似的元素”,這是極具價值的推薦。
網(wǎng)絡(luò)特性使你能夠推斷出某些節(jié)點可能對其他節(jié)點產(chǎn)生的影響程度:“聚類是什么?誰最有影響力?誰連接聚類?誰必不可少?”
這種分析級別也許只能由關(guān)系數(shù)據(jù)庫通過非常復(fù)雜的聚合過程和所謂的“知識發(fā)現(xiàn)迭代”來完成,這一切使得之前描述的SQL交叉連接馬拉松看起來更像是百米沖刺。
印第安納大學(xué)的研究人員試圖找出帕金森病各種病因當中的遺傳關(guān)系方面的模式,出于一些重要的原因選擇了Neo4j作為其原生圖數(shù)據(jù)庫,其中一個原因是,圖查詢返回的模式本身可以表示為圖。
從他們的角度來看,不僅數(shù)據(jù)庫本身被表示為知識圖,連輸出也是如此。
3.公平性:將原始數(shù)據(jù)放入上下文
高質(zhì)量的結(jié)果需要高質(zhì)量的數(shù)據(jù)。圖數(shù)據(jù)庫在公平和消除偏誤方面顯示出更多被低估的優(yōu)點,尤其是在用于機器學(xué)習和人工智能的龐大數(shù)據(jù)集。
偏誤可能來自兩個方面:偏差的數(shù)據(jù)被饋入到算法,以及研究人員在他們提出的問題方面有偏見。使用圖模型,就可以在設(shè)計階段突出并消除潛在的偏誤。
數(shù)據(jù)科學(xué)家自然會希望確保他們的訓(xùn)練數(shù)據(jù)在被饋入到機器學(xué)習算法之前具有代表性、無偏誤。在數(shù)據(jù)準備階段使用原生圖數(shù)據(jù)庫可能有助于將原始信息置于上下文中,避免將偏誤饋入到模型的可能性。
所以看看你的圖的聚類,如果只有一個大聚類,那么就有偏誤,就有問題。你需要回過頭去,確保擁有良好的分布式聚類。
神經(jīng)網(wǎng)絡(luò)本身就是圖。這意味著當你訓(xùn)練模型時,神經(jīng)網(wǎng)絡(luò)會發(fā)生變化。如果你呈現(xiàn)一個圖,并使其易于訪問、可變和可視化,那么就可以確定網(wǎng)絡(luò)如何獲取權(quán)重。
換句話說,從模型生成的任何特定的輸出都很容易追溯起源。可遍歷性是雙向的。
所有這些優(yōu)點是否意味著關(guān)系模型已窮途末路?不太可能。但是正如Shimmin特別指出,圖數(shù)據(jù)庫是“一項至關(guān)重要的技術(shù),我非常希望看到它更深入地全面集成到傳統(tǒng)的分析工作負載中?!?/p>
原文鏈接:https://thenewstack.io/the-3-underrated-strengths-of-a-native-graph-database/