python - 谷歌云 : Do we need a compute engine to run a deployed python code?

标签 python google-app-engine google-cloud-datastore google-cloud-platform google-cloud-storage

抱歉,我真的没有太多技术背景,我知道这听起来像是一个令人困惑的问题。不过,我会尽力在这里解释我想做什么。

我的日常工作涉及来自不同类型平台的大量数字营销数据(超大数据 >20GB+)。如您所见,当我尝试分析这些数据时,我需要将这些数据聚合成类似的格式。我工作的繁琐部分通常涉及大量手动下载、大量数据清理和大量上传(我将清理后的数据上传到 Google Cloud Storage,以便我可以使用 BigQuery!)。

我觉得手动执行这些任务效率极低,我认为唯一合乎逻辑的选择是在 Google Cloud Platform 上自动执行这些任务。

经过几个月的努力,我设法以半自动的方式完成了这些任务,我编写了一些 python 程序并制作了一个 schtask 批处理:

  1. 下载(一个 python 程序调用 API 将平台数据下载到我的本地驱动器)
  2. 清理(在本地清理这些数据的 python 程序)
  3. 上传到云存储(一个 python 程序使用 gsutil 上传“清理过的”数据)

虽然,它节省了我很多时间,但一切仍然在我的台式电脑上本地完成。

这是我真正的问题,我确信有一种方法可以在不接触我的本地 PC 的情况下在 Google Cloud 中管理所有这些任务(下载、清理、上传),我应该从哪里开始?

  1. 如何在 Google Cloud 上运行这些 Python 程序?我知道我可以在 App Engine 中部署这些 Python 程序,但是,为了让这些程序完成它们的工作,我还需要一个计算引擎吗?还是简单的部署就可以完成这项工作?
  2. 如何在 Google Cloud 上为这些应用调度任务?
  3. 我知道 Cloud Storage 只是在 GCP 上存储数据的众多方式之一,因为我从不同类型的平台获得这些数据,而且它们的格式和指标各不相同。那么,在 Google Cloud 上高效存储这些数据的最佳方式是什么? CloudSQL、Datastore 还是 BigTable?

谢谢!

最佳答案

我们需要更多信息并查看一些代码才能更好地帮助您,但一般来说,您描述的工作应该能够通过 http 完成,并且您不需要任何特殊的 C 库,因此您可以使用 appengine并为您的工作创建任务队列。

请做好准备,仅使用 appengine 可能比拥有可以利用的操作系统更棘手。部署后没有带 appengine 的操作系统,您必须仅使用 appengine 中提供的功能。

但是是的,据我从您提供的信息可以看出,appengine 应用程序应该能够完成您描述的工作。尝试编写一些代码,部署 appengine 应用程序,然后返回此处询问您是否有具体问题。

如果以后需要,您可以随时将计算引擎添加到您的应用引擎项目中。

关于python - 谷歌云 : Do we need a compute engine to run a deployed python code?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45254244/

相关文章:

python - 如何找到 Python 函数的参数数量?

python - 根据字典替换字符串的快速方法

node.js - 在 GAE 上进行 Sequelize 数据库迁移的最佳实践

python - 在 Google App Engine 中使用 mapreduce 的简单反例

google-app-engine - GAE : Child object that is not in the class

python - Flask Docker应用程序不提供API并且在Docker镜像内未找到文件

java - Google App Engine 使用 Blobkey

mysql - 使用一对多关系进行关联时,JDO 尝试创建新记录

google-app-engine - 谷歌应用引擎 : No key_name attribute

python - 如何运行具有模块的代码,每个模块都在不同的 virtualenv 中?