Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.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 cloud platform PythonOperator或SimpleHttpOperator发出HTTP get请求并将结果保存到GCP存储_Google Cloud Platform_Google Cloud Storage_Operators_Airflow - Fatal编程技术网

Google cloud platform PythonOperator或SimpleHttpOperator发出HTTP get请求并将结果保存到GCP存储

Google cloud platform PythonOperator或SimpleHttpOperator发出HTTP get请求并将结果保存到GCP存储,google-cloud-platform,google-cloud-storage,operators,airflow,Google Cloud Platform,Google Cloud Storage,Operators,Airflow,我在学习的早期阶段就开始学习了。我正在学习如何构建一个简单的ETL(ELT?)数据管道,并且正在研究管道的体系结构(我应该使用什么操作符)。我的数据管道的基础是: 对原始数据从API发出HTTP GET请求 将原始JSON结果保存到GCP存储桶中 转换数据并保存到BigQuery数据库中 …管道计划每天运行一次 正如标题所示,我试图确定SimpleHttpOperator或PythonOperator是否更适合用于发出HTTP GET数据请求。从这篇有点相关的stackoverflow文章中,作

我在学习的早期阶段就开始学习了。我正在学习如何构建一个简单的ETL(ELT?)数据管道,并且正在研究管道的体系结构(我应该使用什么操作符)。我的数据管道的基础是:

  • 对原始数据从API发出HTTP GET请求
  • 将原始JSON结果保存到GCP存储桶中
  • 转换数据并保存到BigQuery数据库中
  • …管道计划每天运行一次

    正如标题所示,我试图确定SimpleHttpOperator或PythonOperator是否更适合用于发出HTTP GET数据请求。从这篇有点相关的stackoverflow文章中,作者简单地得出结论:

    虽然我想从现在开始我会简单地使用蟒蛇机

    编写一个10-20行代码的python脚本来发出http请求、标识GCP存储桶并写入该桶似乎足够简单。但是,我不确定这是否是此类任务的最佳方法(调用api-->获取数据-->写入gcp存储桶)


    关于这方面的任何帮助或想法,关于构建类似管道的任何示例链接等都将非常有用。提前感谢

    我建议您将气流视为加工步骤之间的粘合剂。在气流中执行的处理应该是有条件地触发或不触发一个步骤,执行步骤上的循环并处理错误

    为什么??因为,如果明天你选择更改工作流应用程序,你就不必再次编写流程代码,只需重写工作流逻辑(因为你更改了工作流应用程序)。关注点的简单分离

    因此,我建议您将10-20行python代码部署到云函数中,并设置一个SimpleHTTPOperator来调用它。
    此外,使用函数比使用工作流(运行和查看代码)容易得多。部署和更新也将更容易。

    我建议您将气流视为处理步骤之间的粘合剂。在气流中执行的处理应该是有条件地触发或不触发一个步骤,执行步骤上的循环并处理错误

    为什么??因为,如果明天你选择更改工作流应用程序,你就不必再次编写流程代码,只需重写工作流逻辑(因为你更改了工作流应用程序)。关注点的简单分离

    因此,我建议您将10-20行python代码部署到云函数中,并设置一个SimpleHTTPOperator来调用它。 此外,使用函数比使用工作流(运行和查看代码)容易得多。部署和更新也将更加容易