Можно ли использовать хранилище RDF также как базу данных, ориентированную на документы?

Предположим, у меня есть большое количество разнородных документов JSON (то есть именованных сопоставлений значений ключа) и иерархия классов (то есть именованных наборов), к которым эти документы прикреплены. Мне нужно настроить структуру данных, которая позволит:

  1. CRUD-операции с документами JSON.
  2. Очень быстрое получение документов JSON по идентификатору .
  3. Очень быстрое получение всех документов JSON, прикрепленных к определенному классу .
  4. Редактирование иерархии классов: добавление / удаление классов, их перестановка.

Изначально мне пришла в голову идея хранить документы JSON в документно-ориентированной базе данных (например, CouchDB или MongoDB) и хранить иерархию классов в хранилище RDF (например, 4store). 1 , 2 и 4 затем вычисляются естественным образом, а 3 решается путем сохранения списка прикрепленных идентификаторов документов для каждого класса в место хранения.

Но потом я подумал, что хранилище RDF действительно может выполнять ориентированную на документы часть извлечения документов JSON по идентификатору. На первый взгляд это кажется правдой, но меня все еще беспокоят 2 и 3 . Есть ли RDF-хранилище, способное извлекать документы (узлы) со скоростью, ориентированной на документы, обслуживаемые базами данных? Как быстро он будет обслуживать 3 -подобных запросов? Я немного слышал о медленных хранилищах RDF, проблемах реификации и т. Д.

Существует ли RDF-хранилище, которое также удобно для случайного извлечения объектов по идентификатору, как, например, CouchDB? В чем разница между использованием документ-ориентированного хранилища и хранилища RDF для хранения, извлечения и редактирования объектов, подобных JSON?

7
задан martinthenext 30 November 2011 в 22:26
поделиться