我在pandas数据框中有一些数据集,我希望写入Vertica。我已经使用vertica_python库创建了我的表。将数据框写入Vertica的最佳方法是什么?
答案 0 :(得分:3)
通常在连接到Vertica时,您可以使用Postgresql作为替身,因为Vertica的某些部分最初基于Postgresql。
from sqlalchemy import create_engine
engine = create_engine('postgresql://user:pass@host:5433/MYDB')
df.to_sql('table_name', engine)
如果这不起作用,您可以尝试使用vertica-sqlalchemy包。
此外,根据创建的SQL(如果ODBC驱动程序将INSERT
转换为COPY
),这可能会非常慢。如果您发现它在数据库上执行了大量单独的插入操作,那么您可能希望切换到创建字符串的COPY
方法和COPY FROM STDIN
以使其更快。