从数据库读取并写入本地驱动器,大数据
Posted
技术标签:
【中文标题】从数据库读取并写入本地驱动器,大数据【英文标题】:Reading from database and writing to local drive, big data 【发布时间】:2017-09-04 10:45:26 【问题描述】:我想从 netezza 数据库中获取 5 GB 的数据并将其写入本地驱动器。我尝试了以下方法:
pd.concat([chunk for chunk in (pd.read_sql("""SELECT * FROM table""",conn,chunksize=10000))]).to_sql('table1',conn1)
这需要大量时间,几乎一天。有人可以建议一种替代方法来快速完成该过程,以便我可以处理 25 GB 的更大数据吗?
【问题讨论】:
【参考方案1】:如果只需要从 DB 将数据存储在驱动器中,那么您可以使用以下选项-
nzsql -u user -pw pwd -db database -o abc.dat -c "sql"
或者
nzsql -u 用户 -pw pwd -db 数据库 -c "sql" > abc.dat
【讨论】:
【参考方案2】:我建议使用transient external table。
CREATE EXTERNAL TABLE 'c:\localFileName.dat' USING (RemoteSource 'ODBC' delim '|')
as SELECT * FROM table;
【讨论】:
以上是关于从数据库读取并写入本地驱动器,大数据的主要内容,如果未能解决你的问题,请参考以下文章
Google Cloud Dataflow - 是不是可以定义从 BigQuery 读取数据并写入本地数据库的管道?