2017-10-06 3 views
1

私は、1 GBを超える2つのbigqueryテーブルを持っています。 Google bigqueryは、Google Cloudストレージ内の複数のオブジェクトに大きなテーブルをエクスポートします。

https://googlecloudplatform.github.io/google-cloud-php/#/docs/google-cloud/v0.39.2/bigquery/table?method=export

$destinationObject = $storage->bucket('myBucket')->object('tableOutput_*'); 
$job = $table->export($destinationObject); 

私はワイルドカードを使用し、ストレージにエクスポートします。

奇妙なものが1つのbigqueryテーブルは、3つから4つのMBサイズのそれぞれ60個のファイルにエクスポートされます。

別のテーブルは、それぞれが1 GB、900 MBに近い3つのファイルにエクスポートされます。

コードは同じです。唯一の違いは、テーブルが3つのファイルにエクスポートされた場合です。私はそれらをサブフォルダに入れます。

60個のファイルにエクスポートされたファイルは、サブフォルダの1つ上のレベルです。

私の質問は、ファイルが数十個の小さなファイルに分割されるか、いくつかの大きなファイルに分割されることをbigqueryが決定したことです(各ファイルが1GB未満である限り)。

ありがとうございます!

+0

推測すると、テーブルがどのように断片化されているかによって決まると思います。しかし、@felipehoffaのようなGoogle社員が、もっと光を放つことができるかもしれません。しかし、これは問題ではありません。それは...ですか? –

+0

。それは問題かもしれません。私は小さなファイルに分割したいです。私が1GBファイルを処理すると、Elasticsearchにアップロードするなど、タイムアウトの問題が発生しました。 – searain

+0

AFAIK、ファイルをどれだけ多くエクスポートするかを制御できません。 –

答えて

2

BigQueryはエクスポートされたファイルのサイズを保証していません。現在のところ、これを調整する方法はありません。

関連する問題