標籤:事物 添加 也會 能力 盈利 建立 一個 使用 最大
什麼是圖形?
一個圖由兩個元素組成:一個節點和一個關係。
每個節點代表一個實體(人,地點,事物,類別或其他資料區段),每個關係代表兩個節點是如何關聯的。例如,蛋糕和甜點這兩個節點之間的關係是一種從蛋糕到甜點的指向。
這個通用的結構可以讓你類比各種情境 - 從道路系統到裝置網路,到人口的醫學史或由關係定義的任何其他事物。
什麼是圖形資料庫?
圖形資料庫是一個線上資料庫管理系統,具有在圖形資料模型上工作的建立,讀取,更新和刪除(CRUD)操作。與其他資料庫不同,在圖形資料庫中,關係優先。這意味著您的應用程式不必使用外鍵或帶外處理(如MapReduce)來推斷資料連線。通過將節點和關係的簡單抽象組合到串連的結構中,圖形資料庫使我們能夠建立與我們的問題領域緊密相關的複雜模型。圖資料庫的資料模型也比關聯式資料庫或其他NoSQL資料庫的資料模型簡單得多,表現力也更強。圖形資料庫是為了與事務性(OLTP)系統一起使用而構建的,並且考慮到事務完整性和操作可用性。
圖資料庫技術有兩個重要的特性:
圖表格儲存體
一些圖形資料庫使用專門設計用於儲存和管理圖形的原生圖形儲存,而另一些則使用關聯式資料庫或物件導向的資料庫。非本機存放區通常更為隱蔽。
圖形處理引擎
原生圖處理(也稱為“無索引鄰接”)是處理圖資料的最有效手段,因為串連的節點在資料庫中物理地“指向”彼此。非本地圖形處理使用其他手段來處理CRUD操作。
為什麼要使用圖形資料庫?使用圖形資料庫有什麼好處?
當今的商業和使用者需求要求串連越來越多的世界資料的應用程式,但仍然期望高水平的效能和資料可靠性。未來的許多應用程式將使用像Neo4j這樣的圖形資料庫來構建。
今天的CIO和CTO不僅需要管理大量的資料,還需要從現有的資料中擷取洞察力。 在這種情況下,資料點之間的關係比單獨的點本身更重要。為了利用資料關係,組織需要一種將關係資訊儲存為一流實體的資料庫技術。 該技術是一個圖形資料庫。具有諷刺意味的是,傳統的關聯式資料庫管理系統(RDBMS)在處理資料關係上很差。 他們嚴格的模式使得難以添加不同的串連或適應新的業務需求。圖形資料庫不僅有效地儲存資料關係, 在擴充資料模型或符合不斷變化的業務需求時,它們也很靈活。
Google,Facebook,LinkedIn和PayPal等技術巨頭都利用圖形資料庫的力量創造了蓬勃發展的業務。 他們的秘密就是每個人都使用圖形資料庫技術來利用資料連線的力量。
圖形資料庫是專門為處理高度串連的資料而建立的,而今天的資料量和連通性的增加為持續的競爭優勢提供了巨大的機會。
圖表資料庫還有其他三個關鍵優勢:
效能:對於密集的資料關係處理,圖形資料庫將效能提高了幾個數量級。在傳統的資料庫中,隨著關係的數量和深度的增加,關係查詢將會停止。相比之下,即使您的資料年複一年增長,圖表資料庫的效能也會保持不變。
靈活性:對於圖形資料庫,IT和資料架構師團隊正在以業務的速度發展,因為隨著應用程式和行業的變化,圖形模型的結構和模式也會隨之變化。資料團隊可以在不危及當前功能的情況下將其添加到現有的圖形結構中,而不是提前對域進行詳盡的建模。
敏捷:使用圖形資料庫開發完全符合當今靈活的,測試驅動的開發實踐,允許您的圖形資料庫與其他應用程式和任何不斷變化的業務需求同步發展。現代圖形資料庫配備了無摩擦的開發和優雅的系統維護。
圖資料庫的常見用例是什嗎?
當今的企業組織以多種方式使用圖形資料庫技術:
欺詐識別
即時Recommendation Engine
主要資料管理(MDM)
網路和IT運營
身份和訪問管理(IAM)
從沃爾瑪,eBay和阿迪達斯集團這樣的企業到像Cobrain,Zephyr Health和Wanderu這樣的創業公司,甚至像ICIJ和世界經濟論壇這樣的非盈利組織,圖形資料庫的案例研究都具有多樣性和深度的用途。
圖資料庫的案例
圖表為開發堆棧帶來的最大價值是它們將關係和串連儲存為一體的能力。例如,圖形技術的早期採用者圍繞資料關係的價值重新構想了他們的業務。 這些公司現在已經成為行業領導者:LinkedIn,Google,Facebook和PayPal。
什麼是Neo4j?
Neo4j是一個資料庫 - 使用它來可靠地儲存資訊,並在以後找到它
Neo4j的資料模型是一個Graph,特別是一個Property Graph
Cypher是Neo4j的圖形查詢語言(SQL for graph!)
Cypher是一種聲明式查詢語言:它描述了你感興趣的內容,而不是如何獲得。
Cypher是非常易讀和有表現力的
什麼是Cypher?
Cypher是一種聲明式查詢語言,可以對圖表資料進行有效查詢和更新。 Cypher是一個相對簡單而強大的語言。複雜的資料庫查詢可以通過Cypher輕鬆表達,使您可以專註於您的域,而不是迷失在資料庫訪問。Cypher的設計是一個人性化的查詢語言,適合開發人員和任何其他專業人士。我們的指導目標是使簡單的事情容易,複雜的事情成為可能。 Cypher的結構是為了被人類閱讀而最佳化的,使用英文散文和映像來使查詢更加自明。
作為一種聲明性語言,Cypher的重點是明確表達從圖表中檢索什麼,而不是如何檢索。這與用於資料庫訪問的命令性的,程式化的API相反。這種方法使得查詢最佳化成為實現細節而不是使用者負擔,消除了僅僅因為物理資料庫結構改變而更新所有遍曆的需要。Cypher的靈感來源於多種不同的方法,並建立在傳統查詢的既定實踐之上。 像WHERE和ORDER BY這樣的許多關鍵字都受SQL的啟發。 模式比對從SPARQL中借用了運算式方法。 一些集合語義已經從Haskell和Python等語言中借用過。Cypher語言已經提供給任何人實施和使用openCypher,允許任何資料庫供應商,研究人員或其他利益相關方獲得我們多年來開發一流的圖形查詢語言的努力和經驗中的好處。
Neo4j_02瞭解圖資料庫