solovyov.net

Как постгрес тормозил

1 min read · postgres, humor, db

Сегодня напоролись на смешной прикол. Со внешнего сайта собирается некоторое количество данных и запихивается в базу. Сначала в сырые таблички, а потом обрабатывается и пихается на положенное место вместе с инициализацией кое-какой инфраструктуры. Ну и всё бы неплохо, если бы сбор данных (и запихивание в сыром виде) не происходило за 2 секунды, против 10 секунд (в среднем) на запихивание на нужное место.

Мы уже начали размышлять, как бы оптимизировать наш любимый Постгрес, у меня начали появляться мысли о том, что с записной книжкой1 я таких траблов не видал, или что может транзакции не работают, или ещё какая-то страшная фигня произошла.

Ну, подёргал я постгрес немножко, но ничего не меняется - пришлось преодолеть лень и посмотреть, какие ж запросы там исполняются (хотя бы проверить, транзакция стартует или нет). Ну и сразу все сомнения развеялись:

[17:20] Murkt> 
In [22]: len(connection.queries)
Out[22]: 2759

:D


  1. mysql, кто ж ещё? :-) ↩︎

If you like what you read — subscribe to my Twitter, I always post links to new posts there. Or, in case you're an old school person longing for an ancient technology, put a link to my RSS feed in your feed reader (it's actually Atom feed, but who cares).

Other recent posts

Server-Sent Events (SSE), but with POST
ngrok for the wicked, or expose your ports comfortably
PostgreSQL collation
History Snapshotting in TwinSpark
Code streaming: hundred ounces of nuances