ソリューションとテクノロジーで成功への道筋をつけることができます。Cloudわかりやすい料金体系により、お客様のビジネスにより総合的な価値をもたらします。安全でインテリジェントなプラットフォームを今すぐ利用しましょう。プロダクトをお試しいただけます。クエリで何バイト読み込むか。入力データの量を適切に制限しているか。ストレージと外部データソースのどちらにあるか。クエリによって読み取られるデータの量とデータのソースは、クエリのパフォーマンスとコストに影響します。クエリプランの説明を参照して、クエリによって入力データがどのように読み取られるかを調べることができます。プラクティスは、入力データの制御とデータソースの選択に関するガイダンスを提供します。必要な列のみを照会します。射影とは、クエリによって読み取られる列の数のことです。実体化(書き込み結果)が発生します。データのクエリに最もコストがかかる方法です。テーブル内のすべての列をフルスキャンします。オプションを使用してください。クエリに適用しても、読み取られるデータの量には影響しません。テーブル全体のすべてのバイトの読み取りに対して課金され、クエリは無料枠割り当てに対してカウントされます。代わりに、必要な列のみを照会します。以上の列を除外します。テーブル内のすべての列を対象とするものの、データのサブセットに対してのみクエリを実行する必要がある場合は、以下のことを検討してください。代わりに、宛先テーブルで結果を実体化し、そのテーブルを照会する。テーブルを日付別にパーティショニングし、関連するパーティションに対してクエリを実行する。日のパーティションのみがスキャンされます。使用したりすると、クエリで読み取られるデータの量を大幅に削減できます。量とクエリ結果に必要な実体化の量を減らすことで、パフォーマンスが向上します。疑似列を使用してパーティションをフィルタリングします。使用すると、日付または日付の範囲を指定してデータをフィルタリングできます。日までのパーティションを指定しています。TIMESTAMP("20160131")このクエリは、日付範囲で指定されたパーティション内のデータのみを処理し、これによって入力データの量を減らせます。パーティションをフィルタリングすると、クエリのパフォーマンスが向上し、コストが削減されます。パフォーマンスは、データが非正規化されていると最も高くなります。スキーマを維持するのではなく、データを非正規化して、ネストされたフィールドや繰り返しフィールドを利用すると、パフォーマンスが向上します。フィールドと繰り返しフィールドは、リレーショナル(正規化)スキーマの維持る影響をパフォーマンスに及ぼすことなく、リレーションシップを維持できます。最新のシステムでは、正規化データの使用によるストレージ節約はあまり問題とはなりません。コストが増加しても、データ非正規化によるパフォーマンス向上には価値があります。結合にはデータ調整(通信帯域幅)が必要です。非正規化するとデータがローカライズされて個々のスロットに入れられるため、並行実行が可能です。フィールドと繰り返しフィールドを使用します。データが完全に平坦化されると、ネットワーク通信(シャッフル)がクエリのパフォーマンスを下げる可能性があります。対多の関係がある場合)。フィールドと繰り返しフィールドを使ってデータを非正規化した場合と比較して、データのグループ化はパフォーマンスが低くなります。フィールドと繰り返しフィールドを使用しても、パフォーマンスは向上しません。以下のような場合は、非正規化を避けてください。頻繁にディメンションが変化するスタースキーマがある場合。トランザクション処理(OLTP)システムを補完しているが、それに置き換えることはできない場合。完全にフラットな非正規化を必要としません。ネストされたフィールドと繰り返しフィールドを使用して、リレーションシップを維持できます。ネストデータ(STRUCT)ネストデータを使用すると、外部エンティティをインラインで表すことができます。フィールドを参照する「ドット」構文が使用されます。これは、結合を使用する構文に似ています。対多のリレーションシップをインラインで保持できます(リレーションシップのカーディナリティが高くない場合)。繰り返しデータでは、シャッフルは不要です。