본문 바로가기

Power BI

PowerBI DeskTop - 데이터 가져오기

PowerBI DeskTop(이하 파워데스크탑)에서 데이터 원본의 종류 살펴보기

파워데스탑을 활용하기 위한 첫 걸음이자 첫 관문인 데이터 가져오기에 대해서 살펴보도록 하자.

항상 첫 시작은 중요하다. 많은 사람들이 첫 부분이 어려우면 그냥 때려 치는 경우가 많다. 하지만 잘 생각해 보자 쉬울것 같으면 굳이 우리가 시간을 내서 공부를 해야 할 일도 없고 아직까지 세상은 그렇게 편리하게 모든걸 제공해주는 마법같은 기술은 적어도 현재까지는 없다. 확실한건 PowerBI를 통해서 한번만 잘 구축 해 놓으면 데이터 관리 및 분석이 편리해 진다는 것이다. 그냥 쫄지말고 닥치고 해 보자~~~ 어짜피 이것도 사람이 만든것인데 머 얼마나 어렵게 만들어 놨을까......

일단 큰 작업의 흐름은 머리속에 꼭 집어 넣고 있어야 한다. 정작 중요한것은 기능보다는 스토리를 기억 해야 한다. 우리가 현업에서 다루어지는 데이터의 유형은 다양할것 같지만 막상 그렇게 엄청나게 다양하지는 않다. 사내 ERP 또는 데이터베이스, 그룹웨어를 통해서 엑셀, CSV, Txt 형태로 어떻게 해서든 데이터를 주어지게 된다. 메인이 되는 데이터가 있고 참조가 되는 데이터가 있어서 적정하게 함수를 사용하던 아니면, 4천만의 기능인 Ctrl+ C,V를 통해서 어떻게든 엑셀 파일에 최종적인 형태로 만들어 놓는다. 이것이 바로 플랫파일이라고 부른다. 이렇게 플랫 파일로 만들게 되면 피벗, 차트 등을 통해서 보고서를 만들게 되는게 가장 일반적인 데이터를 다루는 형태이다.

그런데, 다양한 서비스와 플랫폼이 사용되면서 실무자들이 참조해야 하는 데이터의 유형이 많이 늘어나게 되었고 매번 그때마다 엑셀로 가져오는 것도 한계에 부딪히게 된 것이다. 반복적이고 같은 루틴의 작업이지만 그 양이 많아지면 어느 순간 감당이 안되는 경우가 발생이 되는 것이다. 

파워데스크탑의 데이터 가져오기는 이러한 다양한 데이터 소스에 직접 연결해서 내가 원하는 데이터만 선택하고 선택된 데이터를 조금 더 내가 하는 업무에 맞는 데이터로 변환시키는 작업까지를 해주게 된다. 흔히 이야기 하는 ETL (원문으로 쓰기가 귀찮아서 추출하고, 변형하고, 가져오는 작업)을 거의 완벽에 가깝게 지원해 주고 있다. 물론 완벽은 아니다. 가깝게 지원해 주고 있다.

어떤 데이터들이 있고 어떤 형태로 가져오게 되는지를 이번에는 살펴 볼 것이다. 

1. 파일

여기서 주목할 부분은 폴더이다. 폴더내의 엑셀 파일들을 가져와서 각각의 엑셀 파일들을 합쳐서 원하는 형태로 가공하는 작업을 정의 할 수 있고 심지어 이 작업의 순서가 기록이 되어 마치 매크로 처럼 자동화를 할 수 있다.오365를 사용하는 조직이라면 쉐어포인트 리스트를 통해서 보다 중앙집중적인 데이터 관리를 할 수 있다.

2.데이터베이스

현존하는 거의 모든 데이터베이스에 직접 연결하여 내가 원하는 데이터를 가져올수 있다. 물론 이때는 권한이 있어야 하고 당연히 ID, Password를 통해서 인가된 사용자 접속이 이루어 진다. 가장 나이스 한 방법이긴 하지만, 실무 현장에선 일반 사용자에게 DB를 쉽게 접속하는 걸 타부시하는 문화가 강하다. 머 보는 관점에 따라 민감할 수도 있고 아닐수도 있는데 우찌되었든 직급이 완전히 높지 않고서야 DB에 바로 접속 할수 있으신 분이 이글을 읽으시는 분중에 몇분이나 되실지 심히 궁금하긴 하다.

3.PowerBI 

Common Data Service(CDS)로 복잡하긴 한데 단순화 시키면 MS 웹앱용 새로운 형태의 데이터베이스 형태이다. DB 시스템 같기는 한데 클라우드 기반에 저장이 된다고 보면 된다. 이 CDS를 사용하는 제품 라인업은 다음 그림과 같은 제품이 있다. 이것은 오로지 MS 프로덕을 위한 솔루션인데 개이적으론 공용 데이터로 활용 될 수 있다는 규약이 맘에 안든다. PowerApps를 소개 할때 좀 더 자세하게 기술하게 될것같은데 몰라도 크게 지장 없으니 그냥 넘어가도 된다.

4.AZURE

MS 클라우드 서비스인 애저의 각종 서비스에 연결하여 데이터를 가져 올수 있다는 것인데 거의 실시간 데이터 모니터링에 쓰인다고 해도 무방할 정도이다. 만약 예를 들어 제품을 생산하는 공장에서 센서 데이터를 실시간으로 모니터링을 해야 하는 경우에는 막대한 데이터의 양과 속도문제때문에 Azure IoT 기반을 활용하는게 답이다.주로 빅데이터 솔루션이 이곳에 주로 자리잡고 있는것으로 이해하면 될듯....일반 사용자들에겐 좀 먼 나라 이야기 이다.

5.온라인 서비스

다양한 다른 밴더에서 제공하는 클라우드 서비스에 접속하여 데이터를 가져올 수 있다는 것이다. 가장 이해가 쉬운 구글 웹로그 분석 서비스를 통해서 특정 사이트의 구글 웹분석 관련 데이터를 시각화 하려고 할때 이 서비스를 이용하면 된다. 한가지 여기서 주의 해야 할것은 제공해주는 밴더가 주는 사람의 입장이기 때문에 주는 사람이 어떻게 주는냐에 따라서 Raw 데이터 형태로 받을지 아니면 정해진 보고서 형태만 보여질지는 해당 밴더가 지원하는 부분에 따른 것이다. 거의 대부분의 서비스가 Raw Data 형태로는 주지 않는거 같다. 모든 서비스를 사용해 보지 않아서 확신을 할 순 없지만....한가지 아쉬운 점은 모든 서비스가 해외 제품이고 국산 클라우드 서비스가 없다는것이 웬지 조금은 안타깝다. 꼭 볼 수 있기를....

6.기타

웹, ODBC,OLE DB등 다양한 형태의 소스에서 데이터를 가져 올 수 있다.


정리.

파워데스크탑의 데이터 가져오기는 다양한 다른 형태의 데이터를 연결하고 묶어서 새로운 데이터모델링을 하여 그렇게 만들어진 데이터를 기반으로 시각화를 만들어 낼 수 있다. 예를 들어 담당자가 특정 공유폴더에 각 영업사원들이 작성한 엑셀 파일을 취합하고 특정 웹에 있는 데이터를 참조하여 사내 CRM 데이터에서 다운받은 자료들을 근거로 forcast를 하고 관리 하는 보고서를 만들어야 한다고 하면 이렇게 다양한 데이터 소스에서 데이터를 가져오고 담당자가 기준하는 비즈니스 로직을 적용하여 대시보드를 만들어서 팀원과 또는 상급자와 공유한다면 특별히 비즈니스 로직이 바뀌지 않는 이상 담당자는 이제 매주, 매달 반복적으로 했던 작업에서 부터 벗어나게 되는 것이다.