Sparql 为什么我们需要Fuseki服务器?

Sparql 为什么我们需要Fuseki服务器?,sparql,jena,semantic-web,fuseki,tdb,Sparql,Jena,Semantic Web,Fuseki,Tdb,我正在开发一个应用程序,它使用triple store(Jena)。这里清楚地提到了TDB SPARQL更新和查询。另外,我知道这就是SPARQL服务器,它也支持更新和查询。我没有找到以下问题的答案: 如果TDB支持SPARQL查询和更新,那么为什么我们需要Fuseki 我可以将数据存储在TDB中,然后不使用Fuseki在应用程序中访问它吗 你方的任何回复都将是有价值的。请详细介绍你已经收到的评论 TDB是一个由持久磁盘存储支持的内存中数据库,它在JVM中运行,并且只能在JVM中访问。TDB存储

我正在开发一个应用程序,它使用triple store(Jena)。这里清楚地提到了TDB SPARQL更新和查询。另外,我知道这就是SPARQL服务器,它也支持更新和查询。我没有找到以下问题的答案:

  • 如果TDB支持SPARQL查询和更新,那么为什么我们需要Fuseki
  • 我可以将数据存储在TDB中,然后不使用Fuseki在应用程序中访问它吗

  • 你方的任何回复都将是有价值的。

    请详细介绍你已经收到的评论

    TDB是一个由持久磁盘存储支持的内存中数据库,它在JVM中运行,并且只能在JVM中访问。TDB存储每次只能由单个JVM访问(TDB将强制执行此限制),因此如果需要在多个JVM之间共享数据,则不能单独使用TDB

    Fuseki是一个web服务器,它实现了,这是通过HTTP公开RDF数据库以进行查询/更新的标准方法。TDB是Fuseki下面默认使用的数据库,但如果需要,Fuseki可以配置在其他RDF数据库之上

    由于Fuseki在单个JVM中运行,因此可以使用它与多个应用程序共享对TDB数据库的访问,因为这些应用程序通过HTTP访问Fuseki,Fuseki处理其JVM中对TDB数据库的所有访问。此外,由于SPARQL协议是一种标准,您可以使用Fuseki来允许非JVM应用程序访问TDB数据库,因为它们只是通过该协议与Fuseki交互,而不需要知道如何直接与TDB交互

    总结如下:

    • 如果您只需要一个应用程序访问TDB数据库,那么您可以直接使用TDB
    • 如果需要让多个应用程序(或非JVM)访问TDB数据库,请使用Fuseki over TDB
    1)Fuseki是一款可通过web访问TDB端点的应用程序。2) 您可以在没有Fuseki的情况下将TDB用作本地存储。Fuseki只是让远程查询可以访问它。