Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/google-app-engine/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google app engine 当bulkloader花费太长时间/产生错误时,将CSV数据导入应用程序引擎的最佳方法?_Google App Engine_Csv_Bulkloader - Fatal编程技术网

Google app engine 当bulkloader花费太长时间/产生错误时,将CSV数据导入应用程序引擎的最佳方法?

Google app engine 当bulkloader花费太长时间/产生错误时,将CSV数据导入应用程序引擎的最佳方法?,google-app-engine,csv,bulkloader,Google App Engine,Csv,Bulkloader,我有一个10 MB的CSV地理位置数据文件,我昨天试图上传到我的应用程序引擎数据存储中。我按照说明使用了bulkloader/appcfg工具。数据存储表明记录已上载,但这需要几个小时,并耗尽了我一天的全部CPU配额。在我实际超过配额之前,这个过程在接近尾声时出现了错误。但不用说,10 MB的数据不需要这么多时间和电源 那么,是否有其他方法将此CSV数据获取到我的应用程序引擎数据存储中(对于Java应用程序) 我看到Ikai Lan的一篇帖子,内容是关于使用他为此目的创建的地图绘制工具,但看起来

我有一个10 MB的CSV地理位置数据文件,我昨天试图上传到我的应用程序引擎数据存储中。我按照说明使用了bulkloader/appcfg工具。数据存储表明记录已上载,但这需要几个小时,并耗尽了我一天的全部CPU配额。在我实际超过配额之前,这个过程在接近尾声时出现了错误。但不用说,10 MB的数据不需要这么多时间和电源

那么,是否有其他方法将此CSV数据获取到我的应用程序引擎数据存储中(对于Java应用程序)

我看到Ikai Lan的一篇帖子,内容是关于使用他为此目的创建的地图绘制工具,但看起来相当复杂


相反,如何将CSV上传到Google Docs?有没有办法将其传输到App Engine数据存储中?

我编写了这个gdata连接器,用于从Google Docs电子表格中提取数据并将其插入数据存储,但它使用了Bulkloader,因此它有点让你回到问题的解决之道

然而,您可以做的是查看源代码,了解我如何从gdocs中提取数据,并创建一个这样做的任务,而不是通过bulkloader


您还可以将文档上载到blobstore中,并类似地创建一个任务,从blobstore中读取csv数据并创建实体。(我认为这比使用gdata提要更简单、更快)

我编写了这个gdata连接器,用于从Google Docs电子表格中提取数据并将其插入到数据存储中,但它使用了Bulkloader,所以它有点让你回到问题的根源

然而,您可以做的是查看源代码,了解我如何从gdocs中提取数据,并创建一个这样做的任务,而不是通过bulkloader


您还可以将文档上载到blobstore中,并类似地创建一个任务,从blobstore中读取csv数据并创建实体。(我认为这比使用gdatafeed更容易、更快)

我每天通过bulkloader上传100000条记录(20兆)。我玩过的设置: -bulkloader.yaml配置:设置为自动生成密钥。 -在原始csv文件中包含标题行。 -速度参数设置为max(不确定减少是否会减少CPU消耗)

这些设置在大约4分钟内完成了我6.5小时的免费配额——但它会加载数据(可能是从生成的索引中加载的)


(我用脚本自动生成此行,并使用自动热键发送凭据)。

我每天通过bulkloader上传100000条记录(20兆)。我玩过的设置: -bulkloader.yaml配置:设置为自动生成密钥。 -在原始csv文件中包含标题行。 -速度参数设置为max(不确定减少是否会减少CPU消耗)

这些设置在大约4分钟内完成了我6.5小时的免费配额——但它会加载数据(可能是从生成的索引中加载的)


(我用脚本自动生成这一行,并使用自动热键发送凭据)。

10MB CSV文件似乎不太可能占用所有6.5个CPU小时。你能包括散装装载机的定义吗?另外,当你说“故障在错误中”时,指定哪些错误是很重要的——最好是使用原始stacktrace。一个10MB的CSV文件似乎不太可能占用所有6.5个CPU小时。你能包括散装装载机的定义吗?另外,当你说“在错误中崩溃”时,指定哪些错误是很重要的——最好是使用原始stacktrace。
appcfg.py upload_data --config_file=bulkloader.yaml  --url=http://yourapp.appspot.com/remote_api --filename=data.csv --kind=yourtablename --bandwidth_limit=999999 --rps_limit=100 --batch_size=50 --http_limit=15