data-engineering
5 posts
📚 [Data Engineering] 빅데이터를 지탱하는 기술 - CH2 2-1 크로스 집계, 2-2 열 지향 스토리지에 의한 고속화

데이터 엔지니어로 살아남기 - 빅데이터에 관리와 처리를 위한 전반적인 기술 데이터 엔지니어로서 필요한 기술에 대해 차근차근, 진득하게 공부해보려 합니다. 정리된 내용은 빅데이터를 지탱하는 기술 도서를 기반으로 합니다. 2-1. 크로스 집계의 기본 1. 크로스 집계의 개념 1. 크로스 테이블(Cross Table) 행과 열이 교차하는 부분(cross)에 숫자 데이터가 들어가는 테이블 주로 엑셀 등의 스프레드시트에서 테이블을 표현하는 형태 사람이 해석하기는 편하나, 데이터베이스에서 다루기 어려움 데이터베이스는 데이터가 추가될 때 행이 추가됨. 컬럼을 추가하려면 테이블 정의 자체를 변경해야 하므로 상대적으로 어려움. 2. …

March 19, 2023
bigdata
data-engineering
📚 [Data Engineering] 카카오의 분산 스토리지 - KAGE(KAkao storaGE)

카카오의 분산 스토리지 : KAGE(KAkao storaGE) 동일한 데이터를 3개의 파일(원본 + 2개의 복제본)로 만들어 분산 저장함 - 물리적으로 서로 다른 서버에 있지만, 논리적으로 같은 데이터를 갖고 있는 3개의 청크(청크셋)에 저장 파일 읽기 트래픽 분산, 빠른 장애 파악 및 처리 KAGE의 구성 - Datanode와 Namenode Datanode(데이터 노드) 실제로 파일이 저장된 공간. 파일을 읽고 전송하는 역할. 데이터 노드의 파일 저장소는 청크(Chunk)라는 일정한 크기를 가진 저장 공간의 모임으로 구성됨 청크가 3개(마스터 노드 1개, 슬레이브 노드 2개) 모인 청크셋 단위로 데이터를 관리함 N…

March 12, 2023
data-engineering
infra
📚 [Data Engineering] 스토리지 시스템 (DAS, SAN, NAS)

스토리지 시스템 기초 DAS(Directed-attached Storage) DAS(직접 연결 스토리지) 서버와 스토리지를 분리하고 둘을 연결하여 사용하는 구조 초기에는 주 기억장치(RAM)와 보조 기억장치(하드 디스크)가 분리되지 않고 같이 쓰임 계산의 성능을 높이고 데이터 보관의 용량과 효율을 높이기 위해 스토리지 시스템인 보조 기억 장치가 탄생하였고, 서버에 이를 연결해 사용함 장단점 DAS 구조에서는 추가적인 디스크 용량이 필요하다면 디스크를 물리적으로 교체해야 하는 불편함이 있음 SAN(Storage Area Network) SAN(스토리지 전용 네트워크) 스토리지를 여러 대 준비한 뒤 스토리지들을 연결하는 …

March 11, 2023
data-engineering
infra
📚 [Data Engineering] 빅데이터를 지탱하는 기술 - CH1 3, 4 데이터 프레임, BI 도구와 모니터링

데이터 엔지니어로 살아남기 - 빅데이터에 관리와 처리를 위한 전반적인 기술 데이터 엔지니어로서 필요한 기술에 대해 차근차근, 진득하게 공부해보려 합니다. 정리된 내용은 빅데이터를 지탱하는 기술 도서를 기반으로 합니다. 1-3. 스크립트 언어에 의한 특별 분석과 데이터 프레임 데이터 처리와 스크립트 언어 원천 데이터는 파일 서버, API 등 다양한 방법으로 수집하게됨. 이러한 다양한 전처리, ETL 과정을 처리하기 위해 스크립트 언어를 사용함. 대표적인 데이터 처리 스크립트 언어로는 R, Python 등이 있음. Python의 우수한 특징 다양한 라이브러리 지원 : API 호출, 문자열 처리 다양한 프레임워크 지원 : …

March 10, 2023
bigdata
data-engineering
📚 [Data Engineering] 빅데이터를 지탱하는 기술 - CH1 1_빅데이터의 정착, 2_빅데이터 시대의 데이터 분석 기반

데이터 엔지니어로 살아남기 - 빅데이터에 관리와 처리를 위한 전반적인 기술 데이터 엔지니어로서 필요한 기술에 대해 차근차근, 진득하게 공부해보려 합니다. 정리된 내용은 빅데이터를 지탱하는 기술 도서를 기반으로 합니다. 이 책에서 다루는 내용 자동화된 데이터 처리(데이터 처리를 시스템화) 데이터 처리 과정에서 사용되는 SW, DB, 프로그래밍 언어, 시각화 도구 특징, 데이터 처리를 자동화하는 기술(워크플로우 관리, 스트림 처리 등) *빅데이터 취급이 어려운 이유 데이터의 분석 방법을 모른다 (데이터 분석가의 역할) 데이터 처리에 수고와 시간이 걸린다 (데이터 엔지니어의 역할) 1-1. 배경빅데이터의 정착 분산 시스템에…

February 19, 2023
bigdata
data-engineering