서론
현재 저는 데이터 분석과 아키텍처 분야 컨설턴트로 일하고 있습니다. 관련 사업을 기획하여 제안하고, 프로젝트를 수행합니다. 이번 주제는 데이터 아키텍처(Data Architecture) 분야로 선정하고자 했습니다. 데이터 분석 프로젝트 경험은 민간기업이었고, 보안에 민감하기 때문입니다.🥲
데이터 아키텍처 중에서도 이번에는 데이터 품질(Data Quality)에 대한 글을 쓰고자 합니다. 최근 수강한 유데미 강의(리뷰 글)에서도 '디테일한 주제 선정'이 중요하다고 했기 때문입니다. (제가 또 한 번 배운 건 끝까지 잘 써먹습니다🤣)
무엇보다 제가 데이터 엔지니어링 분야에 관심을 갖고 공부하게 된 계기가 된 분야이기 때문에, 데이터 품질을 주제로 선정했습니다.
데이터 품질(Data Quality)이란
데이터 품질이란 "데이터의 최신성, 정확성, 상호연계성 등을 확보하여 이를 사용자에게 유용한 가치를 줄 수 있는 수준(출처 : 공공데이터 포털)"으로 정의할 수 있습니다. 또는 "비즈니스에 적합하고 정확한 데이터를 적시에 안전하고 일관성 있게 제공함으로써 비즈니스/의사결정을 지원하는 것"으로 정의하기도 합니다. (물론 수많은 정의가 존재합니다)
솔직히 와닿지 않습니다...("그런거 다 개풀 뜯어 먹는 소리 같습니다!", 드라마 대행사에서 나온 대사인데 좀 와닿네요)
지금까지 제가 수행했던 데이터 품질/관리체계 진단 및 개선 프로젝트가 약 50개(민간기업, 공공기관 포함)가 넘습니다. 그동안 많은 고객들에게 설명했지만, 한 번에 이해하는 고객은 없었습니다. 그래서 어떻게 말해야 직관적으로 쉽게 전달할 수 있을까 고민한 적 있습니다.
기대하지 않은 데이터는 없고, 기대한 데이터만 있는 것
우리가 기대하는 값은 중복이 아닌 값, 범위를 벗어나지 않는 값, 원하는 문자열이 아닌 값 등이 있습니다. 즉, NULL이나 중복값 같이 우리가 기대하지 않은 데이터가 없다면, 우리는 그 데이터의 품질이 좋다고 말할 수 있습니다.
그리고, 우리가 기대하지 않은 데이터는 중요한 의사결정에 방해가 되기 때문에 비즈니스 가치를 높이는 고품질 데이터를 확보하기 위해 데이터 품질관리(체계)가 중요합니다.
데이터 품질관리 프레임워크
데이터 품질 프로젝트를 수행하면, 다양한 품질 이슈를 접할 수 있습니다. NULL값이 저장되든지, 중복되면 안 되는 값이 중복되어 저장되든지, 기존에 정의한 범위나 분포를 벗어난 숫자가 저장되든지 등 이슈 사례가 있습니다.
이러한 데이터 품질 이슈에 대한 가장 핵심 문제는 '왜/어떻게'입니다.
왜(why) 발생하고, 어떻게(how) 해결하는지
이런 문제 해결을 위해 전통적인(?) 데이터 품질관리 프레임워크는 표준, 구조(모델), 값, 활용 그리고 이것들을 뒷받침하는 관리체계로 구성되어 있습니다(참고: 데이터아키텍처 전문가 가이드, K-data). 제가 수행한 프로젝트 대부분이 위의 프레임워크를 활용하여 진행되었습니다. 왜냐하면, 대부분 관계형 데이터베이스(RDB)에 저장된 데이터를 진단하고 개선하는 프로젝트였기 때문입니다.
개인적으로 관계형 데이터베이스 기반 데이터 품질관리는 '과거'에 방점이 찍혀 있다고 생각합니다. 표준사전(단어, 도메인, 용어, 코드)을 정비하고, 그것을 구조(모델)에 반영하고, 품질진단을 통해 탐색된 오류 데이터는 개선하고, 어떻게 보면 '이미 벌어진 일에 대한 뒷수습'을 하는 개념이 강하기 때문입니다.
최근 데이터 품질 이슈 - Data Downtime
AI 모델이나 데이터 분석 등 데이터 '활용' 관점이 중요해지는 시대에서 선제적인 품질관리는 매우 중요해졌습니다. 특히, 최근 도입된 개념으로서 'Data Downtime'이라는 것이 있습니다.
Data Downtime: 데이터 품질 이슈로 인해 조직의 중요한 데이터에 접근이 중단되거나 사용할 수 없는 시간
데이터 품질 이슈로 인해 데이터 자원에 대한 접근이나 활용이 불가능함에 따라 데이터에 의존하는 운영, 의사결정, 프로세스 등 활동이 중단되기 때문입니다
출처 : https://atlan.com/data-downtime
최근 데이터 품질관리는 '미래'에 방점이 찍혀 있다고 생각합니다. 앞으로 쌓일 데이터가 기대한 형태로 저장될 수 있도록 데이터 파이프라인을 확인하고 개선하기 때문입니다(기존 표준이 중요하지 않다는 것은 아닙니다). 그리고, 데이터 파이프라인에 모니터링 기능을 붙여 실시간으로 감지할 수 있도록 관리합니다.
참고로 이번 글을 쓰면서 알게 되었지만, 이미 국내 대기업(N사) 데이터 엔지니어분도 이런 고민을 했고, 관련 내용을 공유한 적이 있습니다. 너무 재밌게 읽어서 소개합니다.
Naver D2 - 데이터 품질 이슈로 발생하는 data downtime을 줄이자
데이터 엔지니어링 공부
데이터 품질 관련 프로젝트 수행 경험과 그 속에서의 고민들이 복합적으로 작용해서, 2023년 하반기부터 데이터 엔지니어링에 관심을 갖고 공부하기 지가했습니다. 그리고, 당장 제가 할 수 있는 업무 영역에 적용하고자 했습니다. 실제 파일럿 수준이지만, 빅데이터 파이프라인과 클러스터를 구축했습니다.
사실 데이터 분석 프로젝트를 수행하면서 더욱 크게 와닿기도 했습니다. 그래서, 제 2024년은 하나의 데이터 어플리케이션을 만들어 보는 것을 목표로 삼아봤습니다. 하하... 많이 도와주세요 😏
'취미생활 > 글또 9기' 카테고리의 다른 글
[글또 9기] 유데미(Udemy) 기술 블로그로 알아보는 테크니컬 라이팅 수강 후기 (0) | 2023.12.24 |
---|---|
[글또 9기] 2023년 회고록 (4) | 2023.12.22 |
[글또 9기] PDCA와 STAR 프레임워크 (0) | 2023.12.06 |
[글또 9기] 삶의 지도 (4) | 2023.11.20 |