반응형

ACIDTransactions 2

[Apache Iceberg] 5. [트랜잭션] ACID 보장과 동시성 제어 (Concurrency Control)

안녕하세요! 여러분의 믿음직한 데이터 아키텍처 파트너, 팬돌프입니다.지난 시간까지 우리는 Iceberg의 구조적 혁신(메타데이터 계층)과 사용자 편의성(숨겨진 파티셔닝)에 대해 알아보았습니다. 이것만으로도 훌륭하지만, 아직 "S3를 DB처럼 쓴다"는 말을 증명하기엔 부족합니다.데이터베이스(RDB)의 가장 큰 미덕이 무엇일까요? 바로 신뢰입니다. 내가 데이터를 넣는 도중에 누가 조회를 해도 이상한 데이터가 보이지 않아야 하고(Isolation), 동시에 여러 명이 수정을 시도해도 데이터가 꼬이지 않아야 합니다(Atomicity).기존의 파일 시스템 기반(Hive)에서는 불가능했던 이 꿈같은 이야기를, Apache Iceberg가 어떻게 실현했는지 그 강력한 트랜잭션과 동시성 제어 기술을 파헤쳐 보겠습니다...

[Apache Iceberg] 1. 왜 Iceberg인가? Hive의 한계와 레이크하우스의 탄생

안녕하세요! 여러분의 데이터 아키텍처 가이드, 팬돌프입니다.지난 시간까지 우리는 Kafka로 데이터를 실시간으로 나르고, Spark로 대용량 데이터를 가공하는 법을 마스터했습니다. 이제 엔지니어링 파이프라인의 마지막 종착지, 바로 '저장(Storage)'에 대해 이야기할 차례입니다."그냥 S3에 Parquet 파일로 쌓아두면 되는 거 아니에요?"라고 물으실 수 있습니다. 하지만 데이터가 페타바이트급으로 커지고, 여러 부서에서 동시에 이 데이터를 읽고 쓰기 시작하면 심각한 문제들이 터지기 시작합니다.오늘은 왜 우리가 기존의 방식(Hive)을 버리고 'Apache Iceberg'라는 새로운 기술을 도입해야 하는지, 그리고 이것이 어떻게 데이터 레이크하우스(Data Lakehouse) 시대를 열었는지 아주 상..

반응형