3

約3400万行のBigQueryテーブルがあります(数か月で最大5億に成長します)。ストレージの料金を取得しましたが、クエリ/分析の料金がどのように機能するのかよくわかりません。

たとえば、約20レコードから3列を返す単純な選択であるクエリを実行すると、644MBが処理されたと表示されます。句の列または条件を削除しても、where6xxMBのデータを処理していることを示しています。

興味深いことに、テーブルからselect count(*)を実行すると、0バイトが処理されたと報告されます。

BigQueryのユースケースの1つは、ダッシュボードとアドホックレポートを作成することです。ただし、テーブルに対して行われる2つのクエリごとに0.03ドルかかる場合、これがどのように実用的であるかはわかりません。

私は何かが足りないのですか?単純なデータアクセスのために処理されるデータの量を減らすための戦略はありますか?

4

1 に答える 1

3

BigQueryの価格設定ドキュメントをご覧ください。基本的に、すべてのBigQueryクエリは言及されたすべての列を読み取るため、アクセスする列のフルサイズに対して料金を支払います。例えば、

select foo, bar from table1 where foo=1

table1のfoo列とbar列のサイズ全体へのアクセスに対して課金されます。

COUNT(*)はテーブルのメタデータを読み取ってカウントを取得するため、費用はかかりません。

コストを削減する1つの方法は、データを複数のテーブルに分割することです。カンマ区切りのテーブルを指定することで、1つのクエリでテーブルを組み合わせることができます(のようにselect foo from table1,table2)。結果をキャッシュすることもできます(BigQueryはそれ自体ではキャッシュを行いません)。

于 2012-07-02T02:54:05.583 に答える