@kukarekuu

Какой оптимальный вариант переливки миллионов строк из одной БД в другую, используя Pandas?

Есть задача - перелив нескольких таблиц (~10 млн. строк каждая / ~ 20 столбцов) из MSSQL в Postgres. Сейчас я переливаю их с помощью python+pandas.
Переливаю стандартно: читаю из MSSQL (pd.read_sql()), и получившийся DataFrame лью в другую базу(pd.to_sql()). Способ рабочий, но работает, на мой взгляд, довольно долго - около полутора часов на перелив 10 млн. записей (сервера MSSQL и Postgres находятся на разных машинах, но в одной сети).
Думал в сторону многопоточности, и даже реализовал многопоточность в том случае, если требуется перелив из нескольких CSV в базу.
Но в случае перелива из БД в БД никак не выходит применить многопоточность.
Есть какие-нибудь библиотеки или методы в pandas, с помощью которых можно было бы ускорить это дело?
Либо, быть может, кто-то успешно реализовал многопоточность в такой задаче?
  • Вопрос задан
  • 352 просмотра
Решения вопроса 1
tsklab
@tsklab Куратор тега SQL Server
Здесь отвечаю на вопросы.
Оптимально использовать "Импорт и экспорт данных SQL Server". Документация.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы