반응형

안녕하세요 제씨입니다.

가을이 한층 더 깊어졌네요. 점점 추위가 익숙해지는 날씨가 되는 것 같습니다.

여러분도 고뿔 조심하셔요 :)

 

오늘은 고객사와 논의하면서 Performance에 대한 이슈가 제기되었습니다.

무슨 말이냐면, QlikView의 화면 로딩이 느리다는 것이지요 ㅠ_ㅠ

 

저도 어찌어찌하면서 찾아보니 다음과 같은 자료가 잘 정리되어 있더군요.

 

 

Performance and Optimization Best Practices in Qlik v2.pptx
3.45MB

 

Qlik community에서 배포되어있는 파일을 참고삼아 공유합니다.

영어로 되어있지만, 꼼꼼하게 퍼포먼스 향상을 어떻게 해야 하는지 적혀있으니 참고하세요 :)

 

 

퍼포먼스가 느려지는 이유는 다양하지만 대표적으로 꼽자면,

데이터가 너무 방대하거나, 화면에 표현식이 너무 많이 들어가 있거나

If나 반복문 로직을 사용해서 퍼포먼스가 안좋아지는 경우가 대표적이겠네요.

 

그럼 이런 퍼포먼스 이슈들을 어떻게 해결해야 할까요?

 

 

 

1. 복잡한 수식은 Script에서 해결하기

화면에서 If를 쓰거나 반복문을 사용할 때 먼저 생각해야 할 점은, 그 표현식의 로직을 Script에 태울 수 있냐는 점입니다.

그럼 Qvd파일로 마트화해서 데이터 값만 불러들이고, 표현식에서는 간단한 Sum정도로 표현할 수 있도록 하는 것이죠.

최대한 표현식을 가볍게 하는 게 좋습니다.

 

 

 

 

2. IF 연속문을 Pick-Match로 치환하기

If문 안에 If문이 들어있는 경우, 퍼포먼스에 큰 영향을 미친다고 합니다. If문이 기본적으로 연관된 테이블을 스캔하기 때문이라고 하네요. 그래서 시간이 지날수록 퍼포먼스가 좋아질 리가 없겠죠?

그럼 이런 경우 가급적이면 Pick-Match로 치환하여 표현할 수 있는 방법을 사용하는 게 좋습니다.

	If( Region=‘North America’,  100, 
		if( Region=‘Asia’,50, 
			if( Region=‘Europe’,75)
		)
	)
=pick( match( Region,'North America','Asia','Europe'),100,50,75)

 

 

3. Set으로 대체하여 사용하기

가급적 Set으로 사용할 수 있으면 Set으로 표현하고, If문을 최소화하는 게 좋습니다. 또한 If문을 불가피하게 사용해야 할 경우에는, 문자열 검색이 아닌 Integer 검색이 될 수 있도록 구축하는 게 좋습니다.

하지만 Set으로 표현할 수 있다면 최선이겠죠?

 

Worst:  Sum(  If(  ClientGroup=‘North America Sales’, Sales) )   

Better:  Sum( If ( ClientGroupNum=1,Sales))

Best:  Sum( {<ClientGroupNum={1}>} Sales)

 

 

 

 

4. AGGR(), 계산된 차원(Caculated Dimension)도 가급적 피하자

Aggr() 함수는 강력한 기능입니다. 표현식 내에서 Group By 값으로 집계된 값을 계산할 수 있도록 도와주죠. 하지만 퍼포먼스 측면에서는 도움이 되지는 않습니다. 그래서 가급적이면, Script 단에서 내려서 해결해주는 게 좋다고 하네요!

 

 

 

 

5. 3~4개 이상의 테이블을 참조하는 차트를 가급적 피하자

데이터 모델링에서 신경써야 하는 부분이겠죠. 그래서 Fact Table은 가급적 최소화 하는 게 좋습니다. 다양한 테이블을 참조해서 가져오게 되면 성능이 저하되니까요.

 

퍼포먼스를 고려한다면 가급적 모든 Table을 Concatenate해서 하나의 통테이블로 만들면 좋다고 합니다. 하지만 모델링 측면에서 반복되는 데이터를 줄이고, Schema를 담은 정리하기 위해서는 그 중간을 잘 찾아가는 게 개발자/컨설턴트의 역할일 것 같습니다.

 

 

가만 살펴보니 퍼포먼스 저하의 주범은 If문인 경우가 대부분이군요. 조건문을 최소화하는 방향으로 고객사의 화면을 가볍게 만들어봐야겠습니다. 숱을 치는 느낌으로 말이죠 :)

 

이상으로 오늘의 포스팅을 마치겠습니다.

그럼 다음 포스팅까지 안녕히!

반응형
반응형

안녕하세요,

Qlik으로 밥먹고 사는 제씨입니다.

 

대세는 Self-BI로 돌아선지 오래이고,

이미 시장은 Tableau와 Power BI, Qlik Sense 와 같은 제품들의 군웅할거가 진행되어 있습니다.

 

하지만 몇 해를 Qlik으로 여러 고객사에서 프로젝트를 해오면서,

고객들이 두 제품을 비교하다가 결국엔 QlikView로 돌아서는 것을 많이 경험했습니다.

 

세계적으로 대세가 Qlik Sense인데, 왜 한국에서만 QlikView를 선호하는 걸까요?

 

제가 경험을 바탕으로 아래와 같이 이유를 정리해보았습니다.

 

 

 

1. 정형화된 보고 방식

 

솔루션을 구매하는 기업은 보통 규모가 큰 편입니다.

제가 구축했던 기업은 모두 중견 이상은 되었던 것 같네요.

 

그런 기업들은 이미 자신들의 시스템이 어느 정도 구축되어 있으며,

보고체계와 방법들이 규칙처럼 정해져 있습니다.

 

하지만 Qlik Sense는 사용자가 직접 만들어서 사용하는 시각화 툴이죠?

그래서 정형화된 보고에는 맞지 않는 것입니다.

 

결국 정해진 포멧으로 결정된 툴에서 약간의 수정을 가미하는 것을 더 선호하겠죠

 

 

 

2. IT와 현업 사이의 현격한 간격

 

큰 기업일수록 IT 또는 전산팀이 잘 꾸려져 있는 것 같습니다.

 

그래서 경영관리 또는 각 현업들은 IT적인 부분에 있어서 이들의 지원을 받는 것을 더 선호합니다.

바꿔말하자면, 현업이 직접 IT 툴을 다루는 것을 아직 불필요하다고 생각하는 것 같습니다.

 

어쩌면 문과, 이과로 나누어 기계나 메커니즘이라면 자신의 것이 아니라고 생각하게 만든 교육환경도

무관하지 않다고 생각이 드네요.

 

어찌 되었거나 큰 기업에서 현업들에게 Qlik Sense는 자유로운 데이터의 놀이터라는 개념보다,

오히려 한 가지 업무의 추가의 개념인 것 같습니다.

 

 

 

3. 결국은 EIS

 

결국에 큰 기업은 EIS(Executive Information System)를 원합니다.

즉 임원에게 보고할 수 있는 자료를 만들 수 있는 툴, 그리고 회의를 할 수 있도록 지원하는 큰 화면,

짧은 간격으로 모니터링할 수 있는 간편하고 화면을 원하는 것 같습니다.

 

게다가 Qlik Sense는 섬세하게 만들고 싶다면, 디자인의 한계도 명확하다보니,

QlikView의 PPT같은 디자인 자유도를 더 선호하기도 합니다.

(임원들께서는 아름다운 그래프를 원하시는데(자신들의 입맛에 맞는) Qlik Sense는 그걸 다 맞추긴 어렵겠죠ㅠㅠ)

 

물론 Qlik Sense도 여타 개발 기술이 있다면 더욱 화려하게 만들 수 있겠으나,

추가적인 기술지원이 붙어야하므로 오히려 QlikView보다 어려울 겁니다.

 

 

 

 

이상으로 대한민국에서 QlikView가 더 선호되는 이유를 살펴보았습니다.

 

결국 대세는 Data Literacy를 성장시키는 방향으로 흘러가게 될 것입니다.

아마 QlikView를 사용하고 유지보수 하다가 보면,

자신들이 보고자 하는 화면을 자유롭게 만들 수 있는 Qlik Sense의 필요성을 느끼기도 하겠지요

 

결국 문화의 차이인 것 같습니다.

 

이상 제씨였습니다:)

감사합니다.

반응형

'Data > Qlik' 카테고리의 다른 글

QlikView - Performance 향상시키는 방법  (10) 2020.11.02
QlikView와 QlikSense의 차이  (0) 2020.03.22
Qlik이란 무엇인가?  (0) 2019.07.28
반응형

안녕하세요 제씨입니다.

저는 현장에서 Qlik툴을 이용해서 고객사에서 프로젝트를 하고 있습니다.

 

 

Qlik

 

그래서 현장에서 목소리를 들어보면

Qlik에서 제공하는 이 두 가지 툴에 대해 궁금증이 많이 있으세요

 

그래서 오늘은 이 두 가지 툴을 비교하는 블로깅을 해보고자 합니다 :-)

 

 

1. QlikSense와 QlikView의 공통점

이 두 제품은 한 회사에서 만든 제품이므로 엔진 측면에서 공통적인 분모를 가져갑니다.

BI에서 Qlik의 역할

먼저 위의 구조도를 보시면 이해에 도움이 될까하여 올립닏.

Qlik은 기존 BI가 담당하던 여러 부분을 저렇게 하나로 묶어서 제공합니다.

 

ETL(Extract, Transform, Load)에서부터 마트구성, 그리고 시각화까지 말이지요

 

위에 언급한 전반적인 기능은 두 제품이 모두 공유합니다.

그리고 Qlik 엔진이 가지고 있는 In-Memory 성능을 통한 속도의 장점,

QVD 마트를 통한 데이터 압축을 포함해서요.

 

 

그럼 이 두 제품이 각각 나뉜 이유가 무엇일까요?

 

 

저는 그 가장 큰 이유로 비즈니스가 전반적으로 Agile형태로 바뀌었기 때문이라고 생각합니다.

 

 

기존의 BI툴은 의사결정자를 위한 것이었습니다.

그들이 보고자 하는 지표들은 정해져 있었죠

그 회사의 KPI, 매출현황, 이익현황, 또는 각 제품별 분석 등으로 말이지요

다시 말하면, 한 번 만들어놓으면 그것을 다시 힘들여 제작할 필요가 적었습니다.

 

하지만 지금은 어떤가요?

소비자가 빠르게 변하고, 각 기업은 빠르게 변화하는 시장환경과 내부상황을 파악해야 합니다.

즉 기업은 빠르게 분석할 수 있는 환경을 원합니다.

하지만 QlikView라는 툴보다는 QlikSense 툴이 이런 빠른 방식의 분석에 조금 더 용이합니다.

 

왜냐하면 Qlik Sense는 보다 사용자 편의를 고려한 제품이거든요!

다시 말해 사용자, 즉 해당 분석을 담당하는 구성원(경영자, 의사결정자가 굳이 아니더라도)이 직접 시각화를 구성하고

데이터를 묶을 수 있는 전반적인 BI의 과정을 손쉽게 구현하도록 만든 제품이라는 말입니다.

 

 

2. QlikView vs QlikSense

QlikView

먼저 QlikView는 현재 12 Version까지 출시가 되었습니다.

QlikView2가 1996에 출시되었다고 하니, BI툴이 하나의 브랜드를 가지고 25년을 살아남고 있는거네요.(이번 조사에서 알게 되었습니다.) 그리고 QlikView12가 2015년에 출시되었고, 현재 버전업을 거쳐 2019년 SR2버전을 마지막으로 새로운 업데이트는 없습니다. 왜냐하면 지금은 Qlik Sense라는 제품에 회사가 주력하고 있기 때문이지요 :)

 

 

QlikView는 개발자 친화적입니다.

원하는대로 구현이 가능하고, Off-line에서도 분석을 수행할 수 있어서 매우 편합니다.

그리고 간단한 시각화정도는 desktop버전을 받아서 손쉽게 수행할 수도 있고요.

 

 

다만 디자인적 요소가 바뀌는 시대의 흐름과 맞지 않습니다.

QlikSense의 화면을 보실까요?

 

 

 

QlikSense 대시보드 예시
QlikSene 예시 (출처: Qlik 홈페이지) 

 

어떤가요?

조금 더 단순하면서 깔끔한 느낌을 주지 않나요?

 

QlikSense는 2014년에 첫 출시를 하여 현재까지 Qlik이 주력해오고 있는 제품입니다.

 

장점은 명확합니다.

현대적인 디자인과 Grid를 통해 디자인과 그래프 배치 측면에서 사용자 편의성이 극대화 되었습니다.

QlikView보다 오히려 개발적인 측면에서는 선택지를 줄였는데요, 이게 바로 QlikSense의 핵심입니다.

 

사용자가 분석을 하기 위해 가장 필요한 분석요소만 남겨놓고, 나머지는 과감히 버린 것이지요.

물론 기존의 QlikView도 충분히 교육을 통해서 사용자가 분석하고 사용할 수 있도록 만들어 놓았습니다만,

QlikSense는 그 장점을 부각하여 제작한 툴인 것 같습니다.

 

따라서 QlikView가 구현하던 것들 중 일부가 QlikSense에서 구현되지 않는 경우가 있습니다.(반대상황도 종종 있습니다.)

 

그래프의 다양성과 확장성 측면에서 QlikSense가 조금 더 우세를 가져갑니다.

요즘들어 많이 쓰이는 fancy한 그래프들(Sankey Diagram, Waterfall barchart, Geoanaytics)을 적극적으로 지원하지요.

 

 

사실 이 외에도 다양한 차이점이 있습니다만,

툴을 선택하실 때에 필요한 정보는 여기까지만 해도 충분하고 생각이 됩니다 :)

 

요약하자면,

QlikView는 오래되었지만 오프라인에서 사용가능하고, 개발자 친화적이며, 심도 깊은 분석을 제공하는 제품이며

QlikSense는 현대적인 UI/UX, 온라인을 통해서만 가능하고, 사용자 친화적이며 확장성 높은 제품

이라고 정리해볼 수 있겠네요 :)

 

더 자세하게 궁금한 점은 댓글로 남겨주시면 추가 답변 달도록 하겠습니다.

그럼 오늘도 좋은 하루 보내세요

 

 

반응형
반응형

국내에서는 많이 알려지지 않았지만, 전 세계적으로 BI 및 Data Visualization 업계에서는 매우 높은 시장 점유율은 가진 솔루션이 있습니다. 그것은 바로

 

Qlik

클릭? 들어본 적도 없고 생소한 분들이 많으실 겁니다.

저조차 회사에 들어오기 전에는 이 솔루션의 존재 자체도 몰랐으니 말입니다.(클릭 마케팅부서 일 안하나!)

 

하지만 현재 1년 정도 클릭을 알고 사용하고 나서 드는 생각은, 정말 데이터 시각화나 요약화된 그래프 리포트를 만들어내는 데에는 최적의 툴이고, Excel로 일일이 데이터를 관리하면서 그것을 수동으로 최신화하거나, 수동으로 그래프를 만들어야하는 기업과 사람들에게는 정말 파워풀한 툴이 될 수 있다는 것입니다.

 

그럼 이게 도대체 무슨 툴인지, BI가 무엇인지, 왜 그럼 누가 이 툴을 쓰는게 좋은지 한번 얘기해봅시다.

 

1. 이건 또(?) 도대체 무슨 툴인가?

간단히 말하면 BI 툴입니다.

출처: https://www.qlik.com/us/products/qlik-sense

테이블 형태로 구성되어 있는 모든 데이터를 재구성하여 막대 그래프, 라인그래프, 피벗테이블, 지도 그래프 등으로 표현해줄 수 있는 툴입니다. 국내에서 잘 알려져 있는 경쟁툴은 'Tablaeu'가 있습니다.

 

Qlik은 총 2개의 제품을 런칭하고 있습니다. 하나는 Qlik View이고 하나는 Qlik Sense입니다. 이 둘의 차이는 나중에 자세히 다룰 기회를 가지겠습니다. 간단히 말씀드리면 Qlik Sense가 비교적 최근에 나온 툴이며, Self-BI(스스로 만들고 분석해보는 BI)라는 업계의 트렌드에 부합하는 솔루션이라고 할 수 있겠네요. 반대로 Qlik View는 정교하게 Customizing된 화면을 구성할 수 있고, 다양한 방향으로 개발이 가능해서 유연성이 높은 버전이라고 할 수 있겠습니다.

QLIK 공식 홈페이지 출처

전세계적으로는 이미 50,000개가 넘는 고객사를 지니고 있습니다. 국내에서는 하이닉스를 비롯한 다양한 기업이 이미 qlik을 도입해서 사용하고 있지요~

 

2. BI는 무엇인가요?

BI는 Business Intelligence의 줄임말입니다. 한국어로 풀어 의역하자면, '데이터를 시각화하여 이 안에서 인사이트를 창출해내는 행위의 일체'정도로 설명드릴 수 있습니다. 예를 들어 온라인 쇼핑몰의 경우 사이트에 들어오는 고객의 유입율을 유심히 관찰하고, 어떤 나이대의 고객인지, 성별은 무엇인지, 이 사람이 자주 검색하는 키워드는 무엇인지 궁금하겠지요? 그럼 수집된 데이터가 있다면 그것을 그래프로 시각화하여 표현한다면 아주 간결하게 눈에 들어온다는 겁니다.

상황을 생각해봅시다. 여러분은 회의를 하고 있고 의사결정을 해야 하는 여러 사람들이 한 자리에 모였습니다. 그들과 이야기할 때 쭉 펼쳐진 엑셀 테이블을 펼치며 이야기하는 것과, 그 데이터를 합쳐 평균과 분산, 각 관점별로 보고싶은 데이터를 요약한 그래프를 보여주는 것을 비교했을 때, 어느 쪽이 더 효율적인 결론을 도출해낼까요?

 

 

3. 이걸 누가 쓰면 좋을까요?

1) BI툴을 경험하고 싶은 개인

Qlik 제품의 장점은, Desktop 버전으로 혼자 사용한다면 Demo 버전을 무료로 지속적으로 사용할 수 있다는 점입니다. 그래서 데이터는 있는데, 간단히 분석해보고 싶다고 생각하시면 Qlik에 가입 후 Qlik Sense를 다운받아 사용하실 수 있습니다. 엑셀을 포함한 DB(SQL), Hadoop 등 다양한 데이터 소스를 지원하기 때문에 데이터가 있다면 꼭 한 번 해보시길

 

2) 다뤄야 하는 데이터의 양이 많은 기업

데이터가 무거워질수록 툴은 느려지는 법! 태블로를 포함한 다양한 제품들은 데이터의 단위가 커질수록 제 실력을 발휘하기가 어렵습니다. 하지만 Qlik의 장점 중 하나는 이 솔루션이 가진 데이터 처리 엔진입니다. 인메모리 기반의 엔진은 데이터를 압축하고 로드하는 시간을 줄여 개발자와 분석가들의 스트레스를 덜어낼 수 있습니다. ^_^

 

 

 

오늘은 간단히 Qlik이라는 솔루션에 대해 맛보기를 하고 넘어가도록 하겠습니다.

다음 포스팅은 Qlik의 기능과 장점 실제 활용 사례 등을 천천히 보도록 하지요

 

그럼 ADIOS

 

반응형

+ Recent posts