BigQuery:bq load 命令是否支持从命名管道作为源加载?

sup*_*dhi 6 linux google-bigquery

我正在尝试使用bq load命名管道将数据加载到 Google bigquery 。

控制台窗口 1:

 $ mkfifo /usr/pipe1
 $ cat /dev1/item.dat > /usr/pipe1
Run Code Online (Sandbox Code Playgroud)

控制台窗口2:

 $ bq load --source_format=CSV  projectid:dataset.itemtbl /usr/pipe1 field1:integer,field2:integer
Run Code Online (Sandbox Code Playgroud)

得到以下错误:

BigQuery error in load operation: Source path is not a file: /usr/pipe1
Run Code Online (Sandbox Code Playgroud)

Mic*_*don 4

BigQuery 客户端 bq.py 不支持命名管道。它明确需要文件:

https://code.google.com/p/google-bigquery-tools/source/browse/bq/bigquery_client.py?r=30df4638ff2ddb01d3f495af5c131ed3c2cfbd04#617

允许命名管道是一个很好的功能建议。您可以在这里请求:

https://code.google.com/p/google-bigquery/issues/list

看起来您可以很容易地调整 bigquery_client.py 的副本以使其正常工作。祝你好运!