使用bq
命令行工具时,如果我将--max_rows
设置为较大的数字,则不会返回任何内容。
我正在尝试使用bq
命令行工具来收集数据。我已将查询映射出来,现在只需要能够以脚本方式以编程方式返回结果。我想做类似以下的事情:
cat query_file | bq --bigqueryrc=/path/to/file --format=json --headless -q query --use_legacy_sql=false --max_rows=100000 > /path/to/file.json
上面的查询在我的本地计算机上运行良好,但是,当我尝试使用服务帐户运行相同的查询时,没有任何输出到文件。
如果我将--max_rows
设置为较小的值(例如1000),则查询将起作用并返回1000行。但是当设置为10,000这样的大值时,它将不会返回任何内容。
服务帐户是否有其他影响--max_rows
设置的内容?我无法确定为什么它可以在本地正常运行,但不能使用服务帐户。
其他信息
本地计算机是OSX,使用来自gcloud命令行工具BigQuery CLI 2.0.40的bq
。
使用gcloud命令行工具BigQuery CLI 2.0.40中的bq
在Ubuntu 18.04上运行服务帐户的机器。
编辑
我能够在本地使用服务帐户,并且可以与--max_rows
一起正常使用,因此问题似乎特定于查询所运行的环境。
答案 0 :(得分:1)
问题解决了!我在Kubernetes Pod中运行bq
命令,由于内存限制,该进程被悄无声息地终止。增加内存请求以使命令成功完成。