Developers Haven

(DH)블로그는 개발자들이 기술 정보를 찾아볼 수 있는 안식처가 되고 싶음을 희망하여 시작하게 되었습니다. 공부한 내용과 성장 과정을 기록해두었으니 편히 둘러보시길 바랍니다.

Welcome to DH's Blog
반응형

분류 전체보기 79

[DAsP 한 권으로 끝내기] Chapter1.전사 아키텍처 이해 - (1)

💬 신입 DA로서 첫 프로젝트에 참여하며 기술적으로도, 업무적으로도 많이 배우게 되었다. 데이터 표준화, 워크플로우 개발 등을 진행하면서 대부분이 새롭게 배우는 용어와 기술이었다. 이 과정 속에서 DA로서 기본 지식을 길러야함을 느끼게 되었고 본 자격증 시험 공부를 시작하게 되었다. 수많은 프로젝트 경험이 있는 IT 분야의 경력직에게는 교재 앞부분의 내용이 당연하게 느껴질 수 있다. 그러나 신입 및 주니어들에게는 조금 생소한 부분일 수 있으니, 하나씩 배워나가 보자. DAsP는 데이터 아키텍처 준전문가 자격을 의미하며, DA 업무에 필요한 개념에 대해 배우게 해주는 자격시험이다. 나의 경우에는 데이터 아키텍트 직무를 담담하고 있기에 DA의 역할에 대해서 잘 알고 있지만, 회사에 따라 이 직무의 명칭이 없..

[빅데이터를 지탱하는 기술] Chapter5.빅데이터의 파이프라인 - (2)

최근에 진행하고 있는 프로젝트에서 단위, 통합 테스트를 진행하며 매일을 바쁘게 살아가고 있는 것 같다. 생각보다 공부 시간을 내기 어렵지만 틈틈히 시간이 날때마다 공부를 하고 있는 요즘이다. 지난 장에서는 워크플로우의 개념에 대해서 알아보았다. 이번 시간에는 워크플로우 실행에서 발생할 수 있는 오류와 이를 신속히 회복할 수 있는 방법에 대해 배워보도록 하자. 1. 워크플로우 관리 도구의 오류 및 회복 방법 1-1. 복구와 플로우의 재실행 복구(recovery)의 필요성 워크플로우 관리 도구를 설계할 때 수많은 오류를 자동으로 회복하긴 어렵다.이러한 이유로 수작업에 의한 ‘복구(recovery)’를 전제로 한 태스크 과정을 설계하게 된다. 위 설계를 통해 워크플로우 실행 과정에서 실패한 태스크는 모두 기록..

[기술서적] 2023.06.02

[빅데이터를 지탱하는 기술] Chapter5.빅데이터의 파이프라인 - (1)

신입 데이터 아키텍처로서 첫 프로젝트를 진행하며 요즘 가장 많이 접하고 있는 용어가 ‘워크플로우(Workflow)’이다. 현재 진행중인 단위테스트에서도 가장 많이 이용되고 있는 부분이 워크플로우이며, 이러한 과정에서 개념을 확실히 알고 넘어가는 것이 중요하다고 생각했다. 마침 본 챕터에서 워크플로우에 대한 설명과 필요한 이유에 대해 서술하고 있으니 제대로 배워보도록 하자. 1. 워크플로우 관리 오늘날과 같은 빅데이터 시대에서는 직접 눈으로 가늠할 수 없을 정도의 방대한 양의 데이터가 쏟아지고 있다. 그만큼 대량의 데이터 처리는 안정적이면서 자동적으로 진행되는 기술이 필요해졌고 이를 위해 등장하게 된 것이 ‘워크플로우’이다. 1-1. 워크플로우의 등장 정해진 업무 프로세스를 원활하게 진행할 수 있도록 업무..

[기술서적] 2023.06.02

[빅데이터를 지탱하는 기술] Chapter4.빅데이터의 축적 - (3)

1. 비구조화 데이터의 분산 스토리지 우선, 지금까지 빅데이터의 분산 스토리지에서 객체 스토리지(Object Storage)의 특징에 대해 알아보았는데 객체 스토리지의 단점에 대해서 먼저 알아보자. 1-1. 객체 스토리지의 단점 객체 스토리지 상의 파일 교체가 어렵다. read한 파일을 통째로 교체해야하기 때문에 수시로 파일을 변경하는 작업에는 적합하지 않다. 객체 스토리지의 데이터를 집계하는 시간이 오래 걸린다. 데이터 집계에 필요한 열 지향 스토리지를 만드는 과정에 시간이 소요된다. 이러한 점으로 인해 데이터를 기록하고 곧바로 활용하기 위해서 (메시지 배송 방식 대신) 실시간 집계와 검색에 적합한 ‘NoSQL 데이터베이스’를 사용하기도 한다. 그럼 NoSQL 데이터베이스의 대표적인 3가지와 각각의 특..

[기술서적] 2023.06.01

[빅데이터를 지탱하는 기술] Chapter4.빅데이터의 축적 - (2)

1. 스트리밍 형 전송에서 메시지 배송의 한계점 스트리밍 형 데이터 전송에서 메시지가 처음 생성되는 기기를 ‘클라이언트(client)’한다. 그러나 클라이언트의 수가 많아져 메시지 배송이 많아지면 성능과 신뢰성 을 모두 보장하기 어려워진다. 이에 대해 조금 더 구체적으로 메시지 배송의 한계점에 대해 알아보자. 1-1. 메시지 배송의 성능 문제를 해결해주는 메시지 브로커 메시지 브로커(message broker) 메시지 배송 시스템에서 데이터를 일시적으로 축적하여 분산 스토리지에 보내주는 역할 메시지 브로커의 역할 외부에서 전해오는 메시지의 양을 제어할 수 없음 → 급격한 메시지의 양의 증가에 대응할 수 있는 능력이 중요 그러나 상황에 따라 스토리지 성능을 자유자재로 변화시킬 수 없으므로 메시지 브로커가 ..

[기술서적] 2023.06.01

[빅데이터를 지탱하는 기술] Chapter4.빅데이터의 축적 - (1)

지금까지의 내용에서는 데이터 파이프라인, 데이터 웨어하우스, 데이터 마트와 같이 전체 데이터 시스템을 설계하기 위해 필요한 개념들에 대해서 알아보았다. 이 챕터에서는 실제 데이터를 수집하고 스토리지에 저장하는 과정에 대해 배워보려 한다. 1. 벌크 형과 스트리밍 형의 데이터 수집 빅데이터 수집 방식에 대해 알아보기 전에 데이터가 저장되는 스토리지에 대한 기본 개념을 알아보자. 1-1. 빅데이터의 객체 스토리지 (1) 객체 스토리지(Object Storage) 객체 스토리지 구조 여러 대의 컴퓨터에서 파일을 여러 디스크에 복사하여 파일을 저장하는 방식 여러 디스크에 데이터를 복사하여 저장하기 때문에 데이터의 중복성을 가지고 있다. 하둡에서의 객체 스토리지는 HDFS 이며, 클라우드 서비스에서는 Amazon..

[기술서적] 2023.06.01

[빅데이터를 지탱하는 기술] Chapter3.빅데이터의 분산 처리 - (2)

하둡 환경에서의 Hive를 통해 쿼리를 작성하는 기본 원리와 Hive 관련 개념을 공부해보자. 1. 쿼리 엔진 1-1. SQL on Hadoop Hive 메타 스토어(Metastore) : Hive에서 만들어진 테이블 정보를 저장해주는 데이터베이스 (1) Hive 외부 테이블 정의 CREATE EXTERNAL TABLE access_log_csv( time string, request string, status int, bytes int ) ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.OpenCSVSerde' STORED AS TEXTFILE LOCATION '/var/log/access_log/' TBLPROPERTIES('skip.header.line.coun..

[기술서적] 2023.06.01

[빅데이터를 지탱하는 기술] Chapter3.빅데이터의 분산 처리 - (1)

1. 대규모 분산 처리의 프레임워크 데이터 분야를 공부하다 보면 ‘구조화된 데이터’라는 표현을 한 번씩은 들어봤을 것이다. 데이터가 구조화 되어있다는 표현은 과연 어떤 의미일지 알아보자. 1-1. 구조화 및 비구조화 데이터 스키마 : 데이터베이스 테이블의 칼럼 명, 데이터 타입, 테이블 간의 관계 등을 정의한 구조 구조화된 데이터(structured data) : 스키마가 명확히 정의된 데이터 비구조화 데이터(unstructured data) : 스키마가 정해지지 않은 데이터 조금 더 쉽게 말하자면 데이터의 칼럼(column)이 없거나, 데이터의 타입이 정해져있지 않는 것과 같이 특정한 기준 없이 쌓이는 데이터를 비구조화 데이터라고 생각하면 된다. 1-2. 데이터 구조화 파이프라인 비구조화 데이터를 이용..

[기술서적] 2023.06.01

[빅데이터를 지탱하는 기술] Chapter2.빅데이터의 탐색 - (2)

1. 시각화 도구 단순한 수치 데이터를 읽는 것 만으로는 데이터의 의미를 파악하기 어려울 수 있다. 이를 위해 데이터를 쉽게 이해하고 파악하기 위해서 시각화 도구를 사용하게 되고, 각 상황에 따라 필요한 시각화 도구는 달라질 수 있다. 1-1. 대표적인 시각화 도구 3가지와 특징 (1) 스프레드시트 (장점) 간단한 피벗 테이블부터 크로스 집계, 데이터 시각화가 가능하다. (단점) 대량의 데이터를 취급한 시각화는 어렵다. (2) 대시보드 SQL 쿼리 작성으로 간편한 대시보드 사용이 가능하다. 데이터 검색의 목적 보다는 지속적인 데이터 모니터링을 위해 사용한다. 동일한 쿼리를 정기적으로 반복하여 데이터 현황을 파악하는 목적으로 사용하기 적합하다. (3) 주피터 노트북 특정한 서버 설치 없이 데이터를 시각화하..

[기술서적] 2023.06.01

[빅데이터를 지탱하는 기술] Chapter2.빅데이터의 탐색 - (1)

데이터를 시각화하는 환경을 배우고, 대량의 데이터를 효율적으로 분석하고 탐색하는 방법에 대해 알아보자. 1. 크로스 집계의 기본 1-1. 테이블의 종류 트랜잭션 테이블 - 행(row)을 증가하며 데이터를 저장하는 테이블 (일반 RDB 구조와 동일) 크로스 테이블 - 특정 조건을 기준으로 데이터를 집계한 테이블 룩업 테이블 - key, value 구조로 저장되며, key 값을 다른 테이블에서 참조하는 테이블 (엑셀의 vlookup 기능과 동일) 트랜잭션 테이블의 데이터를 집계 하여 크로스 테이블을 만드는 것을 크로스 집계라고 한다. 1-2. 데이터 시스템 구조 데이터 시스템은 Data Lake에서 1차적으로 집계한 데이터를 Data Mart에 보관하게 된다. 이후, Data Mart에서 필요한 데이터만 추..

[기술서적] 2023.06.01
반응형