Blog de Snowflake

Blog de Snowflake

注:本記事は(2021年11月18日)に公開された(Plus de débit et une exécution plus rapide pour les cas d’utilisation interactifs : maintenant en préversion publique)を翻訳して公開したものです。

Flocon de neige は 何 千 という 企業 を 支える データ バック ボーン であり 、 ビジネス バリュー の 実現 に 必要 な データ へ の アクセス や ガバナンス を 提供 し て い。 しかし ながら データ アプリケーション や 組み込み 型 アナリティクス の に は 、 インタラクティブ な な ユース、 特定 の 課題 が 生じる 場合 が あり ます。 従来 、 この よう な ソリューション に 必要 な スループット や 速度 を 確保 する に 追加 追加 の キャッシュレイヤー 必要 だっ た ため 、 コスト 増 や アーキテクチャ の 複雑 に つながっ て い い まし た た アーキテクチャ の 化 に つながっ て い まし まし た

この よう な インタラクティブ な ユース ケース を サポート する ため 、 本 日 、 当社 の 伸縮 性 の 高い パフォーマンス エンジン が さらに 改善 さ た た こと を 報告 いたし ます。 同時 実行性 、 スループット 、 実行 速度 大幅 な 向上 も も 含ま れ れ 、 実行 における 大幅 な 向上 も 含ま 含ま れ今回のアップデートが、この度公開プレビューにて利用開始となりました。

プライベートプレビューでは、サイバーセキュリティ会社のHUMAINが 、 同社 の アーキテクチャ を 簡素 化 し 、 インタラクティブ な ダッシュ ボード の Flake neige へ の 移行 を 可能 に し まし た。 これ により 、 時間 単位 から 分 へ と データ 鮮度 が 向上 し 、 クエリ の レイテンシー も も 1秒未満へと低減されました。Flocon de neige BUILD 2021では 、 humain 社 プラットフォーム エンジニアリング 担当 バイス プレジデント である Swati Baradia 氏 が 、 ボット の 特定 や アドフラウド の 防止 の ため に 同社 の Moteur de vérification humaine が いかに て 何 兆 も の インタラクション を 処理 し て いる の 、 また 、 、 各 インタラクション を 処理 し て の か 、 また 、 、 各 各 処理 し て いる か 、 また 、 、 各 各 顧客 し て いる か 、 また 、 、 各 各が カスタマイズ さ れ た インサイト を 得 られる よう に いかに し て ダッシュ ボード により 多く の 情報 を 表示 さ せ て いる か について について 話 し て くれ まし た。

Baradia 氏 は 次 の よう に 語っ て い ます。 「Flake neige により 、 取得 し た すべて の データ が 作成 から 構築 分 以内 に 利用 可能 なる と いう エコシステム の 構築 が 可能 と なり まし。 これ は 従来 従来もの 時間 の 短縮 に なり ます。 データ 鮮度 が 高まっ た こと で 、 アクティブ な 脅威 を より 迅速 検知 検知 できる よう に なり まし た。 」

カリフォルニア州公衆衛生局(CDPH)およびカリフォルニア州技術局(CDT)もまた、Registre numérique des vaccins COVID-19を 開設 する 際 、 改善 さ れ た 同時 実行 性 や レイテンシー の 恩恵 を 受け て おり 、 数 百 万 もの カリフォルニア 州 に に ワクチン 接種 証明 書 を 万 に 発行 する ことができ た。。 電子 書 迅速 に に 発行 ことができ まし た 。CDTで共有

同時実行性およびレイテンシーの向上:どのように実現したか

  • クエリの同時実行を扱うコアエンジンの再設計
  • ポイントルックアップやアグリゲーションを含む、頻繁に使用されるデータアめセ傹パターボ驩

ポイントルックアップとは 、 ユーザー が 検索 キー や 他 の 演算 子 を 使っ て 少数 の レコード を 検索 する クエリ の です です。 例えば 、 セッション id や 時間 範囲 使用 使用 し て ページ クリック について 検索 する 場合 時間。 使用 し て て ページ クリック について 検索 する 場合 です。。。 し て て ページ クリック 検索 する 場合 です。。

一方、アグリゲーションとは 、 カウント 、 集計 、 最大 の 算出 など の 実行 で 、 グルーピング と 主 に 実施 さ れる 場合 も あり ます。 アグリゲーション の 例 として は 、 特定 の セッション ID による Web ページ クリック 数 の カウント する 場合 や 、 同じ 同じ について による ページ ページ クリック の カウント カウント 場合 や 、 同じ 同じ 同じ について についてURL, URL, URL, Web, Web, Web

顧客 による 新た な インタラクティブ ワークロード の 構築 や 既存 ワークロード の 改善 を サポート する ため に 、 私たち は クエリ プロセッシング プロセッシング イン フラストラクチャー の 部分 を を 分析 、 レイテンシー や 同時 実行 性 の 向上 に 努め まし 、 レイテンシー や 同時 実行 性 の 向上 に 努め まし た。

Flocon de neige内のクエリは以下のフェーズで実行されます(図1参照):

  • セットアップ:クライアントアプリケーションがSnowflakeにクエリを送信すると、最初のリソースが割り当てられまり当まられま
  • コンパイル:
  • スケジューリング:Flocon de neige により 、 クエリ の 実行 に 必要 な リソース が 仮想 ウェア ハウス 内 に 存在 する か どう か が 確認 さ れ ます。 十分 な リソース が ば 、 クエリ は 実行 フェーズ に 進み。 リソース が 不足 て て いる いるキューに入れられます。
  • 実行:この フェーズ で は 、 データ へ の アクセス 、 テーブル の 結合 、 演算子 による データ の フィルタリング 、 アグリゲーション の 実行 が 行わ れ 、 を を 送信 し た アプリケーション に 結果 が 返さ れ ます。 送信 し た アプリケーション に 結果 が 返さ れ ます。
  • キューイング:実行 に 必要 な リソース が 不足 し て い た 場合 、 クエリ は 待機 状態 (キューイング) になる 場合 が あり 、 実行 に 向け て 再度 スケジューリング フェーズ に 戻さ れ ます。

図1:クエリ実行の5つのフェーズ

SF Q

今回 は スケジューリング フェーズ に 大幅 な 変更 を 実施 し 、 メタ データ アクセス を 迅速 化 し 、 実行 リソース の 割り当て アルゴリズム を きめ 調整 調整 し まし た。 これ 、 、 特にマ ル チ ク ラ ス タ ウ ェ ア ハ ウ スで の 同時 実行 性 が 大幅 に 向上 し まし た。 また 、 クエリ の 開始 時間 時間 も 短縮 し た た。 これ は とり わけ わけ 100 ミリ に 満た ない 短 時間 タスク に 大きく 影響 し。 ほとんど クエリ クエリ について について コンパイル 時間 影響 し。 ほとんど の クエリ について について について15% 短縮 さ れ 、 if-then-else ステートメント の 実行 や String 比較 も 最適 化 し 、 これら の 実行 時間 を 最大 50% 短縮 し まし た。 この よう な 改善 、 、 Flake de neige で 実行 さ れる あらゆる の クエリ や ワークロード ワークロードが メリット を 享受 し て い ます が 、 特に 、 短 時間 クエリ や 同時 実行 性 の 高い インタラクティブ な ユース ケース で 非常 有効 有効 と なっ て い ます。

Flocon de neige検索最適化サービスによる メリット も 拡大 し ます。 検索 最適 化 サービス で は 、 ポイントルックアップクエリ の レイテンシー が 大幅 に 低減 さ れ 、 さらに 同時 進行 の 向上 向上 が た こと で 、 ウェア ハウス 内 の 同時 実行 レベル が 場合 で も ウェア ハウス ハウス の 同時 実行 レベル が 場合 で も も ルックアップ ルックアップの高速処理が可能となります。

定量化:性能の詳細な分析

インタラクティブ な ユース ケース における 向上 点 を 検証 する ため に 、 変更 の 前後 で Flake de neige の 性能 を 評価 し まし た。 検証 に は 、 店舗 で の 売上 返品 、 、 在庫 情報 情報 を テーブル が 格納 さ れ た 、 、 在庫 の を 含む テーブル が 格納 さ れ た10 ToのTPC-DSデータセットを 使用 し 、 性能 評価 の ため に 3 つ の タイプ (グローバル アグリゲーション 、 グルーピング と アグリゲーション 、 ポイントルックアップ) の クエリ を 定義 し まし た。。 、 より 検証 セット の キャッシュ の 再 利用 を 防ぎ 、 より 検証 を を 実施 実施 できるに 、 これら の クエリ は 、 日付 、 店舗 、 その 他 の パラメータ を さまざま に 変更 し て 実行 さ れ まし た 。10TB データ セット に さ れ た 最大 サイズ の テーブル は 、 290 億 レコード レコード 格納 格納 さ さ れ た た 、 (レコード が 格納 さ さ さ れ)です。

実際 の インタラクティブ な ユース ケース で 一般 的 である よう に 、 クエリ は 、 5 年 の 全 期間 より 狭め られ た 時間 範囲 の 店舗売上 データ に アクセス し まし。 その ため ため 、 、 は 、 以前 に アクセス た データ データ の の いくつ いくつ は 、 に アクセス し データ データ データ の いくつ いくつを ローカル データ キャッシュ に キャッシュ する ことができる ため 、 クエリ の ライフ サイクル を 部分 的 に 高速 化 でき ます。 結果 とし て 、 約 3 億 2000 万 の Store_Sales の レコード が ローカル に キャッシュ さ れ まし た。

クエリ1:グローバルカウント(アグリゲーション)

クエリの動作:1日の全店舗の売上を合計。

sélectionnez somme(ss_quantity), somme(ss_list_price), somme(ss_sales_price), somme(ss_net_profit)

de store_sales, date_dim

où ss_vendu_date_sk = d_date_sk

et d_date = $randomDate

クエリ2:グルーピングおよびカウンティング(アグリゲーション)

Plus de 30 jours

sélectionnez ss_store_sk, sum(ss_quantity), sum(ss_list_price), sum(ss_sales_price), sum(ss_net_profit)

de store_sales, date_dim

où ss_vendu_date_sk = d_date_sk

et d_date entre $randomDate et ($randomDate + 30)

et ss_store_sk entre $randomStore et ($randomStore +100)

grouper par ss_store_sk

クエリ3:ポイントルックアップ

クエリの動作:特定の製品およびチケット番号に対応する売上レコードの検索。

sélectionnez ss_ticket_number, ss_store_sk, ss_quantity, ss_list_price, ss_sales_price, ss_net_profit

de store_sales

où ss_ticket_number = $randomTicketNumber

et ss_item_sk = $item_sk

性能 の 向上 および 検索 最適 化 サービス の 有効 化 前後 に 、 同じ テスト スイート を 実行 し まし た。 両方 の の において 、 8 人 から 始まっ クライアント 接続。 両方 人 まで 増え 続け た 際 の レイテンシー と を 検証 検証 し し まし 続け た 際 レイテンシー と を を 検証 し し まし。 実際 の インタラクティブ ダッシュ ボード で は 、 これ は 、 何 百 人 もの ユーザー による ダッシュ ボード の 同時 使用 に 相当 し ます。

レイテンシー改善の定量化

レイテンシー の 改善 は 絶大 な もの でし た。 改善 前 は 、 仮想 ウェア ハウス へ の ロード が 増える と 3 つの クエリ すべて で レイテンシー も 増加 する が 見ら れ まし た。 改善 後 は 、 同じ 仮想 ハウス (追加 追加 た リソース。 後 は 、 同じ 仮想 ハウス (追加 追加 追加 リソース リソース。

最大 の 同時 実行 レベル (80 スレッド) の 「グローバル カウント」 クエリ 1 の レイテンシー は 1.1 秒 から 0,25 秒 (4 倍) まで 短縮 さ れ まし た (図 2 参照)。 「グルーピング および カウンティング」 た (の レイテンシー 参照))。 「グルーピング および カウンティング」 アグリゲーション (2 の レイテンシー は は、1.25秒から0.5秒(2.7倍)まで短縮されました(図3参照)。

図2:異なる同時実行レベルにおけるアグリゲーションクエリ1のレイテンシールにおけるアグリゲーションクエリ1のレイテンシールにおけるアグリゲーションクエリ1のレイテンシール2021

SF

図3:異なる同時実行レベルにおけるアグリゲーションクエリ2のレイテンシールにおけるアグリゲーションクエリ2のレイテンシール2021

SF

最新 の 最適 化 を 実施 する 以前 は 、 同時 実行 レベル が 高い とき の ポイントルックアップクエリ 3 は 5 秒 以上 し し て い まし。。 同時 実行 最適 の 実施 後 は 、 すべて の 同時 実行 レベル において 処理 処理 後 は 、 すべて の 同時 実行 レベル において 処理 処理 処理 時間 時間は 20% 短縮 さ れ まし た 。store_sales テーブル 上 で 検索 最適 化 サービス を 有効 化 する と 、 個 々 の クライアント において ほとんど 一貫 し た 0,5 秒 の レイテンシー を 達成 する ことができ まし た (図 4 参照) レイテンシー レイテンシー を 達成 する ことができ まし た (図 4 参照)。。

図 4: 同時 同時 および 検索 最適 化 サービス 有効 / 無効 時 の 、 異なる 同時 実行 レベル における ポイントルックアップクエリ 3 の レイテンシー (2021 年 5 月 と 2021 年 11 月 の 比較)

SF

スループット向上の定量化

改善 さ れ た エンジン および 検索 最適 化 サービス の 双方 を 実装 する こと により スループット の 向上 と いう 効果 も 得 られ まし た。 これら の 前 で は も 多く の が クエリ を 送信 し た も 、 、 ウェア ウェア ハウス を 送信 し た も 、 、 、 ウェアに増加するのみでした(図5参照)。

アップデート 後 の アグリゲーション クエリ 1 および 2 の スループット は 、 クエリ を 送信 する クライアント の 増加 し 従っ て スループット も ほぼ 直線 的 に 増加 し まし た。 クエリ 1 は 時間 当たり 317000 クエリ の スループット ()) を し 、 、 、 これ これ 3,7 3.7.倍 の 増加 と なり ます (図 5 参照)。 クエリ 2 は 176 000qph の スループット を 実現 し 、 これ は 以前 の 2,1 倍 と なり ます (図 6 参照)。

図5:異なる同時実行レベルにおけるアグリゲーションクエリ1のスループット(2021年5月ぼ2021守

SF

図 6: : 異なる 同時 実行 レベル における アグリゲーション クエリ 2 の スループット (2021 年 5 月 と 2021 年 11 月 の 比較)

SF

レイテンシー と 同様 に 、 同時 実行 の 改善 だけ で も ポイントルックアップクエリ 3 の スループット において も 最大 30% の 向上 が 見ら れ 、 ピーク 時 に は 40 000qph を 達成 でき た た。 検索 最適 化 サービス の 有効 により が 最大 化 化 し し 最適 化 サービス の 有効 効果 が 最大 化 化 し、スループットは180,000QPHまで増加し、2021年5月時点の6.3倍となりました(図7参照)。

図 7: 同時 同時 実行 検索 最適 化 サービス サービス 有効 / 無効 時 の 、 異なる 同時 実行 レベル における ポイントルックアップクエリ 3 の ((2021 年 5 月 と 2021 年 11 月 の))

SF

公開プレビューに参加する:今すぐ始めましょう

2021 年 6 月 の 最初 の 発表 以来 、 100 名近い 顧客 に レイテン シー および 同時 実行 改善 の プライベート プレビュー を お試し いただき まし た。 本日 より 、 の 改善 の 最初 の セット を 公開 プレビュー にて 広く 利用 いただけ の 最初 の セット を 公開 プレビュー にて 広く 利用 いただけ いただけ ます ます ます。

これら の コア エンジン 改善 の 効果 を 実感 する ため に は 、 改善 点 が デフォルト で 有効 と なっ て いる 次 の 4 つ の デプロイメント の うち の どれ で 運用 する 必要 が あり ます。 うち の どれ で 運用 する 必要 が あり ます。。

  • AWS ap-sud-est-1(シンガポール)
  • AWS eu-west-1(アイルランド)
  • AWS eu-central-1(フランクフルト)
  • Azure 西 ヨ ー ロ ッ パ

その 他 の デプロイメント における 仮想 ウェア ハウス は 、 2022 年上旬 に 自動 的 に アップ グレード さ れ 、 これら の 改善 による メリット を 享受 できる よう に ます。 異なる デプロイメント 内 の 仮想 ウェア ハウス で 有効 し たい 場合 、連絡ください。

これらの改善点を有効化する前後での性能を比較したい場合、当社のガイドのアカウントの使用ビューのクエリの項をご参照ください。

私たち は 、 flocon de neige の 性能 を 向上 し 、 顧客 の 皆様 の メリット に つながる よう 、 今後 も 尽力 し て 参り ます 。Snowflake の 今後 の アップデート ご 注目 注目 ください。

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.