问题标签 [bq]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
sum - BIGQUERY Sum Col1 基于 Col2 中的唯一条目和特定日期
我正在尝试根据特定日期对 BQ 中的 column1(invoice_value)求和,但我想避免 Column2(invoice_no)中的重复项。
到目前为止,我可以对 column1 求和,但我得到的总和包括 column2 中的几个重复项(invoice_no)
选择 SUM(invoices_value) 作为 INVOICES FROM my_data
WHERE invoice_value 不为空且时间戳 >='2021-03-01' 且时间戳 <'2021-03-02'
帮助将不胜感激。
python - bigquery bq 工具查询换行无效标头值错误
目前正在尝试使用 bq 工具创建 Bigquery 视图,但似乎取决于我在查询中放置换行符的方式,它要么起作用,要么抛出 ValueError。
如果我执行:
它有效,但是如果我这样做:
我收到以下错误:
ValueError: Invalid header value b'/usr/bin/../lib/google-cloud-sdk/bin/bootstrapping/bq.py
这看起来很像系统中的错误,但是我很想知道是否有人知道解决方法?
google-bigquery - 用于扩展或增强 bq 命令行的 Google BigQuery bq 命令行 SDK
我有兴趣使用插件或包装器从 BigQuery 扩展 bq 命令行实用程序。挑战在于 Google 云存储 URI 会动态变化,我想确保在 bq 实用程序在预定时间运行之前处理好它。所以问题是基于python的工具bq是否有任何可以扩展其功能的SDK。
我到处梳理,但找不到任何有关它的信息。
太感谢了。
python-3.x - 在 Windows 上使用 bq load 和 python 子进程分隔的加载管道
我正在尝试使用 BQ LOAD 命令将表从 Google Cloud Storage 加载到 Bigquery。为此,我使用了一个使用 subprocess 库的 python 脚本。它工作正常,除了一个以竖线 (|) 作为分隔符的表。
我已经尝试了很多方法来避免这种情况,但没有任何好的结果。
如果我在 CMD (Windows) 中尝试这个,它可以工作:
但是如果我尝试在 python 中传递相同的参数,我会收到以下错误:
这是我正在使用的代码(在 Windows 中):
我怎样才能逃避或加载这个?谢谢!
google-cloud-platform - BigQuery 和 'bq load' - 使用 GMEK 覆盖某些表的默认数据集 CSEK
我在 Big Query 中有一个数据集,其中指定了默认的客户管理的加密密钥 (CMEK)。这是一项要求,并在默认情况下确保新表使用 CMEK 加密(除非特别豁免)。
我有一些数据要摄取到不需要 CMEK 的数据集中,而可以使用 Google 管理的加密密钥 (GMEK)。
主要原因是能够利用使用 CMEK 时不可用的功能,例如能够在 Big Query 中对 SQL 中的表使用通配符。
我的问题是:使用bq load
命令行中的命令,当我将数据加载到 Big Query 时,如何使用 GMEK 覆盖默认键?
例如,如果反过来,我可以使用--destination_kms_key
并指定我的 CMEK,但我在文档中看不到让我指定 GMEK 的选项。
这可能吗?
performance - BQ中的嵌套vs连接
如果这已经被问过了,我很抱歉。我认为这可能很明显,但我无法找到明确的答案。根据其文档,我了解 BQ 不喜欢加入:
嵌套的重复数据可以为您节省连接所需的通信带宽对性能的影响。它还为您节省了重复读取和写入相同数据所产生的 I/O 成本。
我试图找出为什么嵌套字段更好,但是如果我检查 BQ 架构,它会说数据存储在列级别。因此,如果所有内容都按列存储在不同的插槽中,我无法理解为什么单独的表会成为问题。
有人可以阐明一下吗?提前致谢
google-cloud-platform - 如何将值中包含换行符的 CSV 数据导入 GCloud Big Query 表?
我的bq load
命令和错误
Excel 和我的用于 Csv 序列化的 node.js 模块可以很好地处理带有换行符的值的数据。
Papaparse,我的用于序列化的 npm 模块,'\r\n'
用作分隔行的默认换行符,因此那里不应该有任何歧义。
这是一些示例 csv 数据,即 source.csv
bq 和 Cloud SDK 版本
我使用的是 289 版,因为他们修补了较新的版本,不允许您使用bq load
:(将大小为 100 MB 或更大的文件(CSV、JSON 等)导入 BQ
gcloud - 如何添加 gcloud 配置使 bq 默认为 use_legacy_sql=false?
我现在迷失在谷歌文档中,一定有一些我遗漏的核心技巧。
命令行bq
工具默认使用 Legacy SQL,可以通过添加参数来关闭许多命令--use_legacy_sql=false
。我希望这是默认值,因此语句被解释为标准 SQL。
如何为bq
命令配置此默认值和其他默认值?
regex - 在 BigQuery 中用逗号分割字符串
我想用逗号将 BQ 行中的字符串拆分为其他行。但我只需要在它只是一个没有空格的逗号的情况下才需要拆分。截至目前,我使用,例如,
但如果我有'Mon, 23,Tue,Wed, 25'我希望看到结果
我该怎么做?
google-bigquery - 在 BigQuery 中基于另一个表的架构创建一个空表
我们有一个 BigQuery 数据集,其中包含一些很长的表(包含数据)列表。由于我正在接管一个数据管道,我想通过测试来熟悉它,我想复制这些数据集/表而不复制截断表。本质上,我想使用它们的模式在测试数据集中重新创建这些表。这如何在bq
客户端完成?