전체 글
-
데이터 품질 (Data Quality)Data 2021. 1. 27. 22:28
데이터 품질은 모든 '데이터 상품'의 기반이 됩니다. 그렇기에 데이터 관련 주요 Stake Holders들(데이터분석가, 데이터사이언티스트, 데이터엔지니어 등)에게는 매우 중요한 부분입니다. 또한, 데이터 거버넌스의 목적이 '데이터에 대한 신뢰성 확보'라는 점을 볼 때에도, 데이터 거버넌스의 중심적인 부분에 '데이터 품질 관리'가 차지하고 있다는 사실을 알 수 있습니다. 이 글에서는 빅데이터 이전에도 다뤄지던 개념인 데이터 품질의 발전사와 그 내용을 살펴보고, 빅데이터 환경에서 사용되는 (파악 가능한) 도구들을 살펴보겠습니다. Reference www.vldb.org/pvldb/vol11/p1781-schelter.pdf github.com/great-expectations/great_expectatio..
-
[Hands On] 도커 기반 하둡 살펴보기 (HDFS, YARN, MapReduce, Hive)Data 2021. 1. 27. 21:58
처음 하둡을 공부하려고 했을 때, 하둡이 무엇이고 정확히는 무엇인지 실체를 알기 어려웠습니다. 더욱 어려웠던 부분은, 책과 이론적인 내용들은 많은 자료가 있었으나 직접 튜토리얼을 진행하고자 하면 HDFS, YARN, MapReduce, Hive 등 다양한 서비스를 설치하고 설정을 연동해야한다는 부분이었습니다. 시간이 지나 되돌아보니, 간단한 docker-compose up을 통해 하둡 환경이 로컬에 실행되고 HDFS 네임노드 및 데이터노드의 Web UI를 통해 직접 글로 봤던 사항을 확인해보고 Hive 쿼리를 바로 로컬에서 실행해볼 수 있었으면 더 빨리 배울 수 있었을 것 같다는 생각을 많이 했었습니다. 이 글에서는 Big Data Europe에서 제공한 docker-hadoop [1]을 바탕으로 바로 ..
-
YARN 노드매니저(Node Manager)Data 2021. 1. 27. 21:28
노드매니저는 하둡(Hadoop) 프로젝트의 YARN 모듈 중 하나의 컴포넌트로 Worker 역할을 하며 클러스터에 속한 노드들에서 컨테이너를 실행하고, 각 컨테이너의 리소스 사용량을 모니터링하고 그것의 상태를 리소스매니저에 report하는 역할을 담당합니다. 이 글에서는 노드매니저의 상세한 기능과 그 구현을 알아보겠습니다: 노드매니저의 주요 기능과 컴포넌트 오버뷰 노드매니저의 주요 컴포넌트들 관련글: 목적과 탄생배경 YARN(하둡분산자원관리) 주요개념 및 아키텍쳐 YARN(하둡분산자원관리) 실행 구조 및 흐름 YARN 리소스매니저(Resource Manager) YARN 노드매니저(Node Manager) (이번글) 노드매니저의 주요 기능과 컴포넌트 오버뷰 노드매니저는 하둡 YARN 클러스터의 개별 컴퓨..
-
파이썬 클래스 내부구조 (Python Class Internals)Python 2021. 1. 25. 22:22
클래스(class)는 데이터와 기능을 함께 번들링하는 수단을 제공합니다. 새로운 클래스는 새로운 객체의 type을 생성하며, 해당 type의 새로운 인스턴스(instances) 생성을 가능하게 합니다. 각 클래스의 인스턴스는 그 상태를 유지하기 위해 속성들을 가질 수 있습니다. 또한, 클래스 인스턴스들은 그것의 상태를 변경하기 위해 methods들을 가질 수 있습니다 [1]. class A: pass print(type(A)) # 출력 이 글에서는 클래스(User-Defined class)에 대해 다음과 같은 사항들을 기술합니다: class 구조 - type과 metaclass MRO (Method Resolution Order) class를 구성하는 것들 class / instance 생성 관련글: 파..
-
브라우저 핑거프린팅(Browser Fingerprinting)이란?SE Concepts 2021. 1. 23. 21:58
통합적인 관점에 기반한 온프레미스 데이터 플랫폼 구조 비교분석 이 글의 원문은 11번가 데이터 플랫폼 팀에서 데이터 엔지니어로 근무(20190923 ~ 20201115)하며 사내 블로그에 작성한 '통합적인 관점에 기반한 11번가 온프레미스 데이터 플랫폼 구조 비교분석'입니 kadensungbincho.tistory.com 디바이스 핑거프린팅(Device Fingerprinting)이란 식별(Identification)을 위해 수집된 원격의 컴퓨팅 기기의 하드웨어 및 소프트웨어 정보를 말합니다 [1]. 브라우저 핑거프린팅은 브라우저를 통해서 이뤄지는 디바이스 핑거프린팅을 말합니다. 기본적으로 Persistent 쿠키를 읽을 수 없거나 클라이언트 ip가 숨겨져 있거나, 또는 한 기기에서 다른 브라우저를 사용..
-
Data-Driven UX란?Data 2021. 1. 23. 18:08
| UX 경험이 없는 엔지니어가 적음. 기업 내에서 데이터는 다양한 형태로 사용됩니다. 사용자의 웹 상의 행동 로그 데이터에 기반한 분석이나, 상품을 추천하기 위한 추천모델, 특정 목적을 위한 ML 모델 등이 그러한 다양한 형태의 구체적인 모습입니다. 하지만, 분석가 또는 데이터사이언티스트 등의 한정된 직무의 관점에서 보면 각 직군의 다른 부분일 수 있는 그러한 복잡하고 다양한 요소들이 UX라는 관점에서 보면 모두 기업의 최종적인 목적인 이익을 올리기 위한 '사용자 경험 개선'이라는 항목으로 묶여지곤 합니다. 그러한 UX라는 넓은 주제에서, Data-Driven이라는 말에서 Data라는 부분이 컨택스트 상 컴퓨터로 수치화 되어 수집된 데이터로 한정되기에 정성적인 유저리서치는 제외될 수 밖에 없습니다. 이..
-
YARN 리소스매니저(Resource Manager)Data 2021. 1. 23. 12:38
하둡(Hadoop) 프로젝트의 YARN(Yet Another Resource Negotiator) 모듈은 분산 환경에서의 자원관리를 담당합니다. 이 글에서는 YARN과 관련해 다음과 같은 항목을 다룹니다: 목적과 탄생배경 YARN(하둡분산자원관리) 주요개념 및 아키텍쳐 YARN(하둡분산자원관리) 실행 구조 및 흐름 YARN 리소스매니저(Resource Manager) (이번글) YARN 노드매니저(Node Manager) 운영과 관련한 사항들 YARN의 다양한 기능들은 크게 2가지 레이어로 나뉩니다: platform 레이어: 리소스 관리와 최상위레벨 스케쥴링을 담당. 리소스매니저와 노드매니저가 해당됨. framework 레이어: 애플리케이션의 실행 조정이나 second-레벨 스케쥴링을 담당. 애플리케이션..
-
YARN(하둡분산자원관리) 실행 구조 및 흐름Data 2021. 1. 23. 10:41
하둡(Hadoop) 프로젝트의 YARN(Yet Another Resource Negotiaor) 모듈은 분산 환경에서의 자원관리를 담당합니다. 이 글에서는 YARN과 관련해 다음과 같은 항목을 다룹니다: 목적과 탄생배경 YARN(하둡분산자원관리) 주요개념 및 아키텍쳐 YARN(하둡분산자원관리) 실행 구조 및 흐름 (이번글) YARN 리소스매니저(Resource Manager) YARN 노드매니저(Node Manager) 운영과 관련한 사항들 YARN에 Application 제출 시 일어나는 일들 중앙의 리소스매니저는(ResourceManager) 특정 머신에 standalone 데몬으로 실행되며 자원을 차지하기 위해 경쟁하는 다양한 애플리케이션들의 중재자 역할을 합니다. 리소스매니저는 클러스터의 모든 자..