目前,我正在尝试从RDF4J平台读取universAAL三层结构的文件,并将它们放入InfluxDB中,以合并来自不同智能生活系统的数据。但是,我注意到本机存储库的单个索引文件是加密/不可读的(请参阅下面的图像)。在如何从RDF4J文件(命名空间、triples.prop、triples.prop、triples、triples、values.hash、values.dat、values.id)中获取人类可读的内容并将它们合并到另一个数据库方面,社区有什么经验吗?RDF4J的文档没有在这里帮助我,所以我无法创建一个体面的出口。
发布于 2021-03-06 13:46:15
这些文件不是加密的,它们只是一种二进制格式,为高效存储和检索而优化,由RDF4J的本地商店数据库实现使用。它们不是用来直接操纵的。
将它们转换为可读RDF的最简单的方法是在其之上拆分一个本地存储库,然后使用RDF4J API查询/导出其数据。假设您有一组完整的数据文件,那么它应该像下面这样简单:
Repository rep = new SailRepository(new NativeStore(new File("/path/to/datafiles/");
try(RepositoryConnection conn = rep.getConnection()) {
conn.export(Rio.createWriter(RDFFormat.TURTLE, System.out));
}
finally {
rep.shutDown();
}显然,如果您想要将数据写入文件而不是控制台,请用System.out替换为FileOutputstream。如果需要不同的语法格式,则将RDFFormat.TURTLE更改为其他格式。
https://stackoverflow.com/questions/66476234
复制相似问题