如何减少在Amazon Redshift中将pandas数据帧编写为表的时间

时间:2018-06-18 17:25:19

标签: python python-3.x pandas dataframe amazon-redshift

我正在使用这个 -

在Amazon Redshift中编写python pandas数据框
#       [,1] [,2] [,3]
# [1,]   12    1    3
# [2,]    3    4    4
# [3,]    3    5    4
# [4,]    4    5    4
# [5,]    5    5    4
# [6,]    6    5   45
# [7,]    7    5   32
# [8,]   NA    5   57
# [9,]   NA    6   23
# [10,]   NA    7   NA
# [11,]   NA    8   NA
# [12,]   NA   NA   NA
# [13,]   NA   NA   NA
# [14,]   NA   NA   NA
# [15,]   NA   NA   NA

虽然我的数据帧只有几千行和50-100列,但写一个表需要15-20分钟。我想知道这是红移中的正常表现吗?有没有办法优化这个过程并加快编写表格?

1 个答案:

答案 0 :(得分:2)

更好的方法是使用pandas将您的数据框架存储为CSV,将其上传到S3并使用COPY功能加载到Redshift中。这种方法甚至可以轻松处理数亿行。通常,Redshift写入性能不是很好 - 它用于处理由大量ETL操作(如COPY)转储的数据加载。