c ++ 11 — Быстрая вставка троек rdf с использованием Redland / Stack Overflow

Я просмотрел документацию Redland, и есть некоторые проблемы, которые я не мог быть уверен в решении.

Если взглянуть на сторону c ++, предположим, что вы генерируете множество rdf-троек с течением времени для нескольких разных графов, и зная, что не интересует основной интерес для всех графов в памяти:

Можно ли использовать Redland для выполнения одиночных / массовых вставок (запись в постоянное хранилище) без сохранения графика в памяти, и как бы вы настроили такие вставки?

Если мы забудем о запросах, какой будет хороший постоянный способ хранения: файлы или базы данных?

Как вы думаете?

1

Решение

Можно ли использовать Redland для выполнения одиночных / массовых вставок (запись в постоянное хранилище) без сохранения графика в памяти, и как бы вы настроили такие вставки?

Да. Создать librdf_storage объект, где вы хотите, чтобы ваши данные хранятся и передать его librdf_new_model(), Затем используйте любую из функций API, таких как librdf_parser_parse_into_model()хранить данные в этой модели, и они сохраняются в хранилище.

График хранится в памяти, только если модуль памяти librdf написан таким образом.

Если мы забудем о запросах, какой будет хороший постоянный способ хранения: файлы или базы данных?

file хранение не совсем для серьезного бизнеса. Он хранит график в памяти и сохраняет на диске путем сериализации в / из RDF / XML.

Используйте хранилище на основе базы данных, например mysql или BDB hashes,

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]