Skip to content

qorzi/Teck-Study-Docs

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

기술 스터디 문서 (Tech Study Docs)

이 저장소는 서버 및 데이터 아키텍처에 대한 핵심 주제를 다루는 스터디 문서를 모아놓은 곳이다. 각 문서는 특정 주제를 심도 있게 다루고 있으며, 아래 요약을 참고하여 관심 있는 문서를 찾아볼 수 있다.

1. 데이터 아키텍처의 핵심, OLTP와 OLAP

이 문서는 데이터 처리의 두 가지 핵심 패러다임인 OLTP(온라인 트랜잭션 처리)와 OLAP(온라인 분석 처리)를 비교하고 분석한다.

로우 지향 저장 방식과 칼럼 지향 저장 방식의 근본적인 차이점부터, 대용량 데이터 분석을 위한 OLAP 시스템(Redshift, Druid 등)의 내부 원리와 일반적인 데이터 파이프라인(ETL) 플로우까지, 데이터 기반 의사결정에 필요한 아키텍처 지식을 가볍게 다룬다.

주요 키워드: OLTP, OLAP, 데이터베이스, 데이터 웨어하우스, 칼럼 지향, ETL, Redshift, Druid

2. 서버 아키텍처의 진화: C10K 문제와 이벤트 기반 패러다임

이 문서는 현대적인 고성능 서버가 어떻게 1만 개 이상의 동시 연결을 처리하는지를 설명하는 C10K 문제를 중심으로 서버 아키텍처의 발전 과정을 추적한다.

전통적인 '1연결-1스레드' 모델의 한계부터 Non-blocking I/O와 I/O 멀티플렉싱(epoll)을 활용한 이벤트 기반 아키텍처, 그리고 JVM 서버(Tomcat, Netty)의 진화 과정을 통해 고성능 서버의 핵심 원리를 학습한다.

주요 키워드: C10K, 서버 아키텍처, 동시성, 이벤트 기반, Non-blocking I/O, epoll, Tomcat, Netty

3. 일괄 배치 처리: 맵리듀스에서 데이터플로 엔진까지

이 문서는 대규모 데이터 처리의 근간을 이루는 일괄 처리(Batch Processing) 기술의 발전 과정을 탐구한다.

유닉스 철학에서부터 시작된 배치 처리의 기본 원리를 살펴보고, 분산 처리의 시대를 연 맵리듀스(MapReduce) 패러다임의 동작 방식, 데이터 지역성, 조인 전략, 그리고 데이터 쏠림(Skew) 문제와 같은 핵심 과제들을 분석한다.

나아가 맵리듀스의 가장 큰 한계인 '중간 상태 구체화' 문제를 지적하고, 이를 극복하기 위해 등장한 스파크(Spark), 플링크(Flink)와 같은 현대적인 데이터플로 엔진이 DAG 스케줄링과 인메모리 처리를 통해 어떻게 성능과 유연성을 혁신했는지 비교하며 설명한다.

주요 키워드: 일괄 처리, 맵리듀스, 데이터플로 엔진, 분산 처리, 내고장성, 중간 상태 구체화

4. 스트림 처리: 실시간 데이터 처리의 원리와 기술적 과제

이 문서는 데이터가 발생하는 즉시 처리하여 실시간으로 가치를 창출하는 스트림 처리(Stream Processing) 패러다임을 탐구한다.

로그 기반 아키텍처(Kafka)를 중심으로 스트리밍 데이터 전달 방식의 핵심 원리를 설명하고, 복잡한 이벤트 처리(CEP), 스트림 분석, 구체화 뷰 유지 등 스트림 처리의 주요 목적을 분석한다.

나아가 실시간 시스템을 구축할 때 반드시 마주하게 되는 시간 처리(Event Time), 윈도우(Window) 개념, 상태 관리, 내결함성과 같은 핵심적인 기술적 과제와 그 해결 방안을 이야기한다.

주요 키워드: 스트림 처리, 실시간 처리, 카프카(Kafka) 플링크(Flink), 이벤트 시간, 윈도우, 내결함성, CEP

5. 스파크 핵심 원리 및 최적화 전략

이 문서는 아파치 스파크의 핵심 동작 원리와 주요 최적화 전략을 설명한다.

스파크의 기본 데이터 구조인 RDD와 DataFrame의 차이점부터 Catalyst, Tungsten 같은 내부 최적화 엔진의 역할을 다룬다. 지연 평가와 DAG 기반의 실행 모델을 이해하고, 조인 전략, 캐싱 등 실무에서 고려해야 할 성능 최적화 기법을 정리한다. 마지막으로 정형화 스트리밍의 상태 관리와 워터마킹 개념을 소개한다.

주요 키워드: 스파크(Spark), RDD, 데이터프레임(DataFrame), Catalyst 옵티마이저, Tungsten, 지연 평가, DAG, 셔플, 조인 전략, 정형화 스트리밍, 워터마킹

6. 분산 데이터 시스템의 진화: DFS부터 레이크하우스까지

이 문서는 대용량 데이터 플랫폼이 원시 파일 저장소에서부터 현대적인 통합 아키텍처에 이르기까지 어떻게 발전해왔는지 그 진화의 여정을 추적한다. 각 아키텍처가 이전 세대의 한계를 어떻게 극복했는지, 그리고 이들의 기술적 절충점이 어떻게 다음 세대의 등장을 이끌었는지 분석한다.

분산 파일 시스템(HDFS)에서 시작하여 정형 데이터 분석을 위한 데이터 웨어하우스(DW)와 모든 데이터를 원본 그대로 저장하는 데이터 레이크의 등장 배경과 한계를 차례로 짚어본다. 마지막으로, '웨어하우스의 신뢰성'과 '레이크의 유연성'을 통합한 레이크하우스 패러다임이 오픈 테이블 포맷(Delta Lake, Iceberg)을 통해 어떻게 데이터 사일로 문제를 해결하고 현대 데이터 플랫폼의 표준으로 자리 잡았는지 심층적으로 설명한다.

주요 키워드: 분산 파일 시스템(DFS), HDFS, 데이터 웨어하우스(DW), 데이터 레이크, 레이크하우스, Schema-on-Write, Schema-on-Read, 오픈 테이블 포맷, Delta Lake, Iceberg

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published