Партизанская – это популярный онлайн‑ресурс, посвящённый обсуждению истории, культуры и современной жизни России. Одной из самых ценных его частей является архив – хранилище старых тем, статей и медиа‑материалов, которое позволяет пользователям возвращаться к уже опубликованному контенту, исследовать прошлое и находить ответы на вопросы, возникшие давно.
Содержание статьи
- Что такое архив на партизанской?
- История создания архива
- Структура и типы материалов
- Как получить доступ к архиву
- Поиск в архиве: особенности и рекомендации
- Технические детали (коллейшн, кодировка, поиск)
- Часто задаваемые вопросы
Что такое архив на партизанской?
Архив – это отдельный раздел сайта, где хранятся все сообщения, темы и файлы, опубликованные с момента запуска ресурса в 2005‑м году. По сути, это «временная машина», позволяющая:
- Просматривать старые обсуждения по темам: история, политика, культура, техника.
- Скачивать оригинальные вложения (фото, документы, аудио‑записи).
- Анализировать развитие дискуссий и изменение общественного мнения.
Почему архив важен?
Для исследователей, журналистов и просто любопытных пользователей архив – единственный источник, где можно найти оригинальные высказывания участников, которые со временем могут исчезнуть из поисковых систем. Кроме того, архив помогает поддерживать прозрачность и историческую достоверность контента.
История создания архива
Первоначально Партизанская представляла собой небольшое сообщество на базе форума phpBB. С ростом количества сообщений администраторы столкнулись с проблемой:
«Как хранить и быстро находить миллионы постов без потери производительности?»
В 2010‑м году был внедрён собственный движок с поддержкой PostgreSQL и UTF‑8 кодировки. Для корректного поиска по русским символам была выбрана коллейшн ru_RU.UTF8, что решило проблему с регистром (см. пример из Stack Overflow о том, что collation C не умеет правильно преобразовывать кириллицу).
С 2015‑го года архив стал публичным, а в 2022‑м году был полностью реинжинирирован с использованием Elasticsearch, что позволило реализовать быстрый полнотекстовый поиск.
Структура и типы материалов
Архив делится на несколько основных разделов:
- Темы форума – более 2 млн записей, сгруппированных по категориям.
- Статьи – аналитические материалы, опубликованные редакцией.
- Мультимедиа – фото‑ и видеоматериалы, доступные для скачивания.
- Документы – PDF, DOCX, TXT‑файлы с исследованиями и отчетами.
Каждый объект имеет метаданные: дата публикации, автор, теги, количество просмотров и идентификатор (ID), который используется в поисковых запросах.
Как получить доступ к архиву
Через веб‑интерфейс
- Перейдите на главную страницу Партизанской.
- В верхнем меню выберите пункт «Архив».
- Выберите нужный раздел (форум, статья, медиа).
- Используйте фильтры по дате, автору или тегам.
Через API
Для разработчиков доступен REST‑API, позволяющий получать данные в формате JSON. Пример запроса:
GET https://api.partezanskaya.ru/v1/archive/posts?tag=история&date_from=2020-01-01&date_to=2020-12-31 Ответ содержит массив объектов с полями id, , content, author, published_at.
Через клиентские программы
Существует несколько сторонних утилит (например, PartezArchiver), которые позволяют скачивать выбранные темы целыми пакетами.
Поиск в архиве: особенности и рекомендации
Поиск – одна из самых часто используемых функций архива. Ниже перечислены основные нюансы, которые помогут получать точные результаты.
Регистронезависимый поиск по русским символам
Для корректного сравнения строк в PostgreSQL необходимо использовать коллейшн, поддерживающий кириллицу (например, ru_RU.UTF8). Пример:
SELECT * FROM posts
WHERE ILIKE '%партия%' COLLATE "ru_RU.UTF8"; Если использовать коллейшн C, то LOWER('После') вернёт f, что свидетельствует о неправильном преобразовании регистра.
Поиск с учётом пунктуации
По умолчанию система удаляет знаки препинания (точки, запятые, кавычки) в процессе индексации, чтобы улучшить релевантность. Если требуется искать точную фразу, включите режим literal search:
GET /v1/archive/search?q="«Капитализм»&mode=literal Исключение результатов на других языках
Для фильтрации только русскоязычных записей добавьте параметр lang=ru:
GET /v1/archive/search?q=экономика&lang=ru Использование регулярных выражений
Если необходимо исключить определённые фразы, можно воспользоваться REGEXP в запросах к базе:
SELECT * FROM posts
WHERE content ~* '^(?!.(спам|реклама)).$'; Это выражение отбрасывает сообщения, содержащие слова «спам» или «реклама».
Технические детали (коллейшн, кодировка, поиск)
| Параметр | Значение | Назначение |
|---|---|---|
| База данных | PostgreSQL 15 | Хранение структурированных данных |
| Кодировка | UTF‑8 | Поддержка всех символов Unicode, включая кириллицу |
| Коллейшн | ru_RU.UTF8 | Корректное сравнение и сортировка русских строк |
| Поисковый движок | Elasticsearch 8.x | Полнотекстовый поиск, фасетный фильтр, синонимы |
| API | REST, JSON | Доступ к архиву для сторонних приложений |
В 2024‑м году была добавлена поддержка мульти‑языковой индексации, что позволило хранить и искать контент одновременно на русском, английском и украинском языках.
Часто задаваемые вопросы
- Можно ли скачать весь архив?
Полный дамп базы доступен только администраторам. Пользователи могут скачивать отдельные темы или пакеты до 500 МБ через официальную утилиту. - Как восстановить удалённую тему?
В течение 30 дней после удаления тема сохраняется в «корзине» и её можно восстановить через панель управления. - Почему поиск иногда не находит нужные слова?
Возможные причины:- Текст был проиндексирован до обновления коллейшн.
- Слова находятся в «стоп‑листах» (часто встречающиеся, незначительные).
- В запросе использованы специальные символы без экранирования.
- Можно ли добавить свои теги к старым записям?
Да, зарегистрированные пользователи с правом «модератора» могут редактировать метаданные через «Редактировать метки» в интерфейсе архива.
Архив на Партизанской – это мощный инструмент для исследования российской истории, культуры и общественных дискуссий. Благодаря правильной настройке коллейшн ru_RU.UTF8, использованию современных поисковых технологий и открытым API, пользователи могут быстро находить нужную информацию, скачивать материалы и даже интегрировать их в свои проекты.
Помните, что для получения наилучших результатов следует:
- Указывать язык поиска (
lang=ru). - Использовать кавычки для точных фраз.
- При необходимости включать режим literal или использовать регулярные выражения.
Если у вас возникнут вопросы, обратитесь к разделу помощи или к сообществу разработчиков через GitHub.
Дата последнего обновления статьи: 05:37:13