
Пошук документів у мережевих кулях та файлових смітниках
Майже кожен з нас коли-небудь працював у компанії, де є всіма ненависна "файлопомийка" "- кулі з тисячами документів без будь-якої структури. І напевно у кожного був момент, коли йому потрібно було щось в цьому смітнику відшукати. «» А Василич цей звіт на шару кидав минулого місяця, глянь там «» - чули ми від колеги, а той самий Василич на питання «» А в якій папці? «» звичайно ж відповідав «» А х... не пам'ятаю, загалом, сам шукай «». І ми занурювалися в багатогодинне пекло - бродили по папках з документами з 90-х, фотографіями котів, договорами впереміш з анекдотами та іншим шлаком в надії знайти заповітний документ.
Напевно багато хто з нас намагалися навести в цій кулі порядок, «» З мене вистачить, зараз візьму, розгребу все і розкладу по поличках «» - заявляли ми всім, витрачали години, дні і тижні свого часу розгрібаючи завали. А паралельно Василіса Семенівна з бухгалтерії, або той же Василич знову розбавляли розібрані файли своїми документами, котами, анекдотами та іншим, повертаючи звичний хаос на своє місце. І так тривало до тих пір, поки ви не здалися. І кулька назад перетворилася на звичний смітник.
Як бути?
Раз ідея змусити всіх користувачів підтримувати порядок в кулі зазнала фіаско, значить потрібно шукати альтернативні підходи. Очевидним вибором з мінімальними трудовитратами був би пошуковик, який дозволяє виконувати пошук як за назвами і метаданими, так і за вмістом всіх файлів у смітнику.
Коли ми перебували на етапі вирішення даної проблеми для наших клієнтів, ми в першу чергу розглянули наявні системи для пошуку і менеджменту документів, віддаючи пріоритет open-source рішенням. Не вдаючись в деталі пошуку і дослідження відразу декларую результат: швидкого, простого і зручного рішення для індексації і пошуку в кулях, з OCR, тегуванням і підсвічуванням іменованих сутностей просто не існувало.
Що далі? Рішення
Тому, бачачи цю проблему в багатьох компаніях, ми зважилися на створення свого продукту, звичайно ж open-source'ного.
У підсумку у нас вийшов Ambar - система для пошуку і структуризації документів, яка нарешті відповідала всім нашим вимогам (GitHub), а саме:
- Миттєвий пошук за вмістом документів, у т. ч. зображень
- Тегування документів, в т. ч. автоматичне (наприклад, позначати всі зображення тегом image, або позначати всі документи, де є IP адреси тегом ip)
- Підтримка всіх офісних форматів (у т. ч. openoffice), pdf з картинками і старих кодувань на зразок CP866
- Автоматичне збирання та синхронізація документів з помийок
Розглянемо варіант вирішення нашої проблеми за допомогою Ambar, за кроками:
- Встановлюєте Ambar на лінукс сервері: потрібен Docker і Ubuntu Server 16.04 і вище (
інструкція з установки англійською)
- Налаштовуєте SMB або FTP краулер (інструкція англійською)
- Спостерігаєте за процесом індексації ваших документів на сторінці статистики
- Використовуйте пошук з тегами та іншими плюшками
Підсумок
У цій короткій статті ми поділилися нашим болем, пов'язаним з великими файловими смітниками в компаніях і нашим підходом до вирішення цієї проблеми.
Дякую за увагу!