圖資料庫並非要取代區塊鏈,而是讓區塊鏈如虎添翼

weixin_33858249發表於2018-12-13

InfoQ: 您能介紹下您的從業經歷嗎?以及您在TigerGraph負責的業務和團隊情況?

譚永:我之前在太陽計算機做過幾年Solaris開發,後來在微軟做過幾年的搜尋引擎開發,現在在TigerGraph做解決方案。我們主要是幫助客戶,去理解他們的需求,為他們構建模型,實現他們的業務邏輯,有很多國內銀行都是我們的客戶。

InfoQ:圖資料庫與其他關係型非關係型資料庫主要差異是什麼?適用於哪些場景?

譚永:圖資料庫主要是為了解決像傳統資料庫在多層的查詢,比如說它會涉及到很多次的Join操作,效率會非常低,圖資料庫是為了解決這個問題,它是用節點和邊來展示這種使用者資料的關係。它的Join操作就是一步邊的跳轉就可以了,效率是非常高的,是比較注重大資料的實時處理。

InfoQ:和其他圖資料庫相比,比如Neo4j,Neptune,JanusGraph,TigerGraph有什麼獨特的地方?採用了什麼樣的實現方法?

譚永:我們建立TigerGraph之初,高效能就是我們首要的追求目標。所以我們從底層到上層都是用C++做的開發,從底層的儲存到平行計算、分散式計算,我們都是用C++做的,所以它的效率是非常高的。從我們自己內部的效能對比實驗來看,我們會比其他的圖資料庫有幾倍甚至數十倍的效率提升。在我們的官網上有這樣一個測試報告,裡面會有重複我們測試步驟所需要的所有的指令碼,方便大家重複這個實驗。

InfoQ: 現在有很多人認為,能用區塊鏈的地方一定能用傳統技術來解決。那麼您認為在哪些場合,區塊鏈具有“非用不可”的特性?

譚永:我覺得選擇最合適的工具做最合適的事情,區塊鏈是一個很棒的技術,它是去中心化的,資料是透明的、可追溯的,所以它在跨國交易、物聯網方面會有很多的用途。至於說能不能用傳統的方法來解決,我覺得如果有更好的工具來做的話,就沒必要再用傳統的方法來做了。

InfoQ:從技術上具體來說,區塊鏈和傳統的資料庫有哪些異同?

譚永:區塊鏈是去中心化的,它的資料是透明、安全、可追溯的,區塊鏈上的節點都是一個對等的關係。而傳統資料庫是需要有一箇中心化的節點,需要有管理員去維護這個系統。所以我覺得它們的區別還是比較大的。

InfoQ: 區塊鏈具有去中心化的特性,並且區塊鏈的tps效能有限。圖資料庫的優勢表現在大資料查詢計算上 ,那麼區塊鏈和圖資料庫有什麼樣的關聯?有多大的必要將區塊鏈用圖的方式去解讀?

譚永:圖資料庫並不是說想取代區塊鏈,它只是說我們用圖資料庫這種方式去解讀區塊鏈的資料。譬如說現在發生很多次比特幣被盜的事件,區塊鏈本身沒有這種機制去防止這種事件,而圖資料庫提供了實時更新資料的功能,你可以在上面實現自己的查詢,比如說你自己定義一些規則,來做實時資料的更新,實施多種線上的反欺詐規則,當發現有疑似欺詐發生的時候,可以觸發這種警告,就可以及時地在事中去發現這種威脅,不用事後再去做彌補。

InfoQ: 為什麼要用圖資料庫去構建區塊鏈,這樣的方法適用於哪些場合?

譚永:圖資料庫是一個通用的解決方案,只要涉及到大資料上的實時查詢,基本上都可以用圖資料庫來解決。而區塊鏈是分散式的賬本,把兩者結合起來我們就可以在區塊鏈上做各種各樣的查詢,特別是一些定製化的查詢,譬如說誰有最多的比特幣,誰花費了最多的比特幣,或者說有多少個比特幣是在睡眠賬戶裡面的。

InfoQ: 用圖資料庫構建出的區塊鏈跟普通的分散式賬本如Fabric的區別在哪裡?使用了這種方法之後具有什麼樣的收益?

譚永:Fabric是區塊鏈的一種實現方式,TigerGraph或者說圖資料庫並不是說想取代區塊鏈,它只是讓區塊鏈如虎添翼,讓使用者更加直觀或者實時高效地去解讀區塊鏈裡面的資料,解讀交易的連結關係,做一些反欺詐或者是其他方面的一些查詢。

相關文章