圖數據庫:理論與實踐

張晨,吳菁,周研

買這商品的人也買了...

商品描述

本書系統論述了圖數據庫的理論知識與行業應用實踐。本書分為理論篇和實踐篇,共15章。其中,理論篇包括第1~8章,由淺入深地介紹了圖數據庫的概念和底層技術原理,涵蓋主流圖數據庫的內核原理與架構設計、圖查詢語言、圖算法 、圖數據庫客戶端編程、圖數據庫服務端編程、圖可視化、圖數據庫選型等內容;實踐篇包括第9~15章,介紹了圖數據庫的行業應用案例,涵蓋知識圖譜、金融、泛政府、零售、製造業供應鏈管理、企業資產管理、生命科學等內容,通過這些案例,進一步啟發讀者深入思考和挖掘潛在的應用場景。針對行業案例,本書免費提供詳盡的源代碼,以便讀者動手實踐。本書適合數據庫應用開發人員、數據庫管理人員、數據科學家以及負責數據庫選型的技術專家閱讀,也適合高等院校數據庫專業的高年級本科生和研究生參考。

目錄大綱

目錄
理 論 篇
第1 章 初識圖數據庫 / 3
1.1 圖數據庫的發展背景 / 3
1.1.1 什麽是圖 / 5
1.1.2 理解圖的手段:圖分析 / 7
1.2 圖技術 / 10
1.2.1 圖計算引擎 / 10
1.2.2 圖數據庫 / 11
1.2.3 圖可視化 / 13
1.3 圖數據庫技術的優勢 / 15
1.4 圖數據庫的分類 / 22
1.5 圖數據庫的應用場景 / 25
1.6 圖數據庫與知識圖譜 / 32
1.7 圖技術的發展趨勢 / 32
1.8 本章小結 / 35

第2 章  主流圖數據庫的內核原理與架構設計 / 37
2.1  圖數據庫內核設計的關鍵目標 / 37
2.1.1 免索引鄰接 / 38
2.1.2 圖數據庫內核的分類 / 38
2.2  實現免索引鄰接的技術方案 / 40
2.2.1 使用數組結構存儲 / 40
2.2.2 使用鏈表結構存儲 / 41
2.2.3  使用LSM 樹或其他鍵值形式存儲 / 42
2.2.4 優化之路 / 44
2.3 Neo4j / 45
2.3.1 Neo4j 存儲結構 / 45
2.3.2 Neo4j 事務 / 47
2.3.3 Neo4j 集群 / 48
2.4 JanusGraph / 50
2.4.1 JanusGraph 存儲結構 / 50
2.4.2 JanusGraph 事務 / 53
2.4.3 JanusGraph 架構 / 53
2.5 Galaxybase / 54
2.5.1 Galaxybase 系統架構 / 55
2.5.2 Galaxybase 分佈式圖存儲 / 56
2.5.3 Galaxybase 分佈式圖計算 / 58
2.5.4 Galaxybase 高性能圖展示 / 61
2.6 本章小結 / 62

第3 章 圖查詢語言 / 63
3.1 圖查詢語言一覽 / 63
3.2 Cypher / 65
3.2.1 Cypher 簡介 / 65
3.2.2 Cypher 使用場景 / 66
3.2.3 Cypher 高級特性 / 75
3.3 本章小結 / 81

第4 章 圖算法 / 82
4.1 圖算法概述 / 82
4.2 尋路算法 / 83
4.2.1 數據準備 / 84
4.2.2 算法介紹 / 85
4.3 中心性算法 / 97
4.3.1 數據準備 / 97
4.3.2 算法介紹 / 98
4.4 社區檢測算法 / 110
4.4.1 數據準備 / 111
4.4.2 算法介紹 / 112
4.5 相似度算法 / 122
4.5.1 數據準備 / 123
4.5.2 算法介紹 / 124
4.6 圖模式匹配算法 / 132
4.6.1 環路匹配 / 133
4.6.2 路徑匹配 / 134
4.6.3 復雜子圖 / 136
4.7 圖嵌入算法 / 138
4.8 圖神經網絡算法 / 144
4.9 分佈式並行圖計算 / 153
4.9.1 分佈式圖計算框架 / 153
4.9.2 分佈式圖計算面臨的挑戰 / 155
4.10 圖算法的綜合應用 / 157
4.10.1 標準圖算法的應用 / 158
4.10.2 定製化圖算法的應用 / 161
4.11 本章小結 / 163
參考文獻 / 164

第5 章  圖數據庫客戶端編程 / 166
5.1 概述 / 167
5.2 驅動模式 / 168
5.2.1 Java / 169
5.2.2 Python / 175
5.2.3 Go / 180
5.3 RESTful API / 185
5.3.1 登錄 / 185
5.3.2 圖列表查詢 / 186
5.3.3 圖模型操作 / 187
5.3.4 點操作 / 192
5.3.5 邊操作 / 198
5.3.6 遍歷操作 / 201
5.3.7 執行Cypher 語句 / 203
5.4 本章小結 / 204

第6 章  圖數據庫服務端編程 / 205
6.1 概述 / 205
6.2  Galaxybase PAR API
簡介 / 207
6.3 PAR 的使用方法 / 208
6.4 PAR 的自定義函數 / 209
6.4.1 自定義非聚合函數 / 209
6.4.2 自定義聚合函數 / 210
6.5 PAR 的自定義過程 / 212
6.5.1 自定義本機過程示例 / 212
6.5.2 自定義集群過程示例 / 213
6.6 PAR 的自定義過程封裝 / 215
6.6.1 PARKit / 215
6.6.2 Traversal API / 222
6.7 PAR 管理接口 / 226
6.7.1 查詢 / 226
6.7.2 刪除 / 227
6.8 本章小結 / 228

第7 章 圖可視化 / 229
7.1  圖可視化在不同領域的應用 / 229
7.2 通用圖可視化工具 / 230
7.3 圖可視化框架 / 236
7.4  基於圖數據庫的可視化平臺 / 242
7.5  Galaxybase Studio 圖可視化平臺 / 243
7.5.1 創建圖項目 / 243
7.5.2 圖項目管理 / 250
7.5.3 數據源管理 / 252
7.5.4 圖可視化分析 / 253
7.5.5 用戶管理 / 273
7.5.6 圖挖掘 / 274
7.6 本章小結 / 275

第8 章 圖數據庫選型 / 276
8.1 圖數據庫的應用場景 / 276
8.1.1  圖分析需求:OLTP 還是OLAP / 276
8.1.2 圖數據特點 / 278
8.2 圖數據庫的存儲架構 / 280
8.3 圖數據庫的性能 / 280
8.3.1 導入性能 / 281
8.3.2 查詢性能 / 282
8.3.3 圖算法性能 / 283
8.3.4 正確性驗證 / 285
8.4 圖數據庫的功能 / 286
8.4.1 基礎圖數據庫功能 / 286
8.4.2 高階圖數據庫功能 / 289
8.4.3 可視化分析與查詢 / 290
8.5 圖數據庫選型基準測試 / 291
8.6  圖數據庫選型測試方案樣例 / 296
8.6.1 測試說明 / 296
8.6.2 測試用例 / 297
8.7 本章小結 / 320

實 踐 篇
第9 章 知識圖譜 / 323
9.1 背景 / 323
9.2 影視知識圖譜 / 324

第10 章 金融 / 333
10.1 信用卡申請反欺詐 / 333
10.2 小微信貸風控 / 339
10.3 反洗錢 / 346

第11 章 泛政府 / 353
11.1 社會治安 / 353
11.2 疫情防控 / 359
11.3 電力調度 / 362
11.4 武器設備管理 / 365

第12 章 零售 / 369
12.1 商品推薦 / 369
12.2 社交網絡營銷 / 376

第13 章  製造業供應鏈管理 / 382
13.1 供應鏈風險管理 / 382
13.2 物流管理 / 393

第14 章 企業資產管理 / 400
14.1 網絡安全 / 400
14.2 權限管理 / 404
14.3  設備資產管理之智能運維 / 409

第15 章 生命科學 / 414
15.1 農業育種 / 414
15.2 新藥研發 / 418