개인 일정/공부

데이터 엔지니어링이란

박경태 2024. 2. 25. 18:30

데이터 엔지니어링은 데이터를 수집, 저장, 처리, 및 관리하기 위한 기술과 방법론을 연구하고 적용하는 분야입니다. 이는 주로 대규모 데이터를 다루는 기업이나 조직에서 중요한 역할을 합니다. 데이터 엔지니어링은 데이터를 비즈니스 목적에 맞게 구조화하고 가공하여 의사 결정에 도움을 주는 것을 목표로 합니다.

다음은 데이터 엔지니어링에서 수행되는 주요 작업들입니다:

1. **데이터 수집**: 다양한 소스에서 데이터를 수집합니다. 이는 외부 데이터 소스에서의 데이터 스크래핑, API를 통한 데이터 추출, 내부 시스템 로그, 센서 데이터 등 다양한 형태일 수 있습니다.

2. **데이터 저장**: 수집된 데이터를 안정적으로 저장하는 것이 중요합니다. 이를 위해 대용량 데이터베이스 시스템을 사용하거나 분산 저장 시스템을 구축합니다. 일반적으로는 관계형 데이터베이스, NoSQL 데이터베이스, 데이터 레이크 등이 사용됩니다.

3. **데이터 처리**: 수집된 데이터를 정제하고 가공하여 의미 있는 정보로 변환합니다. 이는 데이터 변환, 정규화, 병합, 필터링, 그룹화 등의 작업을 포함할 수 있습니다. 데이터 처리는 대부분의 경우 배치 처리와 스트리밍 처리로 구분됩니다.

4. **데이터 관리**: 데이터의 수명 주기를 관리하고 데이터의 보안, 규정 준수, 복구 및 백업 등을 담당합니다. 이는 데이터의 품질 유지와 데이터의 소유자와 소비자 간의 인프라스트럭처를 조율하는 것을 포함합니다.

5. **데이터 모니터링 및 성능 최적화**: 데이터 엔지니어는 데이터 파이프라인의 성능을 모니터링하고 필요한 경우 최적화를 수행하여 데이터 처리 및 분석을 효율적으로 진행할 수 있도록 합니다.

데이터 엔지니어는 주로 다른 데이터 관련 직군들과 협업하여 데이터 분석, 기계 학습, 비즈니스 인텔리전스 등과 같은 다양한 응용 분야에서 사용됩니다. 데이터 엔지니어링은 기업이나 조직이 데이터 기반의 의사 결정을 내리고 경쟁 우위를 확보하는 데 중요한 역할을 합니다.