Interested Article - Повреждение данных

Разрушение фотографии. В этом случае причина разрушения заключается в неудачном восстановлении данных с диска

Повреждение данных относится к ошибкам компьютерных данных , которые случаются во время записи, чтения, сохранения, передачи или обработки данных и которые представляют непредусмотренные изменения в исходных данных. Компьютер, системы передачи и системы хранения предпринимают много мер для поддержания целостности информации или отсутствия ошибок.

В общем случае, когда случается повреждение данных, файл , содержащий эти данные, будет давать неожиданные результаты, когда будет использован системой или приложением. Результат может быть разным, от небольших потерь данных до крушения системы. Например, если разрушен, при попытке пользователем открыть этот файл с помощью редактора документа он может получить сообщение об ошибке , тогда файл может быть либо не открыт вообще, либо открыт с некоторыми искажениями (или в некоторых случаях полностью разрушен). Также, если повреждается файл изображения, большая часть информации теряется.

Некоторые виды вредоносных программ могут намеренно разрушать файлы путём записи мусора, хотя незловредные вирусы могут также непреднамеренно разрушить файлы при попытке получить к ним доступ. Если вирус или троян пытается изменить метод доступа для критичных файлов операционной системы компьютера, вся система может стать неустойчивой.

Некоторые программы могут дать предложение исправить файлы автоматически (при ошибке), а некоторые программы не могут исправить их. Всё зависит от уровня разрушения и встроенной функциональности приложений, обрабатывающих ошибку. Имеется различные причины разрушений.

Обзор

Имеется два типа повреждения данных, связанных с компьютерными системами — нераспознанные и распознанные. Нераспознанное повреждение данных, известное также как скрытое повреждение данных , приводит к наиболее опасным ошибкам, поскольку нет никаких симптомов, что данные неверны. Распознанное повреждение данных может быть постоянным с потерей данных или временным, когда некоторые части системы способны обнаружить и исправить ошибку. В последнем случае никакого фактического повреждения данных нет.

Повреждение данных может произойти на любом уровне системы, от центрального узла до носителей информации. Современные системы пытаются обнаружить разрушения на многих уровнях и затем восстановить данные или исправить разрушение. Почти всегда эта операция успешна, но в очень редких случаях информация, выбранная в системную память, оказывается разрушенной и может вызвать непредсказуемые последствия.

Повреждение данных во время передачи имеет различные причины. Прерывание передачи данных вызывает . Условия окружающей среды могут влиять на передачу данных, особенно когда имеем дело с методами беспроводной передачи. Плотные облака могут блокировать спутниковую передачу. Беспроводные сети чувствительны к помехам от устройств, таких как микроволновые печи.

Аппаратурные и программные сбои являются двумя основными причинами . , и механическое старение или изнашивание устройства попадает в первую категорию, в то время как программные ошибки обычно происходят вследствие ошибок в коде программ. Космические лучи вызывают большинство в DRAM .

Нераспознанные повреждения данных

Некоторые ошибки проходят незамеченными без обнаружения их дисковыми встроенными программами или операционной системой компьютера. Эти ошибки известны как скрытые повреждения данных .

Существует много источников ошибок, кроме самой дисковой системы. Например, кабели могут быть неплотно прикреплены, питание может быть нестабильным , может оказывать влияние вибрации, например от громких звуков , сети могут внести нераспознанные ошибки передачи, космические лучи и много других подобных причин вызывают , и так далее. В 39.000 проанализированных систем хранения информации было обнаружено, что 5–10 % ошибок системы были вызваны ошибками во встроенном (прошитом) программном обеспечении систем . Подводя итог, следует указать, что число нераспознанных ошибок по наблюдениям CERN существенно превосходит одной ошибки на каждые 10 16 бит . Сетевой магазин Amazon.com признаёт похожую величину повреждения данных в своих системах .

Одна из проблем заключается в том, что ёмкость дисковых накопителей растёт постоянно, а доля ошибок в них остаётся неизменной. Скорость повреждения данных всё время остаётся постоянной по времени, это означает, что современные диски ничуть не надёжнее старых. В старых дисках вероятность повреждения данных была очень мала ввиду малого количества запоминаемых данных. В современных дисках вероятность много выше, поскольку они запоминают много больше данных, не становясь более надёжными. Таким образом, скрытые повреждения данных не вызывают серьёзной озабоченности, пока запоминающие устройства остаются относительно малы и медленны. Следовательно, пользователи дисков с малой вместимостью очень редко обнаруживают скрытые повреждения, так что повреждение данных не рассматривалась как проблема, требующая решения. Однако в настоящее время с появлением больших накопителей и очень быстрых RAID контроллеров пользователи способны перенести 10 16 бит за достаточно короткое время, так что легко достичь порога повреждения данных .

В качестве примера создатель ZFS Джеф Бонвик утверждает, что быстрая база данных в компании Greenplum , которая специализируется на разработке программного обеспечения для больших хранилищ данных и аналитике, обнаруживает разрушение данных каждые 15 минут . В качестве другого примера изучение, проведённое компанией NetApp на более чем 1,5 миллионах HDD в течение 41 месяцев, нашло более чем 400000 скрытых повреждений данных, из которых более 30000 не были обнаружены контроллерами RAID. Ещё одно исследование, осуществлённое ЦЕРН в течение более шести месяцев над более чем 97 петабайт данных, обнаружило около 128 мегабайт полностью разрушенных данных .

Скрытое повреждение данных может привести к , при которых система может работать некоторый период времени с необнаруженной начальной ошибкой, которая вызывает постепенное увеличение числа проблем, пока повреждение не будет обнаружено . Например, сбои в метаданных файловой системы могут привести к частичному повреждению нескольких файлов или даже могут сделать недоступной всю файловую систему.

Меры противодействия

Когда повреждение данных ведёт себя как процесс Пуассона , где каждый бит данных имеет независимую малую вероятность изменения, повреждение данных можно обнаружить с помощью контрольных сумм и часто может быть исправлено с помощью кодов коррекции ошибок .

Если обнаружены неисправимые повреждения данных, могут быть использованы процессы, такие как автоматическая повторная передача данных или восстановление из резервной копии . Некоторые уровни RAID -массивов имеют возможность запоминать и использовать биты чётности для запоминаемых на наборе дисков данных и могут восстановить разрушенные данные при выходе из строя одного или нескольких дисков, что зависит от уровня реализованного RAID. Некоторые архитектуры ЦП используют различные прозрачные проверки для обнаружения и смягчения повреждения данных в кэше процессоров , буферах ЦП и вычислительном конвейере . Например, технология Intel Instruction Replay доступна на процессорах Intel Itanium .

Многие ошибки обнаруживаются и исправляются дисководами с помощью ECC / CRC кодов , которые запоминаются на диске для каждого сектора. Если дисковод обнаруживает несколько ошибок чтения сектора, он делает копию сбойного сектора в другую часть диска, помечая сбойный сектор как пустой без вовлечения операционной системы (хотя это может быть отложено до следующей записи в сектор). Такое «тихое исправление» может быть проконтролировано с помощью S.M.A.R.T. и для большинства операционных систем доступны средства автоматической проверки дисковода об угрожающих сбоях вследствие ухудшения SMART-параметров.

Некоторые файловые системы , такие как Btrfs , HAMMER , ReFS и ZFS , используют внутреннее контрольное суммирование данных и метаданных для обнаружения скрытого повреждения данных. Кроме того, если разрушение обнаружено и файловая система использует RAID-механизмы, которые обеспечивают избыточность данных , такие файловые системы могут реконструировать разрушенные данные прозрачно . Такой подход позволяет улучшенную защиту целостности данных, покрывающую весь путь данных, что известно как защита данных от начала до конца ( англ. end-to-end data protection), по сравнению с другими подходами, которые не распространяются на другие уровни защиты целостности и допускают повреждение данных при переходе данных от одного уровня к другому

является другим методом сокращения возможности повреждения данных, когда ошибки диска обнаружены и исправлены, перед тем как накопится много ошибок. Вместо того, чтобы проверять чётность при каждом чтении, чтение проверяется во время регулярного сканирования диска, часто запускаемого как фоновый процесс низкого приоритета. Заметим, что операция «чистки данных» активирует проверку чётности. Если пользователь просто запускает обычную программу, которая читает данные с диска, то чётность не будет проверяться, пока проверка чётности при чтении не будет поддерживаться и не будет разрешена на дисковой подсистеме.

Если применяются подходящие механизмы для обнаружения и лечения повреждения данных, это может обеспечить целостность данных. Это, в частности, важно в коммерческих приложениях (например, в банках ), где необнаруженная ошибка могла бы привести к разрушению индекса базы данных или изменить данные, приводя к радикальным эффектам на банковском счёте. При шифровании или сжимании данных малая ошибка может сделать огромный набор данных бесполезным .

См. также

Примечания

  1. Scientific American . (неопр.) . Nature Publishing Group (21 июля 2008). Дата обращения: 8 декабря 2009. 26 декабря 2010 года.
  2. Eric Lowe. (неопр.) (Blog). Oracle – Core Dumps of a Kernel Hacker's Brain – Eric Lowe's Blog . Oracle (16 ноября 2005). Дата обращения: 9 июня 2012. 5 февраля 2012 года.
  3. bcantrill. (неопр.) (Video file). YouTube . Google (31 декабря 2008). Дата обращения: 9 июня 2012. 3 июля 2012 года.
  4. jforonda. (неопр.) (Blog). Blogger – Outside the Box . Google (31 января 2007). Дата обращения: 9 июня 2012. 26 апреля 2012 года.
  5. (неопр.) . USENIX. Дата обращения: 18 января 2014. 25 января 2022 года.
  6. Bernd Panzer-Steindel. (неопр.) . Data integrity . CERN (8 апреля 2007). Дата обращения: 9 июня 2012. 13 октября 2012 года.
  7. (неопр.) . 29 октября 2013 года.
  8. (неопр.) (PDF). NEC (2009). Дата обращения: 24 октября 2013. 29 октября 2013 года.
  9. (неопр.) . Association for Computing Machinery (15 ноября 2007). Дата обращения: 6 декабря 2010. 16 июля 2011 года.
  10. . , ACM Queue (1 октября 2010). 17 декабря 2013 года. Дата обращения: 2 января 2014.
  11. Lakshmi N. Bairavasundaram; Garth R. Goodson; Shankar Pasupathy; Jiri Schindler. (неопр.) // Proceedings of the International Conference on Measurements and Modeling of Computer Systems (SIGMETRICS'07). — San Diego, California, United States: ACM, 2007. — June. — С. 289—300 . — doi : .
  12. David Fiala; Frank Mueller; Christian Engelmann; Rolf Riesen; Kurt Ferreira; Ron Brightwell.: (неопр.) . fiala.me . IEEE (ноябрь 2012). Дата обращения: 26 января 2015. 7 ноября 2014 года.
  13. Steve Bostian. (неопр.) (PDF). Intel (2012). Дата обращения: 27 января 2016. 2 февраля 2016 года.
  14. (неопр.) . Дата обращения: 4 апреля 2012. 7 апреля 2012 года.
  15. Margaret Bierman; Lenz Grimmer.: (неопр.) . Oracle Corporation (август 2012). Дата обращения: 2 января 2014. 2 января 2014 года.
  16. Yupu Zhang; Abhishek Rajimwale; Andrea C. Arpaci-Dusseau; Remzi H. Arpaci-Dusseau.: (неопр.) (PDF). Computer Sciences Department, University of Wisconsin (4 февраля 2010). Дата обращения: 12 августа 2014. 26 июня 2011 года.

Литература

Ссылки

Same as Повреждение данных