《图数据库(第2版)》——1.3 图数据库的威力

1.3 图数据库的威力

虽然事实上我们可以将任何东西都建模成图,但我们生活在一个很现实的世界里,它充满了预算限制、项目限期、企业标准,还有商业化的技术选型。图数据库提供了强大而新颖的数据建模方法,但仅凭它自己,是不足以成为替换那些已经享有盛誉并被用户充分认识的数据平台的理由的。必须要有一个直接而明显的好处,人们才会使用它。对于图数据库来说,这个动机可以用一系列用例和数据模式来说明:采用图的方案,性能可以提升一个甚至几个数量级,而且比起聚合的批处理,其延迟也小很多。除了性能的优势之外,图数据库还提供极其灵活的数据模型,这也和当今敏捷软件交付实践推崇的交付模式相一致。

1.3.1 性能

其中一个充分的理由就是,与关系型数据库和NoSQL存储处理关联数据相比,选择图数据库会有绝对的性能提升。随着数据集的不断增大,关系型数据库处理密集join(join-intensive)查询的性能也会随之变差,而图数据库则不然。在数据集增大时,它的性能趋向于保持不变,这是因为查询总是只与图的一部分相关。因此,每个查询的执行时间只和满足查询条件的那部分遍历的图的大小(而不是整个图的大小)成正比。

1.3.2 灵活性

作为开发者和数据架构师,我们希望根据问题域来决定如何连接数据。这样我们就不需要在对数据的真实模样和复杂度了解最少的时候,被迫预先做出决定。随着我们对问题域了解的加深,结构和模式(schema)会自己浮现出来。图数据库正中我们下怀。正如在第3章中将要展示的,图数据模型表示和适应业务需求的方式,使得IT部门终于可以跟得上业务的变化速度。

图天生就是可扩展的,这意味着我们可以对已经存在的结构添加不同种类的新联系、新节点、新标签和新子图,而不用担心破坏已有的查询或应用程序的功能。这些特点对于开发者的生产力和项目风险一般都有积极的意义。同时由于图模型的灵活性,我们不必在项目最初就穷思竭虑地把领域中的每一个细枝末节都考虑到模型中——这种做法在不断变化的业务需求面前,简直就是蛮干。图的天然可扩展性也意味着我们会做更少的数据迁移,从而降低维护开销和风险。

1.3.3 敏捷性

通过使用与当今增量和迭代的软件交付实践相吻合的技术,我们希望能够就像改进应用程序的其他部分一样改进我们的数据模型。现代图数据库可以让我们使用平滑的开发方式,配以优雅的系统维护。尤其是图数据库天生不需要模式,再加上其API和查询语言的可测性,使我们可以用一个可控的方式来开发应用程序。

同时,正是因为图数据库不需要模式,所以它缺少以模式为导向的数据管理机制,即在关系世界中我们已经熟知的机制。但这并不是一个风险,相反,它促使我们采用了一种更可见的、可操作的管理方式。正如第4章中会讲到的,图数据库的管理通常作用于编程方式,利用测试来驱动数据模型和查询,以及依靠图来断言业务规则。这不再是一个有争议的做法,事实上这已经比关系型开发应用更广了。图数据库开发方式非常符合当今的敏捷软件开发和测试驱动软件开发实践,这使得以图数据库为后端的应用程序可以跟上不断变化的业务环境。

时间: 2024-10-26 09:07:25

《图数据库(第2版)》——1.3 图数据库的威力的相关文章

jQuery谷歌地图插件Maplace(图中附送如何攻击开源中国数据库)

jQuery谷歌地图插件Maplace 图中附送如何攻击开源中国数据库..   var P1 = [ { lat: 45.468945, lon: 45.73684365, title: 'Title', html: 'Content', zoom: 10, animation: google.maps.Animation.DROP } ]; var LocsA = [ { lat: 45.9, lon: 10.9, title: 'Title A1', html: '<h3>Content

美图贴贴Android版2.0上线首推文字功能

一.全新美图贴贴icon 与界面风格一致 从1.2.0版本美图贴贴界面全新改版以来,深粉+浅粉的渐变背景和蕾丝元素让界面更显甜美,也深受用户的喜爱.此次2.0版推出了全新的icon,色彩和形式与新界面保持一致,要将甜美萌范儿进行到底哦! 图1 二.新增文字功能 打造可爱贴图日志 除了两大素材上线,2.0版最重要的更新内容就是推出"文字"功能,让一直以素材为主要美化功能的美图贴贴也可以自定义文字了.用户们可以自由添加心情文字,支持颜色和字体的轻松调节也能打造独特个性的贴图日志哦! 图2

数据库精华知识点总结(1)—数据库的三层模式和二级映像,E-R(实体联系图)图,关系模型

Data base: 长期存储在计算机内,有组织的,可共享的大量数据集合.基本特征:永久存储,可共享,有一定的物理和逻辑结构. Data base manage system(DBMS):用户和os之间的一层数据管理软件. 1.提供数据操纵语言DML对数据库增删改查 2.数据库的建立和维护 3.提供数据控制功能:在数据库建立,运行和维护时,DBMS管理数据的安全性,完整性,并发控制和故障的系统恢复,(也就是数据库的事务管理和运行管理) 4.与其它软件系统通信 Data base system(D

不断变化下的阿里云:2017阿里云产品和解决方案全向图(5月版)

虽距离上一张新春版全向图仅隔四个月,但这四个月,阿里云发生了很多变化. 技术层面: 阿里巴巴开辟科技主航道:启动一项代号"NASA"的计划,面向未来20年组建强大的独立研发部门,建立新的机制体制,为服务20亿人的新经济体储备核心科技. 中国首个光量子计算机诞生 中科院.阿里巴巴共同研发:世界上第一台超越早期经典计算机的光量子计算机在中国诞生!该光量子计算机是由中科大.中国科学院-阿里巴巴量子计算实验室.浙江大学.中科院物理所等协同完成参与研发的,是货真价实的"中国造"

highcharts如何从SQL Server数据库读取数据生成饼状图

问题描述 highcharts如何从SQL Server数据库读取数据生成饼状图 highcharts如何从SQL Server数据库读取数据生成饼状图 解决方案 这个也是我想关注的问题

sql server-如图 大家觉得会有几个表 数据库

问题描述 如图 大家觉得会有几个表 数据库 解决方案 个人信息,基本信息,联系方式,研究方向成果奖励.这都各自一个表 解决方案二: 解决方案三: 建表的时候写外键好吗?

如何用struts2把数据库中的数据以折线图的形式展现在jsp文件中

问题描述 如何用struts2把数据库中的数据以折线图的形式展现在jsp文件中 怎么把数据库中的数据以这种形式展示在jsp文件中啊 不要导出为图片 (类似于右图) 急求!!!谢谢大师们指点(http://img.ask.csdn.net/upload/201505/10/1431226115_964866.png) 解决方案 可以用图表插件如amchart.js(收费)或者hightcharts.js(开源的),倾向后者.struts2传递数据给页面,再在页面上用图表插件展示即可. 附上教程:h

C#中的代码,提示说无法连接到数据库,为什么?就是下面的图这样

问题描述 C#中的代码,提示说无法连接到数据库,为什么?就是下面的图这样 解决方案 c#连接数据库代码C#连接MYSQLSQEVE数据库示例代码 解决方案二: 应该是Sqlserver的服务没有开吧 解决方案三: 使用用户名和密码登陆数据库,看看能不能登陆进去 解决方案四: SQL服务检查下开了没--,用户名,密码是不是对的,还有验证模式,TCP协议, 解决方案五: 你的sqlServer不允许远程连接,,, 解决方案六: 用管理员身份自动 vs . 解决方案七: 用管理员身份启动 vs . 解

网站搬迁,当用phpmyadmin导入数据库的时候,出现如图错误,求助

问题描述 网站搬迁,当用phpmyadmin导入数据库的时候,出现如图错误,求助 网站搬迁,当用phpmyadmin导入数据库的时候,出现如图错误,求助

最新1.4版《看图猜成语》新图片彩色画答案

彩色画1看图猜成语>于7月27日进行了1.4版本的更新,把图片扩充到了700道,并对之前一些画的不好的图片进行了修改,本篇小编整理的是700道新图片中彩色画部分,想查看所有答案的 网友请点击下方链接:最新1.4版<看图猜成语>新图片700道答案全彩色画::轰轰烈烈:对牛弹琴:百步穿杨:虎头蛇尾:山高水长:抱薪救火:过河拆桥:山盟海誓:明镜高悬:面不改色:嫦娥奔月:老马识途:水中捞月:七上八下:趁火打劫:苦口婆心:瓜田李下:鸡飞狗跳:火冒三丈:狡兔三窟:杀鸡取卵:落井下石:马首是瞻:灯红酒