У меня есть датафрейм, который я хочу вставить в БД. df не такой большой (~ 15 000 строк). Я пытаюсь использовать функцию to_sql () для этого, и я получаю тайм-аут. Я делаю это так:
df.to_sql(
table.name,
connection,
if_exists='append',
index=False,
chunksize=self.get_insert_chucksize(df),
schema=table.schema
)
Я проверил, чтобы убедиться, что все параметры работают, и я знаю, что все в порядке, потому что, когда я делаю:
df.head().to_sql(
table.name,
connection,
if_exists='append',
index=False,
chunksize=self.get_insert_chucksize(df),
schema=table.schema
)
Работает нормально.
Так что это выглядело как проблема размера.
Но я также знаю, что он не такой большой, потому что когда я пытаюсь выполнить этот конкретный случай вручную с помощью инструментов SQLalchemy, это займет всего несколько секунд.
Я также пробовал разные chunsizes.
Есть идеи, что мне не хватает?
Не слишком ли высокомерно, что я думаю, что может быть проблема в пандах?