圖形數(shù)據(jù)庫neo4j試玩

neo4j是一套noSQL的圖形數(shù)據(jù)庫充坑,適合存儲點减江、線、面等圖數(shù)據(jù)結(jié)構(gòu)捻爷。
基于Java開發(fā)辈灼,缺點是占用大量內(nèi)存。
適配Java也榄、Python巡莹、ruby等語言。
適用場景:
Social Network(社交網(wǎng)絡(luò),企業(yè)用戶比如Linkedin)
Network and IT Operation(網(wǎng)絡(luò)或者運維)
Fraud Detection (反詐騙)
Graph Based Search(圖算法降宅,類似于我之前研究的拓撲算法骂远,ebay把這個應(yīng)用在快遞分發(fā)系統(tǒng))
Identity and Access(登陸信息驗證,挪威電信Telenor公司在用腰根,我的前東家甲方公司)
Master Data Management(主數(shù)據(jù)管理激才,這個就不太清楚了,pitney bowes供應(yīng)鏈公司)
Recommendation Engine(商品評論引擎唠雕,Walmart德國沃爾瑪?shù)入娚滔到y(tǒng))

官網(wǎng)地址:https://neo4j.com/

Windows環(huán)境下載exe安裝贸营,用的是免費社區(qū)版

啟動服務(wù),簡單的Java Swing程序

登陸試玩岩睁,引導(dǎo)界面還是蠻不錯的:

用了官方的一套demo:

import org.neo4j.driver.v1.*;
 
import java.util.Collections;
import java.util.List;
 
import static java.util.Arrays.asList;
import static org.neo4j.driver.v1.Values.parameters;
 
public class Social {
 
    public static void main(String...args) {
 
        Config noSSL = Config.build().withEncryptionLevel(Config.EncryptionLevel.NONE).toConfig();
        Driver driver = GraphDatabase.driver("bolt://localhost",AuthTokens.basic("neo4j","123456"),noSSL); // <password>
        try (Session session = driver.session()) {
 
            List data =
                    asList(asList("Jim","Mike"),asList("Jim","Billy"),asList("Anna","Jim"),
                            asList("Anna","Mike"),asList("Sally","Anna"),asList("Joe","Sally"),
                            asList("Joe","Bob"),asList("Bob","Sally"));
 
            String insertQuery = "UNWIND {pairs} as pair " +
                    "MERGE (p1:Person {name:pair[0]}) " +
                    "MERGE (p2:Person {name:pair[1]}) " +
                    "MERGE (p1)-[:KNOWS]-(p2);";
 
            session.run(insertQuery, Collections.<String, Object>singletonMap("pairs",data)).consume();
 
            StatementResult result;
 
            String foafQuery =
                    " MATCH (person:Person)-[:KNOWS]-(friend)-[:KNOWS]-(foaf) "+
                            " WHERE person.name = {name} " +
                            "   AND NOT (person)-[:KNOWS]-(foaf) " +
                            " RETURN foaf.name AS name ";
            result = session.run(foafQuery, parameters("name","Joe"));
            while (result.hasNext()) System.out.println(result.next().get("name"));
 
            String commonFriendsQuery =
                    "MATCH (user:Person)-[:KNOWS]-(friend)-[:KNOWS]-(foaf:Person) " +
                            " WHERE user.name = {from} AND foaf.name = {to} " +
                            " RETURN friend.name AS friend";
            result = session.run(commonFriendsQuery, parameters("from","Joe","to","Sally"));
            while (result.hasNext()) System.out.println(result.next().get("friend"));
 
            String connectingPathsQuery =
                    "MATCH path = shortestPath((p1:Person)-[:KNOWS*..6]-(p2:Person)) " +
                            " WHERE p1.name = {from} AND p2.name = {to} " +
                            " RETURN [n IN nodes(path) | n.name] as names";
            result = session.run(connectingPathsQuery, parameters("from","Joe","to","Billy"));
            while (result.hasNext()) System.out.println(result.next().get("names"));
 
        }
    }
}
MAVEN地址

圖數(shù)據(jù)庫相關(guān)書籍
《圖數(shù)據(jù)庫(第2版)》

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末钞脂,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子捕儒,更是在濱河造成了極大的恐慌冰啃,老刑警劉巖,帶你破解...
    沈念sama閱讀 207,248評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件刘莹,死亡現(xiàn)場離奇詭異阎毅,居然都是意外死亡,警方通過查閱死者的電腦和手機点弯,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評論 2 381
  • 文/潘曉璐 我一進店門扇调,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人抢肛,你說我怎么就攤上這事狼钮。” “怎么了捡絮?”我有些...
    開封第一講書人閱讀 153,443評論 0 344
  • 文/不壞的土叔 我叫張陵熬芜,是天一觀的道長。 經(jīng)常有香客問我福稳,道長涎拉,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,475評論 1 279
  • 正文 為了忘掉前任的圆,我火速辦了婚禮鼓拧,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘越妈。我一直安慰自己毁枯,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 64,458評論 5 374
  • 文/花漫 我一把揭開白布叮称。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪瓤檐。 梳的紋絲不亂的頭發(fā)上赂韵,一...
    開封第一講書人閱讀 49,185評論 1 284
  • 那天,我揣著相機與錄音挠蛉,去河邊找鬼祭示。 笑死,一個胖子當(dāng)著我的面吹牛谴古,可吹牛的內(nèi)容都是我干的质涛。 我是一名探鬼主播,決...
    沈念sama閱讀 38,451評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼掰担,長吁一口氣:“原來是場噩夢啊……” “哼汇陆!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起带饱,我...
    開封第一講書人閱讀 37,112評論 0 261
  • 序言:老撾萬榮一對情侶失蹤毡代,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后勺疼,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體教寂,經(jīng)...
    沈念sama閱讀 43,609評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,083評論 2 325
  • 正文 我和宋清朗相戀三年执庐,在試婚紗的時候發(fā)現(xiàn)自己被綠了酪耕。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,163評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡轨淌,死狀恐怖迂烁,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情猿诸,我是刑警寧澤婚被,帶...
    沈念sama閱讀 33,803評論 4 323
  • 正文 年R本政府宣布,位于F島的核電站梳虽,受9級特大地震影響址芯,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜窜觉,卻給世界環(huán)境...
    茶點故事閱讀 39,357評論 3 307
  • 文/蒙蒙 一谷炸、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧禀挫,春花似錦旬陡、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,357評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽驶睦。三九已至,卻和暖如春匿醒,著一層夾襖步出監(jiān)牢的瞬間场航,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,590評論 1 261
  • 我被黑心中介騙來泰國打工廉羔, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留溉痢,地道東北人。 一個月前我還...
    沈念sama閱讀 45,636評論 2 355
  • 正文 我出身青樓憋他,卻偏偏與公主長得像孩饼,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子竹挡,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,925評論 2 344

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,528評論 25 707
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理镀娶,服務(wù)發(fā)現(xiàn),斷路器此迅,智...
    卡卡羅2017閱讀 134,601評論 18 139
  • 休班的日子汽畴,很興奮,也很無聊耸序,覺得離這個世界越來越遠忍些,沒有太多的想法,只是等著發(fā)工資的日子坎怪,一點點地在哀嘆中罢坝,終老……
    駱駝隊長閱讀 145評論 0 0
  • 今天是2017年8月13日 是劍耀每天一篇原創(chuàng)文章的 第5篇 《戰(zhàn)狼2》從票房上來說是當(dāng)之無愧的王者。從其破10億...
    愿你歸來還是少年閱讀 1,679評論 0 1
  • Alin最愛的還是C先生吧搅窿。忽然想起過去的那些日子嘁酿。那短暫的幾天旅行。眼淚便悄然落下男应。那些日子是過不去的闹司。
    高大上很忙閱讀 126評論 0 0