Virtuoso 7 аварийно завершает работу при массовой загрузке

Я пытаюсь создать локальную конечную точку SPARQL для Freebase для проведения некоторых локальных экспериментов. При использовании Virtuoso 7 я регулярно вижу, как OOM killer убивает сервер. Я выполнил все необходимые шаги, указанные здесь. Я также внес необходимые изменения в свой файл virtuoso.ini, как указано в разделе Настройка производительности RDF. .

Моя конфигурация системы:

  • 8 ЦП 2,9 ГГц
  • 16 ГБ ОЗУ

У меня тоже достаточно жесткого диска.

Что касается дампов данных, я разделил дамп данных freebase (23 ГБ в сжатом виде, примерно 250 ГБ в несжатом виде) на 10 меньших файлов в формате gzip, содержащих по 200 000 000 троек в каждом.

Ниже приведены изменения, которые я внес в virtuoso.ini.

NumberOfBuffers = 1360000
MaxDirtyBuffers = 1000000

MaxCheckpointRemap = 340000  # (1/4th of NumberOfBuffers)

Наряду с этим я установил vm.swapiness = 10, как указано в 2.

Я упускаю что-то очевидное?

P.S.: virtuoso-opensource-6.1 тоже пробовал. Но оказалось, что слишком медленно.

Одно интересное наблюдение, которое я сделал, заключалось в том, что во время процесса массовой загрузки потребление памяти virtuoso-6.1 росло слишком медленно, но это может быть связано с тем, что само общее индексирование было слишком медленным.

Другое наблюдение, которое у меня было, заключалось в том, что виртуоз-6.1 во время запуска занимает почти незначительную память (порядка 500 МБ), тогда как виртуоз-7 начинается примерно с 6500 МБ и быстро растет.

Любая помощь в этом отношении будет высоко оценена.


person karora    schedule 03.03.2014    source источник
comment
Точная версия Virtuoso важна — обычно лучше всего выводить virtuoso-t -?, скорректированную для имени вашего локального двоичного файла. Используете ли вы встроенные функции массовой загрузки в соответствии с рекомендациями ? При 16 ГБ общей памяти у вас, вероятно, будет 10–14 ГБ свободной памяти. %20to%20determine%20available%20Memory" rel="nofollow noreferrer">сообщите о настройках настройки.   -  person TallTed    schedule 23.12.2015
comment
Обратите внимание, что на вопросы, касающиеся Virtuoso, часто можно быстрее ответить на специализированные каналы, такие как список рассылки пользователей Virtuoso, общедоступные форумы поддержки или конфиденциальный запрос в службу поддержки. (Отказ от ответственности: я работаю на OpenLink Software, производителя Virtuoso.)   -  person TallTed    schedule 23.12.2015


Ответы (1)


Количество используемых вами буферов слишком велико. Не забывайте, что часть памяти также потребляется ОС и другими процессами.

Какую именно версию вы используете? (разработка или стабильная ветка?)

Используете ли вы чередование дисков?

Я загружаю freebase и в Virtuoso 7, но я использовал файлы меньшего размера. Около 260 файлов, сжатых gzip, по 10 миллионов троек каждый = около 100 М. Коммит выполняется после каждой загрузки файла.

Возможно, вам будет проще использовать изображения с Virtuoso, предварительно загруженные Freebase

person JosefN    schedule 14.03.2014