我在熊猫数据框中有一些数据集,希望写入Vertica.我已经使用vertica_python库创建了表.将数据帧写入Vertica的最佳方法是什么?
解决方法:
通常,在连接到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中创建字符串以使其更快.