2024年のパフォーマンスの改善

重要

パフォーマンスの改善の多くは、特定のクエリパターンやワークロードを対象としています。これらの改善は、特定のワークロードに重大な影響を及ぼす場合もあれば、及ぼさない場合もあります。

2024年には以下のパフォーマンスの改善が導入されました。

リリース

説明

影響

2024年10月

メタデータ複製を改善しました。

サーバーレスのコンピューティング割り当てを最適化して、複製リフレッシュの SECONDARY_UPLOADING_INVENTORY、 PRIMARY_UPLOADING_METADATA、および SECONDARY_DOWNLOADING_METADATA の各フェーズにかかる時間を短縮します。この改善は、メタデータのサイズが大きいリフレッシュを対象としています。

2024年9月

並列化によるクローン作成操作を改善しました。

膨大なメタデータを持つデータベースやスキーマの場合は特に、オブジェクトをクローンする時間が短縮されます。

2024年9月

並列化による複製リフレッシュを改善しました。

大量のデータを複製する際の全体的なリフレッシュ時間が短縮されます。

2024年8月

LIMIT クエリのパフォーマンスを改善しました。

LIMIT 句を使用してテーブルから n 行を返すクエリのコンパイルと実行時間が短縮されます。この最適化により、スキャンされるパーティションは、最初の n 行のみをカバーするように圧縮されます。

2024年7月

複製でのテーブル列の同期を改善しました。

テーブル列のリフレッシュ操作の SECONDARY_DOWNLOADING_METADATA フェーズにかかる時間が短縮されます。

2024年7月

仮想ウェアハウスで利用可能なコンピューティングリソースと比較して、少量のマイクロパーティションのみをスキャンするクエリのウェアハウス利用率が向上しました。

BI、ダッシュボードのユースケースで一般的な、少数のマイクロパーティションからデータをスキャンする際に、高価なオペレーションをともなうクエリの実行を高速化しました。

2024年7月

以下のクエリ処理を改善しました。

  • ANY_VALUE 関数以外の集計を含まない集計ノードに LIMIT 句をプッシュダウンします。

  • PRIMARY KEY または UNIQUE 制約が検証によって強制される場合に、または RELY 制約プロパティが使用される場合に、冗長なグループ化キーを排除します。

LIMIT 句と GROUP BY ステートメントを使用した一部のクエリの実行が高速化されました。

2024年6月

単一命令複数データ(SIMD)処理を改善しました。

  • NULL の値を含む列にアクセスするクエリの実行時間が短縮され、スキャンパフォーマンスを向上させます。

  • リモートストレージからデータを読み込む際に、より効率的に数字をデコードして、より優れたスキャンパフォーマンスを提供します。

2024年5月

自動クラスタリング の効率を改善しました。

より効率的に動作するため、自動クラスタリングのコストが削減されます。

2024年5月

オブジェクト複製を改善しました。

一部のオブジェクトの同期と複製操作の認証メカニズムを最適化することで、リフレッシュ操作の SECONDARY_UPLOADING_INVENTORY および SECONDARY_DOWNLOADING_METADATA フェーズにかかる時間を短縮します。

2024年5月

ファイル形式オプション USE_VECTORIZED_SCANNERTRUE に設定した場合、ほとんどのParquetファイルをロードする際の待ち時間が最大50%短縮されました。

ベクトル化スキャナーは、 Parquet ファイルの列形式に適しており、選択された列のサブセットなど、Parquetファイルの関連セクションのみをメモリにダウンロードすることで、取り込み待ち時間を短縮します。

2024年5月

集計の評価を改善し、より多くの中間結合ツリーで行われるようにしました。

可能な限り早い段階で処理する必要があるデータ量を削減することで、集計を伴う複雑なクエリの実行時間を短縮します。

2024年5月

仮想ウェアハウスノード間の通信にかなりの時間を費やすクエリの実行時間が改善されました。

ウェアハウス内のコンピューティングリソース間のスループットが向上します。各ウェアハウスは、コンピューティングリソースのクラスターです。

2024年5月

LIMIT および ORDER BY クエリに対するtop-kプルーニングが改善されました。

スキャンされるファイルやファイルヘッダーの読み取り回数が減るため、top-kクエリの実行時間が短縮されます。既存のtop-kの改善を拡張し、 ORDER BY 列に STRING/BINARY サポートを含めました。値ドメインに関して、スキャンセットを大きい/小さいファイル順に並び替えることで、プルーニング効率をさらに向上させます。

2024年5月

選択性の推定値をより細かく計算することで、結合順序の判定を改善しました。

マイクロパーティションレベルで選択性の推定値を計算することにより、コンパイル時間とクエリ実行時間を短縮します。

2024年5月

Pythonのロード時間を高速化します。

Streamlit in Snowflake アプリ(Snowflake Native App 内のStreamlitアプリを含む)、Pythonワークシート、Python UDFs、およびPythonのストアドプロシージャのパフォーマンスが向上します。

2024年4月

ロック/ミューテックス競合が低減しました。

ウェアハウス上で実行される並行性の高いクエリなど、さまざまなシナリオでスキャンパフォーマンスを向上させることにより、クエリの実行時間を短縮します。

2024年4月

ブロードキャストの結合判定を改善しました。

Right-deep結合ツリーなどのシナリオでブロードキャスト結合を最適化することで、クエリの実行時間を短縮し、メモリ管理を改善します。

2024年4月

Snowsight のクエリ結果を高速化します。

Snowsight でクエリを実行した場合に、クエリ結果が表示されるまでの時間を短縮します。改善は、10,000行を超える結果セットを返すクエリで顕著です。

2024年3月

メタデータ複製を改善しました。

PRIMARY_UPLOADING_METADATA、 SECONDARY_DOWNLOADING_METADATA、 SECONDARY_UPLOADING_INVENTORY の各フェーズでメタデータに費やす時間を短縮します。

2024年3月

結合の順序を最適化するために、選択性の推定値をより正確に計算することで、クエリのパフォーマンスが向上しました。

パーティションメタデータと結合フィルターによる実際のカーディナリティが不一致の場合の実行時間を短縮します。

2024年3月

JSON ファイルをロードする際のパフォーマンスが向上しました。

その結果、多くの JSON ロードシナリオにおいて、取り込み待ち時間が最大25%短縮されます。

2024年2月

オブジェクト複製を改善しました。

スナップショット操作の一部と一部のオブジェクトを複製インベントリに追加する方法を最適化することで、リフレッシュ操作の PRIMARY_UPLOADING_METADATA、 SECONDARY_DOWNLOADING_METADATA、 SECONDARY_UPLOADING_INVENTORY の各フェーズにかかる時間を短縮します。

2024年2月

いくつかの関数に upper および lower 照合順序仕様のサポートが追加されました。

いくつかの関数で upper および lower 照合順序仕様を設定する機能が加わりました。 upperlower 照合順序仕様は、いくつかのユースケースでは ci 仕様よりもパフォーマンスがよくなります。 upperlower 照合順序仕様が次の関数でサポートされるようになりました。 CHARINDEXCONTAINSENDSWITHPOSITIONSPLITSPLIT_PARTSTARTSWITH。詳細については、 ci と upper / lower の相違 をご参照ください。

2024年1月

LIMIT 0クエリの実行時間が改善されました。

アプリケーションでクエリ結果の列見出しやデータ型を返すためによく使用される 0LIMIT と合わせてカウントするクエリの実行時間を短縮します。

2024年1月

Microsoft Azureリージョン(Azure Governmentリージョンを除く)における 大規模ウェアハウス (5X-LARGE および6X-LARGE)の一般公開。

小規模ウェアハウスと比較して、メモリ負荷の高いクエリに対してより大型のコンピューティングリソースを使用できます。