데이터 손상
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.
1. 개요
데이터 손상은 시스템의 모든 수준에서 발생할 수 있는 오류로, 탐지되지 않으면 심각한 문제를 야기할 수 있다. 데이터 손상은 전송 중의 환경적 요인, 하드웨어 및 소프트웨어 오류로 인해 발생하며, 특히 디스크 펌웨어 또는 운영 체제에서 감지되지 않는 '무음 데이터 손상'은 치명적인 결과를 초래할 수 있다. 무음 데이터 손상은 데이터 저장 용량 증가에도 불구하고 발생률이 일정하게 유지되며, 파일 시스템 메타데이터 손상과 같은 계단식 장애를 유발할 수 있다. 데이터 손상을 방지하고 복구하기 위해 체크섬, 오류 정정 코드, RAID, CPU 아키텍처의 투명 검사, 데이터 스크러빙 등 다양한 기술이 사용되며, 데이터 무결성을 유지하는 것이 중요하다.
더 읽어볼만한 페이지
데이터 손상 | |
---|---|
기본 정보 | |
![]() | |
유형 | 하드웨어 손상 소프트웨어 손상 |
원인 | 시스템 오류 전송 오류 버그 바이러스 악성코드 전원 서지 |
예방 | |
방법 | 정전 보호 장치 데이터 백업 오류 검출 및 수정 데이터 유효성 검사 검사합 오류 수정 코드 |
2. 데이터 손상의 원인
컴퓨터 시스템에서 데이터 손상은 크게 탐지되지 않은 경우와 탐지된 경우, 두 가지 유형으로 나뉜다. 탐지되지 않은 데이터 손상은 '무음 데이터 손상'이라고도 불리며, 데이터가 잘못되었다는 표시가 없으므로 가장 위험하다. 탐지된 데이터 손상은 영구적일 수도, 일시적일 수도 있다. 시스템에서 오류를 감지하고 수정할 수 있다면 데이터 손상은 발생하지 않는다.
데이터 손상은 시스템의 모든 수준에서 발생할 수 있지만, 최신 시스템은 여러 계층에서 손상을 감지하고 복구하거나 수정하려고 시도한다. 대부분 성공하지만, 시스템 메모리에 도착하는 정보가 손상되어 예측할 수 없는 결과를 초래하는 매우 드문 경우도 있다.
2. 1. 하드웨어 오류
하드웨어 오류는 배경 방사선, 헤드 크래시, 저장 장치의 노후화 등으로 인해 발생할 수 있다. 우주선은 DRAM에서 대부분의 소프트 에러를 유발하는 주요 원인 중 하나이다.[1]2. 2. 소프트웨어 오류
소프트웨어 오류는 일반적으로 코드의 소프트웨어 버그 때문에 발생하며, 데이터 손실을 일으킬 수 있다.[1]2. 3. 환경적 요인 및 전송 중 간섭
데이터 전송 중단은 데이터 손실을 야기한다. 환경 조건은 특히 무선 전송 방식을 처리할 때 데이터 전송을 방해할 수 있다. 짙은 구름은 위성 전송을 차단할 수 있으며, 무선 네트워크는 전자레인지와 같은 장치의 간섭에 취약하다.[1]3. 무음 데이터 손상 (Silent Data Corruption)
무음 데이터 손상(Silent Data Corruption)은 디스크 펌웨어나 운영 체제에서 감지되지 않아 사용자가 인지하기 어려운 데이터 손상을 의미한다.[2] 이러한 오류는 데이터가 잘못되었다는 표시가 없으므로 시스템에 심각한 문제를 야기할 수 있다.
컴퓨터 시스템에서 발생하는 데이터 손상은 크게 탐지되지 않는 경우와 탐지되는 경우, 두 가지 유형으로 나뉜다. 탐지되지 않은 데이터 손상은 '무음 데이터 손상'이라고 불리며 가장 위험하다. 탐지되는 데이터 손상은 영구적일 수도 있고, 시스템이 오류를 감지하고 수정할 수 있는 일시적인 경우일 수도 있다.
데이터 손상은 시스템의 여러 계층에서 발생할 수 있으며, 최신 시스템은 이러한 손상을 감지하고 복구하는 기능을 갖추고 있다. 그러나 시스템 메모리에 도착하는 정보가 손상될 경우 예측 불가능한 결과가 발생할 수 있다.
데이터 전송 중 손상은 데이터 전송 중단, 환경 조건, 하드웨어 및 소프트웨어 오류 등 다양한 원인으로 발생한다. 짙은 구름은 위성 전송을 방해할 수 있으며, 무선 네트워크는 전자레인지와 같은 장치의 간섭을 받을 수 있다. 하드웨어 오류는 배경 방사선, 헤드 크래시, 저장 장치의 노후화 등으로 발생하며, 소프트웨어 오류는 주로 코드의 소프트웨어 버그로 인해 발생한다. 우주선은 DRAM에서 대부분의 소프트 에러를 유발하는 원인 중 하나이다.[1]
3. 1. 무음 데이터 손상의 위험성
디스크 펌웨어나 호스트 운영 체제에서 일부 오류는 감지되지 않고 인식되지 않는데, 이러한 오류를 ''무음 데이터 손상''이라고 한다.[2]무음 데이터 손상은 계단식 장애를 초래할 수 있다. 시스템은 감지되지 않은 초기 오류로 인해 점점 더 많은 문제가 발생하다가 결국 오류가 감지될 때까지 일정 기간 동안 실행될 수 있다.[15] 예를 들어, 파일 시스템 메타데이터에 영향을 미치는 장애는 파일 시스템이 손상된 상태로 사용됨에 따라 여러 파일의 일부분이 손상되거나 완전히 접근할 수 없게 만들 수 있다.
3. 2. 무음 데이터 손상 발생률
일부 오류는 디스크 펌웨어나 호스트 운영 체제에서 감지되지 않고 인식되지 않는데, 이러한 오류를 ''무음 데이터 손상''이라고 한다.[2] 하드 디스크 드라이브 용량이 크게 증가했지만 오류율은 변하지 않아, 최신 디스크가 구형 디스크보다 더 안전하지 않다는 것을 의미한다. 구형 디스크는 저장 용량이 적어 데이터 손상 가능성이 낮았지만, 최신 디스크는 더 많은 데이터를 저장하면서도 안전성은 향상되지 않아 데이터 손상 가능성이 더 커졌다.[11]CERN의 연구에서는 무음 손상 오류율이 1016비트당 1개보다 훨씬 높게 나타났다.[7] 아마존도 자사 시스템에서 이와 비슷한 높은 데이터 손상률을 인정했다.[8] 2021년에는 구글과 페이스북의 연구에서 결함 있는 프로세서 코어가 무음 데이터 손상의 추가 원인으로 확인되었으며, 수천 개의 코어 중 여러 개가 결함이 있는 것으로 밝혀졌다.[9][10]
ZFS 제작자 제프 본윅은 Greenplum의 빠른 데이터베이스가 15분마다 무음 손상에 직면한다고 말했다.[12] NetApp에서 41개월 동안 150만 개 이상의 HDD를 대상으로 수행한 연구에서는 40만 개 이상의 무음 데이터 손상이 발생했으며, 그 중 3만 개 이상은 하드웨어 RAID 컨트롤러에 의해 감지되지 않았다.[13] CERN에서 6개월 동안 약 97 페타바이트의 데이터를 대상으로 수행한 연구에서는 약 128 메가바이트의 데이터가 영구적으로 무음 손상되었다.[14]
4. 데이터 손상 방지 및 복구
데이터 손상은 탐지 여부에 따라 두 가지 유형으로 나뉜다. 탐지되지 않은 데이터 손상은 ''무음 데이터 손상''이라고 불리며, 데이터가 잘못되었다는 표시가 없어 가장 위험하다. 탐지된 데이터 손상은 영구적일 수도 있고, 시스템이 오류를 감지하고 수정할 수 있는 경우 일시적일 수도 있다.
데이터 손상은 시스템의 모든 수준에서 발생할 수 있다. 최신 시스템은 여러 계층에서 손상을 감지하고 복구하거나 수정하려고 시도하지만, 시스템 메모리에 도착하는 정보가 손상되면 예측할 수 없는 결과가 발생할 수 있다.
데이터 전송 중단, 환경 조건, 하드웨어 및 소프트웨어 오류 등 다양한 원인으로 데이터 손상이 발생한다. 특히 무선 전송 방식에서 환경 조건은 데이터 전송을 방해할 수 있다. 짙은 구름은 위성 전송을 차단하고, 무선 네트워크는 전자레인지와 같은 장치의 간섭에 취약하다. 하드웨어 오류에는 배경 방사선, 헤드 크래시, 저장 장치의 노후화 등이 있으며, 소프트웨어 오류는 주로 코드의 소프트웨어 버그로 인해 발생한다. 우주선은 DRAM에서 대부분의 소프트 에러를 유발한다.[1]
일부 오류는 디스크 펌웨어나 운영 체제에서 감지되지 않아 ''무음 데이터 손상''을 일으킨다.[2] 디스크 저장 하위 시스템 외에도 케이블 연결 불량, 전원 공급 장치 불안정,[3] 외부 진동,[4] 네트워크 문제,[5] 우주 방사선, 소프트 메모리 오류 등 다양한 오류 원인이 존재한다. 분석된 39,000개의 저장 시스템에서 펌웨어 버그는 저장 오류의 5~10%를 차지했다.[6] CERN 연구에서는 무음 손상 오류율이 1016비트당 1개보다 훨씬 높게 나타났다.[7] 아마존도 자사 시스템에서 이와 유사한 높은 데이터 손상률을 인정했다.[8] 2021년에는 Google과 Facebook의 간행물에서 결함 있는 프로세서 코어가 추가적인 원인으로 확인되었다.[9][10]
하드 디스크 드라이브 용량이 증가했지만 오류율은 변하지 않아 데이터 손상 가능성은 더욱 커졌다. 저장 장치가 작고 느린 과거에는 무음 데이터 손상이 큰 문제가 아니었지만, 현대의 대용량 드라이브와 빠른 RAID 환경에서는 데이터 손상 임계값에 쉽게 도달할 수 있다.[11]
ZFS 제작자 제프 본윅은 Greenplum의 빠른 데이터베이스가 15분마다 무음 손상에 직면한다고 언급했다.[12] NetApp의 연구에서는 150만 개 이상의 HDD 중 40만 개 이상에서 무음 데이터 손상이 발생했으며, 그중 3만 개 이상은 하드웨어 RAID 컨트롤러에 의해 감지되지 않았다.[13] CERN의 또 다른 연구에서는 약 97페타바이트의 데이터 중 약 128메가바이트가 영구적으로 무음 손상되었다.[14]
무음 데이터 손상은 계단식 장애를 초래할 수 있다. 감지되지 않은 초기 오류가 점점 더 많은 문제를 일으키다가 결국 감지될 때까지 시스템이 일정 기간 동안 실행될 수 있다.[15] 예를 들어 파일 시스템 메타데이터 손상은 여러 파일의 부분적 손상 또는 접근 불가를 야기할 수 있다.
데이터 손상을 감지하고 수정하는 적절한 메커니즘을 사용하면 데이터 무결성을 유지할 수 있다. 이는 은행업과 같이 데이터베이스 인덱스 손상이나 계정 잔액 변경과 같은 중대한 오류를 방지해야 하는 상업적 애플리케이션과 암호화, 데이터 압축된 데이터 사용 시 특히 중요하다.[7]
4. 1. 체크섬 및 오류 정정 코드 (ECC)
체크섬은 데이터 손상을 감지하는 데 사용되며, 오류 정정 코드(ECC)는 오류를 감지하고 수정하는 데 사용된다.[7]데이터 손상이 각 데이터 비트가 독립적으로 낮은 확률로 변경되는 푸아송 과정처럼 동작하는 경우, 체크섬을 사용하여 감지할 수 있으며, 종종 오류 정정 코드(ECC)를 사용하여 수정할 수 있다.
수정할 수 없는 데이터 손상이 감지되면 자동 재전송 또는 백업에서 복원과 같은 절차를 적용할 수 있다. 특정 수준의 RAID 디스크 어레이는 일련의 하드 디스크에서 데이터에 대한 패리티 비트를 저장하고 평가할 수 있으며, 구현된 RAID 수준에 따라 하나 이상의 디스크 오류 시 손상된 데이터를 재구성할 수 있다. 일부 CPU 아키텍처는 CPU 캐시, 데이터 버퍼 및 명령 파이프라인에서 데이터 손상을 감지하고 완화하기 위해 다양한 투명 검사를 사용한다. 예를 들어 인텔 아이테니엄 프로세서에서 사용할 수 있는 ''인텔 명령 재실행'' 기술이 있다.[16]
많은 오류는 각 섹터에 대해 디스크에 저장된 ECC 코드를 사용하여 하드 디스크 드라이브에서 감지 및 수정된다.[17] 디스크 드라이브가 섹터에서 여러 읽기 오류를 감지하면 운영 체제의 개입 없이 디스크의 실패한 섹터를 예비 섹터로 다시 매핑하여 디스크의 다른 부분에 오류가 발생한 섹터의 복사본을 만들 수 있다(그러나 이 작업은 해당 섹터에 대한 다음 쓰기까지 지연될 수 있음). 이러한 "자동 수정"은 자가 감시, 분석 및 보고 기술(S.M.A.R.T.) 및 대부분의 운영 체제에서 사용할 수 있는 도구를 사용하여 악화되는 SMART 매개변수를 주시함으로써 임박한 디스크 오류를 자동으로 확인하여 모니터링할 수 있다.
Btrfs, HAMMER, ReFS, ZFS와 같은 일부 파일 시스템은 내부 데이터 및 메타데이터 체크섬을 사용하여 자동 데이터 손상을 감지한다. 또한 손상이 감지되고 파일 시스템이 데이터 중복성을 제공하는 통합 RAID 메커니즘을 사용하는 경우, 이러한 파일 시스템은 손상된 데이터를 투명하게 재구성할 수도 있다.[18] 이러한 접근 방식은 ''엔드 투 엔드 데이터 보호''로 일반적으로 알려져 있는데, 저장 스택의 여러 계층에 걸쳐 있지 않아 데이터 손상이 서로 다른 계층 간의 경계를 통과하는 동안 발생할 수 있는 다른 데이터 무결성 접근 방식에 비해 향상된 데이터 무결성 보호를 제공한다.[19]
''데이터 스크러빙''은 여러 오류가 누적되어 패리티 비트 수를 압도하기 전에 디스크 오류를 감지하고 복구하므로 데이터 손상 가능성을 줄이는 또 다른 방법이다. 각 읽기 시 패리티를 확인하는 대신, 패리티는 정기적인 디스크 검사 중에 확인되며, 이는 종종 낮은 우선순위 백그라운드 프로세스로 수행된다. "데이터 스크러빙" 작업은 패리티 검사를 활성화한다. 사용자가 디스크에서 데이터를 읽는 일반 프로그램을 단순히 실행하는 경우, 읽기 시 패리티 검사가 디스크 하위 시스템에서 지원되고 활성화되지 않으면 패리티가 확인되지 않는다.
4. 2. RAID
특정 수준의 RAID 디스크 어레이는 일련의 하드 디스크에서 데이터에 대한 패리티 비트를 저장하고 평가하며, 구현된 RAID 수준에 따라 하나 이상의 디스크 오류 시 손상된 데이터를 재구성할 수 있다.[18]4. 3. CPU 아키텍처의 투명 검사
일부 CPU 아키텍처는 CPU 캐시, 데이터 버퍼, 명령 파이프라인에서 데이터 손상을 감지하고 완화하기 위해 다양한 투명 검사를 사용한다. 예를 들어 인텔 아이테니엄 프로세서에서 사용할 수 있는 ''인텔 명령 재실행'' 기술이 있다.[16]4. 4. 파일 시스템의 데이터 및 메타데이터 체크섬
Btrfs, HAMMER, ReFS, ZFS와 같은 일부 파일 시스템은 내부 데이터 및 메타데이터 체크섬을 사용하여 자동 데이터 손상을 감지한다.[18] 손상이 감지되고 파일 시스템이 데이터 중복성을 제공하는 통합 RAID 메커니즘을 사용하는 경우, 이러한 파일 시스템은 손상된 데이터를 투명하게 재구성할 수도 있다.[18] 이러한 접근 방식은 데이터 손상이 서로 다른 계층 간의 경계를 통과하는 동안 발생할 수 있는 다른 데이터 무결성 접근 방식에 비해 전체 데이터 경로를 포괄하는 향상된 데이터 무결성 보호, 즉 ''엔드 투 엔드 데이터 보호'' 기능을 제공한다.[19]4. 5. 데이터 스크러빙 (Data Scrubbing)
데이터 스크러빙은 디스크 오류를 감지하고 복구하여 데이터 손상 가능성을 줄이는 방법이다. 정기적인 디스크 검사를 통해 여러 오류가 누적되어 패리티 비트 수를 압도하기 전에 디스크 오류를 감지하고 복구한다.[13]일반적으로 낮은 우선순위 백그라운드 프로세스로 수행되며, 정기적인 디스크 검사 중에 패리티가 확인된다. "데이터 스크러빙" 작업은 패리티 검사를 활성화한다. 사용자가 디스크에서 데이터를 읽는 일반 프로그램을 실행할 때, 읽기 시 패리티 검사가 디스크 하위 시스템에서 지원 및 활성화되지 않으면 패리티는 확인되지 않는다.
5. 결론
컴퓨터 시스템에서 데이터 손상은 탐지되지 않은 경우와 탐지된 경우 두 가지 유형이 있다. 탐지되지 않은 데이터 손상, 즉 '무음 데이터 손상'은 데이터가 잘못되었다는 표시가 없으므로 가장 위험한 오류를 초래한다. 탐지된 데이터 손상은 데이터 손실과 함께 영구적일 수도 있고, 시스템의 일부에서 오류를 감지하고 수정할 수 있을 때 일시적일 수도 있다. 후자의 경우 데이터 손상은 없다.[1]
데이터 손상은 호스트에서 저장 매체에 이르기까지 시스템의 모든 수준에서 발생할 수 있다. 최신 시스템은 여러 계층에서 손상을 감지하고 복구하거나 수정하려고 시도한다. 이것은 거의 항상 성공하지만, 시스템 메모리에 도착하는 정보가 손상되어 예측할 수 없는 결과를 초래하는 경우는 매우 드물다.[1]
전송 중인 데이터 손상은 다양한 원인으로 발생한다. 데이터 전송 중단은 데이터 손실을 야기한다. 환경 조건은 특히 무선 전송 방식을 처리할 때 데이터 전송을 방해할 수 있다. 짙은 구름은 위성 전송을 차단할 수 있으며, 무선 네트워크는 전자레인지와 같은 장치의 간섭에 취약하다.[1]
하드웨어 및 소프트웨어 오류는 데이터 손실의 두 가지 주요 원인이다. 배경 방사선, 헤드 크래시, 저장 장치의 노후화 또는 마모는 전자에 속하며, 소프트웨어 오류는 일반적으로 코드의 소프트웨어 버그로 인해 발생한다.[1] 우주선은 DRAM에서 대부분의 소프트 에러를 유발한다.[1]
참조
[1]
웹사이트
Solar Storms: Fast Facts
http://www.scientifi[...]
Nature Publishing Group
2009-12-08
[2]
웹사이트
Silent Data Corruption
https://support.goog[...]
Google Inc.
2023-01-30
[3]
웹사이트
ZFS saves the day(-ta)!
http://blogs.oracle.[...]
Oracle
2005-11-16
[4]
웹사이트
Shouting in the Datacenter
https://www.youtube.[...]
2008-12-31
[5]
웹사이트
Faulty FC port meets ZFS
http://jforonda.blog[...]
2007-01-31
[6]
웹사이트
Are Disks the Dominant Contributor for Storage Failures? A Comprehensive Study of Storage Subsystem Failure Characteristics
http://www.usenix.or[...]
USENIX
2014-01-18
[7]
웹사이트
Draft 1.3
http://indico.cern.c[...]
CERN
2007-04-08
[8]
웹사이트
Observations on Errors, Corrections, & Trust of Dependent Systems
http://perspectives.[...]
[9]
서적
Proceedings of the Workshop on Hot Topics in Operating Systems
2021-06-02
[10]
간행물
HotOS 2021: Cores That Don't Count (Fun Hardware)
https://www.youtube.[...]
2021-06-02
[11]
웹사이트
Silent data corruption in disk arrays: A solution
http://www.necam.com[...]
NEC
2020-12-14
[12]
웹사이트
A Conversation with Jeff Bonwick and Bill Moore
http://queue.acm.org[...]
Association for Computing Machinery
2020-12-14
[13]
뉴스
Keeping Bits Safe: How Hard Can It Be?
http://queue.acm.org[...]
2014-01-02
[14]
conference
Silent corruptions
https://indico.desy.[...]
[15]
웹사이트
Detection and Correction of Silent Data Corruption for Large-Scale High-Performance Computing
http://www.fiala.me/[...]
IEEE
2015-01-26
[16]
웹사이트
Rachet Up Reliability for Mission-Critical Applications: Intel Instruction Replay Technology
http://www.intel.com[...]
Intel
2016-01-27
[17]
웹사이트
Read Error Severities and Error Management Logic
http://pcguide.com/r[...]
2012-04-04
[18]
웹사이트
How I Use the Advanced Capabilities of Btrfs
http://www.oracle.co[...]
Oracle Corporation
2014-01-02
[19]
Citation
Q111972797
2014-08-12
본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.
문의하기 : help@durumis.com