根据 this Github issue ,Cayley 的 Postgres 后端功能图数据库实现。但是,目前 docs 中没有示例,我无法通过阅读代码来弄清楚。有人可以帮忙吗?
编辑
要开始使用 Cayley,我们可以使用以下命令加载源附带的数据:
./cayley load --config=cayley.cfg.overview --quads=data/30kmoviedata.nq.gz
我尝试了 cayley.cfg.overview
文件的两种变体:
{
"database": "sql",
"db_path": "localhost:5432",
"read_only": false
}
和
{
"database": "sql",
"db_path": "/var/lib/postgresql/9.4/main/cayley",
"read_only": false
}
第一个类似于用于 mongo 的那个(5432 是 postgres 服务器监听的端口)。至于第二个,我不知道我在那里做什么 :D。
在任何情况下,当我使用 ./cayley load --config=cayley.cfg.overview --quads=data/30kmoviedata.nq.gz
命令时,我得到以下错误(变化只有 db_path
的值):
Couldn't open database at localhost:5432:
&errors.errorString{s:"missing \"=\" after \"127.0.0.1:5432\" in connection
info string\""}
E1117 21:09:18.300033 16689 cayley.go:277] missing "=" after "localhost:5432"
in connection info string"
最佳答案
看起来 Cayley 在幕后使用 lib/pq。 lib/pq 连接字符串看起来像这样:"user=pqgotest dbname=pqgotest sslmode=verify-full"
或 "postgres://pqgotest:password@localhost/pqgotest?sslmode=verify-full"
有关完整详细信息,请参阅位于 godoc.org 的 lib/pq 文档.
(您可以在 cayley/graph/sql/quadstore.go connectSQLTables
中看到调用 sql.Open 的位置。)
关于postgresql - 如何将 Cayley 与 Postgres 后端一起使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33769116/