Преобразование данных
Эта статья нуждается в дополнительных цитатах для проверки . ( ноябрь 2023 г. ) |
Преобразование данных |
---|
Концепции |
Языки трансформации |
Техники и трансформации |
Приложения |
Связанный |
Преобразование данных — это преобразование компьютерных данных из одного формата в другой. В компьютерной среде данные кодируются различными способами. Например, компьютерное оборудование построено на основе определенных стандартов, которые требуют, чтобы данные содержали, например, проверки битов четности . Точно так же операционная система основана на определенных стандартах обработки данных и файлов. Более того, каждая компьютерная программа обрабатывает данные по-своему. Всякий раз, когда какая-либо из этих переменных изменяется, данные должны быть каким-то образом преобразованы, прежде чем их можно будет использовать другим компьютером, операционной системой или программой. Даже разные версии этих элементов обычно включают разные структуры данных. Например, изменение битов из одного формата в другой, обычно в целях совместимости приложений или возможности использования новых функций, представляет собой просто преобразование данных. Преобразование данных может быть таким же простым, как преобразование текстового файла из одной системы кодировки символов в другую; или более сложные, такие как преобразование форматов офисных файлов или преобразование форматов изображений и форматов аудиофайлов .
Существует множество способов преобразования данных в компьютерной среде. Это может быть плавно, как в случае обновления до более новой версии компьютерной программы. Альтернативно, преобразование может потребовать обработки с использованием специальной программы преобразования, или оно может включать сложный процесс прохождения промежуточных этапов или включать сложные процедуры «экспорта» и «импорта», которые могут включать преобразование в вкладку и из нее. Текстовый файл, разделенный запятыми или разделителями. В некоторых случаях программа может распознавать несколько форматов файлов данных на этапе ввода данных, а затем сохранять выходные данные в нескольких различных форматах. Такую программу можно использовать для преобразования формата файла. Если исходный формат или целевой формат не распознаются, то иногда может быть доступна третья программа, которая позволяет преобразовать в промежуточный формат, который затем можно переформатировать с использованием первой программы. Существует множество возможных сценариев.
Информационные основы
[ редактировать ]Прежде чем выполнять какое-либо преобразование данных, пользователь или программист приложения должен помнить о некоторых основах теории вычислений и информации . К ним относятся:
- Компьютер может легко удалить информацию, но добавление информации требует усилий.
- Компьютер может добавлять информацию только на основе правил. [ нужна ссылка ]
- Повышение дискретизации данных или преобразование в более многофункциональный формат не добавляет информации; он просто освобождает место для этого дополнения, что обычно должен сделать человек.
- Данные, хранящиеся в электронном формате, можно быстро модифицировать и анализировать.
Например, изображение с полноцветным изображением можно легко преобразовать в оттенки серого, тогда как обратное преобразование представляет собой трудоемкий процесс. Преобразование текстового файла Unix в текстовый файл Microsoft (DOS/Windows) включает добавление символов, но это не увеличивает энтропию, поскольку основано на правилах; тогда как добавление информации о цвете к изображению в оттенках серого не может быть надежно выполнено программным путем, поскольку для этого требуется добавление новой информации, поэтому любая попытка добавить цвет потребует оценки компьютера на основе предыдущих знаний. Преобразование 24-битного PNG в 48-битный не добавляет к нему информации, а только дополняет существующие значения пикселей RGB нулями. [ нужна ссылка ] , так что пиксель со значением FF C3 56, например, становится FF00 C300 5600. Преобразование позволяет изменить пиксель, чтобы он имел значение, например, FF80 C340 56A0, но само преобразование не делает это возможно только при дальнейших манипуляциях с изображением. Преобразование изображения или аудиофайла в формате с потерями (например, JPEG или Vorbis ) в формат без потерь (например, PNG или FLAC ) или несжатый (например, BMP или WAV ) формат только приводит к потере места, поскольку одно и то же изображение с потерей исходной информации (например, артефакты сжатия с потерями) становится целью. Изображение JPEG никогда не может быть восстановлено до качества исходного изображения, из которого оно было создано, независимо от того, сколько раз пользователь пробовал использовать функцию « Удаление артефактов JPEG » в своей программе обработки изображений.
Автоматическое восстановление информации, которая была потеряна в процессе сжатия с потерями , вероятно, потребует важных достижений в области искусственного интеллекта .
Из-за этих реалий теории вычислений и информации преобразование данных часто представляет собой сложный и подверженный ошибкам процесс, требующий помощи экспертов.
Ключевое преобразование
[ редактировать ]Преобразование данных может происходить непосредственно из одного формата в другой, но многие приложения, конвертирующие между несколькими форматами, используют промежуточное представление , посредством которого любой исходный формат преобразуется в целевой. [1] Например, можно преобразовать кириллический текст из KOI8-R в Windows-1251 , используя таблицу поиска между двумя кодировками, но современный подход заключается в том, чтобы сначала преобразовать файл KOI8-R в Unicode , а затем в Windows-1251. Это более управляемый подход; вместо того, чтобы нуждаться в таблицах поиска для всех возможных пар кодировок символов, приложению нужна только одна таблица поиска для каждого набора символов, которую оно использует для преобразования в Unicode и из него, тем самым уменьшая количество таблиц с сотен до нескольких десятков. [ нужна ссылка ]
Поворотное преобразование аналогичным образом используется и в других областях. Приложения Office, используемые для преобразования между форматами файлов Office, используют свой внутренний формат файла по умолчанию в качестве опорного. Например, текстовый процессор может преобразовать файл RTF в файл WordPerfect , преобразовав RTF в OpenDocument , а затем в формат WordPerfect. Программа преобразования изображений не преобразует изображение PCX в PNG напрямую; вместо этого при загрузке изображения PCX оно декодирует его в простой растровый формат для внутреннего использования в памяти, а при получении команды на преобразование в PNG это изображение из памяти преобразуется в целевой формат. Аудиоконвертер, который преобразует FLAC в AAC, сначала декодирует исходный файл в необработанные данные PCM в памяти, а затем выполняет сжатие AAC с потерями для этого образа памяти для создания целевого файла.
Преобразование потерянных и неточных данных
[ редактировать ]Целью преобразования данных является сохранение всех данных и как можно большего количества встроенной информации. Это можно сделать только в том случае, если целевой формат поддерживает те же функции и структуры данных, что и исходный файл. Преобразование документа текстового процессора в обычный текстовый файл обязательно приводит к потере информации о форматировании, поскольку формат обычного текста не поддерживает такие конструкции обработки текста, как выделение слова жирным шрифтом. По этой причине преобразование из одного формата в другой, который не поддерживает функцию, важную для пользователя, выполняется редко, хотя это может быть необходимо для совместимости, например, преобразование файла из одной версии Microsoft Word в более раннюю версию для разрешить передачу и использование другими пользователями, у которых на компьютере не установлена более поздняя версия Word.
Потери информации можно уменьшить путем аппроксимации в целевом формате. Невозможно преобразовать такой символ, как ä, в ASCII , поскольку в стандарте ASCII он отсутствует, но информация может быть сохранена путем аппроксимации символа как ae . Конечно, это не оптимальное решение и может повлиять на такие операции, как поиск и копирование; и если язык проводит различие между ä и ae , то такое приближение действительно влечет за собой потерю информации.
Преобразование данных также может иметь неточности, возникающие в результате преобразования между концептуально разными форматами. Одним из примеров является парадигма WYSIWYG , существующая в текстовых процессорах и настольных издательских приложениях, в отличие от структурно-описательной парадигмы, присутствующей в SGML , XML и многих производных от них приложениях, таких как HTML и MathML . Использование HTML-редактора WYSIWYG объединяет две парадигмы, и в результате получаются HTML-файлы с неоптимальным, если не нестандартным, кодом. В парадигме WYSIWYG двойной разрыв строки означает новый абзац, поскольку это визуальный сигнал для такой конструкции, но HTML-редактор WYSIWYG обычно преобразует такую последовательность в <BR><BR>, который структурно вообще не является новым абзацем. . Другой пример: преобразование PDF в редактируемый формат текстового процессора — непростая задача, поскольку PDF записывает текстовую информацию, как гравюра на камне, при этом каждому символу присваивается фиксированная позиция, а разрывы строк жестко запрограммированы, тогда как форматы текстовых процессоров допускают перекомпоновку текста. PDF не знает символа пробела между словами — пробел между двумя буквами и пробел между двумя словами различаются только количеством. Таким образом, заголовок с достаточным межбуквенным интервалом для эффекта обычно заканчивается пробелами в файле текстового процессора, например ВВЕДЕНИЕ с интервалом 1. em как ВВЕДЕНИЕ в текстовый процессор.
Открытые и секретные спецификации
[ редактировать ]Успешное преобразование данных требует досконального знания работы как исходного, так и целевого форматов. В случае, если спецификация формата неизвестна, реверс-инжиниринг для выполнения преобразования потребуется . Обратное проектирование позволяет добиться точного приближения к исходным спецификациям, но ошибки и отсутствующие функции все равно могут возникнуть.
Электроника
[ редактировать ]Преобразование формата данных также может происходить на физическом уровне системы электронной связи. преобразование между кодами линий , такими как NRZ и RZ При необходимости можно выполнить .
См. также
[ редактировать ]- Кодировка символов
- Сравнение языков программирования (основные инструкции)#Преобразование данных
- Миграция данных
- Преобразование данных
- Обсуждение данных
- Транскодирование
- Распределенная архитектура управления данными (DDM)
- Преобразование кода (вычисления)
- Перевод из источника в источник
- Уровень представления
Ссылки
[ редактировать ]- ^ Драгош-Антон Манолеску; Маркус Фельтер; Джеймс Ноубл (2006). Языки шаблонов проектирования программ 5 . Аддисон-Уэсли Профессионал. стр. 271–. ISBN 978-0-321-32194-7 .
Манолеску, Имя (2006). Языки шаблонов проектирования программ 5 . Река Аппер-Сэддл, Нью-Джерси: Аддисон-Уэсли. ISBN 0321321944 .