了解图形数据库_图形数据库neo4j

了解图形数据库_图形数据库neo4j企业架构师应该知道什么您在Google上获得的图表数据库的描述主要是学术性的。我看到很多关于图形数据库的描述,它们讨论了Königsberg的七座桥梁或互联网的发明者Berners-Lee。有理论和愿景很好,但对我来说,我仍然认为引导相关性很重要。为什么图形数据库对您很重要?想象一下存储在当地连锁餐厅的数据。如果您要跟踪,则将客户信息存储在一个数据库表中,将您提供的项目存储在另一个数据…

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全家桶1年46,售后保障稳定

企业架构师应该知道什么

您在Google上获得的图表数据库的描述主要是学术性的。我看到很多关于图形数据库的描述,它们讨论了Königsberg的七座桥梁或互联网的发明者Berners-Lee。有理论和愿景很好,但对我来说,我仍然认为引导相关性很重要。为什么图形数据库对您很重要?

RDBMS与图形

想象一下存储在当地连锁餐厅的数据。如果您要跟踪,则将客户信息存储在一个数据库表中,将您提供的项目存储在另一个数据库表中,以及您在第三个表中进行的销售。当我想了解我销售的产品,订购库存以及了解我最好的客户是谁时,这很好。但缺少的是结缔组织以及项目之间的连接以及数据库中的功能,这些功能可以让我充分利用它。

图形数据库存储相同类型的数据,但也能够存储事物之间的链接。约翰购买了很多百事可乐,杰克与瓦莱丽结婚,买了不同的饮料。我没有必要运行JOIN来了解我应该如何向每个客户推销产品。我可以看到数据中的关系,而无需做出假设并对其进行测试。

这个新的连接信息层为您做了很多。这不仅仅与买方意图有关,而且在许多用例中可能会有所帮助,它在机器学习或者您希望机器进行分析或推理时非常有用(参见下表)。

语义层的应用程序示例
存储语义信息 用例
所有权 苏珊拥有一辆本田。还有谁拥有本田? 买方意图
利益 史蒂夫对足球感兴趣。还有谁?
设计者 弗兰克劳埃德赖特设计了古根海姆。还有什么? 知识图
<分类> 古根海姆博物馆。什么是其他博物馆?
连接 通过端口,例如server1通过端口8080连接到server2。这是否超出预期? 网络/ IT运营
与….关联  基因与癌症有关。还有什么基因? 生命科学
还有很多

由于传统数据库是使用表而不是链接数据设计的,因此SQL将不再使用。这引发了类似SQL的语言(但对于链接数据集或图形数据结构),例如SparQL,Gremlin和Cypher等等。一个主要区别是您需要对链接数据采取行动的分析功能。如果我想找到最热门的时间在您的网站上购买某种产品,或者如果我想对某个项目的受欢迎程度进行排名,那么就会有一种新的语法。您需要学习连接数据的语言才能充分利用它。

你不能用RDBMS做到这一点吗?

是的,可以在传统的关系数据库管理系统(RDBMS)中创建这些链接。但是,要在传统数据库中执行这些任务,数据库管理员必须努力维护唯一键并重建与JOIN的关系。如果使用图形数据库,则主题及其关系(称为主题和谓词)都是已知的。没有必要重建连接。

如果你之前已经定义玛丽是佐伊的母亲,那么推断佐伊是玛丽的女儿是另一个例子。您不一定需要专门定义这两种关系,因为图形数据库对此很聪明。相比之下,关系数据库无法理解任何未定义的内容。因此,在查看兴趣,家庭和社区时,这种推理能力具有明显的价值。

警告:图形数据库有专长

与传统的RDBMS一样,图形数据库可以是事务性的也可以是分析性的。选择图形数据库时选择焦点。例如,流行的Neo4J专注于事务(OLTP)图数据库,而AnzoGraph是分析(OLAP)图数据库。当您第一次尝试使用图形数据库时,这似乎是一个微妙的区别。但是,您可能需要一个不同的引擎来运行涉及单个实体的快速查询(例如,Susan拥有什么车?)以及轮询整个数据库的分析查询。(例如苏珊等人支付的汽车的平均价格是多少?)。随着机器学习和人工智能的发展,图形OLAP数据库变得非常重要,因为许多机器学习算法本质上是图形算法,并且在图形OLAP数据库上运行比在RDBMS上运行它们更有效。

如果您想了解更多关于SparQL(W3C定义的图形数据库标准语言)的信息,请在线查看许多SparQL教程之一。有足够的机会尝试像AnzoGraph这样的图形数据库

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/223783.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)


相关推荐

  • 机器学习算法(15)之Xgboost算法

    机器学习算法(15)之Xgboost算法前言:前一篇文章对boosting的两个方法做了阐述,这篇文章将会是对前两篇文章的深化,谈的是一个更加优化了的boostIng算法,自从2014年9月份在Kaggle的希格斯玻色子机器学习大赛中夺魁以来,XGBoost与深度学习两个算法垄断了Kaggle大赛的大部分冠军。现在Kaggle大赛的情况基本是这样的,凡是非结构化数据相关,比如语音、图像,基本都是深度学习获胜,凡是结构化数据上…

  • 关于使用Axis2 webservice 处理Fault响应时抛org.apache.axis2.AxisFault的分析

    关于使用Axis2 webservice 处理Fault响应时抛org.apache.axis2.AxisFault的分析使用Axis2这个框架进行webservice协议通讯,期间出了个问题,我(CLIENT)请求后,当服务端返回符合协议的SOAP异常报文,例如<soap:fault>…我的程序直接

  • executescalar mysql_ExecuteScalar[通俗易懂]

    executescalar mysql_ExecuteScalar[通俗易懂]这两个答案和一点点思考使我想到了一个接近答案的东西。首先再澄清一下:该应用程序是用C#(2.0+)编写的,并使用ADO.NET与SQLServer2005进行通信。镜像设置是托管主体和镜像的两个W2k3服务器以及托管作为监视器的快速实例的第三个服务器。这样做的好处是,故障转移对于使用数据库的应用程序几乎是透明的,它将对某些连接引发错误,但从根本上讲一切都会很好地进行。是的,我们得到了奇怪的误报…

  • net MVC 3.0 1

    net MVC 3.0 1首先,我们为什么要用MVC呢,因为比起

  • BBSSDK 产品分析

    BBSSDK 产品分析

  • 让你彻底理解浅拷贝和深拷贝的区别是什么_怎么让文件无法拷贝

    让你彻底理解浅拷贝和深拷贝的区别是什么_怎么让文件无法拷贝在写js的时候经常会遇到复制对象,在复制对象的过程中往往会出现新对象改变原对象等等的一些问题,今天特意梳理一下,希望能帮助到遇到这些问题的开发人员。什么是浅拷贝,深拷贝以及和他们之间的区别赋值浅拷贝深拷贝在开始梳理之前先说一下值类型和引用类型:值类型(基本类型):字符串(string)、数值(number)、布尔值(boolean)、undefined、null;引用类型:对象(Object)、数组(Array)、函数(Function);1、什么是浅拷贝,深拷贝以及和他们之间的区别

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号