В предыдущей статье мы рассказали про наш open-source продукт для поиска данных по шарам и файло-помойкам. С тех пор мы доработали продукт и значительно усовершенствовали поиск, добавив именованные сущности, теги, статистику по запросу и структуру папок. Эти улучшения позволяют переходить от поиска к анализу данных, в статье рассмотрим все это подробней.
Теоретическая часть
Сначала расскажу про теоретическую часть, а именно как работают теги и именованные сущности в Ambar.
Теги в Ambar это дополнительная мета информация на уровне файла, приведу пример — вы нашли скан бух. отчета за прошлый год, чтоб его больше не потерять можно добавить ему тег "отчет". После того как все отчеты будут помечены вы сможете легко их найти с помощью поиска по тегу.
Чтобы облегчить жизнь Ambar умеет автоматически проставлять теги по внутренним правилам, примеры правил:
- проставляем тег "image" если у документа MIME тип
image
- проставляем тег "archive" если документ имеет расширение zip, rar, 7z, и др.
Подведем итог, с помощью тегов Ambar умеет отвечать на следующие поисковые запросы: покажи все изображения (запрос: tags:image
), покажи все файлы, на которых с помощью OCR распознано слово 'конфиденциально' (запрос: tags:ocr конфиденциально
), покажи мне все сканы отчетов (запрос: tags:image,отчет
).
Именованные сущности в Ambar работают на уровне содержимого документа, например, сейчас Ambar умеет находить в содержимом документа IP адреса, ИНН, названия компаний, номера телефонов, регистрационные номера автомобилей, URI идентификаторы (ссылки), адреса эл. почты.
Именованная сущность — это некое правило, которое позволяет с большой вероятностью определить, что в тексте данное слово или несколько слов определяют сущность некоторого типа. Например, для ИНН можно упрощенно описать правила следующим образом: 11 или 13 цифр, удовлетворяющих специальному правилу вычисления контрольной суммы. После того как именованная сущность найдена мы приводим ее к нормальному виду, так следующие телефонные номера это одна и та же сущность: +7 999 111 22 33 и 8999111-22-33.
Посмотреть какие сущности найдены Ambar в документе можно с помощью кнопки "Просмотр". Также стоит отметить, типы именованных сущностей, найденных в документе, сразу добавляются как теги, это значит, что если в содержимом документа найдены IP адреса, то файл непременно получит тег "ip".
Подведем итог, с помощью именованных сущностей Ambar умеет отвечать на следующие поисковые запросы: покажи мне все файлы где встречается IP адрес 192.168.1.1 (запрос: entitites:"192.168.1.1"
), покажи мне сканы документов в которых встречается ИНН такой-то компании (запрос: entitites:"123123123123" tags:ocr
). Напоследок скажу по-секрету — в следующем релизе Ambar мы планируем добавить подключение сторонних сущностей как плагинов.
От теории к практике
Допустим вы уже настроили Ambar и проиндексировали некоторое количество файлов, чтобы понять, что же хранится на этих шарах предлагаю ввести поисковый запрос *
(показать все) и перейти на вид "Статистика". Из этого представления сразу становится ясно сколько файлов найдено и каков их размер, а также какие типы файлов найдены (торрентам и фильмам точно не уйти!).
Предположим вы нашли что 30% вашей шары занимают .avi
файлы с прошлогоднего корпоратива, как понять в каких папках они располагаются? Вводим запрос size>500M filename:*.avi
и переходим на вид папки. Видим в каких папках наибольшее количество попаданий и с чистой душой удаляем их.
Рассмотрим более сложный пример, вам нужно найти номер телефона сотрудника. Вводим запрос "Иванов Иван" tags:phone
и переходим на вкладку "Статистика". Выбираем найденные именованные сущности типа телефон и переходим на детальный вид для просмотра текста документа, если результатов много используем табличный вид или уточняем запрос.
В дальнейшем мы планируем развивать аналитическую часть Ambar, а именно: создание кастомных правил тегирования пользователя, кастомных сущностей (уже были запросы добавить марки автомобилей) и визуализация связей между найденными сущностями.
Спасибо за внимание!
Автор: Ilya