我需要检讨我从存储在MPP机上的表抽样的100个随机行的解决方案(目前Netezza公司,后来可能是Hadoop的/等)重复随机抽样SQL
我没有兴趣使用Netezza的rand(),因为我希望能够在以后重现相同的示例,并且我不指望setseed()。
我现在使用的解决方案是:
SELECT * FROM MY_TABLE ORDER BY ID % 371, ID % 17, ID % 501, ID LIMIT 100
,其中3个数字是素数,我被自己的RNG产生。 我在正确的轨道上吗? 这个“随机”样本是否足够随机?
注意:我不需要它是一个加密的强随机样本,我只是想确保我每次都选取不同的样本,并且均匀采样,并且我希望能够轻松地重现我的示例(通过执行相同的SQL),如果需要。
谢谢!
+1用于存储表中的重要业务数据。 – 2011-02-01 13:23:34