You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在持续数据批处理中实现稳定10%随机采样?

需求:低成本实现数据流的10%随机采样

我们有持续向数据湖写入的数据流,需要低运行成本的方案,获取数据的10%随机样本。

当前遇到的问题

目前使用以下代码片段进行采样,但随着新批次数据到来,总采样率会超出10%:

select id,
(uniform(0::float, 1::float, random(1)) < .10)::boolean as sampling
from temp_hh_mstr;

曾尝试按每批次100条记录、以0.1为采样率处理10个批次,最终总采样率约为32%,不符合预期。

已尝试思路的痛点

考虑过通过Snowflake的TABLESAMPLE,结合总记录数与已采样ID计算采样,但每次新批次到来都需要重新计算,会增加运行成本。

参考方向

  • 连续性修正的威尔逊得分区间
  • 二项式置信区间

内容的提问来源于stack exchange,提问作者Vaibhav

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 02:06:25