MPPマシン(現在はNetezza、後でhadoopなど)に格納されているテーブルからランダムな100行をサンプリングするためのソリューションのレビューが必要です。
後で同じサンプルを再現できるようにしたいので、Netezzaのrand()を使用することに興味はありません。また、setseed()を期待していません。
私が現在使用している解決策は次のとおりです。
SELECT * FROM MY_TABLE ORDER BY ID % 371, ID % 17, ID % 501, ID LIMIT 100
ここで、3つの数値は、私が自分のRNGによって生成している素数です。私は正しい方向に進んでいますか?この「ランダム」サンプルは十分にランダムですか?
注:暗号化された強力なランダムサンプルである必要はありません。毎回異なるサンプルを選択し、均一にサンプリングしていることを確認したいだけです。サンプルを簡単に再現できるようにしたいと思います(必要に応じて同じSQLを実行します。
ありがとう!