内容简介
世界上的大部分领域实际上都可以建模成图,而软件开发人员或是数据库管理人员却在辛辛苦苦地将这些图转化成关系型数据库中的表。想象一下,假如你再也不用去做这样的转化,假如数据库的迁移可以变得轻松简单,你愿意去接受一个全新的数据库吗?图数据库就是这样一个完全不同于关系型数据库的新型数据库,它处理的是大规模的数据和不断变化的需求,并且拥抱它们。 《图数据库》系统地介绍了图数据库的历史由来、建模方法、工作原理和一些真实的用户用例,详细地说明了图数据解决的是什么样的问题,并以Neon4j数据库和Cypher查询语言为例,阐述了图数据库的建模方法和领域用例,最后还介绍了图数据库的工作原理以及一些实用的图论算法。 《图数据库》的三位作者均为Neo4j Technology公司的技术高手,分别为工程师、CTO和CEO。他们对图数据库及其解决方案有丰富的经验,其中一位甚至还是Neo4j图数据库的共同创始人。 《图数据库》适合开发人员和数据库管理人员了解和学习图数据库,作为一门新的知识和独特的数据库领域来拓宽视野。也适合提供解决方案的负责人来了解行业动向和新的解决问题的方式。通过阅读本书,读者可以对图数据库这一领域有一个透彻的了解。
作者简介
Ian Robinson,致力于研发Neo4j图数据库的未来版本,他曾任Neo Technology的客户成功总监,和客户并肩设计和开发图数据库解决方案。他是《REST实战》(O'Reilly)一书的共同作者,还是《REST: From Research to Practice》(Springer)和《Service Design Patterns》(Addison-Wesley)的撰稿人。他的博客是http://iansrobinson.com,推特账号是@iansrobinson。
Jim Webber博士,是Neo Technology的首席科学家,他研究最新的图数据库并开发开源软件。在这之前,Jim研究像Web这样大规模的图来建造分布式系统,这也使得他成为《REST实战》(O'Reilly)的作者之一。Jim在开发社区很活跃,定期出现在世界各地。他的博客是http://jimwebber.org,常用的推特账号是@jimwebber。
Emil Eifrem,在2000年去孟买的飞机上勾画出了属性图模型的框架。现在他是Neo Technology的CEO,同时也是Neo4j项目的共同创始人,专注于建设和传播图数据库。致力于可持续开源软件,Emil指引Neo在提供免费软件和商业效益之间走向平衡。他想用图拯救世界,还想在十年内拥有拉里·埃里森那样的游艇。Emil的推特是@emileifrem。
刘璐,软件开发工程师,就职于ThoughtWorks,专注于软件开发领域,对数据存储领域有浓厚兴趣。
梁越,前端工程师,就职于ThoughtWorks,对前后端开发都有涉猎,有在大型项目中应用图数据库的开发经验。
内页插图
目录
第1章简介1.1图是什么1.2图领域概览1.2.1图数据库1.2.2图计算引擎1.3图数据库的威力1.3.1性能1.3.2灵活性1.3.3敏捷性1.4小结
第2章关联数据的存储选择2.1关系型数据库缺少联系2.2NoSQL数据库也缺少联系2.3图数据库拥抱联系2.4小结
第3章使用图进行数据建模3.1模型和目标3.2属性图模型3.3查询图:Cypher简介3.3.1Cypher的理念3.3.2START3.3.3MATCH3.3.4RETURN3.3.5其他Cypher语句3.4关系建模和图建模对比3.4.1系统管理领域中的关系建模3.4.2系统管理领域中的图建模3.4.3测试模型3.5跨域模型3.5.1创建莎士比亚图3.5.2开始查询3.5.3声明查找的信息模式3.5.4约束匹配3.5.5处理结果3.5.6查询链3.6建模时常见的陷阱3.6.1电子邮件起源问题域3.6.2敏感的第一个迭代3.6.3第二次的魅力3.6.4发展中的领域3.7避免反模式3.8小结
第4章构建基于图数据库的应用4.1数据建模4.1.1用应用程序所需的术语描述模型4.1.2用节点表示事物,用联系表示结构4.1.3细粒度联系与通用联系4.1.4将事实建模为节点4.1.5将复杂的值类型表示为节点4.1.6时间4.1.7迭代开发和增量开发4.2应用程序架构4.2.1嵌入式与服务器4.2.3集群4.2.4负载均衡4.3测试4.3.1数据模型的测试驱动开发4.3.2性能测试4.4容量规划4.4.1优化条件4.4.2性能4.4.3冗余4.4.4负载4.5小结
第5章现实世界中的图5.1为什么选择图5.2常见用例5.2.1社交5.2.2推荐5.2.3地理空间5.2.4主数据管理5.2.5网络和数据中心管理5.2.6授权和访问控制(通信)5.3实际示例5.3.1社交推荐(专业社交网络)5.3.2授权和访问控制5.3.3地理空间(物流)5.4小结
第6章图数据库的内部结构6.1原生图处理6.2原生图存储6.3用于编程的API6.3.1内核API6.3.2核心(或“Beans”)API6.3.3遍历API6.4非功能型特性6.4.1事务6.4.2可恢复性6.4.3可用性6.4.4可扩展性6.5小结
第7章使用图论预分析7.1深度优先搜索和广度优先搜索7.2使用Dijkstra算法寻找路径7.3A*算法7.4图论和预测建模7.4.1三元闭包7.4.2结构平衡7.5局部桥7.6小结附录NoSQL概览
前言/序言
图数据库 电子书 下载 mobi epub pdf txt