如何解决跨多个服务器分布Neo4j图
能否在服务器1上的顶点A边缘连接到服务器2上的顶点B的多个服务器上分布Neo4j图?
到目前为止,我所能找到的只是关于Neo4j分片的讨论,但我找不到任何明确指出边缘可以跨越服务器的地方。
解决方法
不,没有关系可以连接不同服务器上的节点。
如果存在这样的功能,则与所有数据并置相比,它会显着地慢得多,并且由于失败和连接断开等原因,查询失败的可能性也会更高。
> ,FWIW,资源描述框架(RDF)图模型[1]本机支持这种类型的功能。您可以使用SPARQL 1.1查询语言的联合查询功能来查询多个RDF存储中的数据集。
使用包含有关英超联赛(足球)俱乐部信息的本地数据集并将此数据与可公开访问的RDF商店(DBpedia)组合的示例:
PREFIX foaf: <http://xmlns.com/foaf/0.1/>
PREFIX dbo: <http://dbpedia.org/ontology/>
PREFIX soccer: <http://www.example.com/soccer#>
SELECT distinct ?nickName ?airportName ?cityName ?airportID {
?soccerTeam dbo:city ?city .
?soccerTeam soccer:nickname ?nickName .
SERVICE <http://dbpedia.org/sparql> {
BIND ("LHR" as ?airportID)
?airport dbo:iataLocationIdentifier ?airportID ;
dbo:city ?city ;
rdfs:label ?airportName .
?city rdfs:label ?cityName .
SPARQL中的SERVICE
子句可用于提供这种联合方式。
RDF是否适合您取决于您需要询问图形的查询类型。属性图数据库和查询语言通常更适合检索遍历的路径(开始和结束之间的所有对象)。 SPARQL可以迭代遍历[2],但是表达查询以检索遍历的所有中间成分的查询可能并不简单。
[1] https://www.w3.org/RDF/ [2] https://www.w3.org/TR/sparql11-property-paths/
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。