4

我在 Google App Engine 工作,我们有一个 Python 脚本,可以在 Google Cloud SQL 中转储数据。我们必须转储的数据集之一是巨大的。我们每天一次转储大约 15 万行数据。

我知道 Google Cloud SQL 不支持LOAD DATA INFILE,我通常会使用它。我的问题是,是否有替代方法LOAD DATA INFILE可以用来加快数据转储的过程。

正常插入数据,不带LOAD DATA INFILE,大约需要 5 分钟。

4

2 回答 2

3

正如另一个问题的评论中所述,LOAD DATA LOCAL INFILEApp Engine 支持。

MySQL 手册解释了如何使用这个语句。

于 2014-10-15T17:52:12.073 回答
1

您可以采取的措施来获得更好的批量导入性能:

  • 创建一个 .sql 文件并进行导入
  • 确保插入语句一次执行多于一行。一个好的经验法则是每个 INSERT 一个兆字节。
  • 切换到异步复制
  • 从 App Engine 应用程序导入。该应用程序将与您的 Cloud SQL 实例托管在一起,从而大大减少了网络延迟。
于 2013-01-03T18:21:38.060 回答