Задать вопрос
@mihmig

Postgresql: возможно ли запись сразу в CSV?

Есть БД в которой таблица 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-файлы (можно с последующей архивацией)
Выглядит уж как-то очень "костыльно", появляется ещё одна "точка отказа"

Может есть какие ещё варианты?
  • Вопрос задан
  • 279 просмотров
Подписаться 1 Оценить 4 комментария
Пригласить эксперта
Ответы на вопрос 1
@Kostik_1993
Web Developer
Например в PHP для этого есть file_put_contents(), пишите сразу в файл в обход БД
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы