User Tools

Site Tools


public:2018-07-25버전

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

public:2018-07-25버전 [2018/08/10 16:33] (current)
jhnam created
Line 1: Line 1:
 +====== FLOW ======
 +* 현재 버전(2018-07-25)의 아이리스에 다음처럼 데이터변환기 기능을 추가하여 분석가가 아이리스를 통해서 분석하는 과정을 그려본다.
  
 +{{:​public:​pasted:​20180810-163328.png}}
 +
 +====== 데이터 변환기 기능 목록과 설명 ======
 +===== 개요 =====
 +
 +데이터 source : 1개 이상의 IRIS 테이블, 1개 이상의 데이터 모델, pandas/R 의 DATAFRAME
 +
 +이 때 결과로는 데이터와 ​ command 구문 URL 을 옵션으로 선택 할 수 있다.
 +    * 데이터 - 새로운 컬럼과 값이 도출된 데이터 결과를 바로 IRIS DB 테이블 또는 데이터 모델 또는 CSV 로 저장한다.
 +    * command 구문 - 해당 결과를 만드는 command (REST API URL)
 +
 +데이터 source 간의 JOIN
 +
 +SUBSTR, CONCAT 등 새 컬럼 생성
 +
 +1차 결과 데이터와 데이터 source 간의 merge, JOIN
 +
 +다양한 집계 방법 : 집계 단위에 없는 구간 0 으로 채우기 등...
 +
 +===== 기능 설명 =====
 +=== raw data 로부터 분석에 필요한 컬럼과 조건으로 새로운 컬럼 생성 ===
 +  * sql 예시
 +
 +      select SYSTEM_NAME || "​_"​ || SYSTEM_TYPE || "/"​ || SYTEM_VENDOR as SYSTEM_KEY from
 +      TEST.SYSTEM_KPI where substr(SYSTEM_TYPE,​ 1, 3) <> "​URM"​ or substr(SYSTEM_TYPE,​ 2, 3) <> "​URM" ​
 +
 +   
 +=== 여러개의 data source 로부터 ​ merge by KEY 컬럼 ===
 +  * IRIS 로컬테이블 A , B 를 공통 컬럼 EVENT_TIME, SYSTEM_NAME 을 기준으로 merge 하기. ​
 +  * 데이터모델 A, B 
 +
 +      A.EVENT_TIME ​   A.SYSTEM_NAME ​           A.CODE_CNT ​ A.SCORE ​ B.AD_EX ​ B.ALARM_TYPE
 +       (= merge 기준 공통 컬럼 )                    ( A, B 로부터 필요한 컬럼 선별 )
 +
 +=== 특정한 조건과 KEY , JOIN 결과로부터 집계 데이터 생성 ===
 +  * GROUP BY 
 +  * 새롭게 만든 데이터 결과로부터 집계
 +  * 집계를 위한 시간 컬럼을 sequence 로 자동 생성하기
 +''​예를 들어 10분 서머리를 생성하는 경우, rawdata 의 시간범위는 10:00:00 ~ 12:59:59 이고
 +10:30 ~ 11:00 사이 데이터가 없다면  ​
 +시간 컬럼 벡터를 데이터의 유무에 상관없이 10:00, 10:10, 10:20, 10:30, 10:40,,, 13:00  으로 생성할 수 있게 한다.''​
 +
 +
 +
 +
 +
 +===== 데이터 변환기의 OUTPUT ===== 
 +  * 다음 옵션중 선택
 +    - R, Python 에서 REST API 로 데이터프레임으로 가져올 수 있는 URL 과 interface 함수 제공
 +    - 아이리스(구 B-IRIS)의 데이터모델
 +    - 구분자 지정한 FILE 을 HDFS 에 저장 / 로컬 PC 로 저장
 +
 +
 +
 +----
 +
 +==== 아이디어 ====
 +
 +  R, python 의 데이터프레임으로 변환하면 집계나 merge, time sequence 생성하고,​ 빈 값을 특정 값으로 채우기 등을 쉽게 할 수 있다.
 +  다양한 data source 를 적절한 단계에서 데이터프레임으로 변환하면 메모리 이슈가 있는가?
 +  자주 사용되는 기능을 쉽게 활용할 수 있는 방법이 있으면 좋겠다.
 +  데이터 변환 단계별로 실행되는 결과를 샘플로 보여 줬으면 좋겠다.
 +  ​
 +  화면에 공통적으로 "​command ", ​ "​데이터 QUERY 실행" ​ 선택 단추와 여러 source 에서 선택된 데이터 항목이 담긴 바구니 창 필요
 +  ​
 +
 +{{:​public:​pasted:​20180810-163344.png}}
 +
 +  DATA선택 tab(위의 그림예시) , DATA처리 tab,  DATA결과 tab
 +  ​
 +  DATA선택 tab 은 데이터 source 에서 이름을 선택하면 sample 데이터가 sheet 에 보여지고,​ 데이터를 오른쪽 항목 바구니에 담기
 +  ​
 +  DATA처리 tab 은 선택된 데이터 항목에서 공통적인 데이터 TIME 범위를 선정한다.
 +  ​
 +  각 데이터 항목끼리 JOIN, MERGE, SUMMARY 등의 command 구문을 만든다. 이 때 아이디어는 DataFrame 으로 변환하고,​ 다양한 인터페이스 함수를 개발해 놓으면 편하게 사용할 수 있지 않을까... ​           ​
public/2018-07-25버전.txt · Last modified: 2018/08/10 16:33 by jhnam