Величины, знаки или символы, над которыми компьютер выполняет операции.
В информатике данные (рассматриваемые как единственное, множественное число или как неисчисляемое существительное ) — это любая последовательность одного или нескольких символов ; datum — это отдельный символ данных. Данные требуют интерпретации, чтобы стать информацией . Цифровые данные — это данные, представленные с использованием двоичной системы счисления единиц (1) и нулей (0) вместо аналогового представления. В современных (после 1960 года) компьютерных системах все данные являются цифровыми.
Элементы физической памяти компьютера состоят из адреса и байта/слова хранения данных. Цифровые данные часто хранятся в реляционных базах данных , таких как таблицы или базы данных SQL, и, как правило, могут быть представлены в виде абстрактных пар ключ/значение. Данные могут быть организованы во множество различных типов структур данных , включая массивы, графики и объекты . Структуры данных могут хранить данные множества различных типов , включая числа , строки и даже другие структуры данных .
Характеристики
Метаданные помогают преобразовывать данные в информацию. Метаданные — это данные о данных. Метаданные могут подразумеваться, указываться или быть заданными.
Данные, относящиеся к физическим событиям или процессам, будут иметь временной компонент. Этот временной компонент может подразумеваться. Это тот случай, когда устройство, такое как регистратор температуры, получает данные от датчика температуры . Когда температура получена, предполагается, что данные имеют временную ссылку на текущий момент . Таким образом, устройство записывает дату, время и температуру вместе. Когда регистратор данных передает температуры, он также должен сообщать дату и время в качестве метаданных для каждого показания температуры.
По сути, компьютеры следуют последовательности инструкций, которые им даны в форме данных. Набор инструкций для выполнения заданной задачи (или задач) называется программой . Программа — это данные в форме закодированных инструкций для управления работой компьютера или другой машины. [2] В номинальном случае программа, выполняемая компьютером, будет состоять из машинного кода . Элементы хранения , которыми манипулирует программа, но которые фактически не выполняются центральным процессором (ЦП), также являются данными. В своей наиболее существенной части, единичный элемент данных — это значение, хранящееся в определенном месте. Следовательно, компьютерные программы могут работать с другими компьютерными программами, манипулируя их программными данными.
Чтобы сохранить байты данных в файле, их необходимо сериализовать в формате файла . Обычно программы хранятся в специальных типах файлов, отличных от тех, которые используются для других данных. Исполняемые файлы содержат программы; все остальные файлы также являются файлами данных . Однако исполняемые файлы могут также содержать данные, используемые программой, которые встроены в программу. В частности, некоторые исполняемые файлы имеют сегмент данных , который номинально содержит константы и начальные значения для переменных, и то и другое можно считать данными.
Например, пользователь может сначала дать указание операционной системе загрузить программу текстового процессора из одного файла, а затем использовать запущенную программу для открытия и редактирования документа, хранящегося в другом файле. В этом примере документ будет считаться данными. Если текстовый процессор также имеет проверку орфографии , то словарь (список слов) для проверки орфографии также будет считаться данными. Алгоритмы , используемые проверкой орфографии для предложения исправлений, будут либо данными машинного кода , либо текстом на некотором интерпретируемом языке программирования .
В альтернативном использовании двоичные файлы (которые не могут быть прочитаны человеком ) иногда называют данными , в отличие от текста, который может быть прочитан человеком . [3]
Общий объем цифровых данных в 2007 году оценивался в 281 миллиард гигабайт (281 эксабайт ). [4] [5]
Ключи и значения данных, структуры и сохранение
Ключи в данных обеспечивают контекст для значений. Независимо от структуры данных, всегда присутствует ключевой компонент. Ключи в данных и структурах данных необходимы для придания смысла значениям данных. Без ключа, который напрямую или косвенно связан со значением, или набора значений в структуре, значения становятся бессмысленными и перестают быть данными. То есть, должен быть ключевой компонент, связанный с компонентом значения, чтобы он считался данными. [ необходима цитата ]
Данные могут быть представлены в компьютерах несколькими способами, как показано в следующих примерах:
БАРАН
Оперативная память (ОЗУ) хранит данные, к которым ЦП имеет прямой доступ. ЦП может манипулировать данными только в пределах своих регистров процессора или памяти. Это противоположно хранению данных, где ЦП должен управлять передачей данных между устройством хранения (диск, лента...) и памятью. ОЗУ представляет собой массив линейных смежных ячеек, которые процессор может считывать или записывать, предоставляя адрес для операции чтения или записи. Процессор может работать с любой ячейкой памяти в любое время и в любом порядке. В ОЗУ наименьшим элементом данных является двоичный бит . Возможности и ограничения доступа к ОЗУ зависят от процессора. В общем случае основная память организована как массив ячеек, начинающихся с адреса 0 ( шестнадцатеричный 0). Каждая ячейка может хранить обычно 8 или 32 бита в зависимости от архитектуры компьютера .
Ключи
Ключи данных не обязательно должны быть прямым аппаратным адресом в памяти. Косвенные , абстрактные и логические коды ключей могут храниться в ассоциации со значениями для формирования структуры данных . Структуры данных имеют предопределенные смещения (или ссылки или пути) от начала структуры, в которой хранятся значения данных. Поэтому ключ данных состоит из ключа к структуре плюс смещения (или ссылок или путей) в структуру. Когда такая структура повторяется, сохраняя вариации значений данных и ключей данных в одной и той же повторяющейся структуре, результат можно считать похожим на таблицу , в которой каждый элемент повторяющейся структуры считается столбцом, а каждое повторение структуры рассматривается как строка таблицы. В такой организации данных ключ данных обычно является значением в одном (или составным из значений в нескольких) столбцах.
Организованные повторяющиеся структуры данных
Табличное представление повторяющихся структур данных — это лишь одна из многих возможностей. Повторяющиеся структуры данных могут быть организованы иерархически , так что узлы связаны друг с другом каскадом родительско-дочерних отношений. Значения и потенциально более сложные структуры данных связаны с узлами. Таким образом, узловая иерархия предоставляет ключ для обращения к структурам данных, связанным с узлами. Это представление можно рассматривать как перевернутое дерево . Современные файловые системы операционных систем компьютеров являются распространенным примером; и XML — еще один.
Сортированные или упорядоченные данные
Данные имеют некоторые неотъемлемые особенности, когда они сортируются по ключу . Все значения для подмножеств ключа появляются вместе. При последовательном прохождении через группы данных с тем же ключом или подмножеством изменений ключа это называется в кругах обработки данных разрывом или контрольным разрывом . Это особенно облегчает агрегацию значений данных по подмножествам ключа.
Периферийное хранилище
До появления энергонезависимой памяти большого объема, такой как флэш-память , постоянное хранение данных традиционно достигалось путем записи данных на внешние блочные устройства, такие как магнитная лента и дисковые накопители . Эти устройства обычно ищут местоположение на магнитном носителе, а затем считывают или записывают блоки данных заранее определенного размера. В этом случае местоположение поиска на носителе является ключом данных, а блоки являются значениями данных. Ранние файловые системы с необработанными данными на диске или дисковые операционные системы резервировали непрерывные блоки на диске для файлов данных . В этих системах файлы могли быть заполнены, исчерпав пространство данных до того, как все данные были записаны на них. Таким образом, много неиспользуемого пространства данных резервировалось непродуктивно, чтобы обеспечить достаточное свободное место для каждого файла. Более поздние файловые системы представили разделы . Они резервировали блоки дискового пространства данных для разделов и использовали выделенные блоки более экономично, динамически назначая блоки раздела файлу по мере необходимости. Чтобы достичь этого, файловая система должна была отслеживать, какие блоки использовались или не использовались файлами данных в каталоге или таблице распределения файлов. Хотя это позволило лучше использовать дисковое пространство данных, это привело к фрагментации файлов по всему диску и сопутствующим накладным расходам из-за дополнительного времени поиска для чтения данных. Современные файловые системы динамически реорганизуют фрагментированные файлы для оптимизации времени доступа к файлам. Дальнейшее развитие файловых систем привело к виртуализации дисковых накопителей, т. е. когда логический диск может быть определен как разделы из нескольких физических дисков.
Индексированные данные
Извлечение небольшого подмножества данных из гораздо большего набора может подразумевать неэффективный последовательный поиск по данным. Индексы — это способ копирования ключей и адресов местоположений из структур данных в файлах, таблицах и наборах данных, а затем их организация с использованием структур перевернутого дерева для сокращения времени, необходимого для извлечения подмножества исходных данных. Для этого ключ подмножества данных, которые необходимо извлечь, должен быть известен до начала извлечения. Наиболее популярными индексами являются методы индексации B-дерева и динамического хэш- ключа. Индексирование — это накладные расходы для подачи и извлечения данных. Существуют и другие способы организации индексов, например, сортировка ключей и использование алгоритма бинарного поиска .
Таксономическая ранговая структура классов , которая является примером иерархической структуры данных; и
во время выполнения — создание ссылок на структуры данных объектов в памяти, экземпляры которых были созданы из библиотеки классов .
Только после создания экземпляра существует объект указанного класса. После того, как ссылка на объект очищается, объект также прекращает свое существование. Места памяти, где хранились данные объекта, являются мусором и переклассифицируются как неиспользуемая память, доступная для повторного использования.
Современные масштабируемые и высокопроизводительные технологии сохранения данных, такие как Apache Hadoop , опираются на массивно-параллельную распределенную обработку данных на многих обычных компьютерах в сети с высокой пропускной способностью. В таких системах данные распределены по нескольким компьютерам, и поэтому любой конкретный компьютер в системе должен быть представлен в ключе данных, либо напрямую, либо косвенно. Это позволяет различать два идентичных набора данных, каждый из которых обрабатывается на другом компьютере в одно и то же время.
^ "Data". Lexico . Архивировано из оригинала 2019-06-23 . Получено 14 января 2022 .
^ "Компьютерная программа". Оксфордский карманный словарь современного английского языка . Архивировано из оригинала 28 ноября 2011 года . Получено 11 октября 2012 года .
^ "file(1)". Страницы руководства OpenBSD . 24 декабря 2015 г. Архивировано из оригинала 5 февраля 2018 г. Получено 4 февраля 2018 г.
^ Пол, Райан (12 марта 2008 г.). «Исследование: объем цифровой информации > глобальной емкости хранилища». Ars Technics. Архивировано из оригинала 13 марта 2008 г. Получено 13 марта 2008 г.
^ Ганц, Джон Ф.; и др. (2008). «Разнообразная и взрывоопасная цифровая вселенная». International Data Corporation через EMC. Архивировано из оригинала 11 марта 2008 года . Получено 12 марта 2008 года .