Код еще буду рефакторить и проходить по нему профилировщиком.
GitHub Link
Метки извлеченные из записей имеют приблизительно следующую схему
Example
Для чего может пригодиться? Например если необходимо получить ЧЕСТНУЮ json-копию ваших записей. Или можно сделать xml-поток и направить его в индексатор Sphinx. Тут уже все зависит от ваших потребностей. Данный скрипт - отличная замена стандартному функционалу экспорта Ирбис64 и позволяет отправить данные в любую базу данных будь то mysql, mongo или что там еще. Благодаря modified_at можно пропускать записи, которые уже есть в базе данных - посреднике. Например вы положили с помощью этого скрипта все записи в mongo. Сохраняете таймштамп последней индексации и, например, таймштамп последней модификации mst как файла. В следующий раз вам достаточно будет проверить модифицировался ли mst, если да, то добавляете фильтр modified_at > даты последней индексации и в итоге получаете только свежие записи.
В планах разобраться в спецификации остальных файлов-маппингов, которые позволят быстрее искать в .MST нужные записи без необходимости полностью читать файл с самого начала.
В библиотечном деле и в разработке в целом недавно, но мне пока нравится. Есть над чем работать.
Написать можно всегда в тг @tsfex
[maglib.ru]
Редактировано 5 раз. Последний раз 04.04.2022 12:18 пользователем exieros.