Я не эксперт в timescaledb, но я не думаю, что он делает что-либо, просто будучи установленным. Вы должны вызывать его на каждом столе, для которого вы хотите его использовать, а вы этого не делаете. Таким образом, вы просто используете простой PostgreSQL здесь.
Pandas 'to_sql
очень медленно. По умолчанию он вставляет одну строку для каждого оператора INSERT, что очень плохо сказывается на производительности. Если вы используете более новую версию pandas (> = 0.24.0), вы можете указать to_sql(...,method='multi',chunksize=10000)
, чтобы сделать это отстой немного меньше, указав несколько строк для оператора INSERT. Я думаю, что pandas реализовал это таким образом, вместо того, чтобы использовать массовый импорт, потому что каждая система баз данных выполняет массовый импорт по-своему.
Вы в корне неправильно используете pandas. Это библиотека для анализа данных, а не библиотека для массовой загрузки базы данных. Вы не только не пользуетесь возможностями массового импорта, определяемыми базой данных c, но и анализируете весь файл csv в кадре данных в памяти, прежде чем начать запись любого из них в базу данных.