具有推理的不同服务器上的存储库的联合存储

Federated store with repositories on different server with reasoning

我想在 Allegrograph 中创建一个带有推理的联合商店;我可以在同一个 Allegrograph 系统中使用 2 个存储库来做到这一点,但是当我尝试创建一个具有位于不同服务器上的两个存储库的联合商店时;方法 server.federatedisplay 一个错误。

我尝试使用两种解决方案来解决这个问题:

第一个我使用 virtualRepository 来组合两个存储库,它有效但是当我想从我的 virtualRepository 获取连接时它显示错误如下: 代码:

AGVirtualRepository s = server.virtualRepository("<http://ip:10035/repositories/repo1> + <http://ip:10036/repositories/repo2>");
      s.initialize();
      AGRepositoryConnection rainbowConn = s.getConnection();

      closeBeforeExit(rainbowConn);

错误:org.eclipse.rdf4j.repository.RepositoryException: com.franz.agraph.http.exception.AGHttpException: org.apache.commons.httpclient.NoHttpResponseException: The server myserver failed to respond

我使用 Federation Sail 添加存储库的第二个解决方案有效,但是当我 运行 我的查询时,即使我调用 tupleQuery.setIncludeInferred(true);

,推理概念也不起作用

代码:

    AGServer server = new AGServer(SERVER_URL, USERNAME, PASSWORD);

    AGServer server2 = new AGServer(SERVER_URL2, USERNAME2, PASSWORD2);

    AGRepository repo1 = server.getCatalog(CATALOG_ID).openRepository("repo1");
    AGRepository repo2 = server2.getCatalog(CATALOG_ID).openRepository("repo2");

    Federation federation = new Federation();
    federation.addMember(repo1);
    federation.addMember(repo2);
    federation.setReadOnly(true); 
    SailRepository  combinedRepo = new SailRepository(federation);
    combinedRepo.initialize();

    SailRepositoryConnection gg =  combinedRepo.getConnection();

我不知道是否有任何提示可以解决我的问题,谢谢

将推理与 SailRepository 结合使用我已经做到了,也许你的查询有问题,你能告诉我你的查询并告诉我错误是什么吗