쿼리 폴딩 및 SQL Server에 연결

쿼리 폴딩 및 SQL Server에 연결

이 자습서에서는 SQL 서버에 연결하는 방법을 배웁니다. 또한 Power Query에서 쿼리 폴딩이 작동하는 방식과 LuckyTemplates에서 SQL 명령을 실행하는 방법에 대해서도 설명합니다. 파워 쿼리 내에서 다양한 원본에서 데이터를 추출하고 조작할 수 있습니다. 쿼리 접기를 사용하면 데이터 변환을 LuckyTemplates에서 수행하는 대신 원본으로 오프로드할 수 있습니다.

쿼리 폴딩은 보고서의 성능 향상을 보장하기 위해 대규모 데이터베이스에서 매우 효과적입니다.

목차

쿼리 폴딩을 위해 SQL Server 데이터베이스에 연결

파워 쿼리 편집기에서 이 자습서를 수행할 것입니다. 먼저 New Source 아래에서 SQL Server를 클릭합니다 .

쿼리 폴딩 및 SQL Server에 연결

이미 SQL 서버 시스템을 설치하고 독립적으로 작업한 경우 서버 이름은 localhost 입니다 . 그러나 조직에서 작업하는 경우 서버 이름과 데이터베이스에 대한 액세스 권한을 제공합니다. 데이터베이스 이름도 제공해야 합니다. 이 예에서는 AdventureWorksDW2012 를 사용하겠습니다 . 이 자습서 에서 이 샘플 데이터베이스를 다운로드하는 방법을 배울 수 있습니다 .

쿼리 폴딩 및 SQL Server에 연결

데이터 연결 모드 의 경우 가져오기 를 선택하면 선택한 모든 데이터가 모델에 로드됩니다 . 그러나 DirectQuery 를 선택하면 데이터 모델에는 아무것도 로드되지 않고 모든 것이 데이터베이스에 있게 됩니다. 필터를 적용할 때마다 쿼리가 SQL Server로 다시 전송됩니다.

그러나 이것은 업데이트하는 데 더 많은 시간이 걸리기 때문에 효율적이지 않습니다. 따라서 데이터 연결 모드가져오기를 선택합니다 .

쿼리 폴딩 및 SQL Server에 연결

그런 다음 고급 옵션 을 클릭하면 SQL 문을 작성할 수 있는 섹션이 제공됩니다. 나중에 어떻게 하는지 배우겠습니다.

이 예에서는 한 번에 하나의 테이블만 필요하므로 관계 열이나 테이블을 가져오지 않습니다. 이 경우 해당 옵션을 선택 해제해야 합니다.

쿼리 폴딩 및 SQL Server에 연결

마지막으로 확인 을 클릭합니다 .

쿼리 폴딩 및 SQL Server에 연결

그런 다음 사용 가능한 테이블을 볼 수 있고 거기에서 몇 가지 정보를 얻을 수 있습니다. 이 예에서는 사실 인터넷 판매 데이터를 가져와야 합니다. 따라서 FactInternetSales를 검색하고 선택한 다음 확인을 클릭합니다 .

쿼리 폴딩 및 SQL Server에 연결

결과적으로 이제 파워 쿼리 편집기에 데이터가 있습니다.

쿼리 폴딩 및 SQL Server에 연결

파워 쿼리에서 쿼리 접기 이해

소스 패널 내에서 Navigation을 마우스 오른쪽 버튼으로 클릭한 다음 View Native Query 를 선택합니다 .

쿼리 폴딩 및 SQL Server에 연결

이를 통해 이 시스템에서 실행된 명령을 볼 수 있습니다. 파워 쿼리 엔진은 SQL Server에서 실행하기 위해 이 명령을 만들었습니다. 이제 확인을 클릭합니다 .

쿼리 폴딩 및 SQL Server에 연결

예를 들어, 필터를 생성하면 APPLIED STEPS 패널에서 볼 수 있음을 보여주기 위해 이 표에 임의로 필터를 생성했습니다 .

쿼리 폴딩 및 SQL Server에 연결

필터 중 하나를 마우스 오른쪽 버튼으로 클릭하면 View Native Query 옵션을 계속 사용할 수 있습니다.

쿼리 폴딩 및 SQL Server에 연결

필터의 이 SQL 쿼리는 SQL Server 에서 실행되었습니다 . 필터를 적용하지 않은 경우 5백만 개의 행이 표시됩니다. 이제 필터를 적용했으므로 4백만 개의 행만 가져옵니다.

쿼리 폴딩 및 SQL Server에 연결

이는 LuckyTemplates가 이제 SQL Server에서 5백만 행 대신 4백만 행을 추출하고 있음을 의미합니다. 이를 통해 행 수가 줄어들고 네트워크의 로드 수도 줄었습니다.

Native Query 가 표시되는 한 쿼리 폴딩이 작동하고 있음을 의미합니다. 따라서 모든 처리는 소스 시스템 내에서 수행됩니다. 특히 대용량 데이터가 있는 경우 데이터를 처리하는 가장 효율적인 방법입니다.

테이블에서 하나의 열을 제거하는 또 다른 단계를 추가했습니다. 마우스 오른쪽 버튼으로 클릭하면 View Native Query 옵션이 표시되며 이는 여전히 작동 중임을 의미합니다.

쿼리 폴딩 및 SQL Server에 연결

깨진 쿼리 폴딩 식별 및 수정

열의 데이터 유형 변경과 같은 일부 변환을 사용하면 Query Folding이 중단됩니다. 예를 들어 TaxAmt 열 데이터 유형을 Whole Number 로 변경합니다 .

쿼리 폴딩 및 SQL Server에 연결

이렇게 하면 APPLIED STEPS 아래에 유형 변경 단계가 추가됩니다 . 마우스 오른쪽 버튼으로 클릭하면 이제 View Native Query가 비활성화된 것을 볼 수 있습니다 . 이는 Query Folding이 손상되었음을 의미합니다.

쿼리 폴딩 및 SQL Server에 연결

쿼리 폴딩이 손상 되면 우리가 수행할 다른 모든 변환은 LuckyTemplates 파워 쿼리에서 수행되지만 소스 시스템에서는 더 이상 수행되지 않습니다.

예를 들어 300만 개의 행을 가져오는 경우 모두 파워 쿼리로 들어옵니다. 여전히 필터링을 통해 이러한 레코드를 줄일 수 있습니다. 그러나 이 300만 행은 이제 네트워크를 통해 전달되므로 그다지 효율적이지 않습니다.

또 다른 예로 2012년 1월 1일 이후의 날짜만 표시하도록 OrderDate를 필터링한다고 가정해 보겠습니다.

쿼리 폴딩 및 SQL Server에 연결

APPLIED STEPS 에서 해당 필터를 보면 View Native Query 옵션이 표시되지 않습니다.

쿼리 폴딩 및 SQL Server에 연결

다시 말하지만, 이전에 생성한 변환으로 인해 Query Folding이 손상되었기 때문입니다 . 우리가 할 수 있는 것은 우리가 할 모든 필터링 단계를 Query Folding을 깨뜨린 변환 단계 위로 옮기는 것입니다 .

이 예에서는 생성한 최근 필터링 단계를 마우스 오른쪽 버튼으로 클릭하고 이전으로 이동 을 클릭하거나 변경 유형 변환 의 맨 위로 드래그합니다 .

쿼리 폴딩 및 SQL Server에 연결

해당 필터를 다시 마우스 오른쪽 버튼으로 클릭하면 View Native Query 옵션이 표시되며 이는 Query Folding이 다시 작동함을 의미합니다.

쿼리 폴딩 및 SQL Server에 연결

SQL Server 연결 및 SQL 언어 실행의 이점

예를 들어 이미지에 표시된 대로 국가별 총 판매액 형식으로 데이터를 표시하려고 한다고 가정해 보겠습니다.

쿼리 폴딩 및 SQL Server에 연결

FactInternetSales 테이블 에는 SalesAmount 열이 있지만 국가 정보는 없습니다.

쿼리 폴딩 및 SQL Server에 연결

SalesTerritoryKey 열이 있으므로 여전히 국가 정보를 얻을 수 있습니다 .

쿼리 폴딩 및 SQL Server에 연결

우리가 해야 할 일은 DimSales 테이블을 여기로 가져와 FactInternetSales 와 병합할 수 있도록 하는 것 입니다 . 그런 다음 국가 열을 가져와 매우 복잡하고 시간이 오래 걸릴 수 있는 국가 열별로 그룹화해야 합니다. 따라서 효율적이지 않은 파워 쿼리 에서 모든 작업을 수행하는 대신 SQL 에서 수행해야 합니다 .

그렇게 하려면 New Source > SQL Server 를 클릭하기만 하면 됩니다 .

쿼리 폴딩 및 SQL Server에 연결

localhost라는 서버와 AdventureWorksDW2012를 데이터베이스로 다시 연결해 보겠습니다 .

쿼리 폴딩 및 SQL Server에 연결

이번에는 SQL 문 필드 아래에 명령을 작성하고 싶기 때문에 고급 옵션을 수행하려고 합니다 . 이 예에서는 SQL 문에 입력할 명령을 이미 작성했습니다. 다른 자습서에서 SQL 명령에 대해 알아볼 수 있습니다.

쿼리 폴딩 및 SQL Server에 연결

관계 열을 포함하지 않으려면 여기에서 이 옵션을 선택 취소합니다. 그런 다음 확인 버튼을 클릭하여 이 명령을 실행합니다.

쿼리 폴딩 및 SQL Server에 연결

명령을 실행하면 이 미리보기 창에 Sales Territory RegionTotal Sales 가 표시됩니다 .

쿼리 폴딩 및 SQL Server에 연결

따라서 파워 쿼리에서 다른 테이블과 열을 조작하는 대신 간단한 SQL 명령을 사용하여 SalesByCountry 테이블 의 유사한 출력을 얻을 수 있었습니다 .

또 다른 이점은 SQL에서 모든 데이터를 변환하고 데이터 모델에 필요하거나 필요한 데이터만 가져올 수 있다는 것입니다. 이를 통해 어려움이나 문제없이 계획에 따라 매우 효율적인 데이터 모델을 구축할 수 있습니다.

LuckyTemplates 사용자를 위한 SQL Server 다운로드 및 설치 SQL – 여러 데이터 원본에서 데이터를 쿼리하는
새로운 LuckyTemplates 과정

결론

이 자습서에서는 Query Folding이 무엇인지 알아보고 그 이점을 발견했습니다. 파워 쿼리를 SQL Server 에 연결하는 방법에 대한 단계도 논의했습니다 .

또한 SQL Server 에 연결하고 파워 쿼리 에서 수행하는 대신 SQL Server 에서 변환을 만드는 이점에 대해 이야기했습니다 .

바라건대 SQL 에서 모든 변환을 수행하는 것이 파워 쿼리 에서 수행하는 것보다 어떻게 더 효율적이고 빠른지 확인할 수 있었습니다 .

모두 제일 좋다,

하피즈


파이썬에서 자기란 무엇인가: 실제 사례

파이썬에서 자기란 무엇인가: 실제 사례

파이썬에서 자기란 무엇인가: 실제 사례

R에서 RDS 파일을 저장하고 로드하는 방법

R에서 RDS 파일을 저장하고 로드하는 방법

R의 .rds 파일에서 개체를 저장하고 로드하는 방법을 배웁니다. 이 블로그에서는 R에서 LuckyTemplates로 개체를 가져오는 방법도 다룹니다.

첫 N 영업일 재방문 – DAX 코딩 언어 솔루션

첫 N 영업일 재방문 – DAX 코딩 언어 솔루션

이 DAX 코딩 언어 자습서에서는 GENERATE 함수를 사용하는 방법과 측정값 제목을 동적으로 변경하는 방법을 알아봅니다.

LuckyTemplates에서 다중 스레드 동적 시각적 개체 기술을 사용한 인사이트 쇼케이스

LuckyTemplates에서 다중 스레드 동적 시각적 개체 기술을 사용한 인사이트 쇼케이스

이 자습서에서는 다중 스레드 동적 시각적 개체 기술을 사용하여 보고서의 동적 데이터 시각화에서 통찰력을 만드는 방법을 다룹니다.

LuckyTemplates의 컨텍스트 필터링 소개

LuckyTemplates의 컨텍스트 필터링 소개

이 기사에서는 필터 컨텍스트를 살펴보겠습니다. 필터 컨텍스트는 모든 LuckyTemplates 사용자가 처음에 배워야 하는 주요 주제 중 하나입니다.

LuckyTemplates 온라인 서비스에서 앱을 사용하기 위한 최고의 팁

LuckyTemplates 온라인 서비스에서 앱을 사용하기 위한 최고의 팁

LuckyTemplates Apps 온라인 서비스가 다양한 소스에서 생성된 다양한 보고서 및 인사이트를 관리하는 데 어떻게 도움이 되는지 보여주고 싶습니다.

시간 경과에 따른 이익 마진 변화 분석 - LuckyTemplates 및 DAX를 사용한 분석

시간 경과에 따른 이익 마진 변화 분석 - LuckyTemplates 및 DAX를 사용한 분석

LuckyTemplates에서 측정 분기 및 DAX 수식 결합과 같은 기술을 사용하여 수익 마진 변경을 해결하는 방법을 알아봅니다.

DAX Studio의 데이터 캐시에 대한 구체화 아이디어

DAX Studio의 데이터 캐시에 대한 구체화 아이디어

이 자습서에서는 데이터 캐시의 구체화 아이디어와 결과 제공 시 DAX 성능에 미치는 영향에 대해 설명합니다.

LuckyTemplates를 사용한 비즈니스 보고

LuckyTemplates를 사용한 비즈니스 보고

지금까지 Excel을 계속 사용하고 있다면 지금이 비즈니스 보고 요구 사항에 LuckyTemplates를 사용하기 시작하는 가장 좋은 시기입니다.

LuckyTemplates 게이트웨이란? 당신이 알아야 할 모든 것

LuckyTemplates 게이트웨이란? 당신이 알아야 할 모든 것

LuckyTemplates 게이트웨이란? 당신이 알아야 할 모든 것