성능·운영·트러블슈팅 (지연·대역폭 · 패킷 분석 · CDN · 관측)

network performance latency bandwidth tcpdump wireshark cdn observability troubleshooting
배운 것을 현장에서 따져 묻고 고치는 마지막 단계. 지연과 대역폭의 차이, RTT·처리량·버퍼블로트가 체감 속도를 가르는 법, tcpdump·Wireshark로 패킷을 읽는 법, CDN과 캐싱으로 지연을 줄이는 법, 그리고 네트워크를 관측하는 지표·도구까지.

Flink exactly-once: 전달 보장 3종·2PC 트랜잭셔널 싱크·end-to-end 정확성

flink stream-processing exactly-once two-phase-commit durability
Stream-Processing-Essential 시리즈의 4단계. '장애가 나도 결과가 정확한가'에 답하는 단계입니다. 정확성 없는 스트림 처리는 재처리가 불가능해 비즈니스 손실로 직결됩니다. at-most-once·at-least-once·exactly-once 세 가지 전달 의미를 실패 시나리오로 해부하고, 'exactly-once 처리(oper...

Flink 이벤트 시간·워터마크: out-of-order·지각 데이터·allowed lateness

flink stream-processing event-time watermark late-data
Stream-Processing-Essential 시리즈의 2단계. 1단계가 잡은 무한 스트림의 실행 모델 위에 '시간의 기준'을 얹습니다. 처리 시간이 아닌 이벤트 시간을 써야 하는 이유 — 재처리·백필·장애 복구에서도 결과가 일관되는가 — 를 짚고, 워터마크가 '이 시각까지의 데이터는 사실상 다 왔다'는 단조 증가 선언이라는 점을 깊게 다룹니다. ...

Flink 스트림 처리 모델: 무한 스트림·데이터플로우 그래프·연산자 병렬성

flink stream-processing data-engineering execution-model datastream
Stream-Processing-Essential 시리즈의 1단계. 배치가 다루는 '끝이 있는 데이터'와 스트림이 다루는 '끝이 없는 데이터'의 경계를 잡고, Flink가 무한 스트림을 어떤 실행 모델로 표현하는지 — 데이터플로우 그래프(StreamGraph → JobGraph → ExecutionGraph), 연산자 체이닝과 슬롯 공유, 파티션·병렬...

Agentic KG 직접 구축 + 도메인별 활용 사례: 코퍼스에서 에이전트까지

knowledge-graph agent graphrag use-cases
배운 것을 하나로 꿰는 피날레. 비정형 코퍼스 → LLM 추출 → 그래프 DB → GraphRAG·추론 → 에이전트 write-back으로 이어지는 end-to-end 파이프라인을 개념과 핵심 코드 스니펫으로 조립하고, 헬스케어·금융·보안·엔터프라이즈·추천·법률·개인 메모리까지 도메인별 활용 사례를 아키텍처 변주로 집대성합니다. 확장성·최신성·환각·거...

Agentic Knowledge Graph: 그래프를 도구이자 기억으로, temporal KG

knowledge-graph agent agent-memory temporal-graph
시리즈의 심장 — 지금까지 만든 그래프를 에이전트가 스스로 쓰는 단계. 그래프를 도구(tool)로 삼아 자연어를 Cypher로 번역하고 질의를 계획하며, 그래프를 기억(memory)으로 삼아 새로 알게 된 사실을 write-back해 시간과 함께 자라는 시간적 지식 그래프(temporal KG)를 만듭니다. 검색–추론–행동 루프, 사실의 유효 기간·무...

그래프 임베딩과 추론: node embedding·link prediction·다중 홉

knowledge-graph graph-embedding link-prediction gnn
그래프를 읽는 데서 예측·추론으로 넓히는 단계. 노드와 관계를 벡터로 옮기는 그래프 임베딩(node2vec·TransE)으로 유사 개체를 찾고, 아직 그래프에 없는 관계를 예측하는 링크 예측으로 추천·신약 후보·리스크 연결을 발견하며, 규칙·경로 기반 다중 홉 추론과 그래프 신경망(GNN)이 어떻게 쓰이는지를 개념 수준에서 잡습니다. 이 예측·추론 능...

GraphRAG: 벡터 RAG의 한계를 그래프로 메우다 — local vs global

knowledge-graph graphrag rag retrieval
벡터 RAG는 의미가 비슷한 조각은 잘 찾지만, 여러 문서에 흩어진 사실을 연결해야 하는 다중 홉 질문이나 '코퍼스 전체의 핵심은?' 같은 전역 질문에 약합니다. GraphRAG는 문서에서 뽑은 지식 그래프에 community detection으로 주제 클러스터를 만들고 그 요약을 미리 구워 두어, 지역(local)과 전역(global) 질문 모두에 ...

LLM 기반 그래프 구축: 스키마 유도 추출·검증·휴먼인더루프

knowledge-graph llm information-extraction langchain
지식 그래프 부흥의 첫 번째 엔진 — LLM으로 그래프를 짓는 법. 스키마를 프롬프트로 유도해 구조화 출력(JSON·함수 호출)으로 트리플을 뽑고, LLMGraphTransformer·프로퍼티 그래프 인덱스 같은 도구로 파이프라인을 세운 뒤, 환각·중복·불일치를 검증하고 휴먼인더루프로 교정합니다. LLM은 추출의 문턱을 낮추지만, 3단계의 스키마·엔티...

지식 그래프 구축 기초: 엔티티·관계 추출, 스키마 설계, 엔티티 해소

knowledge-graph entity-extraction entity-resolution nlp
그래프를 실제로 짓기 시작하는 단계. 텍스트에서 개체를 찾는 개체명 인식(NER)과 관계를 뽑는 관계 추출(RE), 그래프가 담을 개념을 정하는 스키마·온톨로지 설계, 그리고 여러 소스에 흩어진 같은 실체를 하나로 묶는 엔티티 해소까지 — LLM 이전의 전통 파이프라인을 먼저 이해해야 4단계에서 LLM이 무엇을 대체하고 무엇을 못 하는지가 보입니다.

그래프 DB와 질의: 속성 그래프·Cypher와 RDF·SPARQL, 무엇을 언제

knowledge-graph graph-database cypher sparql
지식 그래프를 실제로 저장하고 물어보는 손을 푸는 단계. 실무 주류인 속성 그래프(Neo4j)와 Cypher로 노드·엣지·가변 길이 경로를 질의하고, 시맨틱 웹 계열의 RDF·SPARQL과 대비하며, property graph vs RDF를 언제 고를지, GQL 표준과 그래프 DB 지형도까지 실용 관점에서 정리합니다.

지식 그래프란 무엇인가: 왜 그래프인가 — 관계형·벡터 DB와의 비교

knowledge-graph graph-database vector-database rag
지식 그래프는 세상을 노드와 관계로 표현한 사실의 망입니다. 관계형 DB가 관계를 조인으로 그때그때 계산한다면 그래프는 관계를 데이터 그 자체로 저장하고, 벡터 DB가 '의미가 비슷한 조각'을 찾는다면 그래프는 '명시적으로 연결된 사실'을 따라갑니다. 다중 홉·전역·설명가능성이 필요한 순간 왜 그래프가 빛나는지, 세 렌즈를 나란히 놓고 Agentic-...

Agentic Knowledge Graph Curriculum: 지식 그래프를 이해하고, 에이전트가 구축·추론하는 KG까지

knowledge-graph graphrag agent llm curriculum
지식 그래프가 무엇이며 왜 그래프인가(vs 관계형·vs 벡터 DB)에서 출발해, 그래프 DB·질의, 엔티티/관계 추출로 그래프를 짓고, LLM 기반 구축·GraphRAG·그래프 추론으로 지능을 얹은 뒤, 그래프를 도구·기억으로 쓰는 Agentic Knowledge Graph를 직접 구축하는 8단계 학습 로드맵. 헬스케어·금융·보안·엔터프라이즈 등 도메...

온톨로지 vs 도메인 주도 설계(DDD): 같은 뿌리, 다른 층

ontology ddd domain-modeling data-modeling semantic-layer
온톨로지와 DDD는 '도메인의 의미를 명시하고 조직이 공유하게 한다'는 같은 뿌리에서 자라지만, 사는 층이 다릅니다. 유비쿼터스 언어↔의미 계층, 엔티티↔객체 타입, 애그리거트·바운디드 컨텍스트의 대응과 어긋남을 개념 대 개념으로 매핑하고, 둘을 어떻게 함께 쓰는지 정리합니다.

거버넌스·진화와 FDE 워크플로: 버전·권한·도메인 협업

ontology governance fde versioning data-modeling
Ontology-Essential 시리즈의 마지막 7단계 — 만든 온톨로지를 조직 안에서 오래 살리는 법을 다룹니다. 객체·링크·스키마의 버전 관리와 하위 호환·마이그레이션 전략, 의미 계층 위의 접근 제어·보안 마킹·계보·감사, 그리고 도메인 워크숍에서 배포·피드백 루프까지 이어지는 Forward Deployed Engineer의 실제 워크플로를 정...

액션과 운영 계층: 읽기 모델을 행동의 시스템으로 (write-back)

ontology operations write-back actions fde
잘 만든 온톨로지의 진짜 가치는 읽는 데 있지 않습니다. 객체를 통제된 방식으로 바꾸는 액션(action), 그 변경이 모델과 원천 시스템으로 되돌아 쓰이는 write-back 고리, 검증·권한·감사를 품은 함수 기반 액션까지 — read-only 의미 계층을 '행동의 시스템(system of action)'으로 바꾸는 운영 계층을 재고 부족 → 발주...

소스 데이터를 온톨로지로: 백킹 데이터셋과 엔티티 해소

ontology data-engineering entity-resolution data-quality data-mapping
우아한 객체·링크 모델도 실제 데이터와 이어지지 않으면 그림일 뿐입니다. 파이프라인 산출물인 백킹 데이터셋을 객체 타입의 물리적 뒷받침으로 삼는 속성 매핑, 여러 소스에 흩어진 같은 실체를 하나의 객체로 묶는 엔티티 해소(결정적·확률적 매칭, 매칭 신뢰도, 골든 레코드), 그리고 중복·불일치·누락이라는 지저분한 현실 위에서 신뢰할 만한 객체 그래프를 ...

링크 타입과 관계: 관계를 일급 개념으로, 카디널리티와 그래프 탐색

ontology data-modeling graph knowledge-graph cardinality
온톨로지의 힘은 객체가 아니라 관계에서 나옵니다. 관계형 DB에서 외래키·조인 테이블로 흩어져 있던 관계를 링크 타입이라는 일급 개념으로 끌어올리는 법 — 링크의 이름·방향·의미 설계, 1:1·1:N·N:M 카디널리티와 외래키→링크 번역 규칙, 그리고 조인 사고를 탐색 사고로 바꾸는 그래프 탐색까지, SQL 조인과 나란히 대비하며 관통합니다.

객체 타입과 속성: 엔티티를 객체로, 기본키와 객체 그래프

ontology data-modeling object-types entity-modeling fde
온톨로지를 손으로 짓기 시작하는 첫 단계 — 도메인의 명사를 객체 타입으로 승격하는 판단 기준(독립 생명주기·참조 필요성·링크 대상 여부), 속성의 데이터 타입·파생 속성·표시용 이름, 그리고 기본키와 객체 그래프의 밑그림까지. 주문·고객·제품·설비 도메인으로 ER 모델을 온톨로지로 번역하는 과정을 시연합니다.

형식 기반과 그래프: 지식 그래프 · RDF/OWL · 속성 그래프

ontology knowledge-graph rdf owl sparql property-graph cypher
온톨로지라는 개념의 학문적 뿌리를 다집니다. 시맨틱 웹의 계보 위에서 RDF의 트리플(주어-술어-목적어)과 RDFS/OWL의 클래스·프로퍼티·표현력, 이를 질의하는 SPARQL을 익히고, 실무 그래프 DB가 쓰는 속성 그래프 모델(노드·엣지·속성, Cypher)과 RDF의 차이를 비교합니다. 마지막으로 택소노미 vs 온톨로지, 기술논리(Descript...

온톨로지란 무엇인가: 데이터 모델·스키마와 의미 계층의 차이

ontology data-modeling semantic-layer
스키마는 데이터를 '어떻게 저장하는가'에 답하고, 온톨로지는 그 데이터가 '무엇을 의미하는가'에 답합니다. 데이터 모델·스키마·온톨로지 세 층위를 주문 도메인 예제로 가르고, 조인과 컬럼만으로는 잃어버리는 도메인 의미를 공유 어휘로 되살리는 의미 계층의 필요성, 그리고 read-only 분석 모델을 넘어 '행동의 시스템'이 되는 온톨로지 — 디지털 트...

Ontology Essential Curriculum: FDE를 위한 온톨로지 기반 데이터 모델링

ontology data-modeling curriculum knowledge-graph fde
Palantir 같은 회사의 Forward Deployed Engineer(FDE)가 갖춰야 할 핵심 역량 — 온톨로지 기반(시맨틱) 데이터 모델링 — 을 7단계로 정복하는 마스터 로드맵. 의미 계층의 개념과 형식 기반부터 객체·링크·데이터 매핑, 액션·운영 계층, 거버넌스와 FDE 워크플로까지 도장깨기 방식으로 추적합니다.

Orc Camp: tmux 위의 코딩 에이전트들을 픽셀 캠프로 관제하기

projects tmux coding-agent cli side-project
여러 tmux 세션에서 돌아가는 Claude Code · Codex 에이전트를 한눈에 관제하는 로컬 CLI 대시보드, Orc Camp를 소개한다. tmux 세션을 캠프로, 에이전트 세션을 오크로 그리는 도트 픽셀 대시보드의 컨셉과 아키텍처, 그리고 기획 문서에서 v0.2.0 릴리스까지의 개발 여정을 정리했다.

Spark로 Iceberg · Delta 다루기: 레이크하우스 저장 포맷 연동

spark data-engineering iceberg delta
Spark-Essential 시리즈의 완결편(심화). 앞 단계에서 갈고닦은 Spark를 2026 레이크하우스 스택에 얹습니다. Iceberg·Delta 오픈 테이블 포맷이 오브젝트 스토리지의 파일 더미 위에 메타데이터·스냅샷으로 ACID·시간여행을 세우는 원리를 Spark 관점에서 짚고, 카탈로그 설정·MERGE/업서트·스키마·파티션 진화로 읽고 쓰며...

PySpark 실무: API · UDF · pandas API on Spark

spark data-engineering pyspark udf
현실의 Spark 코드 대부분을 차지하는 PySpark를 파고듭니다. Python↔JVM 경계(Py4J)와 왜 대부분 내장 함수로 충분한지, UDF의 종류(느린 Python UDF vs Arrow 기반 벡터화 Pandas UDF)와 직렬화 비용, 내장 함수 우선 원칙, 그리고 기존 pandas 코드를 최소 수정으로 분산 실행하는 pandas API o...

Spark Structured Streaming: 마이크로배치 · 워터마크 · 상태

spark data-engineering streaming structured-streaming
무한 스트림을 계속 자라는 테이블로 보는 Spark Structured Streaming을 파고듭니다. 배치와 통합된 DataFrame API와 마이크로배치 모델, 이벤트 시간 집계에서 언제 윈도를 닫고 지각 데이터를 버릴지 정하는 워터마크와 윈도잉, 그리고 상태 관리·체크포인트·출력 모드로 exactly-once를 보장하는 방식까지 다룹니다.

Spark Catalyst · Tungsten · AQE: 쿼리 최적화와 코드 생성

spark data-engineering catalyst optimization
DataFrame이 RDD보다 빠른 이유를 파고듭니다. Catalyst가 쿼리를 논리 계획 → 분석 → 최적화된 논리 계획 → 물리 계획으로 변환하며 조건 푸시다운·컬럼 프루닝을 적용하는 과정, Tungsten의 off-heap 바이너리 메모리 관리와 whole-stage code generation, 그리고 런타임 통계로 계획을 다시 짜는 AQE까지...

Spark RDD · DataFrame · Dataset: 세 가지 핵심 추상화와 lazy evaluation

spark data-engineering rdd dataframe
Spark가 데이터를 다루는 세 얼굴 — 계보 기반 내결함성의 저수준 RDD, 스키마로 Catalyst 옵티마이저가 개입하는 DataFrame, 타입 안전을 더한 Dataset — 의 차이와 선택 기준을 정리합니다. 나아가 변환은 계획만 쌓고 액션에서 실행하는 lazy evaluation과, 노드 안에서 끝나는 narrow와 셔플을 부르는 wide 트...

Spark 아키텍처: Driver·Executor·클러스터 매니저와 실행 흐름

spark data-engineering architecture execution
Spark-Essential 시리즈의 1단계. 실행 계획을 세우는 Driver와 task를 수행하는 Executor의 역할·통신, 자원을 배분하는 클러스터 매니저(YARN·Kubernetes·Standalone)와 client/cluster 배포 모델, 그리고 액션→Job→Stage→Task 분해에서 스테이지 경계가 곧 셔플 지점이 되는 실행 흐름을 ...

Iceberg REST Catalog · 거버넌스: 카탈로그 표준과 접근 제어

lakehouse iceberg data-engineering rest-catalog governance
Iceberg 테이블의 '현재'를 쥐고 있는 카탈로그를 파고듭니다. 테이블 이름을 metadata.json 포인터로 매핑하고 커밋의 원자적 CAS를 실제로 수행하는 카탈로그의 역할, Hive·Hadoop·JDBC·Glue·Nessie로 파편화됐던 구현을 HTTP API 스펙 하나로 표준화한 REST Catalog와 그 커밋 프로토콜, 그리고 RBAC·...

Iceberg compaction · 유지보수: 작은 파일 문제와 스냅샷 만료

lakehouse iceberg data-engineering compaction
돌아가는 Iceberg 테이블과 건강한 Iceberg 테이블을 가르는 운영 지식을 다룹니다. 스트리밍 쓰기가 양산하는 작은 파일을 rewrite_data_files(bin-pack·sort·z-order)로 합치고, 커밋마다 쌓이는 스냅샷을 expire_snapshots로 만료시켜 파일 삭제로 잇고, 고아 파일 정리와 매니페스트 리라이트까지 포함한 정...

Iceberg 파티션 진화 · 스키마 진화: 재작성 없는 진화

lakehouse iceberg data-engineering schema-evolution
Iceberg가 Hive 테이블과 결정적으로 갈라지는 지점 — 재작성 없는 진화를 파고듭니다. 컬럼을 이름이 아닌 고유 ID로 추적해 add/drop/rename/reorder/타입 승격을 안전하게 만드는 스키마 진화, 파티션을 물리 경로가 아닌 컬럼에서 유도되는 메타데이터로 만드는 숨은 파티셔닝(transform), 그리고 월→일 같은 파티션 스펙 ...

Iceberg ACID · 스냅샷 · 시간여행: 트랜잭션과 스냅샷 격리

lakehouse iceberg data-engineering acid time-travel
Iceberg의 커밋은 새 metadata.json을 쓰고 카탈로그의 포인터를 compare-and-swap으로 교체하는 한 동작입니다. 파일은 불변이고 포인터만 상태이기에 이 교체 하나가 원자성의 전부이며, 그 위에서 스냅샷 격리·시간여행(VERSION AS OF)·롤백·optimistic concurrency의 충돌 감지와 재시도가 성립하는 원리를...

Iceberg 메타데이터 · 매니페스트 구조: 스냅샷 · 매니페스트 · 데이터 파일 계층

lakehouse iceberg data-engineering metadata
Iceberg의 모든 능력이 나오는 뿌리를 해부합니다. 카탈로그가 가리키는 메타데이터 파일(vN.metadata.json)에서 매니페스트 리스트(snap-*.avro), 매니페스트(*.avro), 데이터 파일로 이어지는 계층 구조와, 커밋이 새 스냅샷을 만들며 매니페스트를 재사용하는 방식, 그리고 파티션 요약과 컬럼 min/max 통계가 파일 list...

오픈 테이블 포맷의 문제의식: 왜 파일 위에 테이블 계층이 필요한가

lakehouse iceberg data-engineering open-table-format
오브젝트 스토리지에 Parquet를 쌓는 것만으로는 테이블이 되지 않습니다. 디렉터리와 파일 목록에 의존하는 Hive 테이블 모델이 원자성·일관성·성능에서 무너지는 지점을 구체적인 실패 시나리오로 짚고, 파일 집합 위에 스냅샷·스키마·통계라는 메타데이터 계층을 얹어 '테이블'을 만드는 오픈 테이블 포맷의 발상, 그리고 그것이 레이크하우스를 성립시키는 ...

Kafka 전달 보장: at-least-once · exactly-once · 멱등 프로듀서 · 트랜잭션

kafka data-engineering exactly-once transactions
Kafka에서 가장 자주 오해되는 주제, 전달 보장을 파고듭니다. '유실 없음'과 '중복 없음'을 분리해 at-most-once·at-least-once·exactly-once 세 전달 의미를 실패 시나리오로 해부하고, 멱등 프로듀서(PID·시퀀스 번호)가 재시도 중복을 걸러내는 원리와 그 한계, 그리고 트랜잭션(transactional.id·send...

Kafka 프로듀서 · 컨슈머 · 컨슈머 그룹: 병렬 소비와 오프셋

kafka data-engineering streaming consumer-group
Kafka의 읽기·쓰기 경로를 파고듭니다. 프로듀서의 send 경로(serializer → partitioner → 배치 → Sender)와 acks로 조율하는 처리량 vs 내구성, pull 기반 컨슈머의 poll 루프와 오프셋 커밋(자동 vs 수동), 그리고 컨슈머 그룹의 파티션 분배와 리밸런싱 — eager vs cooperative, static...

Kafka 분산 로그 · 토픽 · 파티션: 커밋 로그 모델과 파티셔닝

kafka data-engineering streaming partitioning
Kafka의 1층인 분산 커밋 로그를 파고듭니다. 큐가 아니라 append-only 로그라는 관점에서 세그먼트 파일·순차 I/O·zero-copy·retention과 compaction·재생(replay)의 힘을 잡고, 토픽·파티션·오프셋이 병렬성과 순서를 어떻게 가르는지, 파티셔닝 키와 핫 파티션·파티션 수 결정의 트레이드오프, 그리고 리더/팔로워 ...

dbt 패키지 · CI: Slim CI와 팀 규모 배포

dbt data-engineering ci-cd deployment
dbt를 팀의 것으로 만드는 5단계 — packages.yml과 dbt hub 패키지·사내 공통 모듈 전략, manifest 기반 state:modified와 --defer로 바뀐 모델만 검증하는 Slim CI, 그리고 GitHub Actions 배포 파이프라인과 오케스트레이터 연동까지 팀 규모 배포의 전부를 다룹니다.

dbt 매크로 · Jinja: SQL을 프로그래밍하기

dbt data-engineering jinja macro
dbt SQL이 사실은 Jinja 템플릿이라는 것 — 컴파일 시점에 변수·if·for가 순수 SQL로 펼쳐지는 실행 모델부터, 반복 로직을 함수처럼 묶는 매크로, run_query로 SQL을 생성하는 SQL, adapter.dispatch, 그리고 dbt_utils·codegen 같은 매크로 패키지와 과도한 매크로화의 경계까지 다룹니다.

Airflow 백필 · Catchup · 멱등: 재실행해도 안전한 파이프라인

airflow data-engineering backfill idempotency
Airflow의 시간 모델인 논리적 실행 구간(data interval)을 뿌리부터 이해하고, catchup·backfill로 과거 구간을 다시 채우는 법과 그 재실행이 데이터를 오염시키지 않도록 태스크를 멱등하게 설계하는 패턴(파티션 덮어쓰기·업서트·결정적 경로)을 하나의 설계 원칙으로 꿰어냅니다.

Airflow DAG · 오퍼레이터 · 태스크: 파이프라인을 코드로 선언하기

airflow data-engineering dag pipeline
Airflow의 출발점인 DAG·오퍼레이터·태스크를 파고듭니다. 파이프라인을 방향성 비순환 그래프로 모델링하는 이유, 오퍼레이터(템플릿)와 태스크(인스턴스)의 관계와 의존성 정의, 그리고 파이프라인을 파이썬 코드로 선언하는 configuration as code 철학과 동적 DAG 생성까지 다룹니다.

dbt Essential Curriculum: 애널리틱스 엔지니어링 심화 로드맵

dbt data-engineering curriculum
Data-Engineering-Essential 오버뷰의 '처리' 단계에서 예고된 dbt(변환·애널리틱스 엔지니어링) 심화 스핀오프. 모델·ref·소스부터 테스트·문서화, 매크로·Jinja, incremental·snapshot, 패키지·CI, 세만틱 레이어까지 6단계로 정복하는 학습 로드맵입니다. 도장깨기 방식으로 진행 상황을 추적합니다.

Lakehouse Essential Curriculum (Apache Iceberg) — 레이크하우스 에센셜 커리큘럼

iceberg lakehouse data-engineering curriculum
Data-Engineering-Essential 오버뷰의 '저장' 단계에서 개념만 소개한 오픈 테이블 포맷을 Apache Iceberg 중심으로 파고드는 심화 스핀오프. 문제의식부터 메타데이터·매니페스트 구조, ACID·스냅샷·시간여행, 파티션/스키마 진화, compaction·유지보수, REST Catalog·거버넌스, 그리고 Iceberg vs D...

Spark Essential Curriculum

spark data-engineering curriculum
Data-Engineering-Essential 오버뷰의 '처리' 단계에서 예고된 Apache Spark 심화 스핀오프. 아키텍처(Driver/Executor)부터 RDD/DataFrame/Dataset, Catalyst·Tungsten, 셔플·튜닝, Structured Streaming, PySpark 실무, Iceberg/Delta 연동까지 7단계...

Stream Processing Essential Curriculum (Apache Flink) — 스트림 처리 심화 커리큘럼

flink stream-processing data-engineering curriculum
Data-Engineering-Essential 오버뷰의 '처리' 단계에서 개념만 소개한 이벤트 시간·워터마크·윈도잉을 Apache Flink 중심으로 파고드는 심화 스핀오프. 스트림 처리 모델부터 이벤트 시간·워터마크, 상태·체크포인트, exactly-once, 윈도잉·조인·CEP, Flink SQL까지 6단계로 정복하는 학습 로드맵입니다. 도장깨기...

CS336 15강 — 정렬 (1): SFT와 RLHF

llm alignment rlhf dpo cs336 language-modeling
사전학습된 원석을 어시스턴트로 — SFT는 사전학습 행동을 추출할 뿐 새로 더하지 않고(모르는 사실을 학습하면 환각), 선호 데이터로 보상 모델(Bradley-Terry)을 세워 RLHF(PPO·KL 제약)로 사람 선호에 맞추고, 그 보상 모델마저 없애 버리는 DPO까지.

CS336 12강 — 평가(Evaluation): 하나의 참된 평가는 없다

llm evaluation benchmark lm-as-judge cs336 language-modeling
Stanford CS336 12강 정리. '하나의 참된 평가는 없다' — 무엇을 알고 싶은가에 따라 달라지는 평가. perplexity 같은 내재적 지표, MMLU·GPQA 등 지식 벤치마크, LM-as-judge와 Chatbot Arena, 에이전트·안전 벤치마크, 그리고 현실성·오염(contamination)·타당성이라는 평가의 함정까지.

CS336 9강 — 스케일링 법칙 1: 작게 실험해 크게 예측하기

llm scaling-laws chinchilla cs336 language-modeling
Stanford CS336 9강 정리. 손실이 데이터·모델·연산의 거듭제곱으로 줄어드는 스케일링 법칙 — 왜 멱법칙이 자연스러운가, 작은 모델로 아키텍처·하이퍼파라미터를 정하는 법, 그리고 컴퓨트 최적 배분을 알려주는 Chinchilla(파라미터당 20토큰)와 추론을 생각한 over-training.

DataOps·운영·신뢰성: 데이터 시스템을 소프트웨어처럼 운영하기

data-engineering dataops ci-cd monitoring data-security
데이터 파이프라인에 버전 관리·자동 테스트·환경 분리·자동 배포(DataOps/CI-CD)를 입히고, SLA/SLO/SLI와 경보·장애 대응·FinOps로 신뢰성을 지키며, 최소 권한·마스킹·암호화·규정 준수로 데이터를 안전하게 운영하는 법을 다룹니다. 시리즈의 마지막 10단계.

데이터 저장(Storage): 웨어하우스·레이크·레이크하우스와 파일·테이블 포맷

data-engineering data-storage data-warehouse data-lakehouse parquet
OLTP와 OLAP, 행 지향과 열 지향 저장의 차이부터 데이터 웨어하우스·레이크·레이크하우스의 선택 기준, Parquet/ORC/Avro 같은 파일 포맷과 Iceberg/Delta/Hudi 같은 테이블 포맷까지 — 데이터를 '어디에 어떤 형태로' 쌓을지를 한 층씩 풀어냅니다.

Data Engineering Essential Curriculum

data-engineering data-pipeline curriculum
데이터 엔지니어링의 정의와 역사부터 수집·저장·처리·오케스트레이션 기술 오버뷰, 사례별 파이프라인 설계, 품질·거버넌스·DataOps까지 10단계로 정복하는 종합 학습 로드맵입니다. 도장깨기 방식으로 진행 상황을 추적합니다.

Rust lang 개요

rust
Rust 프로그래밍 언어에 대한 개요와 핵심 특징을 알아봅니다.

Rust Essential Curriculum

rust curriculum
Rust를 기초 문법부터 소유권, 트레이트, 동시성, TDD까지 8단계로 정복하는 종합 학습 로드맵입니다. 도장깨기 방식으로 진행 상황을 추적합니다.

PostgreSQL 아키텍처 심층 분석

postgresql architecture
PostgreSQL의 내부 아키텍처를 심층적으로 분석합니다. 프로세스 구조, 메모리 구조, 스토리지 구조를 이해하고 각 구성 요소가 어떻게 상호작용하는지 학습합니다.

Asyncio Eventloop Optimization

python asyncio optimization
Python asyncio 이벤트 루프의 작동 원리를 이해하고, 동시성 처리 성능을 극대화하는 최적화 기법을 학습합니다. 실전 웹 크롤러 최적화 프로젝트 포함.

Python Memory Optimization

python memory
Python 애플리케이션의 메모리 사용량을 최적화하는 필수 기법과 모범 사례를 학습합니다. 메모리 프로파일링, 데이터 구조 선택, 가비지 컬렉션 관리 등을 다룹니다.

Python Profiling

python profiling
Python 애플리케이션의 성능 병목 지점을 찾고 최적화하기 위한 프로파일링 도구와 기법을 알아봅니다.

Python Bytecode

python curriculum
Python이 코드를 효율적으로 실행하기 위해 사용하는 중간 표현인 바이트코드에 대해 알아봅니다.

Python GIL

python gil concurrency
Python GIL의 작동 원리, Thread/Process/Async 비교, 그리고 Python 3.14 free-threaded 공식 지원(PEP 779)과 실전 벤치마크를 코드 예제와 함께 상세히 설명합니다.

Python Advanced Competency Curriculum

python curriculum
10년차 백엔드 엔지니어를 위한 Python 심화 커리큘럼. Internals, 성능 최적화, 아키텍처, 테스팅, 운영 자동화, 코드 품질까지 실전 중심으로 구성했습니다.