google-bigquery - gcp NL api 情绪分析 - 如何将结果存储在 BigQuery 中
问题描述
我正在使用 gcp bigquery 通过 google 函数存储新闻流并将其保存在 bigquery 中。
如何运行使用来自 bigquery 的数据的 python 脚本,并最终将分数和幅度的结果写回相关数据集?
我在谷歌文档中找不到任何关于它的内容,只是如何运行情绪分析,而不是如何从 bigquery 获取数据并将结果返回到 bigquery。
非常感谢您的支持。
解决方案
你没有给我们足够的细节来给出一个具体的答案,所以让我给你我尝试这个的一般方法:
首先,让我们用gcloud
CLI 对任意一个句子进行情感分析:
gcloud --format json ml language analyze-entity-sentiment --content "It's time we just let this thing go - it was a prett
y good bad idea, wasn't it though? -- Bad Idea, Sara Bareilles" | jq -c . > sentiments.json
请注意,我删除了输出 JSON 的格式,jq
并将结果存储在一个文件中。
要将此文件(每个句子可能包含多个 JSON 行)加载到 BigQuery 中:
bq load --autodetect --source_format=NEWLINE_DELIMITED_JSON temp.sentiments sentiments.json
该问题要求“流式传输到 BigQuery”,但像这里显示的那样批量加载可能更有意义。
现在我们在 BigQuery 中有一个包含结果的表:
SELECT * FROM `fh-bigquery.temp.sentiments` LIMIT 1000
顺便说一句,我Sara Bareilles
在句子中添加了确保 BigQuery 在第一次创建表时获得用于自动检测的完整架构。
如果您想将数据流式传输到 BigQuery,请查看流式传输到 BigQuery 文档。我想在这个答案中分离出将 Cloud NLP 数据获取和查看到 BigQuery 的基础知识——其余的只是使用它的基础知识。
推荐阅读
- ios - 检查 JSON 密钥是否存在
- sorting - 排序命令奇怪的行为
- nginx - 如何配置 nginx 不显示登录控制台?
- javascript - 如何通过 jquery remove 功能删除单个输入框?
- java - Room 不向表中插入数据
- google-app-engine - 如何将 google 凭据传递给 google pub sub
- java - Spring Boot REST Api JWT AuthorizationFilter 不验证令牌
- maven - 如何将持久存储连接到 Google Cloud Build?
- jquery - FadeIn() 在 Knockout 的 afterAdd 回调中
- r - tidyr 中的 collect() 和 unity()