「数字」を含む列がある場合、その中で、スキーマでその列が INTEGER と STRING に指定されている場合、ストレージ コストは変わりますか?
例: 数十テラバイトの数値データが STRING として保存されています。その列に対して計算を実行する必要がある場合は、クエリ時にキャストするのが簡単です。しかし、スキーマを変更した場合、保存時の消費ビット数が減り、コストが安くなるような、データの保存方法が変わるのでしょうか?
------------------------
BigQuery が STRING/INT64 列を請求すると仮定すると
STRING | 2 バイト + UTF-8 エンコードされた文字列サイズ
INT64 | 8 バイト
どのようにして数値データを文字列にエンコードする予定がある場合、私の直感では、数値の大部分が 16 ビット未満でない限り、INT64 として保存するよりも STRING として保存してもあまりメリットはありません。
ただし、数値が小さい場合は、ストレージのコストが節約されるだけでなく、スキャンされたバイト数で支払うとクエリのコストも節約されます。データを大量にスキャンする場合は、ストレージよりも節約できる可能性があります。 .
参照: https://cloud.google.com/bigquery/pricing#data