4

我正在一个团队研究一个新的系统集成项目的技术堆栈。我们偏爱的技术堆栈的一部分使用 Hibernate 来保持其内部状态并将挂钩暴露到 Hibernate 事务中,以便业务实体与该实用程序的状态保持同步。很好,除了我们需要维护有关未知类型实体的信息并将该数据链接到预定义类型。我们需要一个不需要预先定义模式的可扩展数据存储。最佳点是混合 RDF 数据和 Hibernate 托管实体。

您是否遇到过类似的要求,您可以推荐哪些方法?
任何 RDF/ORM 混合都需要支持不频繁的大规模查询以进行报告和数据探索,还需要支持频繁的集中读写操作以支持事务。

4

4 回答 4

1

我在我的项目中使用 RDF,我们所做的是使用OWL为 RDF 数据定义一个本体并赋予它一些结构。从那里我们从 OWL 本体生成 C# 类。这样做的好处是您仍然可以添加有关主题的其他数据,但仍然具有在大多数情况下有意义的类结构。

于 2008-10-23T20:29:16.123 回答
0

一种解决方案是将对象模型保持在 RDF 三元存储级别,例如通过为

  • 节点:uris、空格和文字
  • 语句:三个或更多节点的集合(三个用于 RDF 三元组,附加节点用于元)

在这样的存储上运行查询本质上是对语句进行三元组/n 元组模式匹配。

于 2009-07-16T17:37:28.857 回答
0

您是否考虑过为已知数据定义休眠模型并使用 XML 添加 CLOB 来存储未知数据?通过这种方式,您主要保留正常的休眠代码,并且仅当您需要访问从 CLOB 字段加载 XML 并处理它的其他内容时。

在此处查看具有类似解决方案的类似问题。

于 2009-07-17T08:18:42.483 回答
0

Tripresso wiki 页面上有一个 Object-RDF 映射器列表,可让您以面向对象的方式处理 RDF 数据。我怀疑它们中的任何一个都直接与 Hibernate 集成,但它们至少提供了类似的东西。

于 2010-01-19T11:56:31.697 回答