0

Java クライアント API を使用していくつかのクエリを送信しています。しかし、4〜5回のクエリの後、次のエラーが発生します。

com.google.api.client.auth.oauth2.TokenResponseException: 403 User Rate Limit Exceeded
<HTML>
<HEAD>
<TITLE>User Rate Limit Exceeded</TITLE>
</HEAD>
<BODY BGCOLOR="#FFFFFF" TEXT="#000000">
<H1>User Rate Limit Exceeded</H1>
<H2>Error 403</H2>
</BODY>
</HTML>

そこで、Google API のコンソールにアクセスし、「ユーザーごとの制限」を 100.0 リクエスト/秒/ユーザーに増やしました。これは、最初は 5 リクエスト/秒/ユーザーに設定されていました。

しかし、効果はないようです。

この構成は現在機能していますか?

ベン

4

1 に答える 1

1

このページを参照してください: https://developers.google.com/bigquery/docs/quota-policy レート制限は、最大 200 GB の未処理のクエリ + 任意のサイズの 1 つのクエリを持つことができることです。

未処理のクエリとは、クエリによってスキャンされているデータの量を意味します。同じサイズの文字列フィールドが 10 個ある 1 TB のテーブルがある場合、それらのフィールドのうち 2 つを参照するクエリには 200 GB のスキャンが必要になることを意味します。BigQuery UI には、クエリによってスキャンされたデータの量が表示されます。API を直接使用している場合は、結果のクエリ ジョブ統計で確認できます。

たとえば、50GB をスキャンする 4 つのクエリと、4TB をスキャンする 1 つのクエリを同時に実行できます。

これらの制限が厳しすぎる場合は、同時クエリの制限がないバッチ モードを使用できますが、実行速度ははるかに遅くなります。

これは、お客様がクラスターを独占して他のユーザーのパフォーマンスを低下させるのを防ぎ、クエリを分散させることを奨励するためです。

また、課金を有効にしていない場合は、無料のクォータに制限されているため、クォータの制限が大幅に低くなります。

于 2012-07-13T16:57:36.280 に答える