使用redland / c ++快速插入rdf三元组

时间:2014-03-14 20:46:06

标签: c++ c++11 rdf redland

我查看了redland文档,但有些问题我无法解决。

在c ++方面看一下,假设你随着时间的推移为几个不同的图生成了大量的rdf三元组,并且知道将所有图形都存储在内存中并不感兴趣:

是否可以使用redland执行单个/批量插入(写入持久存储)而不将图形保留在内存中,以及如何调整此类插入?

如果我们忘记了查询,那么什么是一种很好的持久存储方式:文件或数据库?

您怎么看?

1 个答案:

答案 0 :(得分:2)

  

是否可以使用redland执行单个/批量插入(写入持久存储)而不将图形保留在内存中,以及如何调整此类插入?

是。创建一个librdf_storage对象,您希望存储数据并将其传递给librdf_new_model()。然后使用任何API函数(例如librdf_parser_parse_into_model())将数据存储在该模型中,并将其保存在存储中。

如果以这种方式编写librdf存储模块,则图形仅保留在内存中。

  

如果我们忘记了查询,那么什么是一种很好的持久存储方式:文件或数据库?

file存储并非真正适用于严肃的业务。它将图形保留在内存中,并通过序列化到RDF / XML或从RDF / XML继续存储到磁盘。

使用数据库支持的存储,例如mysql或BDB hashes