Какие показатели использует jena TDB2? - PullRequest
1 голос
/ 10 апреля 2019

Я пытаюсь выяснить, какие индексы строит TDB2.По коду я обнаружил, что для хранения их на диске используются деревья B +, но я не понял, что они содержат и как они используются.

Итак, мои подробные вопросы:

  • Для какого порядка сопоставления тройки RDF (например, SPO, SOP, POS, PSO, ...) он создает индексы?
  • Как кодируются и хранятся термины RDF?
  • Какая стратегияиспользуется для загрузки индексов в основную память?(Я бы ожидал подкачки страниц)?

Мне также помогло бы, если бы вы указали мне на официальный документ или что-то похожее на дизайн программного обеспечения TDB2.Я искал это, но ничего не мог найти.

1 Ответ

2 голосов
/ 11 апреля 2019

TDB2 имеет «id» для каждого термина RDF (URI литерала, пустые узлы).Идентификатор имеет фиксированную длину 64. Другой способ сказать, что он содержит словарь.

Для троек он содержит SPO, POS и OSP (это настраивается, но это значение по умолчанию).Трипл хранится в индексе как эти идентификаторы - так, 3 идентификатора на тройку.Фиксированная длина.

Индексы - это файлы с отображением в памяти вне кучи по умолчанию.Они обеспечивают хорошее удобство использования.

Это текущая настройка по умолчанию.Код изолирует изменения, например, 64-битные идентификаторы могут быть длиннее, возможен другой выбор индекса.

...