新書推薦:
《
津巴多时间心理学:挣脱束缚、改写命运的6种时间观
》
售價:HK$
77.3
《
大英博物馆东南亚简史
》
售價:HK$
177.0
《
纯粹·我只要少许
》
售價:HK$
80.6
《
投机苦旅:一位投机客的凤凰涅槃
》
售價:HK$
88.5
《
重返马赛渔场:社会规范与私人治理的局限
》
售價:HK$
69.4
《
日子慢慢向前,事事慢慢如愿
》
售價:HK$
55.8
《
场景供应链金融:将风口变成蓝海
》
售價:HK$
111.8
《
汗青堂丛书146·布鲁克王朝:一个英国家族在东南亚的百年统治
》
售價:HK$
91.8
|
內容簡介: |
本书以实例为依托,详细地对实例做建模分析,并给出经过测试的源代码,读者可以按照书的介绍一步一步地实现每一个实例,这是一种学习建模和编程的极为便捷的方法。本书也是一本对使用Neo4j对图形数据进行设计、建模和查询的综合指导书。书中探索了处理和查询图形数据的各种工具及其强大功能,包括图形遍历的概念及其使用方法,也讨论了Neo4j的图形查询语言Cypher和如何使用SpringDataNeo4j将Neo4j集成到应用程序中,以及如何使用服务器模式和嵌入式模式等内容。
|
關於作者: |
作?者?简?介?About the AuthorAleksa Vukotic之前在Open Credo担任数据管理实践领导者,现任Noble Group的开发平台部主管。他是一个软件架构师和开发者、敏捷编程的倡导者、作者和培训师,并且是许多Neo4j项目的开发者,如用图形数据模型解决复杂的访问控制列表和推荐引擎问题。 Nicki Watt是Open Credo的首席顾问。她务实、心灵手巧,是一个问题解决专家,乐于使用“正确的工具完成工作”。Nicki一直使用Neo4j等开源工具以及框架参与各种项目,包括对基于引擎问题的探究和推荐。她也是Spring Data Neo4j项目的贡献者之一。 Tareq Abedrabbo是Open Credo的首席技术官(CTO)。他对编程语言有着强烈的兴趣,从Scala和Python到Google Go。他在几个NoSQL技术领域(包括Neo4j、MongoDB和Redis)有着非常丰富的知识,并在很早以前就开始积极从事Spring项目,是Spring Web Service项目的核心成员。 Dominic Fox是Open Credo的顾问,尤其喜欢把对编程语言理论的见解进行实践并讲解给他人。他作为专业开发者涉足了多种领域的工作,包括文档管理、电信和金融,也包括Neo4j的培训。他一直期望创建优秀的工具和库,能使每天的编程工作更加直观、可靠。 Jonas Partner是Open Credo的首席执行官(CEO),该公司是Neo Technology的服务合作伙伴,是解决复杂数据问题的专业公司。他还是《Spring Integration in Action》的合作作者。
|
目錄:
|
Contents?目录译者序序 言前 言作者简介第一部分 Neo4j概述第1章Neo4j数据库的一个应用案例 31.1为什么要有Neo4j 41.2关系数据库中的图形数据 41.3Neo4j中的图形数据 81.4大数据下的SQL联接操作与Neo4j图形遍历的对比 101.5图形 131.6Neo4j在NoSQL领域的地位 131.6.1主键值存储 141.6.2列族存储 141.6.3面向文档的数据库 151.6.4图形数据库 151.6.5与NoSQL类数据库的比较 151.7Neo4j具有与ACID兼容的数据格式 161.8本章小结 17第2章Neo4j的数据模型 182.1Neo4j中数据模型的类型 182.1.1图表建模的一个简单实例 192.1.2图表建模的一个复杂实例 202.2领域建模 222.3更多实例 262.3.1地铁车站实例 262.3.2乐队成员实例 272.4本章小结 29第3章Neo4j开发入门 303.1图形数据结构建模 303.2使用Neo4j API 343.2.1创建节点 343.2.2创建关系 363.2.3为节点添加属性 383.2.4节点类型策略 403.2.5为关系添加属性 413.3节点标签 433.4本章小结 46第4章强大的图形遍历功能 474.1使用Neo4j核心Java API进行遍历 474.1.1寻找起始节点 484.1.2遍历直接关系 494.1.3遍历深度为2的关系 514.1.4内存使用注意事项 534.2使用Neo4j的遍历API进行遍历 554.2.1使用Neo4j的内置遍历结构 554.2.2实现一个自定义评估函数 564.3本章小结 59第5章数据索引 605.1创建索引项 605.2通过邮箱地址查找用户 625.3对多个匹配结果的处理 645.4对索引过的数据进行修改的处理 655.5自动索引 665.5.1模式索引 665.5.2自动索引 695.6索引的成本效益权衡 705.6.1索引查询的性能优势 715.6.2当更新和插入数据时索引对性能的影响 725.6.3索引的存储 735.7本章小结 73第二部分 Neo4j应用开发第6章Neo4j的查询语言Cypher 776.1Cypher简介 776.1.1Cypher入门 786.1.2执行Cypher查询 796.2Cypher的基本句法 856.2.1模式匹配 856.2.2查找起始节点 896.2.3过滤数据 926.2.4获得结果 936.3用Cypher更新图形数据 966.3.1创建新图形实体 976.3.2删除数据 996.3.3更新节点和关系属性 996.4高级Cypher 1006.4.1聚合 1006.4.2函数 1016.4.3with语句的管道功能 1036.4.4Cypher的兼容性 1046.5本章小结 104第7章事务 1057.1事务的基础知识 1057.1.1添加事务 1077.1.2打好基础,循序渐进 1087.2事务的高级功能 1097.2.1事务的语义 1097.2.2事务中的读取与显式读锁 1117.2.3事务中的写入与显式写锁 1127.2.4无效锁的危害 1147.3与其他事务管理系统的集成 1147.4事务事件 1167.5本章小结 117第8章深度遍历 1188.1遍历的顺序 1188.1.1深度优先 1198.1.2广度优先 1218.1.3深度优先与广度优先顺序的比较 1228.2扩展关系 1248.2.1标准扩展器 1248.2.2用于扩展的顺序关系 1268.2.3自定义扩展器 1278.3管理唯一性 1308.3.1NODE_GLOBAL唯一性 1308.3.2NODE_PATH唯一性 1328.3.3其他唯一性类型 1338.4双向遍历 1348.5本章小结 137第9章Spring Data Neo4j 1389.1SDN适合做什么 1389.1.1什么是Spring以及Spring与SDN是怎样关联的 1409.1.2SDN适合做什么(及不适合做什么) 1409.1.3从哪里获得SDN 1419.1.4从哪里获得更多的信息 1419.2用SDN建模 1419.2.1原始POJO域建模 1429.2.2注释域模型 1449.2.3建模节点实体 1459.2.4建模关系实体 1489.2.5建模节点实体之间的关系 1509.3访问和持久化实体 1529.3.1支持Spring的配置 1529.3.2Neo4jTemplate类 1539.3.3资源库 1549.3.4其他选项 1579.4对象图形映射选项 1589.4.1简单映射 1589.4.2基于AspectJ的高级映射 1619.4.3对象映射总结 1649.5执行查询和遍历 1649.5.1注释查询 1649.5.2动态派生查询 1669.5.3遍历 1689.6本章小结 168第三部分 Neo4j应用实例第10章Neo4j的嵌入式模式与服务器模式 17110.1使用模式概述 17110.2嵌入式模式 17310.2.1核心Java集成 17310.2.2其他基于JVM的集成 17610.3服务器模式 17710.3.1Neo4j服务器概述 17810.3.2使用细粒度Neo4j服务器模式的REST API 17910.3.3使用Cypher Neo4j服务器模式REST API端点 18110.3.4使用远程客户端库帮助访问Neo4j服务器 18210.3.5服务器插件和非托管扩展 18410.4权衡选项 18410.4.1对架构的考虑 18510.4.2对性能的考虑 18710.4.3其他需要考虑的事项 19010.5充分利用服务器模式 19010.5.1避免细粒度操作 19110.5.2使用Cypher 19210.5.3服务器插件 19410.5.4非托管扩展 19610.5.5流REST API 19810.6本章小结 199第11章Neo4j的架构与应用 20011.1高层Neo4j架构 20011.1.1设置场景 20211.1.2硬盘 20211.1.3存储文件 20311.1.4Neo4j缓存 20511.1.5事务日志及可恢复性 21011.1.6编程API 21111.2Neo4j的高可用性 21211.2.1Neo4j集群概述 21311.2.2设置Neo4j集群 21611.2.3复制——读和写的策略 21811.2.4缓存分区 22211.2.5HA小结 22411.3备份 22511.3.1离线备份 22511.3.2在线备份 22711.3.3从备份中还原数据 22911.4本书可能没有涵盖但你可能会关注的问题 22911.4.1安全 22911.4.2监控 22911.5本章小结 23011.6最后的设想 230附录A安装Neo4j服务器 231附录B设置和运行示例程序 236附录C设置使用SDN的项目环境 241附录D获得更多的帮助 247
|
|