抱歉,我真的没有太多技术背景,我知道这听起来像是一个令人困惑的问题。不过,我会尽力在这里解释我想做什么。
我的日常工作涉及来自不同类型平台的大量数字营销数据(超大数据 >20GB+)。如您所见,当我尝试分析这些数据时,我需要将这些数据聚合成类似的格式。我工作的繁琐部分通常涉及大量手动下载、大量数据清理和大量上传(我将清理后的数据上传到 Google Cloud Storage,以便我可以使用 BigQuery!)。
我觉得手动执行这些任务效率极低,我认为唯一合乎逻辑的选择是在 Google Cloud Platform 上自动执行这些任务。
经过几个月的努力,我设法以半自动的方式完成了这些任务,我编写了一些 python 程序并制作了一个 schtask 批处理:
- 下载(一个 python 程序调用 API 将平台数据下载到我的本地驱动器)
- 清理(在本地清理这些数据的 python 程序)
- 上传到云存储(一个 python 程序使用 gsutil 上传“清理过的”数据)
虽然,它节省了我很多时间,但一切仍然在我的台式电脑上本地完成。
这是我真正的问题,我确信有一种方法可以在不接触我的本地 PC 的情况下在 Google Cloud 中管理所有这些任务(下载、清理、上传),我应该从哪里开始?
- 如何在 Google Cloud 上运行这些 Python 程序?我知道我可以在 App Engine 中部署这些 Python 程序,但是,为了让这些程序完成它们的工作,我还需要一个计算引擎吗?还是简单的部署就可以完成这项工作?
- 如何在 Google Cloud 上为这些应用调度任务?
- 我知道 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/