다음을 통해 공유


sample 연산자

적용 대상: ✅Microsoft Fabric✅Azure Data ExplorerAzure MonitorMicrosoft Sentinel

입력 테이블에서 지정된 난수의 행 수를 반환합니다.

참고 항목

  • sample 는 값의 분포가 아닌 속도를 위해 준비됩니다. 특히, 연산자가 서로 다른 크기의 데이터 세트(예: a 또는 join 연산자)의 통합 2 데이터 세트를 연산자 이후에 사용하는 경우 '공정한' 결과를 생성하지 않음을 union 의미합니다. 테이블 참조 및 필터 바로 뒤를 사용하는 sample 것이 좋습니다.
  • sample 는 비결정적 연산자이며 쿼리 중에 평가될 때마다 다른 결과 집합을 반환합니다. 예를 들어 다음 쿼리는 두 개의 서로 다른 행을 생성합니다(동일한 행을 두 번 반환해야 하는 경우에도).

구문

T | sample NumberOfRows

구문 규칙에 대해 자세히 알아봅니다.

매개 변수

이름 Type 필수 설명
T string ✔️ 입력 테이블 형식 식입니다.
NumberOfRows int, long 또는 real ✔️ 반환할 행 수입니다. 숫자 식을 지정할 수 있습니다.

예제

let _data = range x from 1 to 100 step 1;
let _sample = _data | sample 1;
union (_sample), (_sample)

출력

x
83
3

위의 _sample 예제에서 한 번 계산되도록 하려면 materialize() 함수를 사용할 수 있습니다.

let _data = range x from 1 to 100 step 1;
let _sample = materialize(_data | sample 1);
union (_sample), (_sample)

출력

x
34
34

지정된 행 수가 아닌 특정 비율의 데이터를 샘플링하려면

StormEvents | where rand() < 0.1

행이 아닌 키를 샘플링하려면(예: 샘플 10 ID 및 이러한 ID에 대한 모든 행 가져오기) 연산자와 함께 in 사용할 sample-distinct 수 있습니다.

let sampleEpisodes = StormEvents | sample-distinct 10 of EpisodeId;
StormEvents
| where EpisodeId in (sampleEpisodes)