标签: Neo4j
graph-algorithm
是否有一种方法可以使用GraphAlgoFactory for Java表示以下查询
START n=some_node, m=some_other_node
MATCH p = n-[*..10]->m
WHERE ALL (x in nodes(p) WHERE (x.title? =~ "regex"))
RETURN p;
我知道它实现了一些有用的图形算法,但我想要更具体的结果。
提前感谢。在遍历您的过程中,可能会遵循以下参数:查找路径-“从n到m”,深度
我正在尝试使用neo4j.properties文件中可用的“store_dir”属性来外部化嵌入的neo4j应该存储其文件的位置。但是,在使用newEmbeddedDatabaseBuiler时,您需要在实例化过程中指定db位置:
GraphDatabaseService graphDb = factory
.newEmbeddedDatabaseBuilder("data/graph.db")
.loadPropertiesFromFile("c
我刚开始研究在概念验证中使用NEO4J,所以这可能只是一个新手问题:
似乎我不能创建一个带有小数点的字符串属性。
我使用的是Neo4j 2.0.0-M03,密码是:
CREATE (n:Location { id: "102", geo_lat: "34.058349609375", geo_long: "-118.244186401367", lang: "en", title: "Los Angeles" } );
答复是:
==> Unrecognized option '1'
我刚刚安装了Neo4J,它运行良好。我正在寻找一个非常简单的教程(实际上很少有命令行),我将能够:
创建一些数据(至少2个节点和它们之间的一个关系)
查询查看最近创建的数据
更新此样本数据的属性
删除创建的数据;
示例代码可以是Cypher和/或Gremlin,以在web管理控制台的默认空数据库中运行
我在官方网站上查阅了很多文档、书籍和教程,它们看起来都很复杂:有些甚至驱使我创建Java应用程序(我甚至不使用Java)。就像SQL初学者一样,我想从最基本的界面管理面板测试最基本的数据库操作。不
标签: Neo4j
spring-data-neo4j
花了好几天的时间试图弄明白为什么这不起作用。我的模型是Player-[:与团队一起玩]->团队-[:参加比赛]->联盟。这种关系的几个实例如下所示
bob-[:PLAYED_WITH_TEAM]->falcons-[:CONTESTED_IN]->ABC League
alice-[:PLAYED_WITH_TEAM]->falcons-[:CONTESTED_IN]->ABC League
bob-[:PLAYED_WITH_TEAM]->falcons-[:CO
我在Linux上用at Begin命令启动了一个Neo4J shell脚本,创建了3500个关系,并以COMMIT结束:COMMIT出错,并说这不是一个有效的命令,我假设是因为;而承诺的结束。。。如何知道事务是否回滚或如何回滚?不完全理解您的问题begin/commit/rollback不需要尾随分号,但neo4j shell中使用的cypher语句需要。请参见以下transscript:
$ bin/neo4j-shell
Welcome to the Neo4j Shell! Enter '
标签: Neo4j
spring-dataspring-data-neo4jspring-data-restspring-data-graph
我已经改变了neo4j内核版本的依赖关系,但仍然存在这个问题。请向我建议如何摆脱这个问题。下面是我的pom、spring配置和错误控制台
pom中的依赖项:
<dependency>
<groupId>com.sun.jersey</groupId>
<artifactId>jersey-bundle</artifactId>
<version>
我有项图形数据库。每个项目都连接到多个属性,这些属性可以由多个项目共享。
我添加了一个search节点,该节点由几个属性定义
因此,我将(搜索节点)连接到多个(属性节点)连接到多个(项目节点)
现在,我想获得一个列表,其中列出了通过{x}属性或更多属性回答此搜索的项目。按匹配属性的数量排序
start se=node:node_auto_index(name = {name}), pr = node:node_auto_index(type="item_property")
MATCH p=(s
Neo4j文档说明,读取操作不需要在事务中
在下面的代码中
// graphDB and name variables defined somewhere.
graphDB.index().forNodex("indexKey").get("name", name);
api的“index”、“forNodes”甚至“get”函数都需要在事务中调用,据我所知,它们都以“assertentransaction();”行开头
索引的推荐用法是什么?他们应该被一个
事务始终存在?它总是需要一个读取事
正如问题所说。“第一”这个词很重要——可能有更多的关系符合相同的条件
真实世界用例:每个关系都有一个时间戳属性,我想找到在某个时间之前发生的第一个关系(例如“中午之前”)。例如:
-
以下是我所拥有的(假设我们知道head节点是什么):
这是查询列表中的第五个关系
您将看到Neo4j拒绝执行查询。如果您将0..更改为例如0..10,它将工作。继续往上跳10下,你会看到它越来越慢。防护装置通过100启动,尝试以下方法:
MATCH (x)-[r:next]->(y)
WHERE r.tim
neo4j是否本机支持节点属性的数据格式?例如url链接可点击、数字整数、浮点..、日期YYYY/MM/DD
或者我们需要通过编程将属性字符串转换为我们需要的任何格式?Neo4j中的属性值可以是Java基元类型float、double、int、boolean、byte、,字符串或两者的数组。不支持将日期对象作为属性值
有两种方法来处理天数:
将日期存储为自epoc以来的毫秒,在java中也称为new date.getTime
赞成:你可以做计算
优点:存储时间长,内存/光盘消耗少
缺点:当只看节
重新启动neo4j服务后出现以下错误:
Caused by: org.neo4j.kernel.impl.storemigration.StoreUpgrader$UnexpectedUpgradingStoreVersionException: 'neostore' has a store version number that we cannot upgrade from. Expected 'NeoStore v0.A.0' but file is version 'NeoStore v0
如果参数{LIMIT}具有数值,是否有方法仅设置限制
...
RETURN whatever
LIMIT {limit}
也许是这样(我知道,下一个代码示例不起作用)
谢谢 您应该通过构建动态查询在应用程序层中处理此逻辑
编辑:
这可以像下面的示例一样简单地完成(在php中,但在所有语言中都可以)
我已经这样做了,但我很乐意在一个查询中找到解决方案。无论如何,谢谢。我已经为你的应用层编辑了一个示例
...
RETURN whatever
if({limit}>0)
LIMIT {li
如何有效地构造表单的查询:
匹配(a)-[:Foo]->(b),其中(a)-[:Bar]->(c)和(a)-[:Bar]->(d)返回a
这是一个查询
[Foo]----(b)
(a)---|
[Bar]----(c)
|
[Bar]----(d)
但是,我希望有一个带有关系栏的可变数量的目标节点(不仅仅是c和d,还有任何节点列表)
另一种说法是:如果“a”与[c,d,…]节点列表具有条形关系,则返回“a”
目前,我手动将WHERE子句连接
假设我有以下数据模型:
(用户)-[r:HAS_PERMISSIONS]->(n)“r”的属性是布尔值中的权限,如view=true、create=true
我要查找对某个实体具有特定权限的所有用户,
它们作为查询参数传递
我天真地想要这样的东西:
MATCH(u:User)-[r:HAS_PERMISSIONS{PERMISSIONS}]->(n)返回u,
我知道这是不正确的,因为{permissions}只能用于CREATE语句
传递的权限参数是一个映射,类似于{view:true}
我现在
Neo4j 2.1.7的下图如下:
CREATE
(:Application {Name: "Test Application", Aliases: ["Test", "App", "TestProject"]}),
(:Application {Name: "Another Application", Aliases: ["A-App", "XYZ", "XYProject"]}),
(:Application {Name: "Database X", Aliases: ["DB-App",
假设我有一个包含许多关系类型的大型知识库,例如hasChild、livesIn、locatedIn、capitalOf、largestCityOf
与所有节点和其他类型的关系相比,capicalOf关系的数量相对较少(例如,100个)
我想通过以下查询获取他们国家最大城市的任何资本:
MATCH city-[:capitalOf]->country, city-[:largestCityOf]->country RETURN city
显然,明智的做法是以capitalOf类型为线
我想做的是,例如matchmatch(n{name:“Sovrum”})-[r:CHILDOF]->(child)返回n,child,但这只会给我直接相关的节点
相反,我想选择整个子树。
有什么好方法可以做到这一点,还是我遗漏了一些东西如何工作的关键点?使用可变长度路径很容易,你从根开始,告诉Cypher一直匹配CHILD_,直到它不再继续
请确保在查询中使用标签,以允许Neo4j(带索引)快速找到起点
您还可以指定与路径匹配的模式并返回该路径
MATCH path = (n:Node {na
我的neo4j数据库变得越来越复杂,我想执行查询,这样我就可以只通过一种关系看到我的数据集
我无法在neo4j控制台中优化输出,因此只能看到由一个关系绑定的节点,而不是“(用3个附加关系完成)”
我在其他人中尝试过这个问题,但运气不好:
MATCH (a)-[rel:ALL_RESOURCES]-()
WHERE rel = 'ALL_RESOURCES'
RETURN a
如果有人能提供任何帮助,我将不胜感激。您的条款不需要的地方;通过在MATCH子句中指定关系类型,您已经将查询限制为ALL
我有两张表,如下所述
表1:国家
c_id, int
c_name, varchar(20) (PK)
i_id, int
i_name, varchar(20)
i_country, int (FK)
此表中的样本记录为
c_id | c_name
1 | USA
2 | UK
3 | PK
i_id | i_name | i_country
1 | John | 1
2 | Graham | 2
3 | Ali | 3
表2:移民
c_id, int
c_name, varchar(
关于“PathExpender与RelationshipExpender”,我能找到的是:
这是否意味着RelationshipExpender不受欢迎
如果未弃用,它们之间的区别是什么?是的,RelationshipExpander已弃用
标签: Neo4j
profilingcypher
我想知道neo4j是如何执行路径查询的。例如,我有一个如下所示的路径查询:
match p=(n)-[r*1..10]->(m)
where
(
n.URI='http://yago-knowledge.org/resource/Jacob_T._Schwartz' OR
n.URI='http://yago-knowledge.org/resource/Anna_Karina'
) AND
filter(x IN r where type(x)=~'.*has
标签: Neo4j
labelcyphernodespy2neo
如何使用py2neo访问节点对象的标签?因此,如果我有一个节点(N:someLabel),我如何读取someLabel?在文档中找不到它,它不是node[“label”]在其他情况下,属性是通过类似字典的接口访问的。在这种情况下,是节点。标签返回一组标签。而在其他情况下,属性是通过类似字典的接口访问的。在这种情况下,是节点。标签返回一组标签。节点。标签()返回标签,但如所述,需要将SetView转换为列表
labels_SetView = node.labels()
labels_list =
我有一个树状结构的图(不,更多的是DAG,因为我可以有多个父节点),并且需要能够编写查询,从一个特定节点开始,向下返回一个平面列表中的所有结果
我已经将我的一个用例简化为这个简单的例子。在这里的ascii表示中,n是我的节点,我已经附加了它们的id。p是我的身份验证系统中的权限,但与问题相关的是,它标记了我需要向下递归以收集查询应返回的节点的位置
可以有多个与p相关的根节点
结果中应包含根,如下面的n3,以及子项
关系深度是无限的
图表:
n1
^ ^
/ \
n2 n
在升级产品之前,我正在测试neo4j 3,看起来这个密钥不再绑定http端点了:(添加到neo4j.conf)
你说得对,它已更改为:
dbms.unmanaged\u扩展\u类
例如:
dbms.unmanaged\u extension\u classes=com.graphaware.server=/graphaware
关于升级,有几个链接:
一般升级公告:
Neo4j变更日志:
升级说明和配置迁移器工具:我希望能找到从2.x到3.1的完整更改列表
org.neo4j.server.th
Neo4jJavadocs不包含类的继承层次结构
例如,实现的类没有在其Javadoc上给出,它的SuperInterface(如果有的话)也没有给出
我希望看到继承层次结构,就像我在JavaAPI中看到的那样——比如
我有什么遗漏吗
蒂亚
//----------------
编辑:
下面是一个有用的答案,下一个最好的方法是在eclipse上查找类型层次结构(?)我想这是有意的。具体的实现并不是API的一部分,它最初的意义是“接口”。在大多数情况下,鼓励用户通过这些接口访问数据库设施,这样就减
标签: Neo4j
spring-data-neo4j-4neo4j-ogmspring-cloud-config
有没有办法使用环境变量在ogm.properties(SpringDataNeo4j)中注入URI
e、 g.URI=工作正常;但是,如果我尝试这样做:URI=http://${userid}:${pwd}@${hostName}:7474,并将其作为环境变量提供,则无法工作
在运行时,spring data neo4j按原样访问url,而不替换变量值。这不受支持。请改用而不是ogm.properties,这样您就可以自由读取环境变量
例如:
@Bean
public Configuration
我是neo4j的新手。我已经建立了一个基本的数据库,大约有200个节点,其中包括人、地址和电话号码
它们都可以相互链接,因此一个人可以拥有与其关联的电话号码和地址,但地址可以连接到电话号码,电话号码可以链接到电话号码,人与人之间,等等
我希望能够搜索节点群集,例如,我希望返回所有已连接的节点,例如:
有一个人姓詹姆斯
另一个人姓琼斯
包含123456的电话号码
邮政编码为AB11AB的地址
对于上面的每一个结果,都可以找到多个结果,我想找到一个集群,该集群至少链接了上述每一个结果中的一个(最
我正在使用:
c.customerName =~ '(?i).*$q.*'
为了找到不区分大小写的任何类型的客户名称,这对所有标准字符都非常有效。不幸的是,德语中有一些特殊的字符,如Ä、Ö、Ü。在这种情况下,cypher语句是区分大小写的,例如,如果我们有两个客户名称,如Ötest和ötest,它将根据您键入的是上Ö还是下Ö找到其中一个
有人知道我能做些什么来扩展这种特殊字符上的不敏感大小写搜索吗
编辑:如果您有一个名称,例如包含一个“&”,则问题也会存在。键入“D&”时,您会找到例如公司D
我需要为neo4j实现自动增量功能。
我使用一个用户定义的过程(thaks to)进行了如下操作:
public class Sequence {
public @Context GraphDatabaseService db;
@Procedure(name = "sequence.id", mode = Mode.WRITE)
@Description("sequence.id(name, length) - return next 'length' value(s) form sequ
我知道这个问题反复出现,但我不能靠自己来结束,我需要你的帮助
从中加载带有标题的csv
"file:D:\Treina1_Neo4j.csv" as airports
CREATE (a1:Airport {label:airports.label, city:airports.city, state:airports.state })
然后返回以下错误
Invalid input 'T': expected '\', ''', '"', 'b', 'f', 'n', 'r', 't', UT
我有一个neo4j的数据库,它是neo4j 3.0.5版本,我的朋友有neo4j 3.1.1版本,我给了他一个neo4j的graph.DB文件夹,以便他可以使用我的数据库
现在他在导入它时遇到了问题。有人能建议我从3.0.5版移植到3.1.1版吗
谢谢您的朋友应该在.conf文件中启用以下行:
# Enable this to be able to upgrade a store from an older version.
dbms.allow_format_migration=true
您
我有一个Neo4j/OGM实体Person,我使用它映射到标签User
@NodeEntity(label=“User)。
我现在想编写一个自定义查询匹配(p:Person),其中…。
在我看来,没有办法使用我的应用程序端类型Person来代替Hibernate中的图形端标签User,对吗?
如果有办法的话,请解释如何做到这一点,或者告诉我的一个关键字谷歌。
同样的问题也适用于实体属性
多谢各位
更新:
假设我有这样一个用户类:
@NodeEntity(label="Person")
class
我试图从一个图形数据库中返回连续通过一系列考试最多的学生
下面是我当前的代码,但不确定我可以从当前状态将其带到何处来解决我的问题
MATCH (s:Student)-[r:TAKEN]->(e:Exam)
RETURN s.name, e.date,
CASE
WHEN r.score >= e.pass_mark THEN 1
END as pass
ORDER BY e.date
我想要一个基本的表格,它将显示学生以及连续通过的次数
例如:
| studen
标签: Neo4j
cyphershortest-patha-star
我目前正在使用Neo4j的内置Dijkstra来寻找最短路径,而且效果很好
START start=node(123), end=node(203454)
MATCH p=(start)-[:CONNECTS]->(end)
RETURN p as shortestPath,
REDUCE(distance=0, r in relationships(p) | distance+r.distance) AS totalDistance
ORDER BY totalDistance ASC
是否有任何实用程序可以将数据库从Neo4j导入ArangoDBarangoimp实用程序希望边和顶点的数据采用特定格式,而不是Neo4j导出的格式
谢谢 注意:这本身不是一个答案,但一条评论不允许我以可读的方式组织我收集的信息
从neo4j到arangodb的过渡期间,在线资源似乎很稀缺
一种可能的方法是结合APOC()和neo4j shell工具()
使用apoc为数据库创建密码导出文件(请参阅)
使用neo4j外壳工具cypher导入和-o开关——这将生成csv文件
分析csv文件,
用cs
我有两种节点类型::area和:SavedSearch,我希望获得成对的节点,以便批量设置关系
区域具有如下名称属性:
(a:Area {Name: "A1232"})
(ss:SavedSearch {Areas: ["A6473", "A1232", "A4568"]})
保存的搜索具有如下区域属性:
(a:Area {Name: "A1232"})
(ss:SavedSearch {Areas: ["A6473", "A1232", "A4568"]})
我尝试了以下查询的变体,但
标签: Neo4j
cypherneo4j-apoc
我对Neo4j、Cypher和一般编程还是相当陌生的
是否有办法访问下面发布的输出,即访问每个“项”(必须是该对)的“计数”值,以及访问“项”值?我需要一对的频率,即特定相邻节点的出现频率不仅作为信息,而且作为我可以进一步调整图表的值
我的最后几行代码(在前面几行中,我只是按顺序排列了节点):
需要使用的Neo4j浏览器的输出:
"x"
│{"count":1,"item":[{"aName“:"Rob","time":1},{"aName":"Edwin“,"tim
嗨
我目前正试图用apoc.convert.fromJsonMap将JSON数据插入neo4j。我想将此命令的结果与CREATE命令相结合
第一部分起作用了,给了我一个结果:
WITH apoc.convert.fromJsonMap('{ "name": "Emil", "from": "Sweden", "klout": 99 }') AS pers
但当我想通过创建一个新节点来组合它时,如下所示:
CREATE (ee:Person pers)
我有以下错误:
Neo.ClientEr
我正在尝试统计图中没有发生特定关系的所有节点
我的图中有1816个节点
当我运行以下查询时:
MATCH (n1)-[r]->(n2)
WHERE NOT (n1)-[:wikipedia]->(n2)
RETURN count(distinct n1)
或:
我得到:2202
高于偶数个节点
怎么了
Neo4j版本3.5.1您发现一致性检查不一致的事实意味着您的Neo4j数据库已损坏。您应该做的第一件事是使其脱机,然后再尝试任何恢复/修复
备份完成后,您可以尝试删除“neosto
我需要对大型执行查询,假设您使用以下内容来确定感兴趣的关系:
MATCH (a:Foo)-[b:BAR]->(c:Foo)
WHERE b.id = 123
这里有一种方法可以避免返回不需要的节点(图的左侧或右侧,如果有5个或更多节点):
匹配(a:Foo)-[b:BAR]->(c:Foo)
其中b.id=123
可选匹配(a)-(x)
a,b,c,[z在COLLECT(x)中,其中zc]作为xs
可选匹配(c)-(y)
a,b,c,xs,[z在COLLECT(y)中,其中za]作为ys
我正在尝试neo4j的grand stack starter,在完成所有graphql模式部分后,API模块出现以下错误。它抱怨指令“关系”和“密码”是未知的。
我重新安装了neo4j graphql js,但没有解决问题。
下面是错误消息
grand-stack-starter-api@0.0.1 start C:\Users\grand-stack-starter-master\api
nodemon --exec babel-node src/index.js
[nodemon] 1.1
我本打算克隆一个节点及其3个连接,但最终克隆了多个节点
通过首先匹配主节点和相关节点的整个图,当我调用apoc.refactor.cloneNodes时,它似乎迭代每个相关节点,而不仅仅是我要克隆的主节点。结果是原始主节点和连接到预期相关节点的3个克隆(而不是预期的1个克隆)
我创建了这个玩具图:
create (a:Node {description:"Spider Man Series"})
create (b:Node {description:"Spidey"})
create (c:
这是一个带有一个关系和两个过滤器的简单查询。因为订阅服务器最多有700万个节点,所以我想使用字段9作为第一个节点索引seek,因为订阅列表标签只包含15个节点。当前,配置文件看起来像
如果我更改查询并强制使用索引,结果将是:
match (s:Subscriber {field_9 : 'female'})-[:BELONGS_TO]->(:SubscriberList {id: 4})
return count(s).
可以使用子查询进行更优化的查询:
match (s:Subsc
我想知道新的Neo4j图形数据科学库和Neo4j contrib图形算法库之间有什么区别
显然,它们不能同时安装。一个替换另一个吗?是的,neo4j正在替换图形算法库
您现在应该使用Graph Data Science库,因为它改进了先前的库并添加了更多功能。使用以上链接了解更多信息
我将Neo4j用于一个项目,当我尝试运行显示数据库时,出现以下错误:
Invalid input 'H': expected 't/T', 'e/E' or 'n/N' (line 1, column 2 (offset: 1))
"SHOW DATABASES"
我正在运行Neo4j浏览器版本:4.0.3
为什么不承认这个功能?在文档中多次引用。我用不同的命令运行其他查询没有问题,但这是无法识别的
如何解决此问题?SHOW DATABASES命令针对系统数据库。请参阅以
我要返回具有祖先camer=red(图中的红色节点)和vph=1(图中的粉红色节点)的节点。
从这些祖先到h的路上有很多节点,每个祖先有一条以上的路径,有时会重叠。
实际上,在到达文件(图中的绿色节点)之前,每个祖先的每个路径都必须通过运行节点
我可以运行查询:
match p1=(:camera {value: 'red'})-[*]->(h:File)
match p2=(:vph {value: 1})-[*]->(h:File)
return h
然后返回节点。但我不认为
我在Neo4j中的数据库如下所示:
(a:ARTICLE)-[:SIMILAR]-(a:ARTICLE)
ARTICLES节点具有community属性,它是集群的id
我想按社区id对文章进行分组,我尝试了这个方法,但什么也没发生:
MATCH (a:ARTICLE)-[:SIMILAR]-(a:ARTICLE)
WITH a, collect(a.community) as community
RETURN a
我哪里错了?(a:ARTICLE)-[:相似]-(a:ARTICLE)错误地
这将有助于了解在训练迭代中损失是否在减少,就像运行常规的ML算法一样。在使用图嵌入算法时,这是否可能导致输出损失?我正在使用neo4j-graph-data-science-1.5.1.jar
# Project the graph
def project_graph():
with driver.session() as session:
session.run("""CALL gds.graph.create(
我是Neo4j的新手,但我的脚还是湿的。我有一个关于建立一种特殊关系的问题
我有两个文件:
文件1包含文本数据和一个ID字段。文件2有3个字段—一个关键字字段,它是从上一个文件的文本数据中提取的文本/关键字;一个名为text ID的ID,它引用并与上一个文件中的文本ID相同;以及一个关键字本身的ID
我创建了两个节点,文本节点具有属性Text ID和Text,关键字节点仅具有属性“Keyword”。我是否需要在这两个节点之间创建一个关系,在这两个节点中,我将以两个文件中的文本ID为基础,并创建一
1 2 3 4 5 6 ...
下一页 最后一页 共 155 页