Data pengujian saya terdiri dari 27.768.767 baris. Skema saya menyertakan kolom "pesan" bertipe string. Panjang string ini bervariasi tetapi umumnya beberapa ratus karakter. Ada juga kolom user_id bertipe int. Berikut adalah dua kueri yang keduanya mengembalikan 0 baris (klausa Where tidak cocok dengan data saya). Namun yang mengejutkan saya, keduanya melaporkan 4,69 GB diproses.
SELECT * FROM logtesting.logs WHERE user_id=1;
Query complete (1.7s elapsed, 4.69 GB processed)
.
SELECT * FROM logtesting.logs WHERE message CONTAINS 'this string never appears';
Query complete (2.1s elapsed, 4.69 GB processed)
Karena int disimpan dalam 8 byte, saya berharap data yang diproses di int sebelumnya (user_id) kueri akan berukuran sekitar 213MB (28 juta baris * 8 byte per user_id). Kueri (pesan) yang terakhir lebih sulit untuk diperkirakan karena panjang stringnya bervariasi, tetapi saya perkirakan ukurannya beberapa kali lebih besar daripada kueri (user_id) sebelumnya.
Apakah pemahaman saya tentang cara BigQuery menghitung biaya kueri salah?