Virtuoso рядом! (перевод)

nepomukvirtuoso

Nepomuk, это фреймворк семантического рабочего стола KDE который интересен новой технологией, и имеет потенциал по переносу многих приложений. Nepomuk требует RDF хранилище для сохранения и получения семантической информации, которая может быть данными индексов вашей файловой системы, тегами, рейтингами, и прочим. До сих пор были проблемы с производительностью этого фреймворка. Существует два пути сохранения информации : redland и sesame2. Redland написан на C++, но очень простой и зачастую не подходит для использования в Nepomuk. Бекэнд Sesame2 получше в плане производительности, но пока не совсем справляется со своей задачей. Более того, он требует некоторые Java файлы с лицензией на которые есть проблемы — в конце концов многие разработчики дистрибутивов могут выкинуть поставку этого бекэнда. Таким образом производительность Nepomuk для многих пользователей будет только ухудшаться.

Sebastian Trueg, основной разработчик семантического рабочего стола для KDE конечно в курсе этой проблемы, так что он поработал над поиском решения для хранилища RDF которое бы отвечало поставленным задачам, было производительным и стабильным. Это решение — Virtuoso, и Sebastian сейчас работает над бекендом Soprano (который будет иметь хранилищем для Nepomuk с интерфейсом Qt). Это значит, что механизмы хранения Redland или Sesame2 для Nepomuk теперь могут быть заменены на хранилище Virtuoso. Для пользователя он имеет важные преимущества: быстрый поиск, теги, рейтинг и более долгая жизнь батареи на мобильных устройствах.
Так что сегодня попробуем переключить Nepomuk-server на Virtuoso.

  • Скачиваем Virtuoso 5.0.12 или выше отсюда

./configure —prefix=/home/sebas/kdesvn/install (or whereever you install your KDE trunk)
make -j3
make install

  • устанавливаем libiodbc2-dev (на Kubuntu или libiodbc-dev на Debian)
  • пересобираем kdesupport/soprano (возможно удаление CMakeCache.txt), убедимся что бекенд Virtuoso собрался

— Found iODBC 3.52.6: libs — /usr/lib/libiodbc.so; includes — /usr/include
— Performing Test __SOPRANO_HAVE_GCC_VISIBILITY
— Performing Test __SOPRANO_HAVE_GCC_VISIBILITY — Success
—————————————————————————————
— Soprano Components that will be built:
* Sesame2 storage backend (java-based)
* Virtuoso storage backend (Run-time dependancy: Virtuoso)
* Raptor RDF parser
(including TriG parser)
* The CLucene-based full-text search index library
* D-Bus server/client support

— Soprano Components that will NOT be built:
* Redland storage backend
* Raptor RDF serializer

  • Пересобираем kdebase.
  • Правим ~/.kde{4}/share/config/nepomukserverrc и вставляем Soprano Backend=virtuosobackend в секцию [Basic Settings]. Так чтобы было что-то вроде:

[Basic Settings]
Configured repositories=main
Start Nepomuk=true
Soprano Backend=virtuosobackend

Очевидно, что строка virtuosobackend самая важная.

  • Это вся установка. Теперь перезапустите nepomukserver.

// Check which backend we’re currently using
luna.sebas(~): qdbus org.kde.NepomukStorage /nepomukstorage org.kde.nepomuk.Storage.usedSopranoBackend sesame2

// Stop the nepomukserver
luna.sebas(~): qdbus org.kde.NepomukServer /nepomukserver org.kde.NepomukServer.quit

// Start the nepomukserver
luna.sebas(~): nepomukserver

// Make sure the Virtuoso backend is used
luna.sebas(~): qdbus org.kde.NepomukStorage /nepomukstorage org.kde.nepomuk.Storage.usedSopranoBackend
virtuosobackend

Вы увидите, что началась автоматическая конвертация данных из sesame2 (или redland) формата в новый формат Virtuoso, работа будет показана в области уведомлений вашей плазмы, и может занять много времени, в зависимости от того сколько у вас данных. Можете пойти попить кофе.
На этом все. Оригинал статьи — http://vizzzion.org/blog/2009/10/virtuoso-here-i-come/

Автор: Mirivlad

Скромный труженик консоли и окошек.