Nepomuk
Nepomuk
Цель данной страницы — не детальное объяснение технологии Nepomuk, а ее краткий обзор, показ отдельных примеров, формирование видения того, что скрывается за ней, предоставление ссылок на соответствующую информацию в Интернете.
Baloo is the next generation of semantic search
From KDE Applications 4.13 onwards, the 'Baloo' file indexing and file search framework replaces Nepomuk. Read details on the changes for Applications 4.13 here. Semantic Search no longer uses a single, big database, but separate, specialized databases for each type of data. The new search databases are in $HOME/.local/share/baloo. If you upgraded to KDE Applications 4.13 from an earlier KDE release, you can delete $KDEHOME/share/apps/nepomuk.
Краткое объяснение
Как сказано в Глоссарии речь идет о классификации, организации и представлении данных. Это не приложение, а компонент, который может быть использован разработчиками в приложениях.
Попробуйте сами в Dolphin
Например, файловый менеджер, Dolphin использует Nepomuk. Чтобы воспользоваться возможностями Nepomuk и Strigi, они должны быть включены в разделе «Параметров системы» под названием . Информационная боковая панель Dolphin ( , или нажмите F11) отображает информацию о выбранном файле, которая извлекается из Strigi, и также позволяет назначать метки файлам, оценивать их и добавлять комментарии. Затем эта информация сохраняется в Nepomuk. Затем вы можете выполнять поиск по меткам в панели поиска Dolphin. Нажмите на , или Ctrl+F,и ищите по имени файла или содержимому.
Функциональность
Nepomuk предлагает приложениям несколько уровней функциональности. Первый и наиболее простой из них, позволяет вручную устанавливать метки, оценки и добавлять комментарии для файлов, как это сделано в Dolphin. Это поможет вам найти ваши файлы быстрее, но требует много ручной работы.
Чтобы сделать поиск текстовых файлов легче, Nepomuk предлагает вторую функциональность: индексирование текста, содержащегося в файлах. Для этого используется технология, называемая Strigi. Вы можете найти эти файлы, введя слова, которые содержатся в этих файлах, или просто название файла (или его часть).
Третий уровень достаточно сложен, не зря Nepomuk задумывался как исследовательский проект рядом компаний и университетов Европейского союза. На этом уровне вы столкнетесь с такими словами и выражениями, как: "семантический рабочий стол" и "онтологии". В основном речь идет о контексте и отношениях.
Индексирование файлов
Strigi не индексирует все файлы на жестком диске. Конфигурация по умолчанию в большинстве дистрибутивов исключает некоторые общие закономерности для резервного копирования файлов и каталогов конфигурации, и это только индексы определенных каталогов в вашем домашнем каталоге. Вы можете изменить это в
.В Параметры системы вы также можете управлять поведением Strigi при индексировании файлов на съемных носителях, таких как USB-диски и компакт-диски.
Примеры
С помощью двух примеров поясним, что предлагает Nepomuk.
Отношение
Скажем, 2 недели назад вы получили фотографию своего друга и сохранили ее где-то на компьютере. Теперь вы хотите найти ее. Если вы не помните, где вы ее сохранили, то вам не повезло.
Теперь Nepomuk стремится помочь вам. Вы знаете что файл с фотографией пришел вам от вашего друга, но компьютер ничего об этом не знает. Однако Nepomuk может запомнить это отношение. Для того чтобы найти фото запустите поиск по имени вашего друга.
Другие примеры потенциальных отношений, которые могут быть установлены: между веб страницей, с которой был скопирован текст, и документом, в который этот текст был вставлен или между двумя изображениями одной и той же машины. Такие отношения могут быть определены по содержимому файлов (вы можете просмотреть фото и понять кто или что изображено на них) или установлены использованным приложением (как в случае с примером о электронной почте от друга). Эта часть Nepomuk все еще активно разрабатывается и требует интеграции в приложения. Возможно придется подождать еще несколько лет прежде чем начать использовать эту возможность.
В общем эта часть Nepomuk делает поиск интеллектуальным. Вспомните как Google пытается сделать ваши поисковые запросы более интеллектуальными: когда вы ищете отель в каком либо городе, показываются не только сайты отелей, но и их расположение на google map в том городе что вы указали. Система может даже предложить более удачное название, в случае если вы допустили ошибку. Google также пытается расположить самую релевантную информацию в начале списка результатов, используя сложные расчеты для определения отношений (связей) между веб-сайтами. Nepomuk сможет предложить такой же интеллектуальный поиск и упорядочить результаты по релевантности используя информацию об отношениях.
Контекст
Отношения могут помочь не только при поиске файлов, но также оказывают влияние на приложения и как и какую информацию они будут представлять. Обратите внимание, что подобный способ использования Nepomuk, все еще скорее видение проблемы, чем реальность. Многие компоненты уже реализованы, но все еще не интегрированы в приложения и рабочий стол.
Этот пример доставки на рабочий стол информации о контексте может помочь вам работать более эффективно.
Скажем, вы работаете над заметками, которые были сделана на собрании. Раздается телефонный звонок, и кто-то просит вас найти файлы электронных таблиц с ценами, подобранные по клиентам. После некоторого времени вы обнаружите что весь рабочий стол забит файлами и окнами...
Было бы неплохо иметь возможность организовать все это немного лучше, верно?
Создайте 'комнаты (activities)'. Они были введены в концепции Plasma и в настоящее время представляют собой различные 'рабочие столы'. Они чем-то напоминают виртуальные рабочие столы, только в этом случае изменяется сам рабочий стол, а не набор приложений на нем. Комнаты имеют различные виджеты, фоны и т.п. Конечно, начиная с KDE 4.3, у каждого виртуального рабочего стола может быть своя собственная комната, которую он будет синхронизировать с собой.
Чтобы приложения и рабочий стол были в курсе вашей деятельности, вы могли бы создать комнату для каждой часто выполняемой задачи. Следовательно, если вы вынуждены часто править электронные таблицы с ценами, то вы можете создать комнату для этой задачи: поместить на рабочий стол виджет "Просмотр папки" (или несколько), добавить калькулятор и виджет "Список дел", чтобы помнить что еще предстоит изменить. Возможно даже виджет папки электронной почты, чтобы видеть письма с вопросами относительно таблиц с ценами!
Сразу как только кто-то спрашивает о ценах, вы переключаетесь на эту комнату. Запускается приложение электронных таблиц. Т.к. оно в курсе вашей деятельности, то показывает последние таблицы с ценами, а не список последней инвентаризации с которым вы работали в последний раз в другой комнате! Kopete, приложение для обмена мгновенными сообщениями, показывает вам коллегу, которая все знает о ценах, т.к. она тот человек с которым вы постоянно общаетесь, когда работаете в этой комнате.
Когда вы заканчиваете и переключаетесь обратно в другую комнату, то снова все приложения подстраивают свое поведение так, чтобы удовлетворять вашей деятельности.
Выгоды от рабочего процесса основанного на комнатах больше чем можно себе представить в начале. Это помогает не только находить файлы и нужные контакты, но также само по себе помогает переключаться между задачами. Человеческий мозг не сильно хорошо приспособлен для "мультизадачности", большинству людей требуется несколько минут чтобы войти в "рабочий режим" после переключения между задачами. Переключение 'среды' здорово помогает в ускорении этого процесса, даже если это всего лишь на экране. Вспомните как приходит отпускное настроение когда вы еще только начинаете начинаете упаковывать сумку!
Конечно, вышесказанное в основном относиться к людям, работающим за компьютером в офисе или дома. Вероятно, эта информация не будет особо полезной для любителей компьютерных игр или случайных пользователей.
Обратите внимание, что пройдет еще несколько лет прежде чем вышеописанный сценарий воплотиться в реальность. Большая часть инфраструктуры для KDE уже реализована, но еще много предстоит сделать.
Часто задаваемые вопросы
Следующий текст взят из сообщения из форумов KDE. Пожалуйста, не стесняйтесь добавлять/удалять /изменять информацию, если у вас есть время!
Что такое Nepomuk Semantic Desktop и Strigi Desktop File Indexer?
Nepomuk Semantic Desktop является основой всех других модулей инфраструктуры Nepomuk. Он дает возможность организовать, комментировать и строить отношения среди данных (не только имя файла и содержание, но, например, то, какие приложения использовали определенный файл, или как он был помечен). Ряд приложений KDE и рабочие области используют эту базовую инфраструктуру для доставки функций, таких как пометка писем (KMail) или настройка комнат (Plasma).
С другой стороны, Strigi Desktop File Indexer представляет собой систему индексирования файлов, таким образом, они могут быть добавлены в основное хранилище Nepomuk удобным способом, для того, чтобы использовать их в Nepomuk без их добавления вручную. Кроме того, приложения, такие как Dolphin могут производить поиск файлов на основе содержания, имени или других мета-данных (например, тегов), связанных с индексированными файлами. Индексатор также может индексировать нетекстовые файлы, такие как PDF-файлы, обращаясь к мета-данным, содержащимся в этих файлах (автор, публикуемая информация и т.д.). Некоторые компоненты KDE поставляют дополнительные «анализаторы» для нескольких типов файлов. Nepomuk может быть полностью функциональным без использования индексатора файлов, который является дополнительным (и опциональным) компонентом.
Зачем нам нужны Akonadi и Nepomuk? Разве они не делают одно и то же?
- Зачастую существует много путаницы насчет Akonadi и Nepomuk. Ресурс Почему данные из Akonadi индексируются в Nepomuk доходчиво объясняет, почему у нас есть и другое, и какова их роль. Не упустите дополнительную информацию от Уилла Стивенсона в разделе комментариев.
- Как мне отключить semantic desktop?
- В большинстве случаев, самым простым способом является отключение индексации файлов, которая, как правило, находится между компонентами Nepomuk, весьма охотлива на использование ресурсов (тем не менее, множество оптимизаций было реализовано в версии 4.7, что привело к снижению использования ресурсов). Это можно выполнить, сняв флажок с Поиск по меткам и содержимому Параметров системы. В случае, если вы хотите отключить все семантические особенности, снимите флажок . Обратите внимание, что это действие также отключит поиск в Dolphin. в разделе
In versions of the KDE Applications before 4.13, Semantic Search would have components running separate from applications. This functionality could be disabled by unchecking Desktop Search section of System Settings. In case you want to turn off all semantic features, uncheck . Notice that this will turn off search in Dolphin as well.
in the- Обратите внимание, что с последней опцией некоторые программы, которые используют Nepomuk по метаданным, предложат ограниченную функциональность: например KMail не сможет помечать письма, или например, Plasma activities не станет предлагать дополнительные функции например, пиктограммы, или данные о программах.
- Baloo/Semantic Search is eating 100% CPU! What do I do?
- Just wait. Certain files are very hard or even impossible to Index. At the moment, this includes for example text files of over 50 megabyte. When Search finds these, it will try for a fixed time. When it fails, it will try to find out what file is broken and disable indexing it in the future. As it indexes files in batches of about 40, it has to find the problematic file by indexing that bunch in parts: first half/second half, index problematic half in pieces again, until the file is found. This can take up to 30 minutes of heavy cpu usage. Unfortunately, while Baloo will not start to index a new batch of 40 files while on battery power, it continues to determine the broken file while on battery. This behaviour has been fixed in in KDE Applications 4.13.1 (it will stop indexing immediately when the power cord is unplugged) and the time the search for each file can take has been reduced to about 10 minutes. The Semantic Search team is working on improving the indexing tools to handle more difficult files.
- Почему я вижу процесс nepomukservicestub, хотя я отключил Nepomuk?
- Это может быть программной ошибкой. Пожалуйста, создайте отчет об ошибке с полным описанием вашей проблемы и необходимыми шагами для ее воспроизведения.
- Индексирование PDF файлов/некоторых других типов файлов не работает.
- Индексирование PDF это известная проблема, и отслеживается в bug #231936. Если у вас есть проблемы с другими файлами, создайте отчет об ошибке, предпочтительно добавив образец проблемного файла.
- Приложение nepomukservicestub падает при запуске.
- Большое количество исправлений от падений была зафиксировано для релиза 4.7.2 KDE Workspaces and Applications. Если вы столкнулись с ними больше, создайте отчет об ошибке с подробными инструкциями о том, как воспроизвести проблему, так как иногда разработчики не в состоянии воспроизвести их в своих инсталляциях.
- Процесс virtuoso-t зависает при 100% загрузке процессора.
- Virtuoso-t является ключевым компонентом инфраструктуры Nepomuk, и в некоторых случаях обработка команд, получаемых от других компонентов занимает слишком много времени (и, что следовательно, выявляется в виде процессора на 100%). Себастьян Труг (ведущий разработчик Nepomuk) исправил большинство из этих проблем в 4.7.1 или более новой.
Virtuoso is no longer used by Semantic Search starting the Applications 4.13 release.
- Иногда Nepomuk потребляет слишком много оперативной памяти.
- Большинство из этих проблем было исправлены, однако в некоторых случаях, разработчики не в состоянии корректно воспроизвести проблемы. В этом случае, прикладывание примеров и тестов к отчетам об ошибке увеличивает шансы на исправление этих ошибок.
- Nepomuk обращается к диску слишком много при запуске.
- В версии 4.7 и более новых эта проблема была минимизирована благодаря дроссельному механизму, реализованному в индексаторе файлов.
- База данных Nepomuk была повреждена. Как мне ее очистить?
- В крайнем случае, если ваша база данных действительно повреждена, и все другие попытки оказались неудачны, вы можете удалить $KDEHOME/share/apps/nepomuk (где $KDEHOME как правило .kde или .kde4) или запустить утилиту очистки nepomukcleaner при незапущенном Nepomuk. База данных будет очищена, но вы также потеряете существующую информацию, такую как теги, рейтинги и комментарии.
Дополнительные способы устранения неполадок
Совместное использование и конфиденциальность
Существует еще одна вещь которую стоит упомянуть, прежде чем дать ссылки на другие источники информации: совместное использование данных Nepomuk. Это было бы здорово, если бы вы могли совместно использовать теги, оценки и комментарии с другими, когда отправляете им файлы. Однако, если вы пометили контакт немного фривольным тегом ('скучно в кровати') и посылаете эту контактную информацию общему другу, то вы вероятно не захотите, чтобы этот признак был тоже отправлен...
Эта проблема является важным предметом для исследования в Nepomuk. В настоящее время, из за существования проблем конфиденциальности и ряда технических вопросов контекст Nepomuk остается конфиденциальным. Будем пребывать в уверенности что команда Nepomuk сделает все возможное, чтобы ваша частная жизнь уважалась.
Внешние ссылки
The old Search technology: