Индекс: OpenSearch для Markdown-библиотеки
Создадим «Индекс» — отдельную поисковую копию собственной Markdown-библиотеки. Пройдём от договора полей к mappings и русскому анализу, загрузим документы, добавим точные фильтры, фасеты, безопасные фрагменты и управляемое ранжирование. Затем разберём изменения, удаления, aliases, reindex, доступ и сопровождение.
Серия посвящена операциям поискового движка и его индекса. Общая модель поиска уже раскрыта в поиске по сайту, векторный маршрут — в RAG и pgvector. Эти курсы не являются обязательным скрытым источником кода нового проекта. Достаточно знакомства с Python, HTTP, JSON и Markdown.
Python 3.13, OpenSearch 3.9.0; сторонних Python-пакетов нет. Для импортёра требуется Unix-подобная среда с fcntl. Сервер читатель предоставляет отдельно.
Один владелец записи, один shard без replicas, узкий Markdown-формат, публичный фильтр без входа сотрудников и последовательный loopback HTTPServer. Пример не обещает производственную устойчивость, измеренное качество или автоматическую интеграцию с RabbitMQ.
Архив полного итогового проекта содержит реальные исходники, README, данные и карту этапов. Это один проект, не набор самостоятельных снимков уроков. Учебные приложения, broker/engine, базы, запросы, тесты и замеры при подготовке не запускались. Все результаты статей обозначены ожидаемыми.
Уроки и результаты
Восемь серий объединяет маршрут интерактивного веба.