《Neo4j 3.x入门经典》已正式出版,各大网店均有售!_neo4j 3.x入门经典pdf xiazai_gobitan的博客-程序员宅基地

技术标签: 权威指南  图数据库  Neo4j  5. 大数据  入门经典  

《Neo4j 3.x入门经典》已正式出版,各大网店均有售!

 

大家好,由我参与翻译(第二译者)的《Neo4j 3.x入门经典》已拿到批号正式出版,在各大网店均有售!

京东链接:

https://item.jd.com/41497370796.html

天猫链接:

https://detail.tmall.com/item.htm?id=587002748115

本书是张帜老师主编的图数据库技术丛书的又一力作,由图数据库技术团队(庞国明、胡佳辉、苏亮、晏永年、于松林、李建潮)于2018年6月翻译完成交到出版社,经过了半年多的时间终于拿到国家新闻出版广电总局批复的ISBN号,现在正式与大家见面了。感谢清华大学出版社的夏毓彦编辑的辛勤付出,也感谢技术团队的家人,感谢你们的支持,谢谢!

 

《Neo4j 3.x入门经典》一书的原著名为《Learning Neo4j 3.x(Second Edition)》,作者:Jérôme Baton、Rik Van Bruggen。

 

本书从图论讲起,先后介绍了图论的概念及其用途,属性图、Neo4j4入门、数据模型,Cypher查询语言,APOC,Cypher扩展,查询性能优化、数据导入、Neo4j空间特性、安全认证、数据可视化、数据重构、集群、案例分析等。很多内容都是之前未曾介绍过的,如APOC、数据重构等,非常具有参考价值。详细参见下方图书目录。

 

第1章  图论和数据库 1

1.1  Neo4j 3.x简介和图的历史 1

1.2  图论的定义和用途 3

1.2.1  社会学研究 5

1.2.2  生物学研究 6

1.2.3  计算机科学 6

1.2.4  流量问题 7

1.2.5  路径问题 8

1.2.6  网页搜索 9

1.3  背景 10

1.3.1  导航数据库 11

1.3.2  关系数据库 13

1.3.3  NoSQL数据库 15

1.4  图数据库的属性图模型 18

1.4.1  节点标签 20

1.4.2  关系类型 20

1.5  使用图数据库的注意事项 20

1.5.1  为什么使用图数据库 20

1.5.2  什么时候不用图数据库以及用什么替代 22

1.6  问答 23

1.7  小结 23

第2章  Neo4j基础入门 25

2.1  Neo4j的关键概念和特点 25

2.1.1  从头开始创建图 25

2.1.2  基于事务的ACID数据库 26

2.1.3  可用于联机事务处理 27

2.1.4  扩展性能 28

2.1.5  声明式查询语言Cypher 28

2.2  Neo4j典型案例 29

2.2.1  复杂的连接密集型查询 29

2.2.2  路径查询 29

2.2.3  开源解决方案 29

2.3  特性 30

2.4  许可协议 31

2.5  安装Neo4j 32

2.5.1  在Windows系统上安装Neo4j 32

2.5.2  在Mac和Linux系统上安装Neo4j 35

2.6  在云平台使用Neo4j 37

2.7  沙盒模式 41

2.8  在Docker容器中使用Neo4j 47

2.8.1  安装Docker 48

2.8.2  准备文件 48

2.8.3  在Docker容器中运行Neo4j 48

2.9  问答 50

2.10  小结 51

第3章  Neo4j数据模型 52

3.1  四种基础数据结构 52

3.2  图数据库建模基础 53

3.2.1  ER图和关系模式 53

3.2.2  通过连接表引入复杂性 54

3.3  图模型—一个简单、高保真的现实模型 55

3.4  图建模—实践和陷阱 57

3.4.1  图建模实践 57

3.4.2  图数据库建模陷阱 61

3.5  问答 64

3.6  小结 65

第4章  Cypher入门 66

4.1  Cypher的语法 66

4.2  Cypher的关键特性 67

4.3  与数据很好地结合 68

4.3.1  创建数据 68

4.3.2  读取数据 69

4.3.3  更新数据 70

4.3.4  删除数据 71

4.4  Cypher的关键操作词 72

4.5  语法约定 73

4.6  高级知识 74

4.7  Cypher参考卡 78

4.8  openCypher工程 79

4.9  小结 79

第5章  过程—APOC 80

5.1  安装APOC 80

5.1.1  机器安装 81

5.1.2  Docker容器安装 81

5.2  检查APOC安装 81

5.3  函数和过程 82

5.4  习惯用法 82

5.4.1  来自朋友的建议 82

5.4.2  图概述 83

5.5  关键用法 85

5.5.1  安装 85

5.5.2  随机图生成器 85

5.5.3  网站排名 86

5.5.4  Cypher语句限时执行 86

5.5.5  节点集合连接 87

5.5.6  更多APOC 87

5.6  问答 88

5.7  小结 89

第6章  Cypher扩展 90

6.1  构建扩展工程 90

6.1.1  创建函数 91

6.1.2  创建过程 92

6.2  定制聚合器 95

6.3  非托管扩展 96

6.3.1  HTTP和JAX-RS refreshers 97

6.3.2  JSON响应流式化 98

6.4  小结 101

第7章  查询性能优化 102

7.1  Explain和Profile指令 102

7.1.1  查询计划 102

7.1.2  运算符 104

7.2  索引 105

7.2.1  强制使用索引 105

7.2.2  强制使用标签 105

7.3  经验法则 106

7.3.1  Explain所有查询 106

7.3.2  行 106

7.3.3  不要过度消耗资源 106

7.3.4  返回笛卡儿积级别的数据 106

7.3.5  简单 106

7.4  小结 107

第8章  Neo4j数据导入 108

8.1  导入CSV文件 108

8.2  导入JSON源 111

8.3  导入JDBC源 114

8.3.1  测试安装 114

8.3.2  导入所有系统数据 114

8.4  导入XML源 115

8.5  小结 116

第9章  空间 118

9.1  空间简介 118

9.1.1  回顾 118

9.1.2  无缺陷塔 119

9.1.3  什么是空间 119

9.2  Neo4j的空间特性 119

9.3  APOC的空间特性 120

9.4  地理编码 121

9.4.1  设置OSM为提供商 121

9.4.2  设置谷歌为提供商 121

9.5  Neo4j Spatial 122

9.5.1  在线示例 122

9.5.2  Neo4j Spatial特性 122

9.6  导入OpenStreetMap数据 124

9.7  大型OSM数据导入 126

9.7.1  简易方法 126

9.7.2  更直接的数据导入方法 127

9.8  查询卫生间 127

9.9  理解WKT和BBOX 128

9.10  删除所有地理数据 128

9.11  小结 129

第10章  安全认证 130

10.1  认证与授权 130

10.2  角色 131

10.3  用户管理 132

10.4  Neo4j连接到LDAP目录 132

10.5  使用LDAP配置Neo4j 135

10.6  问答 136

10.7  小结 136

第11章  Neo4j 可视化 137

11.1  可视化的重要作用 137

11.1.1  为什么图数据可视化很重要 137

11.1.2  直观地与数据进行交互 137

11.1.3  模式识别 138

11.1.4  发现重点 139

11.2  图数据可视化的基本原则 139

11.2.1  开源可视化组件库 140

11.2.2  将可视化组件库应用到项目中 143

11.2.3  可视化解决方案 144

11.2.4  问题和陷阱 148

11.2.5  Cytoscape实例 149

11.3  问答 152

11.4  小结 153

第12章  Neo4j数据重构 154

12.1  预备步骤 154

12.2  简单改变 154

12.2.1  重命名 154

12.2.2  添加数据 155

12.2.3  删除数据 156

12.3  重大改变 156

12.3.1  知道我们的模型 156

12.3.2  重构工具 157

12.3.3  属性变标签 157

12.3.4  属性变节点 157

12.3.5  相关节点变标签 158

12.3.6  合并节点 158

12.3.7  关系 159

12.4  结论 162

12.5  小结 162

第13章  集群 163

13.1  为什么需要Neo4j集群 163

13.2  Neo4j集群的概念 164

13.2.1  核心服务器 164

13.2.2  只读副本服务器 164

13.2.3  高吞吐量 164

13.2.4  数据冗余 165

13.2.5  高可用 165

13.2.6  Bolt协议 165

13.3  构建Neo4j集群 165

13.3.1  核心服务器 165

13.3.2  只读副本服务器 167

13.3.3  bolt+routing协议 168

13.4  在Neo4j集群中实现灾难恢复 169

13.5  小结 169

第14章  案例—推荐系统 170

14.1  推荐系统剖析 170

14.2  推荐系统的图模型应用 171

14.3  推荐系统查询示例 173

14.3.1  基于商品购买的推荐 173

14.3.2  基于品牌忠诚度的推荐 175

14.3.3  基于社交关系的推荐 176

14.3.4  组合推荐 176

14.4  推荐系统的业务变化 177

14.5  欺诈检测系统 178

14.6  访问控制系统 179

14.7  社交网络系统 179

14.8  问答 180

14.9  小结 181

第15章  案例—影响分析与模拟 182

15.1  影响分析系统解析 182

15.1.1  影响分析在业务流程管理中的应用 183

15.1.2  业务图建模 183

15.2  成本计算环境中的影响模拟 187

15.2.1  产品层次结构的图建模 187

15.2.2  产品层次结构图的应用 188

15.3  问答 192

15.4  小结 193

附录  应用技巧介绍 194

 

By the way:

[1] 图数据库技术丛书的第一本为:《Neo4j权威指南》,京东链接:https://item.jd.com/12241030.html

[2] 对图数据库与图计算感兴趣的,可关注"图数据库与图计算"公众号和加入同名QQ群(463749267).

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/gobitan/article/details/87859286

智能推荐

2019.1.22写了五个小时的《C Primer Plus》第七章编程练习答案_Miaplacidus的博客-程序员宅基地

下午本来说要陪一个同学回高中宣讲,但他的学校通知他延后,于是下午两点开始写第七章课后题……晚上17:26才调试完成……各位看出什么BUG一定要在下面留言啊7.12.1编写一个程序读取输入,读到#字符停止,然后报告读取空格数,换行符数目以及所有的其它字符数目。#include<stdio.h>int main(void){ char input; int space=0...

计算机函数公式left,Excel中如何使用Left函数?_含元东的博客-程序员宅基地

我们在学习Excel表格的时候,很多时候都会搜索一些Excel的教程;而我们搜索最多的就是关于Excel函数的运用教程,因为学会Excel函数的运用,将会提高我们表格制作的效率。大家应该还不知道Left函数怎么使用吧!那Left函数到底在Excel中如何使用呢?现在就随小编一起去学习一下Excel中使用Left函数的方法吧!方法如下:1、Left函数的语法结构是Left(text, num_cha...

2020 中国软件 100 强,腾讯第二、阿里第三,他第一!_Java笔记虾的博客-程序员宅基地

中国电子信息行业联合会为贯彻落实党中央、国务院“关于培育具有全球竞争力的世界一流企业、具有创新能力的排头兵企业、发展更多优质企业”的决策部署,进一步激发我国软件和信息技术服务企业的创新活...

POJ3974 Palindrome回文子串 hash+二分答案做法详解_zhwzzhhww的博客-程序员宅基地

                           POJ3974 Palindrome回文子串 hash+二分答案做法详解Time Limit: 15000MS Memory Limit: 65536KTotal Submissions: 10983 Accepted: 4179DescriptionAndy the smart computer science student was att...

spring应用手册-IOC(注解实现)-(32)[email protected]注解的excludeFilters属性_戴着假发的程序员的博客-程序员宅基地

戴着假发的程序员出品 抖音ID:戴着假发的程序员 欢迎关注@ComponentScan注解的excludeFilters属性 spring应用手册(第二部分) 我们已经知道ComponentScan的配置可以通知spring扫描拥有spring标准注解的类。这些标注大致是:@Component、@Controller、@Service、@Repository。我们也可通过exclude

window下node提示Error: Cannot find module "***"的解决办法_rznice的博客-程序员宅基地

window下node提示Error: Cannot find module "***"的解决办法

随便推点

ESP8266开发之旅 小程序之阿里云篇② “IOT菜鸟”小程序,源码分析,创作自己的小程序_阿里云 esp8266 微信小程序_单片机菜鸟哥的博客-程序员宅基地

文章目录1.前言2. 代码结构![在这里插入图片描述](https://img-blog.csdnimg.cn/20200503233343818.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2RwamNuMTk5MA==,size_16...

2345电脑管家_极限挑战:同时安装4大国产杀毒软件,我的电脑是最安全的?_weixin_39834281的博客-程序员宅基地

还没到国庆假期,老毛桃就提前给自己放了假,闲着就作妖,这不?现在就忙着卸载。人固有一秃,或秃于科研,或秃于卸载!说到作妖,是怎么一回事呢?此前不少网友私信让老毛桃挑战一下同时安装360和电脑管家。对此,为了满足大家如此“无理”的要求,老毛桃决定把难度升级,同时安装了4大国产杀毒软件!听起来很了不起的样子,“四大天王”围绕着老毛桃的电脑转,看似无比安全,其实不然,详细的作妖过程请接着往下看!首先,老...

大数据基础之SparkGraphX——Spark PageRank算法,包你能看懂_spark graphx page_Clozzz的博客-程序员宅基地

PageRank的概念  PageRank,网页排名, 是一种由根据网页之间相互的超链接计算的技术,而作为网页排名的要素之一, 它由Larry Page 和 Sergey Brin在20世纪90年代后期发明,并以拉里·佩吉(Larry Page)之姓来命名。  PageRank是Google专有的算法,用于衡量特定网页相对于搜索引擎索引中的其他网页而言的重要程度。PageRank算法计算每一个网页的PageRank值,然后根据这个值的大小对网页的重要性进行排序。该算法可以用于对网页进行排序,当然,也可以

图解AODV协议(demo)_aodv流程图_piyajee的博客-程序员宅基地

<br /> <!-- @page { margin: 2cm } P { margin-bottom: 0.21cm } --><br />图解AODV协议(demo)<br /> <br /> <br />本文的分析基于ns-2.33中的aodv协议源码<br /> <br />所参考的文献<br />AODV的中文RFC文档<br />aodv.cc文档注解<br /> <br />所使用的软件<br />openoffice<br />yEd<br

数据库与缓存怎样做同步最好_一笑而过者也的博客-程序员宅基地

前言: 在读取与写入缓存方面大家都是这么做的:判断是否有缓存数据,无数据的话从数据库加载,若查出数据不为null,则写入缓存,再把数据返回调用方。 但是这里有一个问题需要分析,缓存与数据库的同步,在更新完数据库后,是更新缓存还是删除缓存,还是先删缓存,再更新数据库。从理论上来说,设置过期时间是最终保持一致的解决方案。但是这不是最好的办法,在缓存有效...

在VMware上装Ubuntu版本linux系统_rong070402767的博客-程序员宅基地

在VMware上装Ubuntu版本linux系统点击新建点击经典下一步选择最后一个选项点下一步选择linux下面的框选Ubuntu点下一步虚拟机名字随便安装地址自己选点击下一步分配内存20G(一般书默认的不用选)选择第一个单个文件(以后处理简单)下一步点击完成点击编辑虚拟机设置点击cd/dvd选择使用sio镜像文件找你的下载好的Ubuntu文件下一...

推荐文章

热门文章

相关标签