问题标签 [bulkloader]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
1639 浏览

python - App Engine 批量加载程序

我正在尝试使用谷歌应用程序引擎的 Bulkloader,但不幸的是无法从文档中了解该做什么。它说将此部分添加到 app.yaml

内置:-remote_api:打开

好的,我已添加。然后说我必须执行这个命令

appcfg.py 更新

但我没有任何 appcfg.py 文件。还有执行这一行的命令是什么?

请有人告诉我我缺少什么我使用 AppEngineLauncher 将我的项目上传到服务器.. 我已经使用命令来更新或上传它。

提前致谢..

0 投票
1 回答
556 浏览

python - 使用 bulkloader 从 Google App Engine 下载数据时出错

我正在尝试使用以下命令从数据存储区下载一些数据:

当我在这种特定类型/表格中没有太多数据时,我可以一次性下载数据 - 偶尔会遇到以下错误:

这是我在服务器日志中看到的:

当出现该错误时,我只需重新运行下载,一切都会顺利进行。

最近,我注意到随着我的类型的大小增加,下载工具失败的频率越来越高。例如,对于具有约 3500 个实体的种类,我必须运行该命令 5 次 - 只有最后一次成功。有没有办法解决这个错误?以前,我唯一担心的是由于偶尔的失败,我无法在脚本中自动下载 - 现在我害怕我根本无法获取我的数据。

这个问题之前在这里讨论过, 但帖子很旧,我不确定建议的标志是做什么的 - 因此再次发布我的类似查询。


一些额外的细节。正如这里提到的,我尝试了继续中断下载的建议(在从 App Engine 下载数据部分)。当我在中断后恢复时,我没有收到任何错误,但下载的行数少于数据存储管理员向我显示的实体计数。这是我收到的消息:

数据存储区管理员告诉我这种特殊类型有大约 4300 个实体。为什么没有下载剩余的实体?

谢谢!

0 投票
2 回答
639 浏览

python - 如何以及在何处执行 python bulkloader 命令将 .CSV 文件上传到 Google App 引擎?

如何以及在何处执行 python bulkloader 命令将 .CSV 文件上传到 Google App 引擎?

我正在尝试使用批量加载程序将一个简单的 CSV 文件(2 列:标签、值、7000 行)上传到我的数据存储区谷歌应用引擎中。我在以下网址阅读了该主题:http ://code.google.com/intl/fr-FR/appengine/docs/python/tools/uploadingdata.html

我添加到 app.yaml 文件中:builtins: - remote_api: on

然后我尝试执行python命令“create_bulkloader_config --filename=bulkloader.yaml”,但我不知道把它放在哪里:=>在python命令行中?=> 在 Python IDLE 中?=> 在 Command.exe 窗口中?=> 其他地方?

然后,我在哪里获得文件 bulkloader.yaml" 生成?=> 在我的本地磁盘上?在 api 远程路径上?如何捕获它?

这当然是基本问题,但我不是 python 程序员,我需要一步一步的解释来设置我的环境。

我在 Windows 上使用了 Google 应用引擎启动器 Python 2.5。

我使用http://appinventor.googlelabs.com/learn/reference/other/tinywebdb.html提供的代码设置了 customtinywebdb 服务

你能帮助我吗 ?

提前致谢 !(我在发展的这一点上被阻止了)。

0 投票
1 回答
595 浏览

python - Google App Engine Bulkloader“意外线程死亡”

我正在尝试使用 bulkloader 功能将大小适中的 csv 文件上传到谷歌应用程序引擎,它似乎在某些方面死了,结果如下:

它上传了我尝试上传的 19k 条目中的大约 700 个,我想知道它为什么会失败。我检查了 csv 文件中是否存在错误,例如可能会导致 python csv 阅读器无法使用的额外逗号,并且非 ascii 字符已被删除。

0 投票
1 回答
628 浏览

google-app-engine - (Google App Engine) Bulkloader 上传会生成新条目,而不是更新现有条目

对于我的项目,我使用 GAE 数据存储来存储数据。出于备份目的,我决定使用bulkloader——它将整个数据完美地下载到一个csv文件中。上传也可以正常上传数据而没有错误。

我的问题是,上传不会更新现有数据,而是会创建重复数据。这是来自数据存储查看器的示例:

更新前:

更新后:

在数据存储实体中,我将其用作数据 ID:

知道如何使用 bulkloader 实际更新现有数据吗?

谢谢,亚当

0 投票
2 回答
753 浏览

google-app-engine - 当bulkloader花费太长时间/产生错误时,将CSV数据导入App Engine的最佳方法是什么?

我有一个 10 MB 的地理定位数据 CSV 文件,我昨天尝试将其上传到我的 App Engine 数据存储区。我按照这篇博文中的说明使用了 bulkloader/appcfg 工具。数据存储区显示记录已上传,但花了几个小时并用完我当天的整个 CPU 配额。在我实际超出配额之前,该过程在接近尾声时出现错误。但不用说,10 MB 的数据不应该需要这么多的时间和精力。

那么,是否有其他方法可以将此 CSV 数据导入我的 App Engine 数据存储区(对于 Java 应用程序)。

我看到了 Ikai Lan 的一篇关于使用他为此目的创建的映射器工具的帖子,但它看起来相当复杂。

相反,将 CSV 上传到 Google Docs 怎么样 - 有没有办法从那里将其传输到 App Engine 数据存储区?

0 投票
2 回答
1161 浏览

flash - as3 等到按钮点击加载图像

我有一个幻灯片,可以从这里加载带有 BulkLoader 类的图像文件。当第一个图像完全加载后,它会被添加到 MovieClip 容器中以将其添加到舞台......并且它会全屏显示,但前提是单击按钮:

在一个单独的函数 loadAllSlides() 中使用 BulkLoader 加载图像,该函数从一开始就被调用:

在加载过程中:

除非在完全加载图像之前单击 fullScreenButton,否则这工作正常,那么当然什么都看不到。如何获取调用 showFull() 的按钮单击事件以等待图像加载/添加到容器中,或者如何再次添加它?什么是可能的/最好的方法?

我尝试调度一个自定义事件“firstImgAdd”,当单击 fullScreenButton 时将图像再次添加到容器中,以及使用 try/catch 块甚至是简单的 if 条件,但它们都不起作用,这意味着图像没有得到过早单击按钮时,在完成加载后添加到容器中。任何帮助表示赞赏,在此先感谢

0 投票
3 回答
592 浏览

python - 使用 bulkloader 上传数据

简而言之:如何配置 bulkloader 以将数据插入到 2 个带有引用的模型中?

我有一个人和水果类,人与水果相关联:

我想上传这个 CSV 数据:

我尝试在文档中使用 create_foreign_key :

当我运行命令时:

这些人被上传并且他们有水果的外键,但他们指向的水果实体不存在。

当我尝试--kind=fruit上传水果时,但有很多重复。

我正在尝试将人与水果联系起来,没有重复的水果 - 这可以通过bulkloader吗?

0 投票
1 回答
2110 浏览

python - Bulkloader CSV 大小错误

Bulkloader 在导入包含大单元格的 CSV 文件时引发以下错误:

这是 csv 模块的常见问题,可以通过以下方式解决:

我怎样才能让bulkloader执行这个?

0 投票
0 回答
433 浏览

java - Java Google App Engine 批量加载程序下载警告“__key__ 上没有降序索引,正在执行串行下载”

可能重复:
应用程序引擎批量加载程序下载警告“上没有降序索引,正在执行串行下载”

我的帖子非常类似于:App engine bulk loader download warning "No descending index on __key__, perform serial download"

我基本上想做同样的事情。

基本上,我使用以下内容下载我的一种类型的所有实例:

如果该种类的实例数量多于批量大小,那么我会收到以下警告:

这导致我仅下载大约 6500 个实体需要 471.4 秒(根据完成后的 bulkloader 工具)。这真的很慢,因为我有大约 4 种其他类型甚至比这更大(大约 15,000 个实体)!

同样根据我的 Mac 的活动监视器,我只以大约 24Kb/秒的速度下载,如bulkloader输出中的带宽所示:


我的问题是:

1)如何摆脱“__key__上没有降序索引,执行串行下载”的警告以获得并行下载速度?

我认为我的问题的答案是添加降序索引。就像是:

我尝试将此添加到 datastore-indexes.xml 文件中。

它部署成功,但我在 Google 的管理门户上查看了我的 Datastore 索引,但我没有看到它正在服务或正在构建。无论如何,为了它,我重新运行了下面的命令,它仍然很慢......

我还尝试将相同的 xml,但使用 source="auto" 添加到 datastore-indexes-auto.xml 文件中。但是,当我尝试部署我的 eclipse 时抱怨以下错误:

2) 删除此警告是否需要我更新自动生成的 bulkloader.yaml?我在下面包含了游戏类型:


有用的发现

当我输入这个问题时。我发现了这个App Engine Bulk Loader Performance

它基本上解释了将bandwidth_limit增加到合理的值并增加rps_limit确实有助于加快速度。

所以我尝试了:

这将下载时间减少到 109.8 秒。这是一个巨大的减少!

但是,我的目标仍然集中在摆脱“__key__上没有降序索引,执行串行下载”以进行并行下载。


额外信息,以防可能相关

我正在使用 objectify3.0.jar 来操作我的 GAE 数据存储。所以我的游戏类型看起来像这样: