繁体   English   中英

如何使用在Java上运行的Google App Engine将批量数据上传到Google服务器?

[英]How to upload bulk data to Google Servers using Google App Engine running on Java?

我无法弄清楚如何绕过10mb的上传限制和30秒的会话超时将批量数据上传到Google的服务器。 我想设计一个应用程序,该应用程序使用我的标准SQL数据并将其推送到Google的服务器。

我听起来可能很幼稚,但您的帮助对我的项目最有价值。

当前没有本机Java批量加载器,因此您需要使用Python。 过程如下:

首先,您需要下载Python SDK并将其解压缩。 然后,创建一个空目录,并在其中创建一个名为app.yaml的文件,其中包含以下内容:

application: yourappid
version: bulkload
runtime: python
api_version: 1

handlers:
- url: /remote_api
  script: $PYTHON_LIB/google/appengine/ext/remote_api/handler.py
  login: admin

现在,从Python SDK运行“ appcfg.py update yourdir”,并在出现提示时输入您的凭据。 appcfg将上传您的应用程序的新版本,该版本将与您的主版本并排运行,并允许您批量加载。

现在,要进行实际的批量加载,您需要使用Python Bulkloader。 请按照此处的说明进行操作。 您需要了解(非常)一点点的Python,但这主要是复制和粘贴。 完成后,您可以按照本文中的描述运行bulkloader,但可以在命令行中添加“ -s bulkload.latest.yourapp.appspot.com”参数,如下所示:

appcfg.py upload_data --config_file=album_loader.py --filename=album_data.csv --kind=Album -s bulkload.latest.yourapp.appspot.com <app-directory>

最后,要直接从SQL数据库而不是CSV文件加载数据,请按照我的博客文章此处的说明进行操作。

我也想做同样的事情。 因此,这是实现目标的最幼稚的概念。

Web服务器准备

  1. 创建一个servlet ,它将接收上载的数据(例如,数据类型XMLJSON

    (可选)将其存储为Blobstore

  2. 使用JAXB / JSoup和/或GSON 解析数据
  3. 动态解释数据结构
  4. 使用数据存储它存储 /

客户上传器准备

  1. 使用本地计算机, 创建 Java / C ++ / PHP脚本,该脚本生成XML / JSON文件并将其存储在本地
  2. 创建一个shell脚本 (linux)或批处理文件 (windows),以编程方式使用cURL上传文件。

如果您有更好的主意,请对此发表评论。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM