다시 계산 문제 해결
이 섹션에서는 통합 문서를 언제 다시 계산할지를 계획할 때 고려할 추가 기술 정보를 제공합니다. 통합 문서의 데이터를 다시 계산하고 새로 고치는 방법은 다음 항목을 참조하십시오.
PowerPivot에서 데이터를 업데이트하는 다양한 방법
종속성
열이 다른 열에 종속될 때 다른 열의 내용이 변경되면 관련된 모든 열을 다시 계산해야 합니다. PowerPivot 통합 문서가 변경될 때마다 PowerPivot for Excel은 기존 PowerPivot 데이터에 대해 분석을 수행하여 다시 계산이 필요한지 여부를 결정하고 가능한 가장 효율적인 방법으로 업데이트를 수행합니다.
예를 들어 Product 및 ProductCategory 테이블과 관련된 테이블 Sales가 있고 Sales 테이블의 수식이 다른 모든 테이블에 종속되어 있다고 가정해 봅니다. Product 또는 ProductCategory 테이블이 변경되면 Sales 테이블의 모든 계산 열이 다시 계산됩니다. 이 경우 범주 또는 제품별 판매의 합계를 내는 수식을 사용할 경우가 많으므로 올바른 결과를 내기 위해서는 데이터를 기반으로 하는 수식을 다시 계산해야 합니다.
PowerPivot에서는 변경된 값을 검사하는 것보다 완전히 다시 계산하는 것이 더 효율적인 경우가 많기 때문에 항상 테이블에 대해 전체 다시 계산을 수행합니다. 다시 계산을 트리거하는 변경에는 열 삭제, 열의 숫자 데이터 형식 변경 또는 새 열 추가와 같은 주요 변경 사항이 포함될 수도 있습니다. 그러나 열 이름 변경과 같은 사소해 보이는 변경 사항도 다시 계산을 트리거할 수 있는데, 이는 수식에서 열 이름이 식별자로 사용되기 때문입니다.
경우에 따라서는 PowerPivot for Excel에서 해당 열을 다시 계산에서 제외할 수 있다고 결정할 수 있습니다. 예를 들어 Products 테이블에서 **[Product Color]**와 같은 값을 찾는 수식이 있을 때 Sales 테이블의 [Quantity] 열이 변경된 경우에는 Sales와 Products 테이블이 관련되어 있더라도 수식을 다시 계산할 필요가 없습니다. 하지만 **Sales[Quantity]**를 사용하는 수식이 있을 경우에는 다시 계산이 필요합니다.
종속된 열의 다시 계산 순서
종속성은 다시 계산이 수행되기 전에 계산됩니다. 서로 종속되는 여러 열이 있는 경우 PowerPivot에서는 종속성의 순서를 따릅니다. 이를 통해 열을 올바른 순서대로 최대한 빠르게 처리합니다.
트랜잭션
데이터를 다시 계산하거나 새로 고치는 작업은 트랜잭션의 형태로 수행됩니다. 즉, 새로 고침 작업의 일부가 실패하면 나머지 작업이 롤백됩니다. 이를 통해 데이터가 일부만 처리된 상태로 남는 것을 방지합니다. 관계형 데이터베이스에서처럼 트랜잭션을 관리하거나 검사점을 만들 수 없습니다.
일시적 함수의 다시 계산
NOW, RAND 또는 TODAY와 같은 일부 함수에는 고정 값이 포함되지 않습니다. 계산 열에 이러함 함수가 사용될 경우 성능 문제를 방지하기 위해 쿼리나 필터링을 실행해도 일반적으로 함수가 다시 계산되지 않습니다. 이러한 함수의 결과는 전체 열을 다시 계산할 때만 다시 계산됩니다. 외부 데이터 원본으로부터 데이터를 새로 고치거나 데이터를 수동으로 편집할 때 이러한 함수가 포함된 수식이 다시 계산되는 경우를 예로 들 수 있습니다. 하지만 NOW, RAND 또는 TODAY와 같은 일시적 함수는 함수가 측정값 정의에 사용될 경우 항상 다시 계산됩니다.