Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Snowflakeで ダミーデータを作ろう

Sponsored · Your Podcast. Everywhere. Effortlessly. Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
Avatar for fkd fkd
January 01, 2025
150

Snowflakeで ダミーデータを作ろう

Snowflakeでダミーデータを作る際の小ネタ集です。参考になれば幸いです。

Avatar for fkd

fkd

January 01, 2025
Tweet

Transcript

  1. ダミーデータ、必要ですよね? • ダミーデータ、あるいはテストデータと呼ばれるもの • 動作確認をするための何らかのデータ • 検証(システムテスト等)のために本番データを模倣したデータ • パフォーマンスチェック、負荷試験目的の大量データ •

    いざ作ろうとすると… • 結構面倒くさい • 泥臭い作業が多い • ダミーデータを作るのは… • 大事なタスク • 結構テクいことをやる • データエンジニアリングのうち (と思っている) 2024/11/22
  2. Snowflake上で使える手法 • 関数を組み合わせてダミーデータを生成する • GENERATOR (https://docs.snowflake.com/ja/sql-reference/functions/generator) • 指定された数だけ行を生成 • UNIFORM

    (https://docs.snowflake.com/ja/sql-reference/functions/uniform) • 一様分布の疑似乱数を生成 • RANDOM (https://docs.snowflake.com/ja/sql-reference/functions/random) • ランダムな数値を生成 • RANDSTR (https://docs.snowflake.com/ja/sql-reference/functions/randstr) • ランダムな文字列を生成 • シーケンス系 (https://docs.snowflake.com/ja/sql-reference/functions/seq1) • 連番を生成 • etc… • 主に ジェネレーター、乱数生成系 (数字、文字列、分布)、連番等の関数を組み合わせる 2024/11/22
  3. データのランダム制の考慮 2024/11/22 • ZIPF(s, N, gen) • sが大きいほど上位が頻出する • Nに指定可能な数値は1〜16,777,215のため

    配列の要素0が選ばれるようにするには -1が必要 • データの出現に偏りを持たせたい場合(2) • ZIPF(Zipf分布、ジップの法則)