主要内容

添加和查询组的同事在社会社区

这个例子展示了如何添加一个组的同事,存储为一个有向图,一群朋友在社交社区,存储节点和关系在Neo4j®数据库。然后的例子展示了如何查询数据库中的图像通过使用数码®的查询语言,它使您能够创建自定义查询。

Neo4j MATLAB®的详细信息界面,看到的图形数据库的工作流Neo4j数据库接口

假设你有图Neo4j数据库中存储的数据代表社会社区。该数据库有7个节点和8个关系。每个节点只有一个惟一的属性键的名字从与一个值User1通过User7。每个关系的类型知道

本地计算机主机Neo4j数据库的端口号7474年、用户名neo4j和密码matlab。这个图提供了一个可视化表示的数据在数据库中。

连接到Neo4j数据库

创建一个Neo4j连接对象neo4jconn使用URLhttp://localhost: 7474 / db /数据、用户名neo4j和密码matlab

url =“http://localhost: 7474 / db /数据”;用户名=“neo4j”;密码=matlab的;neo4jconn = neo4j (url、用户名、密码);

检查消息Neo4j连接对象的属性neo4jconn。空白的消息属性表示连接成功。

neo4jconn.Message
ans = []

建立有向图

定义一组4个同事在MATLAB通过创建一个有向图。创建一个有向图对象有四个节点和三条边。

s = (1 1 1);t = (2 3 4);G =有向图(s, t);

指定节点的名称。

G.Nodes.name = {“User8”;“User9”;“User10”;“User11”};

有向图来查看节点和边的阴谋。

情节(G)

Neo4j数据库中存储有向图

商店Neo4j图的有向图。指定两个标签中的所有节点生成Neo4j图使用GlobalNodeLabel名称-值对的论点。同时,指定类型适用于所有关系的结果Neo4j图使用GlobalRelationType名称-值对的论点。

graphinfo = storeDigraph (neo4jconn G,“GlobalNodeLabel”,{“同事”,“人”},“GlobalRelationType”,“与”);

显示第一个节点的节点标签的图。

graphinfo.Nodes.NodeLabels {1}
ans =2×1单元阵列{'人'}{'同事'}

结果是一个单元阵列的特征向量。每个字符向量是第一个节点的节点标签。

图中显示的关系。

graphinfo.Relations
ans =3×5表StartNodeID RelationType EndNodeID RelationData RelationObject ___________ _______ _____ _______ _______________________________________ 20 31”与“8 [1×1 struct] [1 x1 database.neo4j.http。Neo4jRelation) 23日31日”与“32 [1×1 struct] [1 x1 database.neo4j.http。Neo4jRelation] 24 31 'works with' 33 [1×1 struct] [1x1 database.neo4j.http.Neo4jRelation]

关系是一个表,其中包含这些变量:

  • 开始节点标识符

  • 关系类型

  • 结束节点标识符

  • 关系数据

  • Neo4jRelation对象

在现有的图形连接组的同事朋友

搜索节点与节点的标签和属性键的名字设置的值User7User8通过使用Neo4j数据库连接。

nlabel =“人”;user7 = searchNode (neo4jconn nlabel,“PropertyKey”,“名字”,“PropertyValue”,“User7”);user8 = searchNode (neo4jconn nlabel,“PropertyKey”,“名字”,“PropertyValue”,“User8”);

添加一个节点之间的关系User7User8连接组同事的朋友。

relationtype =“知道”;关系= createRelation (neo4jconn user7、user8 relationtype);

Neo4j数据库中生成的图形显示。

Neo4j数据库上执行密码查询

创建一个密码查询与人找到工作的人User7知道。显示这些人的名字。

查询= [匹配(:人{名称:“User7”})——(知道):- >(人)-[:”与“]””——> (potentialContact:人)返回potentialContact.name '];结果= executeCypher (neo4jconn、查询)
结果=3×1表potentialContact_name _____________________‘User11’‘User10’‘User9’

User9,User10,User11所有的人一起工作User7知道。User7知道User8工作与User9,User10,User11

关闭数据库连接

关上(neo4jconn)

另请参阅

|

相关的话题

外部网站