7

訪問者が閲覧するコンテンツに応じて、BigQuery とその API を使用してオンサイト クエリを実行する可能性を検討しています。したがって、応答時間は非常に重要です。10,000 行 (4 列) の非常に単純な構造化データセットをロードし、非常に単純なクエリを実行しました。これには 1 ~ 2 秒かかります。私の質問は非常に簡単に答えられるといいのですが、何らかの方法でデータを最適化することで、BQ API で 1 秒未満の応答時間を得ることができるでしょうか?

よろしくお願いします!

よろしく、 アリエン

4

3 に答える 3

11

BigQuery はオンライン トランザクション処理(OLTP)データベースではなく、テラバイト単位のデータを数秒でスキャンできるインタラクティブな分析データベースです。クエリ時間はかなり一貫していますが、共有サービスであるため、クエリ時間は保証されていません。つまり、2 秒間実行されるクエリは、さまざまな時間間隔で 1.5 秒または 3 秒実行される可能性があります。BigQuery の性質と内部構造により、現時点で 1 秒未満のクエリ時間は現実的ではありません。

一般的な設計パターンの 1 つは、BigQuery にデータの複雑な分析という手間のかかる作業を任せ、結果を OLTP (mySQL など) またはインメモリ (Redis など) データベースに保存し、そこからクライアントに結果を提供することです。バックグラウンドでクエリを実行することにより、データを定期的に更新できます。

于 2016-03-25T22:21:21.017 に答える