Мне нужно сериализовать некоторые данные в двоичном формате для эффективности (datalog, где типичны файлы 10-100 МБ), и я разрабатываю детали форматирования. Мне интересно, реально ли мне беспокоиться о повреждении файла/исправлении ошибок/и т. Д.Форматы двоичных файлов: необходимость исправления ошибок?
Каковы обстоятельства, при которых может произойти повреждение файлов? Должен ли я строить устойчивость к коррупции в своем двоичном формате? Или я должен обернуть поток nonrobust-to-коррупции с помощью какого-то кода с исправлением ошибок? (любые предложения? Я использую Java). Или мне просто не нужно беспокоиться об этом?
редактировать: предварительных двоичный формат, так как у меня есть это прямо сейчас, содержит кучу сегментов переменной длины, поэтому я немного обеспокоен тем, что если я когда-либо повреждение данных, то при чтении его обратно, я мог бы получить не синхронизируется и не может восстановить +, я теряю остальную часть файла.
Насколько важны данные? если в байте 1 возникает ошибка, весь файл пропадает? вы можете восстановить большинство других данных? – Randy
Я думаю, что коды HAMMING - хороший вариант, если вам нужна определенная надежность. fwiw – Randy
Коды HAMMING обрабатывают биты, и это может быть интенсивным вычислением. Предпочтительным может быть избыточность XOR (как в RAID). –