#분산디비 안녕하십니까? 페이코 테이터테크랩 임지홍 입니다. 오늘은 부서에서 만들고 있는 플랫폼 중 많은 데이터의 숫자를 빨리 세기 위해, 혹은 빨리 찾기 위해 만들고 있는 DataMart를 소개해 드리겠습니다. 빨리 집계하기 위해 가장많이 도입하는 전통적인 방법은 OLAP환경의 DataCube 입니다. 흔히 BI라고 불리우죠. 데이터의 구조를 차원(attribute 혹은 dimension)으로 설계하고 이에 필요한 값(metrics 혹은 measures)들을 미리 계산해 놓는 방식입니다. (미리 계산하지 않고 관계만 설정해놓은 상태에서 조회 시 큐브가 생성되는 Relational OLAP 도 있지만 속도를 논하는 글이니 논외로 하겠습니다.) 데이터 큐브를 간단하게 설명해.......
2019-06-14 11:46:04 · 산소소년#분산디비 안녕하십니까? 페이코 테이터테크랩 임지홍 입니다. 오늘은 부서에서 만들고 있는 플랫폼 중 많은 데이터의 숫자를 빨리 세기 위해, 혹은 빨리 찾기 위해 만들고 있는 DataMart를 소개해 드리겠습니다. 빨리 집계하기 위해 가장많이 도입하는 전통적인 방법은 OLAP환경의 DataCube 입니다. 흔히 BI라고 불리우죠. 데이터의 구조를 차원(attribute 혹은 dimension)으로 설계하고 이에 필요한 값(metrics 혹은 measures)들을 미리 계산해 놓는 방식입니다. (미리 계산하지 않고 관계만 설정해놓은 상태에서 조회 시 큐브가 생성되는 Relational OLAP 도 있지만 속도를 논하는 글이니 논외로 하겠습니다.) 데이터 큐브를 간단하게 설명해.......
2019-06-14 11:46:04 · 산소소년#분산디비 안녕하십니까? 페이코 테이터테크랩 임지홍 입니다. 오늘은 부서에서 만들고 있는 플랫폼 중 많은 데이터의 숫자를 빨리 세기 위해, 혹은 빨리 찾기 위해 만들고 있는 DataMart를 소개해 드리겠습니다. 빨리 집계하기 위해 가장많이 도입하는 전통적인 방법은 OLAP환경의 DataCube 입니다. 흔히 BI라고 불리우죠. 데이터의 구조를 차원(attribute 혹은 dimension)으로 설계하고 이에 필요한 값(metrics 혹은 measures)들을 미리 계산해 놓는 방식입니다. (미리 계산하지 않고 관계만 설정해놓은 상태에서 조회 시 큐브가 생성되는 Relational OLAP 도 있지만 속도를 논하는 글이니 논외로 하겠습니다.) 데이터 큐브를 간단하게 설명해.......
2019-06-14 02:46:04 · 산소소년#분산디비 안녕하십니까? 페이코 테이터테크랩 임지홍 입니다. 오늘은 부서에서 만들고 있는 플랫폼 중 많은 데이터의 숫자를 빨리 세기 위해, 혹은 빨리 찾기 위해 만들고 있는 DataMart를 소개해 드리겠습니다. 빨리 집계하기 위해 가장많이 도입하는 전통적인 방법은 OLAP환경의 DataCube 입니다. 흔히 BI라고 불리우죠. 데이터의 구조를 차원(attribute 혹은 dimension)으로 설계하고 이에 필요한 값(metrics 혹은 measures)들을 미리 계산해 놓는 방식입니다. (미리 계산하지 않고 관계만 설정해놓은 상태에서 조회 시 큐브가 생성되는 Relational OLAP 도 있지만 속도를 논하는 글이니 논외로 하겠습니다.) 데이터 큐브를 간단하게 설명해.......
2019-06-14 02:46:04 · 산소소년#BloomFilter 확률적 자료구조인 블룸필터가 저장소도 아낄 수 있고 빨리 검색할 수 있어서 hbase, redis 등 여러 디비에서도 활용되고 있다는 말을 많이 들어보셨을 겁니다. 좋은 것은 알겠는데 실제 어떻게 활용되고 있는지 어떤 원리로 데이터를 함축적으로 표현할 수 있는지 간단하게 설명해 드리고 또 실제 데이터 처리 환경에서 어떻게 사용하고 있는지 예시를 통해 소개해 드리는 시간을 준비해 봤습니다. 블룸필터의 원리 및 구현 블룸필터를 한줄로 설명드리면 "어떤 값이 집합에 속해 있는가?를 검사하는 필터 및 이를 구성하는 자료형"을 칭합니다. 이 구조를 도식화 해보면 다음과 같습니다. 저장하고 싶은 집합의 값을 n개.......
2019-05-13 13:46:22 · 산소소년#BloomFilter 확률적 자료구조인 블룸필터가 저장소도 아낄 수 있고 빨리 검색할 수 있어서 hbase, redis 등 여러 디비에서도 활용되고 있다는 말을 많이 들어보셨을 겁니다. 좋은 것은 알겠는데 실제 어떻게 활용되고 있는지 어떤 원리로 데이터를 함축적으로 표현할 수 있는지 간단하게 설명해 드리고 또 실제 데이터 처리 환경에서 어떻게 사용하고 있는지 예시를 통해 소개해 드리는 시간을 준비해 봤습니다. 블룸필터의 원리 및 구현 블룸필터를 한줄로 설명드리면 "어떤 값이 집합에 속해 있는가?를 검사하는 필터 및 이를 구성하는 자료형"을 칭합니다. 이 구조를 도식화 해보면 다음과 같습니다. 저장하고 싶은 집합의 값을 n개.......
2019-05-13 13:46:22 · 산소소년#BloomFilter 확률적 자료구조인 블룸필터가 저장소도 아낄 수 있고 빨리 검색할 수 있어서 hbase, redis 등 여러 디비에서도 활용되고 있다는 말을 많이 들어보셨을 겁니다. 좋은 것은 알겠는데 실제 어떻게 활용되고 있는지 어떤 원리로 데이터를 함축적으로 표현할 수 있는지 간단하게 설명해 드리고 또 실제 데이터 처리 환경에서 어떻게 사용하고 있는지 예시를 통해 소개해 드리는 시간을 준비해 봤습니다. 블룸필터의 원리 및 구현 블룸필터를 한줄로 설명드리면 "어떤 값이 집합에 속해 있는가?를 검사하는 필터 및 이를 구성하는 자료형"을 칭합니다. 이 구조를 도식화 해보면 다음과 같습니다. 저장하고 싶은 집합의 값을 n개.......
2019-05-13 04:46:22 · 산소소년#BloomFilter 확률적 자료구조인 블룸필터가 저장소도 아낄 수 있고 빨리 검색할 수 있어서 hbase, redis 등 여러 디비에서도 활용되고 있다는 말을 많이 들어보셨을 겁니다. 좋은 것은 알겠는데 실제 어떻게 활용되고 있는지 어떤 원리로 데이터를 함축적으로 표현할 수 있는지 간단하게 설명해 드리고 또 실제 데이터 처리 환경에서 어떻게 사용하고 있는지 예시를 통해 소개해 드리는 시간을 준비해 봤습니다. 블룸필터의 원리 및 구현 블룸필터를 한줄로 설명드리면 "어떤 값이 집합에 속해 있는가?를 검사하는 필터 및 이를 구성하는 자료형"을 칭합니다. 이 구조를 도식화 해보면 다음과 같습니다. 저장하고 싶은 집합의 값을 n개.......
2019-05-13 04:46:22 · 산소소년#ReverseGeocoding 고민의 시작 미세먼지 수치, 버스도착시간 조회, 경로조회 등 위치기반 정보는 분석활동에 많이 사용되는 데이터 유형 입니다. 그런데, 활용하는 위치기반 데이터를 살펴보면 소스에 따라 유형이 다양했습니다. 우편번호, 위경도좌표, 한글도로명 주소, 구한글 주소, [행|법]정동코드, 프렌차이즈의 지역명[ex. 삼평동점] ... 이런 다양한 데이터를 통일된 위치체계로 관리할 필요가 있었으며 또 필요에 따라 유형을 변환해야 하는 경우도 있었습니다. 그 중 가장 빈번하게 사용되는 변환은 위경도 좌표를 주소로 변환하는 "리버스 지오코딩" 이였습니다. 이 때 사용했던 외부 Open API들은 제약이 존재하고 유료화.......
2019-04-24 11:09:26 · 산소소년#ReverseGeocoding 고민의 시작 미세먼지 수치, 버스도착시간 조회, 경로조회 등 위치기반 정보는 분석활동에 많이 사용되는 데이터 유형 입니다. 그런데, 활용하는 위치기반 데이터를 살펴보면 소스에 따라 유형이 다양했습니다. 우편번호, 위경도좌표, 한글도로명 주소, 구한글 주소, [행|법]정동코드, 프렌차이즈의 지역명[ex. 삼평동점] ... 이런 다양한 데이터를 통일된 위치체계로 관리할 필요가 있었으며 또 필요에 따라 유형을 변환해야 하는 경우도 있었습니다. 그 중 가장 빈번하게 사용되는 변환은 위경도 좌표를 주소로 변환하는 "리버스 지오코딩" 이였습니다. 이 때 사용했던 외부 Open API들은 제약이 존재하고 유료화.......
2019-04-24 11:09:26 · 산소소년#ReverseGeocoding 고민의 시작 미세먼지 수치, 버스도착시간 조회, 경로조회 등 위치기반 정보는 분석활동에 많이 사용되는 데이터 유형 입니다. 그런데, 활용하는 위치기반 데이터를 살펴보면 소스에 따라 유형이 다양했습니다. 우편번호, 위경도좌표, 한글도로명 주소, 구한글 주소, [행|법]정동코드, 프렌차이즈의 지역명[ex. 삼평동점] ... 이런 다양한 데이터를 통일된 위치체계로 관리할 필요가 있었으며 또 필요에 따라 유형을 변환해야 하는 경우도 있었습니다. 그 중 가장 빈번하게 사용되는 변환은 위경도 좌표를 주소로 변환하는 "리버스 지오코딩" 이였습니다. 이 때 사용했던 외부 Open API들은 제약이 존재하고 유료화.......
2019-04-24 02:09:26 · 산소소년#ReverseGeocoding 고민의 시작 미세먼지 수치, 버스도착시간 조회, 경로조회 등 위치기반 정보는 분석활동에 많이 사용되는 데이터 유형 입니다. 그런데, 활용하는 위치기반 데이터를 살펴보면 소스에 따라 유형이 다양했습니다. 우편번호, 위경도좌표, 한글도로명 주소, 구한글 주소, [행|법]정동코드, 프렌차이즈의 지역명[ex. 삼평동점] ... 이런 다양한 데이터를 통일된 위치체계로 관리할 필요가 있었으며 또 필요에 따라 유형을 변환해야 하는 경우도 있었습니다. 그 중 가장 빈번하게 사용되는 변환은 위경도 좌표를 주소로 변환하는 "리버스 지오코딩" 이였습니다. 이 때 사용했던 외부 Open API들은 제약이 존재하고 유료화.......
2019-04-24 02:09:26 · 산소소년보통 데이터 처리 작업을 만들 때 시간도 오래걸리고 과정이 많아 단계별로 모듈을 개발하고 이를 스케쥴링 하는 식으로 구성을 하게 됩니다. 또 이런 작업이 하나 둘 씩 늘어가며 관리가 복잡해지면 이것들을 처리하기 위해 oozie, azkaban, airflow 같은 workflow 엔진을 도입하게 됩니다. 이런 엔진을 통한 worflow의 DAG 구성은 독립적으로 구동되고 정상적인 운영 에서는 편하지만 "다른 사람이 만든 workflow에서 나의 workflow의 중간 단계 데이터를 필요로 할 때", "내 작업이 생성한 한 데이터를 참조하는 나도 모르는 작업들이 있는데, 내 작업이 장애가 났을 때" 등의 실제 운영중의 문제를 해결해 주기에는 (기.......
2018-10-01 12:51:18 · 산소소년보통 데이터 처리 작업을 만들 때 시간도 오래걸리고 과정이 많아 단계별로 모듈을 개발하고 이를 스케쥴링 하는 식으로 구성을 하게 됩니다. 또 이런 작업이 하나 둘 씩 늘어가며 관리가 복잡해지면 이것들을 처리하기 위해 oozie, azkaban, airflow 같은 workflow 엔진을 도입하게 됩니다. 이런 엔진을 통한 worflow의 DAG 구성은 독립적으로 구동되고 정상적인 운영 에서는 편하지만 "다른 사람이 만든 workflow에서 나의 workflow의 중간 단계 데이터를 필요로 할 때", "내 작업이 생성한 한 데이터를 참조하는 나도 모르는 작업들이 있는데, 내 작업이 장애가 났을 때" 등의 실제 운영중의 문제를 해결해 주기에는 (기.......
2018-10-01 12:51:18 · 산소소년보통 데이터 처리 작업을 만들 때 시간도 오래걸리고 과정이 많아 단계별로 모듈을 개발하고 이를 스케쥴링 하는 식으로 구성을 하게 됩니다. 또 이런 작업이 하나 둘 씩 늘어가며 관리가 복잡해지면 이것들을 처리하기 위해 oozie, azkaban, airflow 같은 workflow 엔진을 도입하게 됩니다. 이런 엔진을 통한 worflow의 DAG 구성은 독립적으로 구동되고 정상적인 운영 에서는 편하지만 "다른 사람이 만든 workflow에서 나의 workflow의 중간 단계 데이터를 필요로 할 때", "내 작업이 생성한 한 데이터를 참조하는 나도 모르는 작업들이 있는데, 내 작업이 장애가 났을 때" 등의 실제 운영중의 문제를 해결해 주기에는 (기.......
2018-10-01 03:51:18 · 산소소년보통 데이터 처리 작업을 만들 때 시간도 오래걸리고 과정이 많아 단계별로 모듈을 개발하고 이를 스케쥴링 하는 식으로 구성을 하게 됩니다. 또 이런 작업이 하나 둘 씩 늘어가며 관리가 복잡해지면 이것들을 처리하기 위해 oozie, azkaban, airflow 같은 workflow 엔진을 도입하게 됩니다. 이런 엔진을 통한 worflow의 DAG 구성은 독립적으로 구동되고 정상적인 운영 에서는 편하지만 "다른 사람이 만든 workflow에서 나의 workflow의 중간 단계 데이터를 필요로 할 때", "내 작업이 생성한 한 데이터를 참조하는 나도 모르는 작업들이 있는데, 내 작업이 장애가 났을 때" 등의 실제 운영중의 문제를 해결해 주기에는 (기.......
2018-10-01 03:51:18 · 산소소년Query Routing을 통한 On-Demand Mart 구성
올해 초 부서가 바뀌어서 HADOOP Eco-System을 이용한 DataFlow를 관장하는 플랫폼을 개발하는 업무에서, 이렇게 만들어진 데이터를 이용한 시스템/서비스를 개발하는 업무를 담당하게 되었습니다. 업종이 바뀐 기념으로? 이곳에서 제가 설계하고 개발한 여러 시스템 중 한가지를 간단히 소개시켜 드릴까 합니다. 서비스의 개요는 사내에서 활용하고 있는 (집계 및 모델링으로 나온)각종지표에 대한 자료를 모집군에 따라 비교해주는 기능을 제공하는 것 입니다. 어렵게 말씀 드린 것 같은데 예를 들어 다시 정리하면 "SKT 전체 사용자가 가장 많이 사용하는 APP과 서울이 직장인 20대 여성 중 아이폰 사용자가 가장 많이 쓰는 APP을 비교해줘!" .......
2017-07-13 13:23:51 · 산소소년Query Routing을 통한 On-Demand Mart 구성
올해 초 부서가 바뀌어서 HADOOP Eco-System을 이용한 DataFlow를 관장하는 플랫폼을 개발하는 업무에서, 이렇게 만들어진 데이터를 이용한 시스템/서비스를 개발하는 업무를 담당하게 되었습니다. 업종이 바뀐 기념으로? 이곳에서 제가 설계하고 개발한 여러 시스템 중 한가지를 간단히 소개시켜 드릴까 합니다. 서비스의 개요는 사내에서 활용하고 있는 (집계 및 모델링으로 나온)각종지표에 대한 자료를 모집군에 따라 비교해주는 기능을 제공하는 것 입니다. 어렵게 말씀 드린 것 같은데 예를 들어 다시 정리하면 "SKT 전체 사용자가 가장 많이 사용하는 APP과 서울이 직장인 20대 여성 중 아이폰 사용자가 가장 많이 쓰는 APP을 비교해줘!" .......
2017-07-13 13:23:51 · 산소소년Query Routing을 통한 On-Demand Mart 구성
올해 초 부서가 바뀌어서 HADOOP Eco-System을 이용한 DataFlow를 관장하는 플랫폼을 개발하는 업무에서, 이렇게 만들어진 데이터를 이용한 시스템/서비스를 개발하는 업무를 담당하게 되었습니다. 업종이 바뀐 기념으로? 이곳에서 제가 설계하고 개발한 여러 시스템 중 한가지를 간단히 소개시켜 드릴까 합니다. 서비스의 개요는 사내에서 활용하고 있는 (집계 및 모델링으로 나온)각종지표에 대한 자료를 모집군에 따라 비교해주는 기능을 제공하는 것 입니다. 어렵게 말씀 드린 것 같은데 예를 들어 다시 정리하면 "SKT 전체 사용자가 가장 많이 사용하는 APP과 서울이 직장인 20대 여성 중 아이폰 사용자가 가장 많이 쓰는 APP을 비교해줘!" .......
2017-07-13 04:23:51 · 산소소년Query Routing을 통한 On-Demand Mart 구성
올해 초 부서가 바뀌어서 HADOOP Eco-System을 이용한 DataFlow를 관장하는 플랫폼을 개발하는 업무에서, 이렇게 만들어진 데이터를 이용한 시스템/서비스를 개발하는 업무를 담당하게 되었습니다. 업종이 바뀐 기념으로? 이곳에서 제가 설계하고 개발한 여러 시스템 중 한가지를 간단히 소개시켜 드릴까 합니다. 서비스의 개요는 사내에서 활용하고 있는 (집계 및 모델링으로 나온)각종지표에 대한 자료를 모집군에 따라 비교해주는 기능을 제공하는 것 입니다. 어렵게 말씀 드린 것 같은데 예를 들어 다시 정리하면 "SKT 전체 사용자가 가장 많이 사용하는 APP과 서울이 직장인 20대 여성 중 아이폰 사용자가 가장 많이 쓰는 APP을 비교해줘!" .......
2017-07-13 04:23:51 · 산소소년