中野智文

中野智文(VOYAGE GROUP)のコンピュータなどのメモ

自分の Big Query で使ったクエリのコストをコマンドでまとめて調べたい。

2017-01-16 17:36:34 | BigQuery
背景 Big Query で使ったクエリのコストをコマンドでまとめて調べたい。管理者権限でなければ全体の利用料などが確認できない場合がある。 方法 bq コマンドの ls 命令の j オプションにて、JOB IDが取得できる。 また show 命令の j オプションにて、billing bytes などを取得できる。 よって、次のコマンドを利用する。 bq ls . . . 本文を読む

NullのあるテーブルをUNIONしようとして、Incompatible types

2016-09-28 18:31:08 | BigQuery
背景 BigQueryにて、Null(固定値:特定のカラムが全てNull)のあるテーブルをUNIONしようとして、Incompatible types というエラーが出る。 クエリによるテーブルなので、NULLABLEなどの設定は出来ない。(もともとNULLABLEという設定はない?) 解決策 クエリを見た目動的にする。例えば、 IF(1=1, Null, "文字列 . . . 本文を読む

Big Query でケチ臭く使う3つのTips

2016-09-23 17:03:53 | BigQuery
背景 Big Queryを使って結構お金を使ってしまった話をよく聞く。自分が実践している、Tipsを紹介。 Tips 整数は整数でbq loadする。 整数や浮動小数点は文字列(String)でなくて、整数や浮動小数点で bq loadする。BigQueryは舐めるデータの量で課金される。文字列のままだとそれだけでデータが大きくなってしまう。IDを作る場合も、必ず整数で作成 . . . 本文を読む

BigQueryにて特定のカラムの値毎にデータを集める

2016-07-06 13:10:10 | BigQuery
背景 BigQueryにて特定のカラムの値毎にデータを集めたい時がある。普通のSQLなら、その特定のカラムでソートしてやれば良い。 ところが、BigQueryで扱うような大規模なデータだと、ソートしようとすると、"Resources Exceeded during query execution" というエラーが表示される。 その特定のカラムで GROUP BY の計算はできるので、集め . . . 本文を読む

有効数字n桁の計算式(BigQueryなどで)

2015-01-27 11:25:42 | BigQuery
背景 SQLで、有効数字n桁にまとめたいことがある。printfに相当する関数があればよいが、それがないとき。 数行数字n桁にする計算式 xが丸めたい数値、nが丸めたい桁数の時に、BigQueryでは、 round(x,integer(-log10(x)-1+n)) 単にlog10で桁数を求めただけ。微妙に100とか1000のように丁度になったときはintegerによる切り捨 . . . 本文を読む