What is data engineering?

Mon, 19 Jan 2026 12:27:20 GMT

> **데이터 엔지니어링 이란?** > 데이터 엔지니어링 이란 무엇인가, "원시 데이터"를 신뢰 가능한 제품으로 만드는 일 이라고 설명할 수 있다. ![출처 https://k21academy.com/microsoft-azure/dp-203/data-engineering/](https://upload.cafenono.com/image/slashpagePost/20260120/183311_1BjQryEDODq32rIFyd?q=80&s=1280x180&t=outside&f=webp) 데이터를 활용해 의사결정을 내리려면, 먼저 데이터가 모으기 쉽고(Accessible), 믿을 수 있고(Reliable), 안전하며(Secure), 필요한 형태로 준비되어(Usable) 있어야 합니다. 데이터 엔지니어링 은 바로 이 기반을 만드는 분야로, 대규모 데이터를 수집, 저장, 변환, 제공하는 시스템(infra/pipeline/workflow)을 설계하고 구축, 운영합니다. 데이터가 마케팅 지표, 소셜로그, 제품 사용 이벤트, 직원 성과 데이터, IoT 센서 신호처럼 다양해질수록 " 데이터를 잘 모아두는 것"만으로는 부족합니다. 데이터 엔지니어는 분산된 원천에서 들어오는 데이터를 일괄된 기준으로 정리하고, 다운스트림(분석/BI/ML/Service)에 안정적으로 공급해 기업이 "실시간에 가깝게" 인사이트를 얻도록 돕습니다. - 데이터 수집 : DB API, 이벤트 스트림, Saas, Log, File, IoT 등 다양한 소스 연결 - 저장 : 레이크/웨어하우스/레이크하우스 및 메타데이터 카탈로그 운영 - 변환 : 정제/표준화/중복 제거/품질 검증/모델링(스키마 설계) - 제공 : BI용 테이블, ML학습용 피처, 리포트, 실시간 대시보드, API 형태 제공 - 운영 : 배치, 스트리밍 파이프라인 모니터링, 장애 대응, 비용 최적화, 보안/권한 관리 등 --- ### **대표 사용 사례 3가지** 1. 데이터 수집, 스토리지 관리의 표준화 성장하는 기업에서는 데이터가 여러 팀/도구/지역에 흩어집니다. 데이터 엔지니어는 확장가능한 저장 구조와 표준화된 적재 규칙을 만들어 "데이터가 쌓일수록 더 복잡해지는 문제"를 줄입니다. 2. 실시간 또는 준실시간 분석 기반 구축 User event, 결제, 트래픽, 운영 이벤트처럼 "지금 상태"가 중요한 도메인은 데이터가 들어오는 즉시 분석 가능한 구조가 필요합니다. 좋은 파이프라인은 수집→정제→적재를 자동화해, 분석가나 의사결정자가 필요한 지표를 빠르게 찾고 해석하도록 돕습니다. 3. ML과 생성형 AI를 위한 데이터 공급 추천/검색/이탈 예측과 같은 전통적 ML부터, 생성형 AI까지 결국 성능을 좌우하는 건 학습, 추론에 쓰이는 데이터 품질입니다. 데이터 엔지니어는 모델이 소비할 수 있는 형태로 데이터를 준비하고, 재현 가능한 피처/데이터셋을 안정적으로 제공해야합니다. --- ### **"핵심 데이터 세트(Core Datasets)" 관점** - '데이터는 제품이다' - 현업에서는 종종 "필요한 데이터가 어딨는지 모르겠고, 있어도 믿을 수 없다"가 가장 큰 병목 입니다. 이를 해결하기 위해 엔지니어링은 원천데이터를 그대로 쌓아두는 대신, 목적에 맞춘 핵심 데이터셋을 만들어 제공합니다. - 좋은 핵심 데이터셋은 보통 이 3가지를 만족합니다 - 사용 편의성 분석가/기획자/리더가 복잡한 조인과 도메인 지식을 과도하게 요구받지 않도록, 테이블과 지표 정의가 명확해야 합니다. --- - 맥락 제공 현재 스냅샷 뿐 아니라 기간별 변화(추세), 비교 기준을 담아 의사결정에 바로 쓰일 수 있어야 합니다. --- - 포괄성 필요한 경우 여러 소스의 데이터를 결합할 수 있도록 키 설계와 통합 기준이 정리되어야 합니다. --- --- ### 데이터 파이프라인은 어떻게 작동하는지? 1. 수집 서로 다른 저장 형식(정형/반정형/비정형)과 인터페이스(DB, API, 스트림 등)를 가진 데이터를 하나의 데이터 생태계 로 가져옵니다. 이 단계의 핵심은 연결성, 스키마 변화 대응, 중복/지연 처리 같은 "현실적인 문제"를 견디는 설계입니다. 2. 변환 수집된 데이터를 그대로 쓰기 어려운 경우가 있습니다. 그래서 오류/결측/중복을 처리하고, 표준 단위 코드 체계를 맞추며, 모델링하여 소비가능한 형태로 정제합니다. 이 단계는 "데이터 품질"이 실제로 만들어지는 구간이기도 합니다. 3. 제공 정제된 데이터는 목적에 따라 다양한 형태로 제공됩니다. - BI/리포팅용 테이블 및 대시보드 - ML 학습용 데이터셋/피처 스토어 - 운영 시스템을 위한 API/서빙 테이블 - 실시간 모니터링 지표 또한 이 전체를 믿고 쓸 수 있으려면 데이터 관측성(Data Observability)이 필수입니다. 파이프라인 지연, 결측률, 스키마 드리프트, 품질 규칙 위반 등을 조기에 감지해 장애를 최소화합니다. --- ### 데이터 엔지니어링 vs 데이터 분석 vs 데이터 과학 세 역할은 협업하지만 초점이 다릅니다. - 데이터 엔지니어(Data Engineer): 데이터가 흘러가는 길(파이프라인/스토리지/품질/권한)을 만든다 - 데이터 분석가(Data Analyst/BI): 준비된 데이터를 통해 현황과 원인을 설명하고 의사결정을 돕는다 - 데이터 과학자(Data Scientist): 통계·ML 기법으로 예측/최적화 모델을 만들고 실험한다 즉, 데이터 엔지니어링이 탄탄할수록 분석과 과학은 더 빠르고 정확해집니다. --- ![Image](https://upload.cafenono.com/image/slashpagePost/20260120/182504_29OvtjVZQvI99wKmpi?q=80&s=1280x180&t=outside&f=webp) ### 데이터 엔지니어가 다루는 기술 스택: 파이프라인·스토리지·언어 **ETL vs ELT** - ETL(Extract → Transform → Load): 변환 후 적재. 표준화가 먼저 필요한 통합 시나리오에 강점 - ELT(Extract → Load → Transform): 일단 모아두고 필요에 따라 변환. 유연성과 확장성에 강점(클라우드 DWH/레이크하우스와 궁합) ![Image](https://upload.cafenono.com/image/slashpagePost/20260120/183050_uoCgk6xcTItD34ex24?q=80&s=1280x180&t=outside&f=webp) **스토리지 선택지** - 클라우드 스토리지/데이터 레이크: 대용량 원본·비정형 데이터에 유리 - 데이터 웨어하우스(DWH): 분석 성능과 관리(스키마/권한/거버넌스)에 강점 - 레이크하우스: 레이크의 유연성과 웨어하우스의 관리/성능을 결합하려는 접근 **주요 언어** - SQL: 모델링, 품질 검증, 분석용 데이터 제공의 중심 언어 - Python: 워크플로 자동화, 데이터 처리, 오케스트레이션과 연동 - Scala/Java: 대규모 분산 처리(Spark 등)나 백엔드 시스템에서 자주 사용 참고 사이트 [데이터 엔지니어링이란 무엇인가요? | IBM](https://www.ibm.com/kr-ko/think/topics/data-engineering)