问题标签 [rexster]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
neo4j - 围绕图形数据库大肆宣传……为什么?
围绕图形数据库有一些炒作。我想知道为什么。
在当今的 Web 环境中可能会遇到哪些可以使用图数据库解决的问题?图数据库是否适合经典应用程序,即可以用作关系数据库的替代品?所以实际上这是两个问题合二为一。
graph-databases - 如何启动 Titan 图形服务器并与 gremlin 连接?
我玩Titan 图形服务器已经有一段时间了。我的感觉是,尽管有大量文档,但缺少从头开始教程。
我的最终目标是让泰坦在 cassandra 上运行并使用StartTheShift/thunderdome进行查询。
我见过几种启动 Titan 的方法:
使用 Rexster
从此链接,我能够通过以下步骤运行 Titan 服务器:
- 下载rexster-server 2.3
- 下载泰坦0.3.0
- 将所有文件复制
titan-all-0.3.0/libs
到rexster-server-2.3.0/ext/titan
编辑
/li>rexster-server-2.3.0/rexster.xml
并添加(在 a 之间):
对于 berkeleydb 或:
对于 cassandra 数据库。
- 启动服务器
./bin/rexster.sh -s -c rexster.xml
- 下载 rexster 控制台并运行它
bin/rexster-console.sh
- 您现在可以使用
g = rexster.getGraph("geograph")
这种方法的问题是您是通过 rexster 而不是 gremlin 连接的,因此您没有自动完成功能。优点是您可以命名您的数据库(此处为地理)。
将 Titan 服务器与 cassandra 一起使用
- 启动服务器
./bin/titan.sh config/titan-server-rexster.xml config/titan-server-cassandra.properties
/li>cassandra.local
创建一个名为启动 Titan Gremlin 并连接
g = TitanFactory.open("cassandra-es.local")
这很好用。
将 Titan 服务器与 BerkeleyDB 一起使用
从这个链接:
- 下载泰坦0.3.0
- 启动服务器
./bin/titan.sh config/titan-server-rexster.xml config/titan-server-berkeleydb.properties
- 启动泰坦小精灵:
./bin/gremlin.sh
但是一旦我尝试连接到 gremlin 中的数据库(图形),
g = TitanFactory.open('graph')
它会在我所在的目录中创建一个名为 graph 的新数据库。如果我在我的目录(已填充)所在的位置执行此操作,我会得到:无法实例化实现:com.thinkaurelius.titan.diskstorage.berkeleyje.BerkeleyJEStoreManager
有人可以澄清这些过程,并告诉我我做错了什么。谢谢
neo4j - 使用 neo4j 图形搜索文件内容的最佳方式
我有一个应用程序(除其他外)将文件系统树存储在 neo4j 图中。也就是说每个目录和文件都是一个节点。其中一些文件是 Office 文档、文本或 pdf 文件,我想提供一些搜索功能。
搜索功能应该扫描节点属性和文件内容并返回最相关的节点。
--------------------------------------------------
更新额外信息:
该图允许过滤掉文件的子集。文件节点还包含需要搜索的自定义元数据。许多应用之一是:
用户搜索“术语”> 使用图形来查找此搜索适用的文件(例如,取决于用户组和权限),然后在两个节点属性中搜索“术语”和文件内容 > 返回最相关的结果。
可能某些文件可能出于某种原因链接到其他文件,并且这些文件也应该被搜索,但优先级较低(理想情况下,“术语”命中应该少于初始文件的命中)
现实生活中的案例复杂程度是这个的十倍,所以我不能替换/删除图形数据库的使用,或者数据库的影响会导致结果相关性。
--------------------------------------------------
我的问题是:
- 实现这一点的最佳方法是什么?
- 我应该提取文件内容并将它们放在每个节点的索引属性中吗?
- 这样做的缺点是什么?
- 有没有更好的方法来解决它?
提前谢谢各位。
更多详细信息:
- PHP 网络应用程序
- 使用 Rexster 加载和访问 neo4j 图
- 查询语言 = gremlin (groovy)
gremlin - 通过 Rexster 查询 Titan ElasticSearch 后端
我有 Titan 0.3.2 在嵌入式模式下运行,并且能够通过 Gremlin shell 创建和查询 ElasticSearch 索引(请参阅上一个问题)。我使用的是默认配置,它调用 ES 索引“搜索”。
这些搜索通过 Gremlin shell 返回正确的节点且没有错误:
但是,如果我尝试通过 RexPro 运行这些相同的 Gremlin 查询,Rexster 会为上面的第一个查询发回此错误:
这是第二个:
同样,如果我尝试通过 REST API (GET) 查询索引键:
我收到相同的错误响应:
最后,如果我尝试从一个干净的数据库开始并通过 rexpro 运行索引创建脚本:
我看到相同的未知索引错误:
因此,Rexster 似乎需要一些关于索引后端的附加信息,可能在其配置文件中(我使用的是安装中包含的默认信息)。有谁熟悉这个问题?很高兴提供更多信息。
python - 如何让 Titan 图形数据库与 Python 一起工作?
我是新手,正在尝试让 Titan 使用 Python。我已经为此苦苦挣扎了一天半,却无处可去。我尝试过灯泡和 rexpro-python,但似乎没有任何效果。
在rexpro-python中,以下代码:
将挂起并且服务器产生以下消息(对于 Titan 版本 0.3.2、0.3.1 和 0.2.1)
在灯泡中:
产生以下错误:
在 Titan 服务器上也有类似的例外。有没有人让这个工作?
c++ - Rexster / 蓝图、Neo4j 和 C++
我需要 TinkerPop 为 Rexster 提供的 C++ 绑定。有什么可用的吗?
这样做的原因是因为我需要一种高性能的方式来与 C++ 中的 Neo4j 数据库进行通信。REST API 对我来说可能太慢了。
读完这篇文章后,似乎 RexPro 是比旧的 ZeroMQ 绑定更好的方法。
https://groups.google.com/forum/#!topic/gremlin-users/Lp3pbCLv_nw
ZeroMQ 绑定(2011):https ://github.com/Squelsh/lightsocket
如果您不同意,是否有更好的方法在 C++ 中与 Neo4j 交互?
如果没有可用的,写一个会这么难吗?
gremlin - Gremlin:Titan 0.3.2 中使用 has() 过滤器的 T.in 运算符错误
我在 Titan 0.3.2 中使用带有 has() 过滤器的 T.in 运算符时遇到问题
以下 Gremlin 查询...:
...在 Titan 控制台中产生以下错误:
不知何故与此 SO 问题有关:gremlin 的 has 子句中的多个属性值(相同的问题,但与 Neo4J 相关)。
titan - Create\Add a graph Titan server using default rexster
when i run
rexster.getGraphNames()
my only result is graph, when i ran a gremlin instance directly over titan i had
tmp
and created a graph called
mygraph
i have been loooking around and havent found anything
bulbs - 灯泡 rexster 系统错误
我正在使用 Rexster 2.4.0 和 Bulbs 0.3.14
随着 Rexster 在 localhost 上运行,我正在尝试熟悉灯泡,但在尝试时:
回溯(最近一次通话最后):
文件“”,第 1 行,在文件“/Users/lolmac/anaconda/lib/python2.7/site-packages/bulbs/rexster/graph.py”,第 54 行,在init super(Graph, self) 中。初始化(配置)
文件“/Users/lolmac/anaconda/lib/python2.7/site-packages/bulbs/base/graph.py”,第 58 行,在init self.vertices = self.build_proxy(Vertex)
文件“/Users/lolmac/anaconda/lib/python2.7/site-packages/bulbs/base/graph.py”,第 124 行,在 build_proxy 返回 self.factory.build_element_proxy(element_class, index_class)
文件“/Users/lolmac/anaconda/lib/python2.7/site-packages/bulbs/factory.py”,第 19 行,在 build_element_proxy primary_index = self.get_index(element_class,index_class,index_name)
文件“/Users/lolmac/anaconda/lib/python2.7/site-packages/bulbs/factory.py”,第 27 行,在 get_index index = index_proxy.get_or_create(index_name)
文件“/Users/lolmac/anaconda/lib/python2.7/site-packages/bulbs/rexster/index.py”,第 80 行,在 get_or_create resp = self.client.get_or_create_vertex_index(index_name, index_params)
文件“/Users/lolmac/anaconda/lib/python2.7/site-packages/bulbs/rexster/client.py”,第 660 行,在 get_or_create_vertex_index resp = self.gremlin(script, params)
文件“/Users/lolmac/anaconda/lib/python2.7/site-packages/bulbs/rexster/client.py”,第 354 行,在 gremlin 中返回 self.request.post(gremlin_path,params)
文件“/Users/lolmac/anaconda/lib/python2.7/site-packages/bulbs/rest.py”,第 128 行,在 post return self.request(POST, path, params)
文件“/Users/lolmac/anaconda/lib/python2.7/site-packages/bulbs/rest.py”,第 183 行,在请求中返回 self.response_class(http_resp, self.config)
文件“/Users/lolmac/anaconda/lib/python2.7/site-packages/bulbs/rexster/client.py”,第 198 行,在init self.handle_response(response)
文件“/Users/lolmac/anaconda/lib/python2.7/site-packages/bulbs/rexster/client.py”,第 222 行,在 handle_response response_handler(http_resp)
文件“/Users/lolmac/anaconda/lib/python2.7/site-packages/bulbs/rest.py”,第 50 行,在 server_error 中引发 SystemError(http_resp)
SystemError: ({'status': '500', 'transfer-encoding': 'chunked', 'server': 'grizzly/2.2.16', 'connection': 'close', 'date': 'Mon, 14 2013 年 10 月 19:43:45 GMT', 'access-control-allow-origin': '*', 'content-type': 'application/json'}, '{"message":"","error": “javax.script.ScriptException:groovy.lang.MissingMethodException:没有方法签名:groovy.lang.MissingMethodException.stopTransaction()适用于参数类型:()值:[]”,“api”:{“description”: "为一个图评估一个临时 Gremlin 脚本。","parameters":{"rexster.returnKeys":"要返回的元素属性键数组(默认是返回所有元素属性)","rexster.showTypes":"显示元素的属性及其本机数据类型(默认为 false)","load":"要在 \'script\' 之前执行的 \'stored procedure\' 列表(如果未指定 \'script\',则此参数中的最后一个脚本将返回值","rexster.offset.end":"要返回的分页数据集的结束索引","rexster.offset.start ":"要返回的分页数据集的开始索引","params":"要绑定到脚本引擎的参数映射","language":"要使用的 gremlin 语言风格(默认为 groovy)" ,"script":"要评估的 Gremlin 脚本"}},"success":false}')显示元素的属性及其本机数据类型(默认为 false)","load":"在 \'script\' 之前执行的 \'stored procedure\' 列表(如果 \'script\' 是如果未指定,则此参数中的最后一个脚本将返回值","rexster.offset.end":"要返回的分页数据集的结束索引","rexster.offset.start":"a 的开始索引要返回的分页数据集","params":"绑定到脚本引擎的参数映射","language":"要使用的 gremlin 语言风格(默认为 groovy)","script":"the要评估的 Gremlin 脚本"}},"success":false}')显示元素的属性及其本机数据类型(默认为 false)","load":"在 \'script\' 之前执行的 \'stored procedure\' 列表(如果 \'script\' 是如果未指定,则此参数中的最后一个脚本将返回值","rexster.offset.end":"要返回的分页数据集的结束索引","rexster.offset.start":"a 的开始索引要返回的分页数据集","params":"绑定到脚本引擎的参数映射","language":"要使用的 gremlin 语言风格(默认为 groovy)","script":"the要评估的 Gremlin 脚本"}},"success":false}')在 \'script\' 之前执行的 \'stored procedure\' 列表(如果未指定 \'script\' 则此参数中的最后一个脚本将返回值“”rexster.offset.end”: "要返回的分页数据集的结束索引","rexster.offset.start":"要返回的分页数据集的开始索引","params":"要绑定到脚本的参数映射engine","language":"要使用的 gremlin 语言风格(默认为 groovy)","script":"要评估的 Gremlin 脚本"}},"success":false}')在 \'script\' 之前执行的 \'stored procedure\' 列表(如果未指定 \'script\' 则此参数中的最后一个脚本将返回值“”rexster.offset.end”: "要返回的分页数据集的结束索引","rexster.offset.start":"要返回的分页数据集的开始索引","params":"要绑定到脚本的参数映射engine","language":"要使用的 gremlin 语言风格(默认为 groovy)","script":"要评估的 Gremlin 脚本"}},"success":false}')"要返回的分页数据集的结束索引","rexster.offset.start":"要返回的分页数据集的开始索引","params":"要绑定到脚本的参数映射engine","language":"要使用的 gremlin 语言风格(默认为 groovy)","script":"要评估的 Gremlin 脚本"}},"success":false}')"要返回的分页数据集的结束索引","rexster.offset.start":"要返回的分页数据集的开始索引","params":"要绑定到脚本的参数映射engine","language":"要使用的 gremlin 语言风格(默认为 groovy)","script":"要评估的 Gremlin 脚本"}},"success":false}')
这是一篇旧帖子:https ://groups.google.com/forum/#!msg/gremlin-users/s7Ag1tjbxLs/kaBOSyed_9kJ ,但似乎其他人也遇到了同样的问题。尽管如此,我还是找不到任何说明默认配置有什么问题或要更改什么的文档。
感谢任何可以提供提示的文档/讨论或想法。
cassandra - 无法启动带有嵌入式 cassandra 和 rexter 的 Titan 服务器
我正在尝试使用嵌入式 cassandra 和 rexster 运行 Titan。下载 Titan 发行版 titan-all-0.3.2 并在 linux 机器上解压。解压后这是我运行的命令
$ ./bin/titan.sh 配置/titan-server-rexster.xml 配置/titan-server-cassandra.properties
这是我在日志中看到的内容 启动 RexPro 服务后,它无法部署和启动 grizzly。有人遇到过这个问题吗?
异常堆栈跟踪: