如何加载使用Node.js的云功能CLOUDSQL CSV数据?
我在特定的桶接收CSV文件中的数据。我必须加载相应CLOUDSQL表中的数据。我有以下疑问上:
- 我有调用我的云功能的代码,采用CSV作为输入并执行插入数据库中的任何API或gcloud指令或curl命令的选项?
- 如果上面的选项是不可能的,那么有没有可用于制备查询和射击那些CLOUDSQL的数据将是巨大的,我想这将花费大量的时间来加载该数据的任何性能优化的方式。
该documentation on importing a CSV into CloudSQL包含curl
呼叫的这个示例:
ACCESS_TOKEN="$(gcloud auth application-default print-access-token)" curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \ --header 'Content-Type: application/json' \ --data '{"importContext": {"fileType": "CSV", "uri": "gs://<BUCKET_NAME>/<PATH_TO_DUMP_FILE>", "database": "<DATABASE_NAME>", "csvImportOptions": {"table": "<TABLE_NAME>"}}}' \ -X POST \ https://www.googleapis/sql/v1beta4/projects/[PROJECT-ID]/instances/[INSTANCE_NAME]/import
一些重要的事情需要注意:
curl
仅仅是一个执行命令行一个HTTP调用方式。在云计算的功能你会从你的代码中Node.js的fetch()
执行等效HTTP调用,例如- 要导入的CSV文件必须在谷歌Cloud Storage桶。
- 可能并不需要在所谓的应用程序的默认凭据Cloud Functions run a Google environment,所以
ACCESS_TOKEN
。如果他们毕竟必要,在这里看看:https://www.npmjs/package/google-auth-library#application-default-credentials
如何加载使用Node.js的云功能CLOUDSQL CSV数据?
我在特定的桶接收CSV文件中的数据。我必须加载相应CLOUDSQL表中的数据。我有以下疑问上:
- 我有调用我的云功能的代码,采用CSV作为输入并执行插入数据库中的任何API或gcloud指令或curl命令的选项?
- 如果上面的选项是不可能的,那么有没有可用于制备查询和射击那些CLOUDSQL的数据将是巨大的,我想这将花费大量的时间来加载该数据的任何性能优化的方式。
该documentation on importing a CSV into CloudSQL包含curl
呼叫的这个示例:
ACCESS_TOKEN="$(gcloud auth application-default print-access-token)" curl --header "Authorization: Bearer ${ACCESS_TOKEN}" \ --header 'Content-Type: application/json' \ --data '{"importContext": {"fileType": "CSV", "uri": "gs://<BUCKET_NAME>/<PATH_TO_DUMP_FILE>", "database": "<DATABASE_NAME>", "csvImportOptions": {"table": "<TABLE_NAME>"}}}' \ -X POST \ https://www.googleapis/sql/v1beta4/projects/[PROJECT-ID]/instances/[INSTANCE_NAME]/import
一些重要的事情需要注意:
curl
仅仅是一个执行命令行一个HTTP调用方式。在云计算的功能你会从你的代码中Node.js的fetch()
执行等效HTTP调用,例如- 要导入的CSV文件必须在谷歌Cloud Storage桶。
- 可能并不需要在所谓的应用程序的默认凭据Cloud Functions run a Google environment,所以
ACCESS_TOKEN
。如果他们毕竟必要,在这里看看:https://www.npmjs/package/google-auth-library#application-default-credentials