当前位置: 首页 > 知识库问答 >
问题:

GraphDB Free与Standard Edition中的并行写入操作

韩阳成
2023-03-14

我试图在Ontotext GraphDB中并行运行几个SPARQL查询。除了它们读取的命名图之外,这些查询是相同的。我尝试了Scala中的多线程解决方案来并行启动对数据库的3个查询(见下图)。

问题是我使用的是GraphDB的免费版,它只支持一个核的写操作。这似乎意味着应该并行运行的查询基本上只是排队对单个核运行。正如您所看到的,第一个查询在12秒内完成了41,145个操作,但是其他两个查询都没有完成任何操作。一旦第一个查询完成,第二个查询将运行到完成,一旦完成,第三个查询将运行。

我知道这可能是免费版的预期行为。我的问题是,升级到标准版会解决这个问题,并允许查询实际并行运行吗?根据我看过的文档,似乎可以为标准版提供多个内核来完成写操作。然而,我也看到了一些东西,这意味着针对标准版启动的单写查询将自动在多个内核上处理,这可能会使多线程方法过时?

任何人都有针对GraphDB启动并行写入操作的经验,并且能够权衡?

共有1个答案

严嘉良
2023-03-14

您可以在官方的GraphDB 9.1基准统计页面中找到差异:http://graphdb.ontotext.com/documentation/standard/benchmark.html.

 类似资料:
  • 问题内容: 我有多个Goroutines共享一个net.Conn对象。他们可以同时发出写呼叫吗? 我主要关心的是部分完成的Write调用。假设我打算写100个字节,但是只发送了30个字节,因此我需要再发送70个字节。为此,我通常会编写一个循环: 但是我看到Go在net.Conn.Write行号318中实现了这个循环,它是通过锁来实现的。 但是,在Windows实现上,除了调用WSASend之外没有

  • 接下来,创建2个分支来尝试并行操作吧。 首先创建issue2分支和issue3分支,并切换到issue2分支。 $ git branch issue2 $ git branch issue3 $ git checkout issue2 Switched to branch 'issue2' $ git branch * issue2 issue3 master 在issue2分支的myfi

  • 我想发送使用xpath作为定位器。错误: 线程“main”org.openqa.selenium.InvalidElementStateException中的异常:元素被禁用,因此不能用于操作命令持续时间或超时:75毫秒

  • 本文向大家介绍python3 循环读取excel文件并写入json操作,包括了python3 循环读取excel文件并写入json操作的使用技巧和注意事项,需要的朋友参考一下 文件内容: excel内容: 代码: 结果: 补充知识:Python mysql数据 读取时间参数 for循环写入Excel文件 最近在利用Python 实现自动化表报时,有个功能是mysql的业务时间是读取模板文件的时间参

  • 问题内容: 如果“文件名”不存在,我想使用pd.write_csv写入“文件名”(带有标题),否则,如果存在“文件名”,则附加到文件名中。如果我只使用命令: 写入或追加成功,但似乎每次进行追加时都会写入标头。 如果文件不存在,如何只添加标题,如果文件存在,如何不添加标题而追加标题? 问题答案: 不确定熊猫是否有办法,但是检查文件是否存在将是一种简单的方法:

  • 我得到一个包含100行数据的表。(Sqlite3和Linux) 这些行上的每个都由多个进程更新。既然同一行不能修改两次(一个进程“拥有”一行并且只有一行),你认为我真的需要使用事务吗?