WBS 작성하다가 순삭된 하루어떻게 해야 하는지 돌아보면서 작성해보는 글 프로젝트가 일정 지연되는 이유 중 상당수는 WBS가 모호하게 작성되었기 때문이다.“기능 개발”, “테스트”, “개선” 같은 Task는 일정도 산정하기 어렵고 완료 여부도 불명확하다. 요구사항을 정의하여 방향을 정하고, Task를 통해 책임과 결과를 명확히 한다. Task 작성 원칙1. 동사 + 산출물 구조"무엇을 만들어 낸다."로 작성- ex. 요구사항 정의서 작성 2. 모호한 표현 대신 무엇을 어떻게 하는지 명확히 표현- ex. JWT 토큰 만료 알림 기능 설계 3. 단위는 관리 가능한 수준으로- 1~5일 단위 작업- 담당자 1명이 책임 질 수 있는 작업 좋은 WBS Task의 기준- 완료 기준이 명확하다.- 산출물이 존재한다.-..
왜 Data Lake 인가요즘 데이터가 쏟아지는 시대다.정형 데이터뿐만 아니라 로그, 이미지, 파일 같은 비정형 데이터까지 이 모든 데이터를 미리 구조화해서 저장하는 것은 비효율적이니일단 데이터를 원본 그대로 저장하고, 필요할 때 목적에 맞게 가공해서 사용하는 방식이다. 데이터를 어떻게 수집할까1) 배치 수집: 일정 시간 마다 데이터를 모아서 저장ETL 도구를 사용한다. (Airflow, Spark, Azure Data Factory)2) 실시간 수집: 데이터가 발생하는 즉시 저장메시지 큐나 스트리밍 플랫폼을 사용한다. (Kafka)3) 파일 업로드 방식: 사용자가 직접 파일을 업로드 데이터는 어떻게 보관할까Data Lake는 보통 Object Storage 기반으로 저장한다.보관 방식의 특징1) 원본 ..
Iceberg?Netflix에서 개발한 오픈소스 테이블 포맷데이터레이크 위에서 마치 관계형 데이터베이스처럼 데이터의 일관성을 유지하고, SQL 쿼리를 실행하며, 트랜잭션을 지원하도록 돕는 계층Iceberg의 논리적 구조 (계층 구조)아이스버그는 크게 데이터 계층과 메타데이터 계층으로 나뉜다.• 데이터 파일(Data Files): 실제 데이터가 저장되는 Parquet 파일들• 매니페스트 파일(Manifest Files): 데이터 파일들의 목록과 통계(최대/최소값 등)를 포함하여 쿼리 최적화를 돕는다.• 매니페스트 리스트(Manifest List): 여러 번의 인제스트(Ingest)로 생성된 매니페스트 파일들을 모아 관리• 메타데이터 파일(Metadata File): 테이블의 스냅샷(Snapshot) 정보를..