태터데스크 관리자

도움말
닫기
적용하기   첫페이지 만들기

태터데스크 메시지

저장하였습니다.

엑기스 | SQL Server) 분할된 테이블에서 효율적으로 통계 관리하기

기술이야기/엑.기.스 2020. 6. 8. 15:55




테이블은 MSSQL에서 가장 최소단위의 데이터 집합 단위입니다.

데이터의 양이 많을수록 테이블을 읽고 쓰고 수정하는 데 필요한 비용이 늘어나는데, 이를 개선하기 위한 기능으로 분할된(Partitioned) 테이블이 존재하고, 이 기능은 관리 효율성과 성능 면에서 다음과 같은 이점이 있습니다. 



1. 데이터 하위 집합을 빠르고 효율적으로 전송하거나 액세스할 수 있을 뿐만 아니라 데이터 컬렉션의 무결성을 유지할 수 있습니다.

2. 하나 이상의 파티션에서 유지 관리 작업을 더 빠르게 수행할 수 있습니다. 

   전체 테이블 대신 이 데이터 하위 집합만 대상으로 하기 때문에 작업이 더 효율적입니다.

3. 자주 실행하는 쿼리 유형과 사용 중인 하드웨어 구성에 따라 쿼리 성능이 향상될 수 있습니다.

4. 전체 테이블이 아니라 파티션 수준에서 잠금 에스컬레이션을 설정하여 성능을 향상시킬 수 있습니다.


그리고 분할된 테이블을 사용하게 되면 통계적 측면에서도 이점이 생깁니다. 증분통계(Incremental)옵션이 그 기능입니다. 


통계는 기본적으로 인덱스를 생성할 때 같은 이름의 통계가 자동 생성됩니다. (인덱스가 없는 column을 조건으로 조회했을 때 생기기도 합니다.) 이렇게 생성된 통계 정보는 Query를 수행했을 때 사용되는 비용을 예측하여, 최적화된 실행 계획을 세울 수 있게 해줍니다. 


하지만 데이터를 수정·변경·삭제할 때 통계 데이터도 업데이트가 되고, 테이블의 모든 데이터를 기반으로 업데이트 하고 있기 때문에 그에 따른 비용이 많이 발생합니다. 비효율적인 예시로, 최근 대량의 데이터가 삽입, 수정, 삭제되는 상황에서는 과거 데이터에 대한 통계에 변화가 없습니다. 


하지만 통계가 업데이트가 될 때에는 테이블의 전체 데이터를 기반으로 샘플링하여 업데이트를 하게 되고, 과거 데이터까지 포함하여 통계 업데이트가 되기 때문에 이 부분에서 비효율이 발생합니다. 증분 통계는 그 비효율을 감소시킬 수 있습니다.


이제 Partition의 효율을 확인하기 위해 일반테이블과 분할된 테이블의 조회에 대한 I/O 비교와 일반 통계와 증분 통계의 통계 업데이트에 쓰이는 I/O 비교를 해보겠습니다.




일반 테이블

1. 효율을 확인하기 위해 테스트용 테이블 TestSalesOrderDetail을 생성하였고, 해당 테이블의 구조입니다.


2. 인덱스는 ModifiedDate 컬럼에 Non Clustered로 생성하였습니다.



3. 전체 테이블의 row 수는 약 378만이고, 단독 Partition으로 구성되어 있습니다.



4. 해당 쿼리를 수행하면 Table Scan을 하게 됩니다. 모든 데이터를 스캔하여 제시된 조건에 맞는 데이터만 결과 집합으로 나타냅니다.

   논리적 읽기를 44,274만큼 합니다.








분할된 테이블


1. 파티션 데이블은 데이터를 특정 컬럼(ModifiedDate)에 기준을 만들어서 분할하는 테이블입니다.


2. TestSalesOrderDetail에서 ModifiedDate 컬럼을 연도별로 기준을 지정했고, 그 기준에 따라 분할되어 저장했습니다.



3. Partition을 각각 확인해보면, 전체 테이블의 row 수는 약 368만이고, 

   1번 partition은 6,718, 2번은 315,247, 3번은 1,875,219, 4번은 1,482,530입니다.



4. 이전과 동일한 쿼리를 수행하면 Table Scan을 하지만, 테이블의 전체 데이터를 스캔하지 않고, 

   제시된 조건이 포함하는 Partition만 스캔하여 결과 집합으로 나타냅니다. 

   논리적 읽기를 4,519로 일반 테이블에 비해 1/10 정도 감소한 것으로 볼 수 있습니다.






5. 일반 테이블과 분할된 테이블의 StmtText를 비교해 보면, 분할된 테이블에서는 

   조회하고자하는 데이터가 속한 Partition을 먼저 탐색한 후에 스캔을 하기 때문에 논리적 읽기 수를 많이 줄일 수 있습니다. 

   위가 일반, 아래가 Partitioned 테이블의 동일한 쿼리에 대한 StmtText입니다.





일반적인 통계


1. 일반적인 테이블이나 분할된 테이블에서 인덱스를 생성하면 모두 통합된 통계로 생성됩니다.

   아래에 보이는 것은 내부적으로 수행되는 Trace인데, 통계를 생성하기 위한 I/O가 쓰이는 것을 볼 수 있고, 

   통계 데이터를 조회해보면 테이블의 전체 데이터를 기반으로 샘플링하는 것을 확인할 수 있습니다.



2. 특정 파티션에 해당하는 데이터만 변경했을 때에도 옵티마이저는 테이블의 전체 데이터를 샘플링하여 통계를 업데이트합니다. 

   (샘플링은 데이터 양에 따라 비율이 조정됩니다.) 테이블이 분할되어 있어도 통계 데이터는 분할되어 있지 않기 때문입니다. 

   통계가 자동 업데이트 될 수 있도록 임계치 이상의 데이터를 업데이트 하였고, 관측한 통계 업데이트에 사용되는 I/O는 1,947입니다.





증분 통계


1. 이런 비효율을 해결할 수 있는 옵션은 Incremental(증분 통계) 업데이트 입니다.



2. 이 옵션은 테이블이 Partitioning 되어있을 경우 ON/OFF 할 수 있는 옵션이며, SQL Server 2014 이상 버전에서 사용이 가능합니다.


3. 옵션을 ON으로 설정하게 되면 기존의 통계를 분할된 통계로 재생성하게 됩니다.



4. 분할된 통계로 구성된 이후에 데이터를 수정하거나 변경이 있어 통계가 업데이트 되는 경우, 모든 데이터의 통계를 업데이트하지 않고 변경된 데이터가 속한 Partiton의 통계만 업데이트하게 됩니다. 통계 업데이트에 쓰이는 I/O는 185로 일반 통계에 비해 1/11 정도 감소한 것을 알 수 있습니다.




분할된 테이블 및 증분 통계 옵션을 통한 기대효과를 아래 표로 정리하며 마무리하겠습니다.


<분할된 테이블 및 증분 통계 옵션을 통한 기대효과>










기고 | 신기술본부 김국현

편집 | 사업기획팀 박예영








엑기스 | InterMax의 변화

기술이야기/엑.기.스 2020. 5. 15. 15:58






많은 사랑을 받고 있는 엑셈의 InterMax가 한단계 더 진화했습니다.

고객이 조금 더 편리하게 사용할 수 있도록 개선된 내용을 소개합니다.




1. APM의 효율적인 Application 병목 분석을 위한 콜트리 표현 개선안


APM 에서 Application 병목 현상을 분석하기 위해 콜트리(Class & Method)를 수집합니다. 콜트리를 수집하는 방법은 통계 기반 콜트리와 시계열 기반 콜트리의 2가지 유형으로 분류 가능하고, 유형별 장단점이 있습니다. (아래 [콜트리 유형 및 장단점 비교] 참고)


통계 기반 콜트리 표현의 장점이 많긴 하지만, 시계열 기준으로 분석을 꼭 해야만 장애분석이 가능한 경우가 분명 존재 하기 때문에 (특히 금융 거래 패턴 업무) 두 가지 유형을 모두 APM 에서 제공하는 것이 바람직합니다. 


<콜트리 유형 및 장단점 비교>


InterMax 의 관련 처리 개선 내용


- 통계 or 시계열 콜트리를 선택적으로 사용 할 수 있게 개선

  특히 모니터링 대상(Agent) 별로 통계 or 시계열 콜트리를 선택적으로 사용 할 수 있게 함으로써 해당 모니터링 대상 분석에 적합한 것을 선택해서 사용하도록 처리

- 보통 사이트 장애 분석 시 시계열 분석이 필요 없는 Agent는 별도의 설정 없이 Application의 중요 내용을 상세하게 모니터링 할 수 있는 통계 기반 콜트리로 Setting 하고, 장애 분석 시 꼭 시계열 기준의 분석이 필요한 Agent에 대해서는 시계열 콜트리로 설정해서 분석 진행하는 하는 것이 바람직하다고 판단


<통계 or 시계열 콜트리 선택적 적용>



2. 업무별 방문자 수 Validation의 중요성


시스템을 사용하는 사용자가 얼마나 많은지에 대한 판단 기준이 되는 방문자 수는 보통 주기적으로 업무 보고에 사용되는 APM 수집 주요 성능 지표 중에 하나입니다. 업무 담당자는 방문자 수의 추이로 어떤 업무에 방문자가 몰리고 있는지, 그리고 인프라 담당은 시스템의 증설 판단 기준으로 활용할 수 있습니다. 


그래서 이 값의 Validation이 정확치 않으면 업무담당 or 인프라담당의 의사 결정에 CRITICAL한 실수를 유발 시킬 수 있습니다. 방문자 수는 보통 개별 Agent 기준이 아닌 Agent 의 Group으로 대표 되는 업무 기준으로 정확히 추출하는 것이 중요한데요. 


웹 환경을 예로 들어서 설명 드리면 Web Browser에서 서비스 요청 시 동일 사용자의 요청은 여러 Agent(WAS)에서 처리가 될 수 있어 Agent 기준으로 방문자 수를 unique하게 산출하여 Agent 그룹인 업무로 SUM을 하게 되면 Agent 개수 만큼 동일 사용자수가 중복 될 수 있기 때문에 정확한 업무별 unique 방문자 수 산출을 위해서는 업무에 속한 Agent 대상 모두를 바라보고 unique 한 방문자수 처리를 해야 합니다.


▶ InterMax 의 관련 처리 개선 내용


모든 업무별 방문자 수 추이를 볼 수 있는 방문자 통계 화면을 제공

기존 방문자 통계는 업무별 Unique한 방문자 수가 아니었으나, 업무 기준으로 Unique한 데이터를 추출하여 제공하는
  업무별 방문자 수 분석 결과를 제시하도록 개선 
(시간, 일 단위로 업무별 방문자 통계 분석이 가능하도록 추가 개선)


<방문자 통계 - 업무 기준 통계 개선>




3. 사용자 정의형 – Query 통계 기반 보고서 생성 필요성


APM Solution 을 포함한 기타 SMS, NMS, DPM etc 의 모든 모니터링 Solution 들은 보고서 기능을 포함하고 있습니다. Solution에 따라서 Reporting tool 과 연계하여 상대적으로 보고서 기능이 강한 제품도 있고 상대적으로 보고서 기능이 약한 Solution 도 있습니다. 보고서 기능이 아무리 뛰어나더라도 고객의 모든 사용자 보고서를 자동으로 만족시킬 수 없는 한계는 존재 합니다. 그래서 사용자가 직접 통계 정보 추출용 쿼리를 생성하여 데이터를 추출해서 보고서화 할 수 있는 기능이 있으면 사용자가 얼마든지 쿼리 기준으로 본인이 원하는 항목에 대해 값을 추출 할 수 있습니다. 


또한 성능 테스트 과정에서도 참조하기 위한 값을 실시간으로 추출한다던지, 활용 범위가 많아 쿼리 베이스의 데이터 추출 기능은 여러 가지 업무에 도움을 줄 수 있습니다. 일단 어떤 상황에서든 필요에 의해 임시로 만들어둔 쿼리 베이스의 추출 데이터를 정기 보고서로 사용하길 원한다면 해당 쿼리 기준으로 고객이 원하는 화면을 추후 제공하는데 참조 할 수도 있습니다.


InterMax 의 관련 처리 내용


- 이미 Script Manager를 통하여 통계 추출을 위한 사용자 정의형 쿼리를 작성하여 저장하고, 보고서 생성 화면에서 해당 사용자 정의형 쿼리를 선택하여 리포트를 자동 생성할 수 있는 방향으로 기능을 개선

- 기존 보고서는 내부적으로 정형화(고정된) 항목내에서만 보고서 작성이 가능하였으나, 사용자 정의형에서는 작성/등록된 사용자 쿼리를 선택하여 원하는 통계 정보를 리포트로 생성할 수 있게 추가/개선


<쿼리 베이스의 보고서 제공>




4. 트랜잭션 처리 시간에 대한 패턴 분석의 의미


Application 장애가 발생 전 정상적인 트랜잭션 처리 응답시간이 나오지 않고 가로, 세로 줄을 서는 패턴을 종종 보게 됩니다. 이 패턴이 보이면 추후 업무가 되지 않는 큰 장애와 연관될 확률이 높아 이 패턴을 최대한 빠르게 인지 할 수 있으면 장애 전 사전 대응이 가능해짐으로 인해 업무의 안정성을 확보하는데 도움이 됩니다. 가로, 세로 줄서는 패턴이 보이는 CASE에 대한 Application 처리 상황을 간단히 정리하면 아래와 같습니다.


<가로, 세로 줄서는 패턴이 보이는 CASE에 대한 주요 원인>


위와 같은 트랜잭션 응답 시간 처리 패턴에 대한 분석을 AI(머신러닝)기반으로 한 차원 더 깊게 분석이 가능하게 되면 좀 더 다양한 트랜잭션 응답 처리 시간 패턴에 대해 세분화된 장애 징후를 미리 인지 할 수 있을 것으로 판단됩니다.


InterMax 의 관련 처리 내용


- 트랜잭션 모니터의 가로 세로 패턴 감지를 통한 알람 발생 기능 추가


<트랜잭션 이상 징후 탐지 - 트랜잭션 가로 세로 분석>




앞으로도 지속적으로 고객에게 최고의 솔루션을 제공할 수 있도록 노력하겠습니다.











기고 | 신기술본부 장일홍
편집 | 사업기획팀 박예영


엑기스 | 지능형 전력 빅데이터 예측, AutoML이 답!

기술이야기/엑.기.스 2020. 3. 13. 16:38






인공지능(AI)과 전력 빅데이터 분석


인공지능은 센스나 장비, 기기 등의 현 상태를 모니터링 하는 단순 영역부터 복잡하고 불확실한 미래상황을 추론하는 영역까지 다양한 영역에서 적용되고 있다. 가트너에서는 AI가 2021년까지 3천 3백조원의 비즈니스 가치와 7조 시간을 절약하는 업무 생산성 향상을 가져다 줄 것으로 예상하고 있다. 기계학습(머신러닝, Machine Learning)이나 심층학습(딥러닝, Deep Learning)은 모두 인간의 지능을 대체한다는 점에서 인공지능이라고 정의된다.


최근 데이터 과학과 데이터 사이언티스트의 부족으로 인해 자동 기계학습(Auto ML) 영역이 급속도로 커지고 있다. Auto Machine Learning이란, 데이터만 있다면 자동으로 분석 모델을 학습하고 갱신하여 최적의 분석 알고리즘을 추천, 업무에 적용하는 것이다. 분석 전문 지식이 없는 일반 사용자도 쉽게 머신 러닝 분석을 자동으로 생성하고 활용 가능하다. Auto ML 소프트웨어 툴의 수는 단 2년 만에 300%가 증가하였는데, 자동화된 데이터 과학 도구에 대한 다양한 정의, 기대 및 회의론과 모델 개발 및 배포에 대한 개선된 접근 방식 등의 변화로 이루어졌다.

전력 분야에서는 자원 및 시설의 효율적인 관리와 함께 문제 및 변칙의 적시 감지, 전력 수요 및 서비스에 대한 효과적인 예측을 위해 빅데이터와 AI 기술을 활용하고 있다. 다수 빅데이터 프로젝트가 진행되고 있으며, 플랫폼 및 인프라, 에너지 대용량 데이터 모니터링 및 분석, 스마트 시티, 스마트 홈 및 전기 자동차의 수요 예측, 새롭고 혁신적인 에너지 서비스 등의 분야를 포함한다.


데이터 분석 기법과 프로세스

데이터 분석의 80%가 머신러닝 기법을 이용하고 있다. 머신러닝은 비지도, 지도, 심층, 강화 학습 등으로 나뉘고, 최근 Gradient Boosting Tree와 Random Forest와 같은 머신러닝 앙상블 모델을 분석에 주로 활용한다. 현재 머신러닝 자동화 제품으로 가능한 분석 기법은 지도학습(Supervised Learning)이다. 예측하고자 하는 변수(목표변수, 결과)를 분석하기 위해서는 결과(정답)가 있는 과거 이력 데이터가 필요하기 때문이다. 일부 상용 머신러닝 플랫폼 중 머신러닝 자동화가 가능한 제품은 비지도학습 기법인 주성분 분석(Principal Component Analysis)과 K-Means 분석을 활용해 결과 예측력을 높이는 기능도 제공한다.


일반적인 데이터 분석 프로세스는 데이터 준비 – 데이터 저장 – 구조화 – 전처리 – 모델 평가 – 모델 학습 – 예측 데이터 수집 – 모델 배포 – 예측과 실제 결과 비교 – 모델 관리 모니터링 – 시각화 – 인사이트 발굴의 12단계이며, 대표적인 전통적 데이터 분석 프로세스는 아래 3가지가 있다.


그렇다면 전통적인 IT 프로젝트와 빅데이터 분석 프로젝트의 차이는 무엇일까? 전통적인 프로젝트는 기존 프로세스를 파악해 개선된 프로세스를 기반으로 시스템과 제품, 생산 등의 효율성과 비용절감을 강조하지만, 빅데이터 분석은 예측을 통해 가치를 창출하는데 초점을 맞춘다.




머신러닝 플랫폼의 종류와 평가 프레임워크



가트너에서 매년 발표하는 Magic Quadrant의 2020년 데이터 과학과 머신러닝 플랫폼 부문을 보자. 2020년으로 넘어가면서 전통적인 머신러닝 플랫폼인 SAS가 다시 리더 포지션으로 올라왔고, KNIME이 작년 리더 그룹에서 비저너리 그룹으로 내려온 점이 주목할 만 하다. 또한 Databricks, Dataiku, DataRobot 등이 새로운 포지션으로 이동했다. 

데이터 사이언티스트들은 오픈소스로 모델을 구현하는 경우가 많지만, 모델 구현 후 모델 배포 관점에서 상용 플랫폼을 선택하는 경우가 많다. 상용 플랫폼의 경우 모델 배포 및 모델 활용을 위해 Rest API 지원이 편리하고 용이하기 때문이다. 또한 다수의 상업 플랫폼이 이용 가능한 머신러닝 플랫폼이 R과 Python을 같이 쓸 수 있도록 지원하고 있다. 외산 Auto ML 제품군에서는 DataRobot과 H2O가 국내 지원을 하고 있다. 


Auto ML 평가를 위한 일관성 기준도 있다.

① 데이터 연결성 

② Summarization, Exploration & Cleansing을 포함한 데이터 처리의 기능 및 자동화

③ 데이터 변환 및 피쳐 선택을 포함한 피쳐 엔지니어링에서의 기능 및 자동화

④ 하이퍼 파라미터 튜닝, 문제 유형 및 앙상블을 포함한 학습 알고리즘의 기능 및 자동화

⑤ 데이터 및 모델 성능 시각화

⑥ 모델 성능 평가 역량

⑦ 제품 GUI, 코드 배포 및 포함을 비롯한 배포 옵션

⑧ 가격 책정


대표적 Auto ML인 데이터로봇의 기능과 특장점을 살펴보자. 

① 데이터 탐색 → 100+여개 기법 중 최적 모델 선택 → 최적의 하이퍼 파라미터 기준으로 모델 구현 → 분석 모델 배포 → 배포된 모델 관리

② 로지스틱 회귀, 랜덤 포레스트, 서포트 벡터머신, Lasso 회귀, 베이지안, 신경망 모델 등 100+여개의 분석 모델 중 최적 모델 선정

③ 사람이 아닌 기계를 통한 최적화로 모델 구현 공수 70% 감소 효과






Auto ML을 통한 전력사용량 예측


1분석 목표와 범위 : 전력 데이터를 활용한 고객 사용량 예측

공개된 임의의 과거 3년의 전력 사용량을 활용하여 전력사용량을 예측하는 분석 수행을 통해 예측 분석 모델링을 하고자 한다. 계약정보 및 사용량 패턴을 통해 고객별 일별 전력사용량을 예측하는 모델을 구축했다.


2. 분석 결과 및 활용 : 전력사용량 예측 모델 활용

분석한 모델을 웹서버에 배포하여 실시간으로 전략 사용량 예측 가능성을 타진하였고, 가상의 임의의 데이터를 평균값으로 입력 후 전략 사용량을 예측했다.



가상환경 환경 시뮬레이션을 통해 전력사용량을 재계산한 결과 전력 사용량이 174601.56kWh로 변경되었다.



3. AI기반 지능형 전력 빅데이터의 활용
향후 전력 사업 분야에서도 새로운 비즈니스와 가치 창출을 위해 Auto ML을 활용할 것으로 예상하며, AI 기반의 전력 분야에서 자원 및 시설의 효율적인 관리, 문제 및 변칙의 적시 감지, 전력 수요 및 서비스에 대한 효과적인 예측을 위해 빅데이터 및 AI 기술을 활용할 수 있는 지능형 빅데이터 분석 플랫폼이 필요할 것이다.









기고 | 빅데이터사업본부 조치선
편집 | 사업기획팀 박예영








엑기스 | MaxGauge와 카카오톡 연동

기술이야기/엑.기.스 2020. 2. 10. 19:15






현재 MaxGauge에서 알람이 발생하면 Mail 또는 SMS로 해당 알람을 발송해주는 기능이 있습니다.

최근 들어 SMS(문자)보다 카카X톡, 라X, 위X과 같은 어플리케이션 사용이 늘어나면서,

알람을 어플리케이션으로 받고 싶어하는 고객사가 증가하고 있습니다. 


그래서 고객들의 니즈를 반영하여 카카오톡으로 MaxGauge 알람을 전달받을 수 있는 기능을 구현해보았습니다. 




사용한 기능


1. 카카오 API

카카오에서 제공하는 모든 플랫폼에 대한 API를 제공하고 있습니다.


2. Apache Tomcat

서블릿 컨테이너만 있는 웹 어플리케이션 서버이며 Java 환경을 제공합니다. 

HTTP서버도 자체 내장하기 때문에 아파치 톰캣을 이용하여 사용자가 원하는 환경으로 서버를 구축할 수 있습니다.

이 프로젝트에서는 Apache Tomcat은 MaxGauge의 Jetty와 동일한 역할을 수행하도록 구현했습니다. 


3. HTML

웹페이지를 만들기 위한 언어로 웹브라우저 위에 동작하는 언어입니다. 

제목, 단락, 목록 등과 같은 본문을 위한 구조적 의미 뿐만 아니라 

사진, 링크와 그 밖의 항목을 구조적 문서를 만들 수 있는 방법을 제공합니다. 

이 프로젝트에서는 MaxGauge의 Admin 페이지의 한 부분을 수행하도록 구현했습니다. 





현재 구조는 위와 같은 구조로, MaxGauge에서 SMS서버 또는 SMTP서버의 Database에
알람 내용을 포맷된 형태로 Database에 Insert를 해주면 해당 서버가 명시된 담당자에게 알람을 전달합니다. 



카카오API를 사용하면 어떤 구조일까요?


MaxGauge에 알람이 발생하면 DB에 Insert부분까지는 동일하지만, 별도의 서버가 필요하지 않은 구조입니다.
알람 발송 시 DB Insert하는 목적지 DB를 수집서버의 DB내로 지정하게 되면 
굳이 다른 서버에 DB를 구축하지 않아도 카카오 API를 통한 메시지 보내기가 가능합니다.



어떤 차이점이 있나요?


1. 문자나 메일은 발송하기 위한 서버가 있어야 합니다. 

   하지만 카카오API를 사용하여 알람을 전송하게 될 경우, 발송전용 서버를 구성할 필요가 없어집니다.


2. 발송된 알람을 확인하기 위한 접근성이 용이합니다. 

   현재 문자보다 카카오톡을 이용하는 사용자가 증가함에 따라 접근성이 문자보다 편리하며, 

   메일로 발송할 경우 즉각적으로 알람 확인이 불가합니다. 




카카오 API를 통한 기대효과

1. 비용 감소
 - 구축 비용 감소
 - 건당 비용 감소

2. 편의성과 확장성 증가
 - 문자나 메일보다 간편하게 빠른 장애 인지 가능
 - 1:1 실시간 상담 지원
 - MaxGauge 관련 정보 전달 및 기술지원을 다양한 방식으로 전달 (ex.챗봇)



구현 화면 소개

1. 카카오 API의 서비스를 사용하기 위해 카카오 계정으로 로그인


2. 로그인 후, 작동하기 버튼을 클릭하면 Insert된 데이터 값을 가져온 후 API를 통해 전송








※ 위 내용은 실제로 MaxGauge에 구성되어 있는 것은 아닙니다.
실제 고객사 중에서 카카오 비즈앱으로 맥스게이지와 카카오톡을 연동하여 사용하는 곳이 있습니다.
비즈앱을 이용하기 위해서는 사업자등록번호를 통한 인증이 필요하며,
본문에서 사용한 카카오 API는 비즈앱에 있는 기능을 개발자API를 이용해 구현한 것임을 알려드립니다.






기고 | 신기술본부 신대원
편집 | 사업기획팀 박예영




엑기스 | 쿠버네티스 애플리케이션을 관리하는 3가지 도구

기술이야기/엑.기.스 2020. 1. 10. 17:52






Kubernetes Tools


처음 Kubernetes를 접해서 사용하면 Docker와 Kubernetes가 주는 자동화로 인해 신세계를 경험하게 됩니다. 

이렇게 Kubernetes의 세계에 빠져들고 열심히 활용하다 보면 kubernetes만으로는 해소하지 못하는 불편함들이 많이 있습니다. 

따라서 이런 불편함을 해소시켜주는 Tool들도 계속해서 개발되고 발전하고 있습니다. 


이 글로는 모든 Kubernetes의 Tool들을 소개할 수 없지만, 

최근에 직접 구축하고 사용하면서 업무에 도움이 된 Tool들에 대해서 간략하게 소개시켜 드리려고 합니다. 




1. Helm


Kubernetes Application을 개발하고, 관리하다보면 어느새 산더미처럼 쌓여있는 yaml 파일들을 볼 수 있습니다. 

(ex. deployment.yaml , service.yaml, configmap.yaml, …) 


먼지처럼 쌓여가는 리소스 파일(yaml)들과  여러 사람들의 손을 거치면서 나오는 Deployment와 Pod들을 손쉽게 관리할 수는 없을까요?

이러한 고민을 한번에 덜어줄 기술이 바로 Helm 입니다.


# yaml

JSON, XML 과 같이 Data를 표현하는 형식으로 Kubernetes 에서 사용하는 ObjectSpec 입니다. 

(JSON도 가능하지만 대부분 yaml 사용)


Helm은 Kubernetes의 복잡한 응용 프로그램들의 관리를 도와주는 도구입니다. 

Kubernetes 환경에서 사용할 리소스(ex: deployment, service, ingress, …)들을 Chart라고 불리는 format의 package 파일을 만들어 줍니다. 

이렇게 만들어진 Chart Package로 Kubernetes 환경에 Application의 배포 및 관리를 손쉽게 할 수 있습니다. 

(Helm Chart를 사용한 Application 배포는 아래 3.Kubeapps에서 다루도록 하겠습니다.)


또한 Helm의 장점은 여기서 끝이 아닙니다.

기존 Kubernetes에서 생성하는 deployment 또는 pod, service 등에 들어가는 여러가지 설정 값들을 chart value를 통해 변경이 가능합니다. 

다시 말해 yaml에 입력되는 값이 변경이 되어도 새로운 yaml 파일을 만들어낼 필요가 없습니다. 


이후 value가 아닌 Kubernetes 리소스 (yaml) 자체를 수정하거나,

helm으로 구성한 Package 파일을 변경하고 싶은 경우에는 어떻게 할까요? 

답은 간단합니다. Chart Package 파일은 기본적으로 버전으로 관리되기 때문에 수정 후에 새로운 버전의 Package 파일을 만들면 됩니다.


그렇다면 chart package 파일도 결국에는 yaml 파일과 같이 결국에는 산더미처럼 쌓여있지 않을까요? 


이런 문제를 해결해주는 도구가 바로 ChartMuseum입니다.

# Chart
Helm에서 사용하는 Package format으로 예를 들어 “Helm create ChartName” 명령어를 사용하면아래 구조의 Chart가 생성됩니다.
이후 완성된 Chart를 “Helm package ChartName” 명령어를 통해 .tgz 확장자를 가진 Package 파일을 생성할 수 있습니다.


ChartName/            # 생성한 Chart의 이름으로 된 directory

  └  Chart.yaml          # Chart에 대한 정보

  └  values.yaml            # Chart에서 사용하는 기본 설정 값

  └  chart/            # 현재 Chart와 관련되어있는 Chart (directory)

  └  templates/            # Kubernetes 리소스 (yaml 파일) 들이 있는 directory




2. ChartMuseum


Source 파일을 관리해주는 Git, SVN 과 같은 도구가 있다면 Chart Package 파일을 관리해주는 도구도 있습니다. 

Helm에서는 Chart Package를 관리할 수 있는 ChartMuseum 이라는 오픈소스 Chart 저장소를 제공하고 있습니다. 

ChartMuseum은 앞서 소개한 Helm을 통해 나오는 .tgz 확장자를 가지는 Package 파일을 관리해주는 도구입니다. 또한

Git, SVN과 마찬가지로 생성한 Chart를 다른 사람들과 공유해서 사용하는게 가능합니다. 


이로써 Helm과 ChartMuseum을 통해 Kubernetes 관리를 효율적으로 할 수 있게 되었습니다. 

마지막으로 Helm Chart를 사용하여 Kubernetes에 Application의 배포 및 관리를 편리하게 만들어주는 

Kubeapps에 대해서 소개시켜 드리겠습니다.




3. Kubeapps


Kubeapps는 Kubernetes 클러스터에서 응용 프로그램을 배포 및 관리하기 위한 웹 기반 UI Tool 입니다. 

Kubeapps는 ChartMuseum과 연동하여 Helm으로 만든 Package 파일을 Kubeapps를 통해 UI로 제어할 수 있으며, 

Kubernetes에서 token(계정)을 발급받아 사용자 권한을 설정할 수 있습니다. 


또한 Application의 배포와 삭제, upgrade, rollback 등의 기능을 제공하며,

전 세계에서 제공하는 서비스를 사용할 수 있는데, 

kubernetes의 인기를 증명하기라도 하듯 엄청난 수의 Application들이 Helm으로 개발되어 등록되어 있는걸 확인할 수 있습니다. 


이를 통해 사용자는 kubeapps의 UI에서 자신이 개발한 helm package 외에도 

수많은 Kubernetes Application의 배포와 관리, 삭제 등의 제어가 가능합니다.




<Kubeapps Login 화면>



<Kubeapps 기본 Catalog list>



<tomcat helm chart>



<helm의 value.yaml를 사용하여 application을 배포하기 전 설정>



<Kubernetes에 tomcat application을 배포 후의 화면>







마무리


Helm, ChartMuseum, Kubeapps를 사용하여 Kubernetes Application을 관리하는 법을 소개하였습니다. 

위의 Tool을 적용하기 전에는 대부분의 Kubernetes 관리가 console에서 진행되었고, 일부 사용자만이 Kubernetes를 활용하였습니다.

하지만 최근에는 UI로 진행하면서

사용자들이 Kubernetes에 쉽게 접근하여 Application을 배포 및 관리하고 사용하면서 Kubernetes의 장점을 활용하고 있습니다. 


위에서 소개한 tool 외에도 Kubernetes tools에는 Keel, Draft 등 유명한 Tool 들도 많이 존재합니다. 

하지만 무조건 Kubernetes의 tool을 적용하는 것이 정답은 아닙니다. 


지금 이 순간, 개선점을 찾아서 발전시켜 나가는 자세가 가장 중요하지 않을까요? 




Change before you have to (변화해라. 억지로 변화해야 할 상황이 오기 전에.)

-Jack Welch










기고 | MFJ-데몬팀 박세훈

편집 | 사업기획팀 박예영






엑기스 | 대한민국 4차 산업혁명 페스티벌 2020

기술이야기/엑.기.스 2019. 12. 9. 15:28






4차 산업혁명 시대를 맞아 지난 12월 17일~19일 코엑스 A홀에서 '대한민국 4차 산업혁명 페스티벌 2020' 전시회가 열렸습니다.

지디넷코리아가 주관하고 과학기술정보통신부와 대통령직속 4차산업혁명위원회가 주최하는 이 행사는

정부의 내년 정책을 엿볼 수 있을 뿐만 아니라, 4차 산업혁명 핵심 기술과 비즈니스가 소개되었던 자리였습니다.

이 자리에 엑셈도 빠질 수 없겠죠?



엑셈 부스는 입구 근처에 마련되어 있어 행사장으로 오시면 쉽게 만나볼 수 있었는데요.

이번 행사에서 클라우드 네이티브 성능 관리(InterMax Cloud)를 비롯해 AI 기반 IT 운영 지능화(EXEM AIOps),

빅데이터 분석 솔루션(DataRobot, KNIME)에 이르는 다양한 4차 산업 기술을 소개했습니다.

많은 분들께서 저희 솔루션에 관심을 주셨는데요, 이 자리를 빌어 방문해주신 모든 분들께 감사 말씀 드립니다!









첫날인 17일, 독일 공학한림원 헤닝 카거만 박사의 기조연설로 컨퍼런스가 시작되었습니다.

인더스트리 4.0에 대한 독일 기업들의 인식변화를 소개하며, 인더스트리 4.0은 사람과 로봇이 협동하는 '하이브리드 팀'이 이상적이라고 밝혔습니다. 기계가 인간을 대체하는 것이 아니라 특정한 상황에서는 로봇보다 사람이 훨씬 더 창의적이라고요. 현재 독일에서는 '하이브리드 팀'에 대한 연구가 진행중이라고 합니다. 

마지막으로 자율화, 상호운용성, 지속성을 목표로 디지털 생태계를 전 세계로 확장하겠다는 인더스트리 4.0에 대한 새로운 비전을 소개했습니다.





그리고 오후에는 4차 산업혁명과 관련된 정부 정책에 대해 들을 수 있는 다양한 세션이 펼쳐졌어요. 

먼저 한국데이터산업진흥원에서는 '데이터 경제 활성화를 위한 데이터 거래 기반 구축 방안'을 발표했습니다. 4차산업 시대의 데이터 거래에 대한 중요성을 밝히고, 국내외 데이터 거래시장 현황과 향후 정부의 지원 정책에 대한 내용을 공개했습니다.





행정안전부에서는 '디지털 정부혁신 추진방안'을 발표했는데요. 향후 3년 내 반드시 성과를 내기로 한 우선 추진과제 6가지(▲선제적·통합적 대국민 서비스 혁신▲공공부문 마이데이터 활성화▲시민 참여 플랫폼 고도화▲현장 중심 스마트 업무환경 구현▲클라우드와 디지털 서비스 이용 활성화▲개방형 데이터·서비스 생태계 구축)와 중장기적 비전을 공개했습니다. 

전자정부에 대한 정부의 강력한 의지를 느낄 수 있었던 세션이었어요.





과학기술정보통신부에서는 ‘AI 정책 방향’을 발표했습니다. AI는 피할 수 없는 흐름이기에, AI를 통해 산업과 사회가 도약해야 한다고 언급하며 ‘AI 정부’로 거듭나기 위한 전략을 공개했어요. (▲AI 산업 기반 조성▲산업·사회 전 분야의 AI 활용▲일자리 등 변화에 대한 선제적 대응) 

또한 구체적으로 인프라 조성을 위해 데이터 개방과 AI 반도체 강화를 강조했습니다. 





한편, 이번 전시회 둘째 날인 18일 오후에는 엑셈이 세션 발표를 진행했습니다.

신사업본부 Cloud그룹장 강인규 이사님께서 클라우드 네이티브 아키텍처 통합관제 솔루션 InterMax Cloud(인터맥스 클라우드)를 소개해주셨어요.

세션을 듣기 위해 많은 분들께서 참석해주셔서 높은 관심을 알 수 있었고,

세미나 종료 후 발표 자료 요청과 함께 솔루션 관련 문의를 주시기도 했습니다.




2019년 하반기는 전시회들로 유난히 분주했던 것 같은데요.

많은 분들께 엑셈을 소개하며 큰 관심을 받아 행복했던 시간이었습니다.

엑셈 부스를 방문해주신 모든 분들께 다시 한번 진심으로 감사의 인사를 드립니다.








기획 및 글 | 사업기획팀 박예영

사진 촬영 | 사업기획팀 홍성덕







[Semtong 143회] 2020년에도 대박나쥐!

다른 이야기도 궁금하시다면?

 

 

 👨‍🏫 엑셈 뉴스룸 | SoftWave 2019 참가기

 💌 엑쓸신잡 | 2020년부터 바뀌는 것들

 😉 엑기스 | 대한민국 4차 산업혁명 페스티벌 2020





엑기스 | Soft Wave 2019에서 만나요!

기술이야기/엑.기.스 2019. 11. 4. 14:56






국내 최대 SW산업 박람회, Soft Wave 2019 (2019 대한민국 소프트웨어대전)가 개최됩니다.

과학기술정보통신부, 산업통상자원부 등 관련 부처가 후원하는 가운데 

국내외 250개사 SW기업이 참여하여 새로운 기술과 서비스를 시연합니다.


2016년부터 시작되어 이번이 4회째인데요,

이번 전시회에는 패키지 SW, IT 서비스, 융합 SW, 인터넷 SW, 게임/콘텐츠 SW 등 다양한 기술로 구성됩니다.


엑셈도 이 기회를 놓칠 수 없겠죠?

지난 7월 AI EXPO에 이어서 이번 소프트웨이브 전시회에도 참가합니다.


엑셈은 이번 전시회에서 자사 솔루션 EXEM AIOps 및 InterMax Cloud와 파트너사의 솔루션 DataRobot과 KNIME을 선보입니다.

EXEM AIOps(엑셈 AI옵스)는 국내 최초로 딥러닝 기반의 IT 운영 지능화 솔루션이며,

InterMax Cloud(인터맥스 클라우드)는 클라우드 네이티브 아키텍처 통합관제 솔루션입니다.

DataRobot(데이터로봇)은 머신러닝 자동화(AutoML) 솔루션이며,

Knime(나임)은 워크플로우 기반 Total 분석 플랫폼입니다.




엑셈 부스는 전시회장 가장 중심인 인공지능 선도기업관에 위치해 있습니다. 

부스 번호는 D-41이니 꼭! 기억해두셨다가 엑셈 부스로 방문해주세요 :)









행사 첫날인 4일, 엑셈 빅데이터사업본부 조치선 팀장님의 강연도 마련되어 있습니다.

위 부스 배치도의 '무대'에서 진행하니, 많은 관심 부탁드립니다!





🤩 모바일 초대장 신청하기 🤩


이 글에 비밀댓글소속(회사명), 이름, 휴대폰번호를 남겨주세요! (선착순 50명)









기획 및 글 | 사업기획팀 박예영





[Semtong 142회] Remember our December

다른 이야기도 궁금하시다면?

 

 

 🏢 엑셈 뉴스룸 | 엑셈 마곡 '인텔리전스 R&D 캠퍼스’

 👍🏻 엑셈 브랜드스토리 Brand X l History. #EXEM

 😉 엑기스 | Soft Wave 2019에서 만나요!



  • Favicon of https://blog.ex-em.com EXEM 2019.11.19 16:37 신고 ADDR 수정/삭제 답글

    * 모바일 초대장 신청 예시 (비밀댓글) *
    소속 : 엑셈
    이름 : 김철수
    휴대폰 번호 : 010-1234-5678

  • 2019.11.29 08:32 ADDR 수정/삭제 답글

    비밀댓글입니다

    • Favicon of https://blog.ex-em.com EXEM 2019.11.29 10:10 신고 수정/삭제

      모바일 초대장 발송하였습니다-! 문자 메시지를 확인해주세요^.^

  • 2019.11.29 10:47 ADDR 수정/삭제 답글

    비밀댓글입니다

    • Favicon of https://blog.ex-em.com EXEM 2019.11.29 13:07 신고 수정/삭제

      발송완료! 문자 메시지 확인부탁드려요~

  • 2019.11.29 13:26 ADDR 수정/삭제 답글

    비밀댓글입니다

    • Favicon of https://blog.ex-em.com EXEM 2019.11.29 16:28 신고 수정/삭제

      발송완료하였습니다^^

  • 2019.12.05 13:49 ADDR 수정/삭제 답글

    비밀댓글입니다

    • Favicon of https://blog.ex-em.com EXEM 2019.12.05 14:29 신고 수정/삭제

      발송하였습니다! 문자 메시지 확인해주세요^^

엑기스 | InterMax Cloud의 변화

기술이야기/엑.기.스 2019. 10. 15. 17:53






클라우드 네이티브 아키텍처 통합관제 솔루션 InterMax Cloud가 한차례 업그레이드 되었다고 합니다.

이번 엑기스에서는 인터맥스 클라우드의 고도화 방향과 주요 업데이트 현황, 그리고 시장 현황과 향후 사업화 방향을 살펴보겠습니다.




InterMax Cloud 개발 및 고도화 방향


메트릭 분류 체계


단일 클라우드가 아닌 멀티 클라우드 구성된 환경에서는 수많은 메트릭을 수집할 수 있게 됩니다. 

하지만 이러한 메트릭들이 어떠한 성격을 갖고 있는지 모른다면 모니터링의 의미가 희미해질 것입니다. 

InterMax Cloud는 Computing, Deployment, Service 등의 관점에서 메트릭 분류 체계를 정립하여 보다 질 높은 모니터링을 제공할 예정입니다.


Multi-Tenant


스타트업부터 대기업에 이르기까지 크고 작은 분야에서 인프라를 클라우드로 이관하며 IaaS나 PaaS를 채택하고 있습니다. 

이를 고려하여 Muti-Tenant를 지원하기 위해 SaaS 형태로 배포되어 간편하게 InterMax Cloud를 경험해 보실 수 있도록 

멀티 테넌트를 Cluster별, Namespace별로 제공하고 있습니다.




주요 업데이트 기능


Service Level Tracing 기능 (Service Overview)



- 서비스들의 연관 관계와 TPS를 토폴로지로 모니터링 할 수 있으며, 외부와 연결되어있는 서비스와의 관계 또한 파악할 수 있습니다.


- 서비스의 실행 시간과 에러 발생 여부를 차트로 가시화 하였습니다. 

  영역 선택을 통한 범위를 지정하면 하위 연계 서비스의 정보를 Tree 형태로 제공하여 

  실행 시간, 에러 발생 여부, 호출 SQL등의 상세 내역을 쉽게 확인 할 수 있습니다.



Management 기능 (yaml 편집)


<Update Yaml (좌), Scale Up&Down(우)>


- 워크로드 모니터링 중 배포된 오브젝트의 yaml 파일에 기술된 스펙과 상태 정보를 확인하고 편집이 가능합니다.

  또한, Deployment의 Scale을 직접 조정하여 빠르고 효율적인 운영 관리를 할 수 있습니다.


- 추후에는 Kubernetes 오브젝트를 등록하거나 삭제할 수 있는 기능이 추가될 것이고, 

  히스토리를 저장하여 버전 관리까지 지원하는 방식으로 Management를 더욱 강화할 예정입니다.



Performance Trend Analysis


- 장애가 발생하였을 이상 원인을 파악하기 위한 성능 추이 분석 기능입니다.
  기본 수집 지표와 사용자 커스텀 지표를 기간 설정과 단위 시간을 선택하여 성능 메트릭을 다양하게 조회할 수 있습니다.


Report & Custom Dashboard


- 사용자 정의형 리포트 출력 기능을 제공합니다. 

  정형화 되어있는 형식이 아닌, 사용자가 텍스트 에디터로 템플릿을 구성할 수도 있습니다. 

  템플릿은 제품에서 제공하는 다양한 지표의 데이터를 도표 형태로 추가할 수 있으며, 파일 저장 기능을 통해서 공유 할 수도 있습니다.

  또한 스케줄 기능을 제공하여 일, 주, 월 별 단위로 원하는 시간대에 정기적으로 리포트를 제공하며,

  생성된 리포트는 파일이나 프린트로 출력 가능합니다.


- 대시보드도 마찬가지로 다양한 성능 지표에 대해 사용자 별로 원하는 화면을 별도로 제작할 수 있도록 Custom 대시보드 제작 기능을 제공합니다. 

  모니터링 하고자 하는 지표와 엔티티를 선택하고 원하는 타입의 위젯만 설정하면

  인프라, 워크로드, 서비스와 같은 다양한 관점으로 대시보드를 쉽게 구성할 수 있습니다.



DB 모니터링 기능 (PostgreSQL, Cassandra, MySQL 등)



- 클라우드 통합 관제의 필수 요소인 애플리케이션 영역 모니터링 기능 중 하나로
  클러스터 별로 배포된 다양한 DB의 성능 지표를 실시간 대시보드로 모니터링이 가능합니다. 
 


시장 현황 및 사업화 방향

현재 대부분의 클라우드 환경을 구축하고 있는 고객사는 MSP 사업자에 의한 단순 모니터링이나 관제에 의존하고 있는 상황이며,
기껏 모니터링 솔루션은 오픈 소스 기반의 모니터링 툴에 의존하고 있는 상황으로
장애에 대한 실시간 모니터링이나 분석에 애로 사항이 많은 걸로 파악되고 있습니다. 

또한 현재 오픈 소스는 대부분 IaaS 환경에 대한 모니터링 수준이며, 비즈니스 서비스 관점에 모니터링은 미약한 수준으로 파악되고 있습니다.

따라서, 향후 클라우드 환경에 대한 IaaS, PaaS, Services 영역에 대한 상세한 모니터링이 필요할 것으로 판단되어 
이러한 부분을 더욱 고도화하고 강화할 예정입니다.

사업화 관점에서는 MSP 사업자나 클라우드 환경에 대한 구축 사업을 주로 진행하고 있는 파트너나 협력사를 대상으로
저희 InterMax Cloud 솔루션이 함께 제안 단계에서부터 진행될 수 있도록 협업하여 진행하고 있는 상황으로, 
InterMax Cloud 솔루션에 관심있는 많은 파트너사나 협력사들과 함께하고 싶습니다. 

최근에는 클라우드 DevOps 전문 구축 업체와 MOU를 체결하여 관련 사업 협업을 진행하고 있는데요,
이러한 파트너나 협력사를 많이 모집하고 있으니 많은 관심 부탁드립니다.



제품 보러가기








기고 | 신기술본부 강정진

편집 | 사업기획팀 박예영







 [Semtong 141회] fall in exem

다른 이야기도 궁금하시다면?

 

 

 🏃🏻 엑셈 뉴스룸 | EXEM Japan in Japan IT Week

 👍🏻 엑셈 브랜드스토리 Brand X l System. #全個一如

 👨🏻‍💻 엑기스 | InterMax Cloud의 변화


엑기스 | InterMax 모바일 APM

기술이야기/엑.기.스 2019. 9. 6. 13:09


 

 


 

엑셈의 InterMax(인터맥스)는 End-to-End APM(Application Performance Monitoring) 솔루션입니다.

다양한 분야에서 제 몫을 톡톡히 해내고 있는 인터맥스. 모바일 버전도 있다는 거 아시나요?

모바일 앱도 모니터링한다! 이번에는 엑셈의 모바일 APM에 대해서 살펴보겠습니다.

 

 

 

 

 

 

Mobile APM이란, 모바일 앱 품질을 파악하고 문제를 해결하기 위해 SDK연동을 통한 다양한 모니터링 데이터를 실시간 수집하여 분석을 제공하는 것입니다. 

- 앱의 사용 비즈니스 흐름을 파악하여 최적의 UI/UX 제공

- 신규 방문자, 방문자 성별, 나이 or 기타 사용자 데이터 수집 가공을 통해 분석 기능 제공

- HTTP, HTTPS 호출 페이지의 처리 속도 측정

- Crash, Error, Exception, Trace 데이터 수집을 통한 앱 오류 발생 확인

- 앱의 최신 버전 사용량(비율) 확인

- 주요 이벤트에 대한 호출 빈도 확인

 

 

 

 

인터맥스 mAPM은 기본적인 고객 단말부터 서비스 레벨 성능 및 오류에 대한 전반적인 성능 모니터링을 제공합니다. 앱 성능 모니터링, 앱 품질 검증, 고객 패턴 분석, 서비스 활용 분석 등 운영자, 기획/분석가, 마케터, 개발자 측면으로 다양하게 활용할 수 있습니다.

 

 

 

 

또한, InterMax mAPM은 다양한 모바일 성능 관리 기능을 통해 모바일 유저의 실시간 Real User Monitoring 및 이슈 발생 시 즉각적인 대응 및 원인 분석으로 고객 서비스 만족도 향상을 기대할 수 있습니다. 

 

  

 

 

본격적으로 mAPM의 주요 기능을 살펴보겠습니다. 인터맥스 mAPM은 하나의 앱 뿐만 아니라 여러 개의 앱을 한 화면에서 동시에 모니터링이 가능한 멀티 앱 실시간 모니터링 기능을 제공합니다. 또한, 크래시 및 예외 발생 시 상세 분석 trace 제공 등 앱 품질 향상을 위한 다양한 분석 데이터를 제공합니다.

 

 

 

 

[실시간 모니터링 기능]

하나의 앱 뿐만 아니라 여러 개의 앱을 한 화면에서 동시에 모니터링이 가능한 멀티 앱 실시간 모니터링 기능을 제공하며, 멀티 앱 모니터링 중 상세 모니터링을 위해 Single 앱 모니터링 화면으로 연계가 가능합니다. 또한 앱의 전반적인 상태를 알 수 있는 주요 지표 표현 및 임계치 설정에 따른 알람 발생을 확인 가능하며, 누적 지표에 대한 전일 비교 증감 표현, 에러와 Trace 데이터 연계 분석도 가능합니다.

 

 

 

 

[사용자 트랜잭션 분석 기능]

사용자 트랜잭션이란?

애플리케이션 개발자가 특정 상황에 대한 모니터링을 위해 의도적으로 단계 별 스텝을 부여할 수 있으며 이런 일련의 한 업무 플로우를 사용자 트랜잭션이라고 합니다. 

 

 

 

 

[오류 분석 기능]

크래시 발생 추이 및 발생기기와 OS, 앱 버전을 기준으로 크래시 발생 비율을 분석하고, 예외 스택 내용 확인을 통해 애플리케이션 오류의 원인을 분석합니다.

 

 

 
 

[다양한 분석 기능]

이 외에도 인터맥스 mAPM이 제공하는 다양한 분석 기능을 보실까요?

- 이벤트 분석 : 애플리케이션 개발자가 지정한 이벤트의 추이와 통계 분석을 통해 모니터링 하고자 하는 독립적인 사건의 빈도 파악이 가능합니다.

- 네트워크 트래픽 분석 : 애플리케이션 외부의 데이터를 네트워크를 통해 호출한 횟수의 추이와 통계 분석이 가능합니다.

- 네비게이션 분석 : 사용자가 페이지를 이동한 동선을 Sankey Chart를 통해 직관적으로 확인이 가능하며, 사용 빈도가 높은 화면이 어떤 화면이고 앱 개발 시 화면 이동 flow설계가 잘 되었는지 확인이 가능합니다.

- 사용자 분석 : 앱이 사용하는 이벤트를 잡아 이를 카운팅하여 실제 앱을 사용하는 사용자 현황 파악이 가능하고, 사용자(성별, 연령)/신규/재방문 통계 지표를 제공합니다.

 

 

 

 

- 앱 단말 사용 현황 : 단말의 앱 버전에 대한 사용률 분석이 가능하며, 최신 앱 버전이 잘 배포되어 사용하고 있는지 확인이 가능합니다.

- 페이지 사용 분석 : 화면(activity) 기준의 페이지 사용 시간을 분석하는 기능인데요, 앱의 어떤 화면에 머무는 시간이 많은지 분석해줍니다.

 

 

 

 

인터맥스 mAPM만의 특장점은 다음과 같습니다.


[네트워크 트래픽 InterMax 연계 분석]

Mobile WebView에서 수행된 네트워크 트래픽에 대한 APM 연계 모니터링을 제공하며, 비즈니스 처리 흐름 및 상세 trace 분석을 위한 연계 분석도 제공합니다.

 

 

 

 

[하이브리드 앱 모니터링]

최근 Native App과 WebApp 이외 하이브리드 App을 선호하는 기업들이 많습니다. 인터맥스 mAPM은 Native용 SDK와 script용 SDK가 서로 통신하여 두 개의 레이어에서 실행되는 모듈을 통합하여 모니터링이 가능합니다.

 

 

 

 

[브레드크럼]

브레드크럼(BreadCrumbs)이란?

쉽게 말하면, 사용자가 어떤 경로를 거쳐왔는지 알려주는 서비스입니다. 인터맥스 mAPM에서는 장애가 발생한 시점까지 사용자의 사용 패턴을 확인할 수 있도록 하여 장애 원인 분석을 정확하게 할 수 있도록 지원합니다.

 

 

 

 

[사용자 데이터 수집]

기본적으로 수집하는 항목 외에 추가적으로 필요한 항목(user_data)을 추가 수집하여 Mobile APM 엔진에서 통계하여 Customizing된 통계 데이터 표현이 가능합니다.

 

 

 

 

[다양한 성능 지표에 따른 알람 발생 및 SMS 연계]

SMS 스케쥴 기능을 통해 특정 기간의 시간대에 발생하는 알람에 대해서만 SMS 연계가 가능합니다.

 

 

 

 

 모바일 앱 성능 현황을 살펴 볼 수 있게 하여 이를 통해 최종 사용자 경험 관련 문제를 찾아 해결하는데 도움을 주는 모바일 APM. 엑셈 뿐만 아니라 해외 많은 기업들이 서비스를 제공하고 있는데요. 늦기 전에 도입하여 고객들에게 안정적인 서비스를 제공해야 합니다.

 IT 센트럴 스테이션 사용자 커뮤니티에 따르면 모바일 APM 제품을 선택할 때 고려할 가장 중요한 기준으로는 면밀한 데이터 가시성, 강력한 모니터링 역량, 고급 트렌드 분석이 손꼽혔습니다. 인터맥스 mAPM의 주요 기능이기도 하지요. 모바일 APM도 모니터링의 강자 엑셈에게 맡겨주세요!






기획 및 글 | 사업기획팀 박예영






[Semtong 140회] 벌써 10월? 아..시월

다른 이야기도 궁금하시다면?

 

 

 🏃🏻 엑셈 뉴스룸 | 엑셈 기술력 뿜뿜 in 나주

 👍🏻 엑셈 브랜드스토리 Brand X l Visual Motif 2. #Play with exem

 👨🏻‍💻 엑기스 | InterMax mAPM


엑기스 | 신간 출시! KNIME을 활용한 빅데이터 분석

기술이야기/엑.기.스 2019. 8. 9. 11:13

  

  

 

엑셈에서 오랜만에 책이 나왔습니다! 

데이터 분석에 관심이 있는 분들을 위해 엑셈 빅데이터사업본부에서 두 팔을 걷어 붙이고 책을 썼다고 하는데요.

어떤 책인지 지금 바로! 공개합니다 :)




“KNIME을 활용한 빅데이터 분석”

 

<(Click 하나로 끝내는 데이터 분석 KNIME) KNIME을 활용한 BIG DATA 분석>

 

“(Click 하나로 끝내는 데이터 분석 KNIME) KNIME을 활용한 BIG DATA 분석” 도서가 출판되었습니다! 빅데이터 분석팀 주관으로 집필된 도서는 데이터 분석을 위해 분석 도구(Tool, SW)를 처음 접하는 학생이나 현업담당자들이 KNIME을 활용하여 데이터 분석에 쉽게 접근할 수 있는 정보 제공을 목적으로 작성되었습니다. 그렇다면 데이터 분석 도구인 KNIME은 무엇일까요? 먼저 KNIME이 무엇인지부터 차근차근 알아보겠습니다.

 

 

 

나임(KNIME), 데이터 사이언스와 머신러닝 플랫폼의 선두 주자 

 

 

 나임(KNIME, Konstanz Information Miner)은 가트너의 2018 Magic Quadrant에서 “데이터 사이언스와 머신러닝 플랫폼‘ 분야에서 선두 그룹에 포함된 소프트웨어 중 하나입니다. 독일의 Konstanz university의 소프트웨어 엔지니어 팀이 Java로 개발하였으며, 현재 KNIME Analytics Platform은 4.0 버전, KNIME Server은 4.9 버전까지 출시되어 활용되고 있습니다.

 

 나임은 비주얼 워크플로우(Visual Workflow) 기반으로 다양한 데이터 소스(Database, File, Hadoop 등)로부터 읽기, 전처리, 변환, 분석, 평가, 시각화 등의 분석 전 과정을 드래그-앤-드롭(drag-and-drop) 방식으로 쉽게 작업할 수 있는 토탈(Total) 분석 플랫폼입니다. 비주얼 워크플로우의 특징인 빠른 구현 속도, 쉬운 학습 난이도, 높은 모듈 의존도 등의 특징을 가집니다.

 

<KNIME의 구성>

  

 나임은 크게 KNIME Analytics Platform과 KNIME Server로 구성되어 있습니다. 추가적으로 나임과 나임 파트너 그리고 나임 사용자들이 제공 및 공유하는 다양한 확장 및 통합 기능을 활용할 수 있는 환경인 KNIME Extensions, Partner Extensions, Community Extensions과 KNIME Integrations을 제공합니다. 

 

 “KNIME을 활용한 데이터 분석” 도서는 KNIME Analytics Platform을 중심으로 집필되었기에, KNIME Analytics Platform에 대해서 알아보겠습니다. KNIME Analytics Platform은 데이터 과학 응용 프로그램 및 서비스 구현을 위한 오픈 소스 소프트웨어 입니다. 데이터를 이해하고 활용할 수 있도록 직관적이며 재사용이 가능한 구성 요소로 설계되어 있으며, 사용자의 Desktop에서 사용할 수 있는 분석 플랫폼입니다. 데이터 읽기(Load), 통합(Integrate), 변환(Transform), 분석(Analyze), 시각화(Visualize) 등의 기능을 수행할 수 있습니다. KNIME Analytics Platform에서 나임 확장(KNIME Extensions)을 통하여 데이터 접근, 처리, 기계학습 알고리즘, 시각화에 활용되는 다양한 기능을 추가적으로 활용할 수 있습니다. 그리고 나임 통합(KNIME Integration)을 통하여 딥러닝을 위한 Keras, Tensorflow, 고성능 기계학습을 위한 H2O, 대용량 데이터 처리를 위한 Apach Spark와 스크립트 언어인 R과 Python을 활용할 수 있는 환경을 제공합니다. 

 

 

 

"KNIME을 활용한 데이터 분석" 도서 구성

 

<"KNIME을 활용한 데이터 분석" 목차>

 

 “KNIME을 활용한 데이터 분석” 도서는 데이터 분석을 위해 KNIME을 처음 접하는 학생 또는 현업 담당자를 대상으로 집필된 기본서 입니다. 도서는 KNIME에 대한 소개로 시작됩니다. 

• 1장 KNIME 설치 및 환경설정에서는 KNIME Analytics Platform 설치 방법, 화면구성, 환경 설정 및 메모리 설정에 대하여 설명합니다. 

• 2장 데이터 가공에서는 외부 데이터 가져오기, KNIME Analytics Platform 내 데이터 외부로 내보내기 등의 데이터 읽기와 내보내기에 대한 내용과 데이터 처리, 조작, 추출, 변수 생성 등의 데이터 처리 과정에 대하여 설명합니다. 

• 3장 데이터 탐색에서는 데이터를 수치적으로 탐색하는 방법과 다양한 그래프를 활용하여 시각적으로 탐색하는 방법에 대해 설명합니다.

• 4장 데이터 분석에서는 대표적인 머신러닝 알고리즘인 선형 회귀분석, 로지스틱 회귀분석, 의사결정나무, 랜덤포레스트, 신경망(MLP) 등의 지도학습과 연관성 분석, K-Means 군집분석, 계층적 군집분석 등의 비지도학습을 KNIME Analytics Platform에서 구현할 때 필요한 노드에 대한 설명과 실습 예제를 통한 모델 구현 절차와 결과 해석 방법에 대하여 설명합니다. 

• 마지막으로 부록 About KNIME Server에서는 KNIME Server의 특징에 대한 설명과 KNIME을 활용하면서 참고할 수 있는 웹 사이트에 대한 정보를 제공합니다. 

 

 데이터 분석 과정인 데이터 가공, 탐색 및 분석에 활용되는 노드를 바탕으로 기능, 옵션 정의, 예시 및 예제 데이터를 바탕으로 단계적 실습 방법을 설명하고 있으며, 이를 바탕으로 KNIME Analytics Platform을 처음 접하는 독자들도 쉽게 따라하며 데이터 분석 및 KNIME Analytics Platform 활용 방법을 익힐 수 있게 구성되어 있습니다.

 

 

 

"KNIME을 활용한 데이터 분석" 도서를 활용한 KNIME 학습 및 활용

 

<OWLEYE 사이트(좌), 오프라인 세미나(우측상단), 웨비나(우측하단)>

 

 마지막으로 “KNIME을 활용한 데이터 분석” 도서를 활용하여 보다 효율적으로 KNIME Analytics Platform의 활용 방법을 익히고, 데이터 분석 과정에 대해 학습에 활용할 수 있는 웹 페이지와 웨비나, 오프라인 교육 정보를 소개합니다. 도서의 내용이 쉽게 구성되어 나임을 학습하는데 별 어려움이 없을 것이지만, 온라인 교육 컨텐츠의 활용이나 KNIME을 활용하여 데이터 분석을 수행하는 분석가가 진행하는 오프라인 교육을 활용한다면 학습의 효율성이 더 높아질 것입니다. 

 

  먼저 울아이(OWLEYE) 웹 페이지를 소개합니다. 아울아이는 엑셈 빅데이터 분석팀에서 운영하는 웹 페이지입니다. “KNIME을 활용한 데이터 분석” 도서의 실습 데이터를 제공하며, 도서를 활용하여 KNIME을 학습하다가 생긴 의문점이나, KNIME 활용 과정에서 혼자 해결하기 어려운 이슈에 대한 질문을 게재하면 KNIME을 활용하는 분석가들이 해당 질문에 대한 답변을 제공합니다. 그리고 KNIME 버전 업과 같은 새로운 소식과 업종별 활용 사례에 대한 정보를 제공합니다.

 

 그리고 엑셈 아카데미에서 진행하고 있는 웨비나와 오프라인 교육이 있습니다. 이 교육 과정은 KNIME을 활용한 데이터 분석 경험이 있는 분석 전문가들이 진행하는 교육으로, 데이터 처리 및 시각화, 모델링 등의 내용을 다루는 교육과정입니다. 도서 집필에 직접 참여하고 데이터 분석 업무에서 KNIME 활용 경험이 있는 전문 분석가가 진행하는 교육이므로 도서 내용에 대한 질문 내용이나 KNIME Analytics Platform을 활용한 데이터 분석 노하우에 대하여 많은 정보를 얻을 수 있을 것입니다.

 

 지금까지 Total 분석 플랫폼인 나임에 대한 설명과 KNIME을 처음 접하는 분들에게 안내 표지판이 될 “(Click 하나로 끝내는 데이터 분석 KNIME) KNIME을 활용한 BIG DATA 분석” 도서에 대하여 소개하였습니다. 학습 시간과 활용에 오랜 시간이 소요되는 스크립트 기반의 분석 도구보다는 그래픽 기반의 사용자 환경과 워크플로우를 활용하는 KNIME을 활용하여 데이터 분석을 시작해 보시는 것은 어떨까요?

 






기고 | 빅데이터사업본부 정영진

편집 | 사업기획팀 박예영





 [Semtong 139회] PLAY WITH EXEM

다른 이야기도 궁금하시다면?

 

 

 🎯 엑셈 뉴스룸 | 엑셈 다트왕은 누구?

 🙆🏻 엑셈 뉴스룸 | 애자일 리더십

 👍🏻 엑셈 브랜드 스토리 Brand X | Mindset. #Philinnovator

 👨🏻‍💻 엑기스 | 신간 출시! KNIME을 활용한 데이터 분석