Neo4j權威指南

Neo4j權威指南
定價:594
NT $ 446
  • 作者:張幟(主編)
  • 出版社:清華大學出版社
  • 出版日期:2017-09-01
  • 語言:簡體中文
  • ISBN10:7302477760
  • ISBN13:9787302477761
  • 裝訂:551頁 / 21 x 14.8 x 1.5 cm / 普通級 / 1-1
 

內容簡介

圖數據庫是應「大數據時代」之運而產生的一種新型NoSQL數據庫。它以圖論為理論根基,用節點和關系所組成的圖為真實世界直接建模,支持百億乃至千億量級規模的巨型圖的高效關系運算,很好適合於高效、便捷、直觀地分析和處理大數據中的復雜關系,已得到政商學界的廣泛關注。

目前市面上有關該領域的中文書籍很好匱乏,為加大推廣和普及的力度,我們集中組織靠前對圖數據庫有深入研究的行業及專家,共同編寫一套國人原創的圖數據庫技術叢書,開篇之作優選全面深入地介紹目前很很好、市場占有率優選的圖數據庫產品——Neo4j。全書涵蓋基本概念、基本操作和豐富的現實案例,尤為耀眼的是包含對團隊原創的Neo4j簡體中文版及其擴展功能的介紹。無論是入門還是不錯進階均具有極高的參考價值,大數據、圖數據庫愛好者更值得擁有!

張幟,中國IT界元老、中國圖數據庫先導者、大數據領域資深專家、WPS曲線漢字發明人。曾任Microsoft高級軟件設計師及「維納斯計划」技術主管,牽頭研發中國移動139手機郵箱。於2017年兩會期間做客CCTV,與著名主持人阿丘老師對話,暢談《關於圖數據庫的夢想》,被業界譽為中國圖數據庫第一人。

張幟創辦的微雲數聚,專注於研究圖數據庫技術及其應用,是世界領先的圖數據庫Ne04i在中國的戰略合作伙伴和官方代理。微雲數聚研制的《Ne04i簡體中文版》,是專為中國企業量身打造、符合中國企業習慣的圖數據庫系統產品。剛剛問世的新產品《關系搜》,是基於圖數據庫和微雲數聚系列專利技術研制而成的通用的多元模糊關系搜索引擎,在社交、征信、安全、傳媒等各個領域有着廣泛的應用前景。
 

目錄

第1章 Neo4j 圖數據庫基礎 1
1.1 圖數據庫的產生背景 2
1.2 圖數據庫基礎 7
1.2.1 圖數據庫介紹 7
1.2.2 圖數據模型 7
1.2.3 圖計算引擎 8
1.2.4 圖數據庫的歷史 9
1.3 圖數據庫與關系數據庫的對比 10
1.3.1 關系數據庫的弊端 10
1.3.2 圖數據模型的優勢 10
1.4 圖數據庫與其他 NoSQL 數據庫的對比 12
1.4.1 其他 NoSQL 數據庫的弊端 12
1.4.2 將鍵值對存儲與圖數據庫相關聯 12
1.4.3 將文檔存儲與圖數據庫相關聯 13
1.5 Neo4j 概述 13
1.6 Neo4j 的體系結構 15
1.6.1 免索引鄰接 16
1.6.2 Neo4j 底層存儲結構 17
1.6.3 Neo4j 的遍歷方式 21
1.6.4 Neo4j 的存儲優化 22

第2章 Neo4j 基礎入門 24
2.1 Neo4j 的安裝部署 24
2.1.1 Neo4j安裝包的下載 24
2.1.2 在各個操作系統上的安裝 26
2.1.3 Neo4j的啟動 32
2.2 Neo4j 管理平台的使用 33
2.2.1 Web管理平台的使用 33
2.2.2 neo4j-shell 的使用 37
2.3 Neo4j 圖數據中基本元素與概念 41
2.3.1 節點 41
2.3.2 關系 41
2.3.3 屬性 42
2.3.4 路徑 42
2.3.5 遍歷(Traversal) 43
2.4 官方入門實例介紹 43
2.4.1 創建圖數據 44
2.4.2 檢索節點 46
2.4.3 查詢關系 49
2.4.4 思考與練習 52
2.4.5 清空數據庫 54
2.5 批量導入工具的使用 54
2.5.1 獲取CSV文件 54
2.5.2 使用 Load CSV 指令導入到 Neo4j 58
2.5.3 使用neo4j-import 工具導入到 Neo4j 61

第3章 Neo4j 之 Cypher 63
3.1 Cypher 概述 63
3.1.1 Cypher 是什麼 63
3.1.2 模式(Patterns) 65
3.1.3 查詢和更新圖 66
3.1.4 事務 67
3.1.5 唯一性 68
3.1.6 兼容性 69
3.2 基本語法 70
3.2.1 類型 70
3.2.2 表達式 70
3.2.3 變量 73
3.2.4 參數 73
3.2.5 運算符 77
3.2.6 注釋 78
3.2.7 模式(Patterns) 78
3.2.8 列表 81
3.2.9 空值 87
3.3 語句 89
3.3.1 MATCH 89
3.3.2 OPTINAL MATCH 101
3.3.3 WHERE 102
3.3.4 START 113
3.3.5 Aggregation 114
3.3.6 LOAD CSV 121
3.3.7 CREATE 125
3.3.8 MERGE 129
3.3.9 SET 138
3.3.10 DELETE 142
3.3.11 REMOVE 143
3.3.12 FOREACH 145
3.3.13 CREATE UNIQUE 146
3.3.14 RETURN 149
3.3.15 ORDER BY 153
3.3.16 LIMIT 155
3.3.17 SKIP 156
3.3.18 WITH 158
3.3.19 UNWIND 160
3.3.20 UNION 161
3.3.21 CALL 163
3.4 函數 167
3.4.1 斷言(Predicate)函數 167
3.4.2 標量(Scalar)函數 170
3.4.3 列表(List)函數 177
3.4.4 數學函數 182
3.4.5 字符串函數 193
3.4.6 自定義函數 199
3.5 模式(Schema) 200
3.5.1 索引 200
3.5.2 約束 203
3.5.3 統計 209
3.6 查詢調優 210
3.6.1 查詢如何執行 210
3.6.2 查詢性能分析 211
3.6.3 查詢調優舉例 211
3.6.4 USING 213
3.7 執行計划 220
3.7.1 開始點運算符 221
3.7.2 Expand 運算符 224
3.7.3 組合運算符 226
3.7.4 行運算符 234
3.7.5 更新運算符 241
3.7.6 最短路徑規划 243

第4章 Neo4j 程序開發 246
4.1 Neo4j 開發入門 246
4.1.1 Java 嵌入式開發模式 246
4.1.2 各語言驅動包開發模式 246
4.2 Java API 嵌入式開發模式 247
4.2.1 Java 開發前的准備工作 248
4.2.2 創建 Neo4j 圖實例 253
4.2.3 圖數據遍歷功能 257
4.2.4 數據索引 264
4.2.5 過程 273
4.2.6 事務管理 280
4.2.7 使用Java在線備份Neo4j 286
4.2.8 使用JMX監控Neo4j 286
4.3 各語言驅動包開發模式 288
4.3.1 驅動開發入門 289
4.3.2 配置和連接 292
4.3.3 執行 Cypher 語句 297
4.3.4 返回結果 301
4.3.5 數據類型 308
4.3.6 異常 310
4.3.7 其他語言驅動 311
4.4 Neo4j HTTP API 312
4.4.1 流 312
4.4.2 認證和授權 312
4.4.3 在一個請求中使用事務 316
4.4.4 執行多條語句 317
4.4.5 運行一個事務 318
4.4.6 在打開的事務中執行語句 319
4.4.7 重置超時事務 319
4.4.8 提交事務 320
4.4.9 回滾事務 321
4.4.10 查詢統計信息 321
4.4.11 以圖格式返回結果 322
4.4.12 錯誤處理 324
4.4.13 在事務中處理錯誤 325
4.5 其他開發技術介紹 326
4.5.1 Spring-Data-Neo4j 326
4.5.2 Spring-Data-Neo4在項目中的部署 326
4.5.3 使用 Neo4j-OGM 的對象圖映射 327
4.5.4 使用 JDBC 連接 Neo4j 328
4.5.5 JCypher 329
4.5.6 Groovy&Grails:Neo4j Grails 插件 329
4.5.7 Clojure:Neocons 329
4.5.8 Scala:AnormCypher 330
4.5.9 JPA:Hibernate OGM 330

第5章 Neo4j 數據庫管理 331
5.1 部署 331
5.1.1 系統需求 331
5.1.2 文件位置 332
5.1.3 重要端口 333
5.1.4 設置初始密碼 334
5.1.5 等待 Neo4j 啟動 334
5.1.6 使用數據收集器 335
5.1.7 配置 Neo4j 連接器 336
5.1.8 安裝證書 337
5.2 監控 338
5.2.1 指標 340
5.2.2 日志 344
5.2.3 查詢管理 346
5.2.4 因果集群監控相關方法 348
5.3 安全管理 350
5.3.1 Neo4j社區版用戶管理 350
5.3.2 認證和授權 352
5.3.3 與 LDAP 集成 362
5.3.4 子圖訪問控制 366
5.3.5 安全清單 367
5.4 Neo4j 數據庫運維與優化 368
5.4.1 內存調優 368
5.4.2 事務日志 371
5.4.3 壓縮存儲 371
5.4.4 Linux 文件系統調優 373
5.4.5 磁盤、內存及相關提示 373
5.5 Neo4j 數據庫的備份與恢復 374
5.5.1 備份簡介 374
5.5.2 執行備份 375
5.5.3 恢復備份 377
5.6 Neo4j 數據庫管理相關工具 378
5.6.1 導入工具 378
5.6.2 Cypher Shell 382
5.6.3 Neo4j 數據轉儲和加載 384
5.6.4 一致性檢查工具 385

第6章 Neo4j 集群技術 387
6.1 因果集群 387
6.1.1 初識因果集群 388
6.1.2 操作視圖 388
6.1.3 應用視圖 389
6.1.4 因果集群的生命周期 390
6.1.5 創建一個新的因果集群 395
6.1.6 數據中心災難恢復 398
6.1.7 因果集群的數據遷移和恢復 400
6.1.8 因果集群的其他設置 401
6.2 高可用性集群 401
6.2.1 高可用性集群概述 402
6.2.2 建立 Neo4j 高可用性集群 404
6.2.3 狀態信息端點 406
6.2.4 HAProxy 用於負載均衡 408
6.3 集群的備份與恢復 410
6.4 Neo4j 單實例和高可用性集群版本升級 411
6.4.1 單實例升級 411
6.4.2 從高可用性集群升級 412

第7章 Neo4j 應用案例 413
7.1 應用案例概述 413
7.2 欺詐檢測 416
7.2.1 第一方銀行欺詐 417
7.2.2 保險欺詐 424
7.2.3 電子商務欺詐 427
7.2.4 小結 428
7.3 科研導圖 428
7.4 電子郵件監測 437
7.5 工商企業圖譜 442
7.6 社交網絡 449

第8章 Neo4j 高級應用 458
8.1 高級索引 458
8.1.1 空間索引(Neo4j Spatial) 458
8.1.2 自定義中文全文索引 468
8.2 在 Docker 環境下部署 Neo4j 471
8.2.1 概覽 472
8.2.2 Docker 配置 472
8.2.3 Neo4j 配置 473
8.3 自定義批量導入 476
8.4 Neo4j 與圖計算 479
8.4.1 Neo4j-Spark-Connector 480
8.4.2 Neo4j-Spark-Connector 提供的 API 482
8.5 Neo4j與自然語言處理 483
8.5.1 計算聚合相關性 484
8.5.2 將文本數據建模為鄰接圖 484
8.5.3 加載數據 486
8.5.4 挖掘單詞之間的關系 488
8.6 其他高級應用 490

第9章 Neo4j 簡體中文版 491
9.1 簡介 491
9.2 下載及安裝 496
9.3 啟動及瀏覽 497
9.4 指定節點圖片 499
9.5 指定節點尺寸 501
9.6 指定節點顏色 502
9.7 指定關系粗細 503
9.8 指定關系顏色 504
9.9 智能查詢 505
9.10 導入精靈 508
9.10.1 安裝導入精靈 508
9.10.2 啟動導入精靈 509
9.10.3 准備Excel樣本文件 510
9.10.4 導入Excel樣本文件 511
9.10.5 准備MySQL樣本數據庫 513
9.10.6 導入 MySQL 樣本數據庫 515
9.10.7 查看導入結果 516
9.10.8 導入精靈映射機制 517

附錄A Neo4j 配置設置 521
附錄B Neo4j 內建過程 550
網路書店 類別 折扣 價格
  1. 新書
    75
    $446