如何使用python从vertica写入1000万行到csv文件? 当我尝试按如下方式写入bulk_data.csv时,它在200,000行后被击中。
con = pyodbc.connect("DRIVER={Vertica};SERVER=***;DATABASE=***;UID=****;PWD=***")
cursor = con.cursor()
cursor.execute('SELECT * FROM ***')
header = map(lambda x: x[0], cursor.description)
with open('bulk_data.csv', 'w+') as f:
f.write('\t'.join(header) + '\n')
csv.writer(f, delimiter='\t', quoting=csv.QUOTE_MINIMAL, quotechar='"', lineterminator='\n').writerows(cursor)
答案 0 :(得分:1)
简单的答案是,您不会逐行写入此数据量。您使用COPY
批量处理文件。如果您正在使用Python,您可能希望利用许多允许批量导入的Vertica特定项目之一,例如来自Spil Games的PyVertica。