메인 콘텐츠로 건너뛰기

데이터 무결성이란 무엇인가요?

데이터 무결성이란 무엇인가요?

데이터 무결성 측면에서, 데이터가 전체 수명 주기 동안 정확하고 오류가 없으며 일관되고 완벽하게 기능하도록 데이터 무결성을 유지해야 합니다. 액세스 요청 수, 데이터 볼륨 및 속도에 상관없이 단일 데이터 저장소에서 데이터 무결성 유지를 관리할 수 있어야 합니다. 오늘날 클라우드 환경에서는 분산된 데이터 저장소와 서비스 사이에서 복잡하고 지속적인 데이터 이동이 필요합니다. 처리량이 많은 온라인 트랜잭션 처리(OLTP) 시스템에서는 시스템 일관성을 유지하기 위해 엄격한 데이터 무결성 검사가 필요합니다. 데이터 엔지니어는 통합, 백업, 클라우드 마이그레이션을 포함하여 신규 및 기존 데이터 저장소와 프로세스에 대한 데이터 무결성 검사를 구현해야 합니다. 이 문서에서는 클라우드에서의 데이터 무결성 관리에 대한 과제와 솔루션을 살펴봅니다.

데이터 무결성은 전체 수명 주기 동안 데이터의 정확성, 일관성 및 완전성을 유지하는 프로세스입니다. 데이터 품질 보증의 핵심으로, 이를 통해 조직의 데이터가 트랜잭션 처리, 비즈니스 인텔리전스 및 분석에 적합하고 데이터의 신뢰성을 보장할 수 있습니다. 데이터 무결성에는 민감한 정보를 무단 액세스로부터 보호하면서 데이터를 검증하기 위한 다양한 방법과 프로토콜이 포함되어 있습니다.

데이터 무결성이 중요한 이유는 무엇인가요? 데이터 무결성을 통해 재무 및 기타 비즈니스 활동 기록 및 의사 결정에 사용할 수 있도록 조직의 데이터를 신뢰할 수 있습니다. 데이터 무결성은 데이터 및 변환을 처리하는 도구 및 역할에 관계없이 필수적입니다.

데이터 무결성은 비즈니스 트랜잭션의 정확한 처리, 재무 운영의 일관성, 중복 예약 또는 트랜잭션 손실과 같은 문제를 방지하므로 온라인 트랜잭션 처리(OLTP) 시스템에서 매우 중요합니다. 데이터 무결성에 결함이 생기면 규정 미준수 및 고객 만족도 저하와 같은 결과를 초래할 수 있습니다.

데이터 무결성을 유지하는 데 따르는 어려움은 무엇인가요?

조직 내에서 데이터 무결성을 보장하려면 인적 및 기술 관련 데이터 관리 문제를 해결해야 합니다.

OLTP 환경

OLTP 환경에서 가장 큰 데이터 무결성 문제는 특히 대량 작업 시 데이터 일관성을 유지하면서 동시 트랜잭션을 관리하는 것입니다. 이 문제를 해결하려면 엄격한 원자성, 일관성, 격리 및 내구성(ACID) 규정 준수와 성능 요구 사항 간의 균형을 맞춰야 합니다. 이때 시스템의 실시간 처리 기능을 유지하면서 여러 사용자가 경합 조건이나 교착 상태 없이 동일한 데이터를 동시에 수정할 수 있어야 합니다.

비즈니스 인텔리전스 및 분석

비즈니스 인텔리전스 및 분석 사용 사례의 경우 데이터 소스와 시스템 간 제한된 통합으로 인해 기업은 데이터 자산에 대한 통합된 정확한 보기를 유지할 수 없습니다. 또한 수동 데이터 입력 및 수집에 의존하면 오타, 누락 및 불일치가 발생하여 데이터 정확성이 저하될 수 있습니다.

감사 및 데이터 추적

또 다른 문제는 적절한 감사 추적이 없어 수집부터 삭제까지 데이터 기록을 추적하기 어렵다는 점입니다. 그러면 조직이 무단 데이터 수정에 대한 가시성을 놓칠 위험이 있습니다. 레거시 시스템에서는 오래된 파일 형식을 사용하거나 중요한 검증 기능이 없기 때문에 데이터 무결성이 더욱 복잡해집니다. 데이터를 클라우드로 이동하면 보다 중앙 집중화된 데이터 품질 메커니즘을 구현할 수 있고 데이터 무결성 검사에 필요한 시간과 노력을 줄일 수 있습니다.

클라우드에서 데이터는 어떻게 보호되나요?

데이터 무결성은 크게 두 가지 유형으로 나눌 수 있습니다.

물리적 무결성

물리적 무결성 프로세스는 자연 재해, 정전, 하드웨어 장애 또는 물리적 스토리지 디바이스에 영향을 미치는 기타 요인으로 인한 파손 및 손상으로부터 데이터를 보호합니다. 클라우드에서 물리적 무결성은 클라우드 제공업체가 자동으로 관리합니다. 이는 공동 책임 모델에 따라 클라우드 제공업체의 책임입니다.

예를 들어 AWS 데이터 센터는 데이터를 저장하는 물리적 디바이스에 4개 계층의 데이터 보안 인프라를 제공합니다. 데이터 보안 기능에는 다음이 포함됩니다.

  • 멀티 팩터 인증 및 전자 제어를 통해 서버실 액세스를 보호하는 엄격한 액세스 제어.
  • 자동 무단 데이터 제거 탐지와 같은 침입 방지 조치.
  • 설치 및 프로비저닝에서 제거 및 해제에 이르기까지 보안 스토리지 디바이스 관리.
  • 장비 검사를 포함하여 2,600개 이상의 보안 요구 사항에 대한 엄격한 서드 파티 감사.

논리적 무결성

논리적 무결성 프로세스는 데이터가 상주하는 스토리지 시스템의 기본 규칙을 해당 데이터가 준수하는지 확인합니다. 논리적 무결성은 추가로 4가지 하위 유형으로 분류할 수 있습니다.

  • 도메인 무결성은 특정 범위, 형식 또는 사전 정의된 세트 내에서 값을 제한하여(예: 데이터 유형 및 기타 유사한 데이터 제약 조건 사용) 데이터 정확성을 보장합니다.
  • 엔터티 무결성은 프라이머리 키와 같은 메커니즘을 통해 개별 데이터 레코드를 고유하게 식별하여 키 필드의 중복 또는 null 값을 방지합니다.
  • 참조 무결성은 분리된 데이터 레코드를 방지하기 위해 외래 키 제약 조건을 적용하여 테이블 간 일관된 관계를 유지합니다.
  • 사용자 정의 무결성은 표준 제약 조건을 넘어서 사용자 지정 검증 로직 또는 애플리케이션 수준 적용과 같은 비즈니스별 규칙을 구현합니다.

클라우드 사용자는 논리적 무결성 제약 조건을 구현하고 데이터 품질을 보장할 책임이 있습니다. 이는 공동 책임 모델에 따라 고객의 책임입니다.

하지만 AWS 데이터 서비스는 체크섬 알고리즘, 데이터 품질 모니터링 도구, 백업 및 데이터 동기화 중 자동화된 데이터 무결성 검사 등 데이터 무결성 검사를 지원하는 다양한 메커니즘을 제공합니다.

관리형 서비스는 데이터 무결성을 위한 자동 가드레일 및 구성 가능한 가드레일을 제공할 수 있습니다. OLTP 시스템 및 데이터베이스 내에서 논리적 무결성 프로세스는 각 트랜잭션을 원자성, 일관성, 격리 및 내구성을 유지하는 데 도움이 됩니다.

클라우드에서 데이터 무결성을 보장하려면 어떻게 해야 하나요?

AWS 클라우드에서 논리적 무결성을 구현하려면 다음 조치를 고려하세요.

객체 데이터 무결성 구현

대부분의 클라우드 데이터 작업은 모든 데이터 유형을 객체로 저장할 수 있는 Amazon S3 버킷에서 시작됩니다. Amazon S3 버킷, 데이터베이스 및 기타 클라우드 서비스 또는 온프레미스 스토리지 사이에서 데이터를 자주 이동할 수 있습니다. Amazon S3는 업로드, 다운로드 및 복사 중에 데이터 무결성 위험을 줄일 수 있는 내장 체크섬 메커니즘을 제공합니다.

체크섬은 특정 알고리즘을 사용하여 데이터에서 생성된 고유한 고정 길이 값입니다. 고유한 디지털 지문을 생성하여 시스템이 데이터 손상이나 의도하지 않은 수정을 감지할 수 있도록 합니다. 객체를 복사할 때 Amazon S3는 원본 객체의 체크섬을 계산하여 대상 객체에 적용합니다. 불일치가 발생할 경우 경고를 표시합니다. Amazon S3는 멀티파트 업로드에 대해 전체 객체 및 복합 체크섬을 모두 지원합니다. 전체 객체 체크섬은 전체 파일을 포괄하는 반면, 복합 체크섬은 개별 파트 수준 체크섬을 집계합니다.

아래 설명대로 체크섬 기능을 사용합니다.

업로드

Amazon S3는 CRC-64/NVME, CRC-32, CRC-32C, SHA-1, SHA-256을 포함해 여러 Secure Hash Algorithm(SHA) 및 Cyclic Redundancy Check(CRC) 알고리즘을 지원합니다. AWS Management Console을 사용하는 경우 업로드 중에 체크섬 알고리즘을 선택합니다. 체크섬을 지정하지 않은 경우 Amazon S3의 기본값은 CRC-64/NVME입니다.

다운로드

객체를 다운로드할 때 저장된 체크섬 값을 요청하여 데이터 무결성을 확인합니다. 업로드가 완료되었는지, 아직 진행 중인지에 따라 GetObject, HeadObject 또는 ListParts 작업을 사용하여 체크섬 값을 검색합니다.

복사

CopyObject 작업을 사용하여 객체를 복사한 경우 Amazon S3는 전체 객체에 대해 직접 체크섬을 생성합니다. 처음에 객체를 멀티파트 업로드로 업로드한 경우 데이터가 변경되지 않았더라도 복사 시 체크섬 값이 변경됩니다.

데이터 파이프라인 무결성 구현

또 다른 일반적인 사용 사례는 데이터를 클라우드 데이터 레이크, 웨어하우스 또는 관리형 데이터베이스 서비스로 이동하는 것입니다. 이러한 데이터 파이프라인에서 데이터 무결성 검사를 설정하는 작업은 오류가 발생하기 쉽고 지루하며 시간이 많이 걸립니다. 데이터 품질이 저하될 때 데이터 소비자에게 경고하는 모니터링 코드 및 데이터 품질 규칙을 수동으로 작성해야 합니다.

마이그레이션 도중

AWS Database Migration Service(DMS)는 내장된 여러 보호 장치 및 검증 메커니즘을 통해 AWS 클라우드 데이터베이스로 마이그레이션하는 동안 데이터 무결성을 보호합니다. DMS는 자동 검증을 수행하여 소스 및 대상 데이터를 비교하고 데이터 재동기화를 통해 불일치를 식별하고 해결합니다.

DMS에는 중단이 발생할 경우 마지막으로 알려진 정상 상태에서 마이그레이션을 재개할 수 있는 체크포인트 및 복구 기능이 포함되어 있으며, 마이그레이션 진행 상황을 추적할 수 있는 포괄적인 모니터링 및 로깅 기능도 제공합니다. 또한 DMS는 전송 중 데이터에 대한 SSL 암호화와 AWS 보안 서비스와의 통합을 통해 데이터 보안을 보장합니다.

데이터베이스 인프라

AWS 데이터베이스데이터 내구성과 일관성을 보장하는 자동화된 백업 및 다중 AZ 배포를 비롯한 여러 포괄적인 메커니즘과 기능을 통해 데이터 무결성을 보호합니다. 이러한 데이터베이스는 내장된 제약 조건을 통해 참조 무결성을 적용하고, 트랜잭션 일관성을 위해 ACID 규정 준수를 유지하며, 특정 시점 복구 기능을 제공합니다. Amazon Relational Database Service(RDS) 및 Amazon Aurora와 같은 관리형 데이터베이스 서비스를 사용하면 데이터 무결성에 대한 특정 제어를 설정할 수 있습니다. 예를 들어 Aurora를 사용하면 OLTP 데이터베이스에 다양한 트랜잭션 격리 수준을 설정할 수 있습니다.

보호 강화를 위해 AWS 데이터베이스는 지리적으로 분산된 여러 리전에서 데이터를 복제하는 다중 리전 배포를 통한 재해 복구를 지원합니다. 또한 Amazon CloudWatch와의 통합은 운영에 영향을 미치기 전에 잠재적 데이터 무결성 문제를 식별하고 해결할 수 있습니다.

데이터 통합

AWS Glue는 AWS 클라우드에서 데이터를 준비하고 결합하기 위한 서버리스 데이터 통합 서비스입니다. AWS Glue Data Quality 기능을 사용하면 수동 데이터 검증 작업을 며칠에서 몇 시간으로 줄일 수 있습니다. 자동으로 품질 규칙을 권장하고, 통계를 계산하며, 모니터링하고 이때 부정확하거나 불완전한 데이터를 감지하면 이를 경고합니다. 데이터 무결성 규칙을 정의하는 데 사용하는 도메인별 언어인 데이터 품질 정의 언어(DQDL)와 함께 작동합니다.

분석에 사용하기 위해 OLTP 시스템에서 데이터를 수집하는 경우 AWS Glue 파이프라인을 사용하여 데이터베이스의 데이터를 분석 서비스로 푸시할 수 있습니다.

모니터링 및 알림 제공을 위해 Amazon CloudWatch에 지표를 추가로 게시할 수 있습니다.

데이터 백업 무결성 구현

대기업 프로젝트에서는 여러 팀이 데이터 백업을 수행하고 다양한 위치에서 Amazon S3 저장소에 액세스할 수 있습니다. 이러한 분산 데이터 백업 작업에서는 데이터 거버넌스가 과제가 됩니다. AWS 데이터베이스에는 백업 기능이 내장되어 있습니다.

AWS Backup은 Amazon Simple Storage Service(S3), Amazon Elastic Compute Cloud(EC2), Amazon FSx와 같은 AWS 서비스와 VMware의 하이브리드 워크로드 전반에서 데이터 보호를 중앙 집중화하고 자동화하는 완전관리형 서비스입니다. 데이터 보호 정책을 중앙에서 배포하여 AWS 리소스와 계정 전반의 백업 활동을 규제, 관리 및 구성할 수 있습니다.

AWS Backup은 전송 및 저장에서 처리에 이르는 데이터 수명 주기 전반에 걸쳐 데이터 무결성을 유지하도록 설계되었습니다. 유형에 관계없이 저장된 모든 데이터에 엄격한 보안 조치를 적용하여 무단 데이터 액세스를 방지하는 높은 수준의 보호 기능을 제공합니다. 데이터 분류, 스토리지 위치 및 보안 정책을 완벽하게 제어할 수 있으므로 필요에 따라 데이터를 관리, 아카이브 및 보호할 수 있습니다.

AWS Backup은 여러 메커니즘을 사용하여 데이터 무결성을 유지하기 위해 다른 AWS 서비스와 협업합니다. 여기에는 다음이 포함됩니다.

  • 지속적인 체크섬 검증을 통한 손상 방지.
  • 전송 중 및 저장 시 데이터 무결성을 확인하기 위한 내부 체크섬.
  • 디스크 장애 발생 시 자동 이중화 복원.

데이터는 여러 물리적 위치에 중복 저장되어 있으며, 네트워크 수준 검사를 사용하면 데이터 전송 중 손상을 감지하는 데도 도움이 됩니다.

AWS는 데이터 무결성을 유지하기 위해 어떻게 지원하나요?

데이터 무결성은 분석에 대한 신뢰를 높이고 규정 준수를 지원하며 데이터의 수명 주기 내내 가치를 유지하기도 합니다. 그러나 온프레미스 배포의 경우 데이터 무결성을 확인하는 작업은 어렵고 비용이 많이 들며, 수동, 분산 및 중복 작업으로 인해 시간이 손실될 수 있습니다.

클라우드 기술을 적용하면 프로세스를 중앙 집중화하고 대부분의 어려운 작업이 자동으로 수행됩니다. 그리고 여러 물리적 무결성 및 논리적 무결성 검사가 기본적으로 내장되어 있습니다. 자동화 메커니즘은 데이터 무결성을 달성하는 데 필요한 소프트웨어 규칙을 자체적으로 생성합니다. 데이터 엔지니어는 설정을 구성하거나 자동화된 메커니즘으로 수행한 작업을 검토하기만 하면 됩니다. 데이터 무결성을 통해 OLTP 시스템은 대량의 실시간 트랜잭션을 처리하면서 완벽한 정확도를 유지할 수 있습니다. 이는 안정적인 비즈니스 운영 및 관행에 매우 중요합니다.

지금 무료 클라우드 계정을 만들어 시작해 보세요.