如何解决如何使用Google Cloud功能定期将数据写入Google Cloud SQL
我需要从python中的Google Cloud函数连接到Google Cloud SQL Server,并每30分钟写入一次数据。
我有一个python函数,该函数创建pandas数据框架,并使用另一个函数连接了Google Cloud SQL服务器,并将此pandas数据框架写入Microsoft SQL Server管理中的相应表。但是我需要每20分钟定期运行一次此功能。因此,我的想法是创建云函数,然后创建Google Cloud Scheduler工作以每20分钟运行这些python函数。但是我找不到明确的指导。 Google云文档非常混乱。任何建议表示赞赏。
解决方法
我们的项目中有类似的设置。要触发云功能,您将需要创建HTTP云功能。然后,需要使用云调度程序来触发此http云功能,该调度程序会将请求发送到创建的端点。这是我们为此使用的命令的示例:
# Create cloud function
gcloud functions deploy my_function \
--entry-point=my_entrypoint \
--runtime=python37 \
--trigger-http \
--region=europe-west1
# Set invoke permissions
gcloud functions add-iam-policy-binding my_function
--region=europe-west1 \
--member=${PROJECT_ID}@appspot.gserviceaccount.com \
--role="roles/cloudfunctions.invoker" \
--project=${PROJECT_ID}
# Deploy scheduler
gcloud scheduler jobs create http my_job \
--schedule="every 20 minutes" \
--uri="https://europe-west1-${PROJECT_ID}.cloudfunctions.net/my_function/" \
--http-method=POST \
--oidc-service-account-email="${PROJECT_ID}@appspot.gserviceaccount.com" \
--oidc-token-audience="https://europe-west1-${PROJECT_ID}.cloudfunctions.net/my_function" \
--project=${PROJECT_ID}
关于如何通过控制台完成此设置的详细说明here。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。