Есть БД в которой таблица log (протоколирование действий пользователей). В неё пишутся данные из большого количества мест (сервеное ПО, триггеры и хранимые процедуры). Объём таблицы ощутимо большой.
Т.к. чтение из этой таблицы происходит крайне редко (только при "разборе полётов"), и скорость не важна, возникла мысль писать просто в текстовые файлы (CSV). Вспомнился CSV Storage Engine в СУБД MySql. Но, к сожалению, в PG нет механизма STORAGE ENGINE.
Попробовал варианты:
1. FOREIGN DATA WRAPPER
Не подходит, т.к. в случае с CSV-файлами работает только на чтение
2. С помощью FOREIGN DATA WRAPPER сделать "мост" к MySql, а уже там сохранять в CSV
Требуется MySql-сервер, что не очень удобно.
3. Используя планировщик и команду COPY TO регулярно экспортировать данные в CSV-файлы (можно с последующей архивацией)
Выглядит уж как-то очень "костыльно", появляется ещё одна "точка отказа"
sim3x:
Цель - разгрузить БД от огромного количества логов (в которые в нормально режиме идёт только запись).
Чтение логов можно производить и из текстовых файлов.