Комментарии 10
«Постик» [x]
Серьёзно? :)
Серьёзно? :)
Рекомендую попробовать вот эту тулзу https://github.com/timescale/timescaledb-parallel-copy. Написана на golang, от создателей одного из самых популярных расширений для PostgreSQL — TimescaleDB.
Я на нее переехал со встроенного COPY. Позволяет в несколько потоков грузить данные, мне дало прирост на порядок.
Было бы круто увидеть сравнение по производительности с тем, что рассмотрено в статье.
было бы ещё интересно посмотреть на COPY в csv формате на графиках…
К сожалению, я не видел смысла делать COPY в CSV и текстовом форматах.
Но в разных ситуациях может быть по разному.
К примеру, если вы будете передавать на сервер много 'мелких' данных — есть смысл использовать текстовой формат для того, чтобы снизить размер буфера ( меньше нагрузка на сеть)
Бинарный формат — он же более универсальный и самый точный ( например для double чисел)
Надеюсь, я достаточно развёрнуто дал ответ.
А по поводу графиков и скорости — думаю, это будет в районе +- 5-20% ( в отличии от COPY binary ). Опять же в зависимости от того, что передаём
Но в разных ситуациях может быть по разному.
К примеру, если вы будете передавать на сервер много 'мелких' данных — есть смысл использовать текстовой формат для того, чтобы снизить размер буфера ( меньше нагрузка на сеть)
Бинарный формат — он же более универсальный и самый точный ( например для double чисел)
Надеюсь, я достаточно развёрнуто дал ответ.
А по поводу графиков и скорости — думаю, это будет в районе +- 5-20% ( в отличии от COPY binary ). Опять же в зависимости от того, что передаём
Еще бы неплохо сделать подписи к осям на графиках. Ну или написать в описании графиков каких удавов в попугаях измеряете.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Ускоряем загрузку больших объёмов в PostgreSQL, используя COPY from STDIN binary