데이터 건강 라이프사이클: 데이터 정리 및 변환 전략


깨끗한 데이터가 있는 건강한 시스템은 건강한 최종 이익을 목표로 하는 조직에 필수적입니다. 건강하지 못한 데이터는 열악한 의사 결정, 낭비된 기회, 더 높은 비용으로 이어집니다. 양질의 데이터를 유지하려면 데이터를 부지런히 정리하여 건강을 유지해야 합니다.

G. Loabovitz와 Y. Chang의 연구는 데이터 품질에 대한 1-10-100 규칙으로 이어졌습니다. 이 규칙은 데이터 품질이 좋지 않아 데이터 오류 비용이 증가한다는 점을 강조합니다. 레코드를 확인하는 데 1달러가 든다면 오류가 생성되면 레코드당 10달러가 들고 오류가 해결되지 않으면 레코드당 100달러가 듭니다. 이 연구에 따르면 데이터 상태를 보다 적극적으로 보장할수록 데이터 품질 비용을 더 많이 피할 수 있습니다.

데이터베이스 구조에서 애플리케이션까지 데이터 건강을 고려하는 완전한 데이터 건강 전략은 더 높은 품질의 데이터로 이어집니다. 데이터와 시스템은 세 가지 수준에서 정리되고 평가되어야 합니다.

데이터베이스 구조 수준

데이터베이스와 데이터 테이블은 오류를 피하기 위해 효과적으로 구성되고 올바르게 작동해야 합니다. 효과적인 데이터베이스 복구 프로세스는 소스에서 데이터 품질 문제를 해결합니다.

정지 중인 데이터

데이터베이스 내의 데이터는 오류, 불일치, 중복, 누락된 항목을 찾는 정기적인 데이터 정리 프로세스를 거쳐야 합니다.

데이터 변환

데이터가 변환되고 이동됨에 따라 새로운 데이터 오류가 생성됩니다. 조직은 ETL(추출, 변환, 로드) 및 데이터 랭글링 프로세스를 포함한 다양한 변환을 통해 데이터 건강을 보장하는 전략이 필요합니다.

데이터베이스 복구

데이터베이스와 그 구조가 양호한지 확인하는 것은 데이터 건강 전략에 상당한 영향을 미칠 수 있습니다. 데이터 소스에 집중함으로써 반복적인 다운스트림 데이터 품질 문제가 줄어듭니다. 데이터를 건강하게 유지하기 위한 첫 번째 단계는 데이터베이스 기술을 업그레이드하고 구조가 좋지 않은 데이터베이스를 복구하는 것입니다.

데이터베이스가 어떻게 구성되고 구조화되어 있는지 평가하면 건강에 해로운 데이터의 발생이 줄어듭니다. 데이터 형식을 공통 구조로 통합하면 충돌하고 중복되는 데이터가 줄어들 수 있습니다. 표준 전화번호 형식을 만드는 것이 한 가지 예입니다. 대시, 점, 지역 번호 및 국가 코드가 있는 여러 형식을 유지하는 대신 조직은 모든 시스템에서 사용할 숫자 전용 텍스트 문자열 형식을 정의할 수 있습니다. 이 전략은 데이터 유형의 수를 줄여 혼란의 가능성을 낮춥니다.

성능을 개선하기 위해 스키마를 변경하는 것은 데이터 상태를 촉진하기 위해 데이터베이스를 구성하는 또 다른 방법입니다. 예를 들어, 일관성을 높이기 위해 기본 키를 통합하는 것이 있습니다. 소스 테이블을 수정하고 표준화하면 분석을 위해 데이터를 가져올 때마다 데이터를 표준화하는 데 필요한 노력을 줄일 수 있습니다. 스키마를 보다 균일하게 조정하면 나중에 오류를 제한할 수 있지만 다운스트림 앱을 조정하여 스키마 변경 사항을 통합해야 하므로 단기적으로 문제가 발생할 수 있습니다. 데이터베이스로의 게이트웨이 역할을 하는 페더레이션 계층은 다운스트림 앱이 적절하게 업데이트되도록 스키마 변경을 감지하는 데 도움이 될 수 있습니다.

필수 데이터 정리 관행

데이터베이스 복구와 달리 데이터 정리는 데이터 자체에 초점을 맞춥니다. 데이터베이스 정리는 일관되고 정기적인 주의가 필요한 프로세스입니다. 병원에서는 오염 물질이 끊임없이 시설로 유입되므로 세균이 사람들을 아프게 하지 않도록 정기적인 살균이 필요합니다. 귀하의 데이터베이스도 다르지 않습니다.

정기적인 청소 프로세스는 다음 사항에 중점을 두어야 합니다.

중복 제거
중복 제거

중복된 데이터는 데이터베이스 공간을 낭비하고 혼란을 야기하여 정확한 정보를 방해합니다. 데이터 사일로에 수집되고 저장된 데이터의 양으로 인해 동일한 레코드의 여러 버전이 종종 발생합니다. 데이터 중복 제거는 동일한 데이터 포인트를 두 번 세면 분석이 왜곡되므로 중요한 데이터 정리 작업입니다.

잘못된 데이터 복구
잘못된 데이터 복구

철자 오류, 대문자 오류, 이름 불일치와 같은 오류는 표준화된 형식에 의존하는 애플리케이션과 분석을 혼란스럽게 할 수 있습니다. 이러한 오류를 찾아 수정하면 데이터를 깨끗하게 유지하는 데 도움이 됩니다.

누락된 데이터 처리
누락된 데이터 처리

누락된 데이터는 분석을 왜곡할 수 있습니다. 누락된 데이터 문제를 해결하려면 합리적인 가정을 통해 데이터를 추가하거나 누락된 데이터가 너무 과도하면 전체 열이나 데이터 세트를 제거해야 할 수 있습니다.

관련성이 없거나 오래된 데이터 제거
관련성이 없거나 오래된 데이터 제거

오래되거나 관련 없는 데이터는 저장 공간을 차지하여 혼란을 야기합니다. 오래된 데이터는 새로운 데이터와 충돌하거나 새로운 데이터로 오인되어 분석에 영향을 미칠 수도 있습니다.

이상치 데이터 필터링

데이터 세트의 이상치는 오류를 나타낼 수 있지만 항상 그런 것은 아닙니다. 이상치를 식별하고, 원인을 파악하고, 적절한 조치를 취하면 데이터 세트에서 오류가 있는 데이터 포인트의 수가 줄어듭니다.

데이터 검증은 데이터 입력 중 이러한 오류 중 일부를 방지하는 데 도움이 될 수 있습니다. 검증 규칙을 빌드하고 데이터 스택에 통합하면 오류를 조기에 식별하기 위한 실시간 테스트를 지원할 수 있습니다.

데이터 준비 및 변환

데이터가 한 데이터베이스에서 다른 데이터베이스로 전송되거나, 변환되거나, 새로운 데이터 세트와 병합되면 프로세스가 복잡해집니다. 변환 프로세스가 나쁜 데이터를 도입하거나 영속시키지 않도록 하는 것은 건강한 데이터를 유지하는 데 필수적입니다. 데이터가 별도의 데이터베이스에서 유래하는 경우 데이터가 중복될 가능성이 높습니다. 데이터베이스 간의 레이블이 다르면 오류가 발생할 수도 있습니다.

데이터는 여러 가지 방법으로 변환되지만, 일반적으로 분석을 위해 변환되어 준비되거나, 응용 프로그램이나 향후 분석을 위해 데이터베이스에 로드될 수 있도록 표준화됩니다.

추출, 변환 및 로드(ETL) 프로세스는 한 데이터베이스에서 다른 데이터베이스로 데이터를 이동하는 데 가장 일반적인 변환 방식입니다. ETL 프로세스는 한 데이터베이스에서 데이터를 추출하고 변환한 다음 대상 데이터베이스에 로드합니다. 대상 데이터베이스의 구조는 일반적으로 이러한 변환을 지시하며, 이는 잘 정의되고 체계적입니다. 이러한 변환은 확장성이 뛰어나고 대규모 데이터 세트에 적합합니다.

데이터 랭글링 프로세스는 다르며 훨씬 더 민첩합니다. 이러한 프로세스는 분석을 위해 데이터 세트를 준비하는 데 중요합니다. 데이터 랭글링 기술은 구조화된 데이터와 구조화되지 않은 데이터를 모두 수용합니다.

이러한 차이점을 이해하는 것은 더욱 건강한 데이터를 지원하는 데 중요합니다.

전자상거래

ETL 프로세스는 일반적으로 잘 정리되고 구조화된 데이터로 시작합니다. 이 구조는 보다 자동화되고 체계적인 변환 프로세스를 가능하게 합니다. 이러한 변환 프로그램은 Python 및 Scala와 같은 강력한 기술을 사용하는 기술 지향적인 개발자가 구축합니다. 더 큰 자동화는 효율성에 좋지만, 나쁜 데이터와 오류를 훨씬 더 빨리 영속시킬 수도 있습니다. 이러한 자동화는 또한 만들기가 어렵기 때문에 변경하기 어려워 ETL 프로세스가 훨씬 덜 민첩해집니다. 처음에 올바르게 하는 것이 데이터를 건강하게 유지하는 데 중요합니다.

ETL 프로세스의 첫 번째 단계는 소스 데이터베이스에서 데이터를 추출하는 것입니다. 소스 데이터가 정리되지 않으면 오류가 발생할 수 있으므로 데이터 품질을 이해하기 위해 데이터 프로파일링을 수행하는 것이 중요합니다. 누락된 값, 중복 및 범위를 벗어난 값으로 인해 데이터 품질이 좋지 않은 경우 다시 돌아가서 데이터를 정리해야 합니다.

변환 프로세스는 데이터를 재포맷하여 대상 데이터베이스에 수집할 수 있도록 합니다. 여기에는 소스 데이터베이스와 대상 데이터베이스 간에 형식이 일관되도록 데이터를 정규화하는 것이 포함됩니다. 데이터에 잘못된 레이블이 지정되거나 데이터 구조가 정렬되지 않으면 오류가 발생할 수 있으므로 데이터 정리가 변환 프로세스의 중요한 부분이 됩니다. 더러운 데이터를 식별하고 오류를 수정하는 루틴을 ETL 프로그램에 내장할 수 있습니다. 데이터를 필터링하면 원치 않는 데이터가 제거되어 복잡성이 줄어듭니다. 마지막으로 불일치를 확인하거나 이상치를 식별하기 위해 유효성 검사를 실행합니다.

프로세스의 마지막 단계는 대상 데이터베이스에 데이터를 로드하는 것입니다. 이 단계에서 오류가 발생하면 오류를 해결하기 위해 이전 버전의 코드로 돌아갈 수 있도록 버전 관리 프로세스를 마련하는 것이 필수적입니다.

데이터 정리

ETL과 마찬가지로 데이터 랭글링은 데이터 오류가 발생할 수 있는 변환 프로세스입니다. 데이터 랭글링은 정의된 분석 사용 사례에서 사용할 데이터 자산을 만드는 프로세스입니다. 분석 사용 사례의 요구 사항이 변환을 주도합니다. 이 요구 사항은 더 많은 민첩성과 비정형 데이터를 통합하는 능력을 필요로 합니다.

데이터 정리를 통해 보다 수동적이고 역동적인 프로세스가 필요합니다. 분석이 최고 품질의 데이터를 기반으로 하는지 확인하려면 팀은 데이터를 발견하고, 정리하고, 정리하고, 보강하고, 검증해야 합니다.

데이터 랭글링에서 품질 분석을 위한 첫 번째 단계는 기본 데이터 세트의 상태와 적용 가능성을 이해하는 것입니다. 즉, 사용 가능한 데이터, 요구 사항에 맞는 데이터, 데이터 세트의 품질을 평가하는 것을 의미합니다. 분포 테스트 및 유효성 범위 테스트와 같은 데이터 품질 메트릭은 데이터 상태에 대한 통찰력을 제공합니다. 기존 문제, 데이터 세트의 크기, 데이터 형식을 이해하는 것은 분석을 지원하기 위해 데이터를 사용하기 전에 고려해야 할 요소입니다. ETL 프로세스와 달리 데이터 랭글링은 사전 빌드 자동화에 의해 제약되지 않습니다. 이러한 차이점은 분석가가 덜 정제된 데이터를 피하면서 최상의 데이터 세트를 검색할 수 있는 유연성을 갖는다는 것을 의미합니다. 액세스 가능하고 이 데이터를 유지 관리하고 추적하는 강력한 데이터 카탈로그는 데이터 상태를 측정하는 데 유용합니다.

분석에 사용할 데이터 세트를 구성하는 것은 또 다른 중요한 프로세스입니다. 구조화되지 않은 데이터로 작업할 때 이 프로세스는 훨씬 더 어려워집니다. 구조화되지 않은 데이터는 분석하기 위해 행과 열로 구성되어야 합니다. 태그 지정 기술을 사용하면 이 데이터 주변에 더 많은 구조를 만들고 구조화되지 않은 문서에 대한 더 많은 정보를 제공하여 보다 효율적으로 구성할 수 있습니다. 이 프로세스는 GenAI의 실행 가능한 사용 사례로 부상하고 있습니다. 이러한 기술은 문서를 분석하여 의미를 이해하고 그에 따라 표시할 수 있습니다. 건강한 데이터 레이블 지정은 GenAI가 실수를 할 가능성을 줄여줍니다.

ELT에서와 마찬가지로 데이터 정리 프로세스는 데이터 정리에 필수적입니다. 정리 전략은 이상치를 식별하고 데이터에서 노이즈를 제거하고 데이터 세트가 관련성이 있는지 확인하여 분석을 위해 데이터를 준비할 수 있습니다. 비정형 텍스트로 작업할 때 철자를 수정하고 약어를 표준화하는 것은 훨씬 더 복잡합니다. AI를 활용하여 이를 수정할 수 있습니다.

데이터 랭글링의 데이터 정규화 프로세스는 ETL과 약간 다릅니다. 표준은 고정된 데이터베이스 구조와 스키마가 아닌 비즈니스 사용 사례에 의해 구동되기 때문입니다. 강력한 메타데이터 관리 엔진은 이 프로세스를 개선할 수 있습니다. 통합된 GenAI와 비즈니스 용어집을 통해 비즈니스 사용자는 비즈니스 정의와 계산을 기반으로 데이터를 정규화하고 결합할 수 있습니다.

데이터 강화는 더 깊고 더 깨끗한 분석을 위한 더 큰 맥락을 제공하기 위해 데이터 세트나 사전 구축된 데이터 제품을 결합하는 또 다른 기술입니다. 누락된 데이터를 합성 데이터로 채우는 것은 데이터 세트의 품질을 강화하는 또 다른 전략입니다.

ETL 프로세스와 마찬가지로 데이터 검증 테스트는 데이터 정리 프로세스가 실행된 후 데이터 정리를 보장하는 데 필수적입니다.

데이터 빌드 도구

데이터 변환을 구축하기 위한 올바른 도구와 프로세스를 갖는 것은 모범 사례를 준수하고 데이터 변환에서 오류 가능성을 줄이는 가장 좋은 방법입니다. 소프트웨어 분야의 DevOps 도구와 마찬가지로 Data Build Tools는 개발 워크벤치와 품질 관리를 통해 데이터 변환 프로세스를 지원합니다. 기능에는 버전 제어, 테스트 및 로깅이 포함됩니다.

데이터 변환은 끊임없이 진화합니다. 품질을 보장하려면 코드가 업데이트될 때마다 테스트해야 합니다. 쿼리를 만들거나 조정하면 파이프라인 하류에 오류를 유발하는 잘못된 데이터 조인을 포함한 여러 문제가 발생할 수 있습니다. 변환을 만드는 프로세스가 있으면 오류를 방지하는 데 중요합니다.

dbt(데이터 빌드 도구)와 같은 도구는 건강한 변환 워크플로를 가능하게 합니다. 이 도구를 사용하면 분석가가 다음을 수행할 수 있습니다.

  • 비즈니스 로직을 사용하여 복잡한 SQL 쿼리와 변환을 구축합니다.
  • 변경 사항이 다운스트림 종속성에 어떻게 영향을 미칠지 사전에 예측하기 위해 변형을 테스트합니다.
  • 코드를 실행합니다.
  • 문서를 작성합니다.

모든 데이터 정리 작업을 마친 후, 효과적인 도구와 워크플로를 사용하여 잘못된 데이터가 유입될 가능성을 줄이는 것은 당연한 일입니다.

이러한 도구를 데이터 스택과 통합하면 사용하기가 더 쉬워지고 데이터 변환 프로세스가 간소화됩니다. 템플릿과 사전 테스트된 변환은 쉽게 액세스하여 구현할 수 있습니다. 이 기능은 잠재적 오류를 줄일 뿐만 아니라 데이터 제품과 프로세스를 만드는 데 드는 노력도 줄여줍니다.

도구, 워크플로, 데이터를 결합하면 건강한 데이터를 지원하는 프레임워크가 만들어집니다. dpt 어댑터를 통해 Data to AI 플랫폼인 Avrio 사용자는 Avrio의 페더레이션 쿼리 엔진을 활용하여 복잡한 SQL 변환을 작성하고 테스트하여 데이터 품질 요구 사항을 지원할 수 있습니다.

수집에서 분석에 이르기까지 데이터를 정리하고 깨끗하게 유지하는 방법을 이해하는 것은 데이터에 대한 신뢰를 구축하는 데 매우 중요합니다. GenAI가 비정형 데이터를 분석에 대비해 준비하는 기능이 향상되면서 더 큰 통찰력을 위한 새로운 기회가 생기고 있지만, 새로운 복잡성으로 인해 더러운 데이터가 생길 수 있습니다. 소스 시스템에서 분석에 이르기까지 정형 및 비정형 데이터에 대한 복잡한 데이터 건강 전략을 갖추면 깨끗하고 관련성 있는 데이터가 의사 결정권자의 손에 들어가는 데 도움이 됩니다.

Discover the Latest in Data and AI Innovation

  • Blog

    AWS re:Invent 요약

    Read More

  • Blog

    데이터 분석의 생성 AI - AI가 데이터 액세스를 더 쉽게 만드는 방법

    Read More

  • E-book

    최신 데이터 스택을 사용한 비정형 데이터

    Read More

Request a Demo TODAY!

Take the leap from data to AI