autonumberhash256 - 스크립트 함수

이 스크립트 함수는 복합 입력 표현식 값의 256비트 해시를 계산하고, 스크립트 실행 중에 발견된 각각의 고유 해시 값에 해당하는 고유 정수 값을 반환합니다. 이 함수는 복잡한 키의 간단한 메모리 표현을 만드는 경우 등에 사용할 수 있습니다.

참고: 테이블을 읽는 순서에 따라 정수가 생성되므로 동일한 데이터 로드 시 생성된 autonumberhash256 키만 연결할 수 있습니다. 데이터 로드 간에 영구적인 키를 사용해야 하는 경우, 소스 데이터 정렬과 관계없이 hash128, hash160 또는 hash256 함수를 사용해야 합니다.

Syntax:  

autonumberhash256(expression {, expression})

 

Example: 복합 키 만들기

이 예에서는 메모리를 절약하기 위해 autonumberhash256 함수를 사용하여 복합 키를 만듭니다. 예는 데모용으로 간략하게 나와 있지만 다량의 행이 포함된 테이블에서는 의미가 있습니다.

Region Year Month Sales
North 2014 May 245
North 2014 May 347
North 2014 June 127
South 2014 June 645
South 2013 May 367
South 2013 May 221

소스 데이터는 인라인 데이터를 사용하여 로드됩니다. 그 다음, Region, YearMonth 필드에서 복합 키를 만드는 이전 로드를 추가합니다.

RegionSales: LOAD *, AutoNumberHash256(Region, Year, Month) as RYMkey; LOAD * INLINE [ Region, Year, Month, Sales North, 2014, May, 245 North, 2014, May, 347 North, 2014, June, 127 South, 2014, June, 645 South, 2013, May, 367 South, 2013, May, 221 ];

 

결과 테이블은 다음과 같습니다.

Region Year Month Sales RYMkey
North 2014 May 245 1
North 2014 May 347 1
North 2014 June 127 2
South 2014 June 645 3
South 2013 May 367 4
South 2013 May 221 4

이 예에서는 다른 테이블에 연결해야 하는 경우 'North2014May' 문자열 대신 RYMkey(예: 1)를 참조할 수 있습니다.

이제 비용에 대한 소스 테이블을 비슷한 방법으로 로드합니다. Region, YearMonth 필드는 가상 키가 생성되지 않도록 하기 위해 이전 로드에서 제외되며, autonumberhash256 함수를 사용하여 테이블을 연결하는 복합 키를 이미 만드는 중입니다.

RegionCosts: LOAD Costs, AutoNumberHash256(Region, Year, Month) as RYMkey; LOAD * INLINE [ Region, Year, Month, Costs South, 2013, May, 167 North, 2014, May, 56 North, 2014, June, 199 South, 2014, June, 64 South, 2013, May, 172 South, 2013, May, 126 ];

 

이제 테이블 시각화를 시트에 추가하고, Region, YearMonth 필드와 더불어 Sum 계수를 Sales 및 Costs에 대해 추가할 수 있습니다. 테이블은 다음과 같습니다.

Region Year Month Sum([Sales]) Sum([Costs])
Totals     1952 784
North 2014 June 127 199
North 2014 May 592 56
South 2014 June 645 64
South 2013 May 588 465