Открыть сервис

Идентификатор в информатике и системах

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

Общие принципы

Идентификатор выполняет функцию различителя: он позволяет системе отличить один объект от другого и обратиться к нужному объекту без двусмысленности. В зависимости от задачи идентификаторы бывают:

  • Уникальные — не повторяются в пределах множества (номер паспорта, серийный номер изделия).
  • Составные — формируются из нескольких полей (например, код подразделения плюс порядковый номер).
  • Искусственные — присваиваются произвольно (UUID, автоинкрементный номер).
  • Естественные — основаны на свойствах самого объекта (ИНН, ISBN, координаты).

Идентификатор не обязан нести смысловую нагрузку: его главная задача — обеспечивать однозначную ссылку. При этом на практике часто совмещают обе функции, кодируя в идентификаторе категорию, регион или дату.

Идентификаторы в программировании

В языках программирования идентификатор — это имя, присваиваемое переменной, функции, классу, типу или иному элементу кода. Правила формирования имён задаются синтаксисом языка: обычно допускаются латинские буквы, цифры и знак подчёркивания, причём первый символ не может быть цифрой. Многие языки различают регистр символов, то есть Value и value считаются разными именами.

Отдельно выделяют:

  • Ключевые слова — зарезервированные идентификаторы, имеющие специальное значение (if, while, class); их нельзя использовать как обычные имена.
  • Пространства имён — механизм группировки, позволяющий повторять одинаковые имена в разных контекстах без конфликта.
  • Квалифицированные имена — составные идентификаторы вида модуль.функция.

Соглашения о стиле (например, camelCase или snake_case) не влияют на работу программы, но обеспечивают читаемость кода.

Идентификаторы в базах данных

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

  • автоинкрементные целые числа;
  • глобально уникальные идентификаторы (GUID/UUID);
  • естественные ключи (номер документа, код товара).

Внешний ключ ссылается на первичный ключ другой таблицы и обеспечивает связность данных. В распределённых системах, где несколько узлов генерируют записи независимо, применяют UUID — 128-битные значения, вероятность совпадения которых практически ничтожна. В РФ для учёта организаций используется ИНН, для граждан — СНИЛС; эти номера выполняют роль государственных идентификаторов.

Сетевые и системные идентификаторы

В вычислительных сетях и операционных системах идентификаторы обеспечивают адресацию и учёт ресурсов:

ИдентификаторНазначение
IP-адресАдресация узла в сети
MAC-адресУникальный адрес сетевого адаптера
PIDИдентификатор процесса в ОС
UID/GIDИдентификаторы пользователя и группы
URLАдрес ресурса в интернете
Серийный номерУчёт устройства или изделия

MAC-адрес присваивается производителем сетевого оборудования и теоретически уникален для каждого адаптера. PID существует только в течение жизни процесса. UID в операционных семейства Unix определяет права доступа пользователя к файлам и ресурсам.

Государственные и коммерческие идентификаторы

Помимо технических, существуют идентификаторы, закреплённые нормативно или отраслевыми стандартами:

Такие номера позволяют государственным и коммерческим системам однозначно сопоставлять сведения об объекте из разных источников.

Проблемы и риски

Обращение с идентификаторами порождает ряд практических проблем. Утечка персональных идентификаторов (СНИЛС, номера документов) создаёт риск мошенничества, поэтому такие данные относят к категории персональных и защищают законодательно. Ошибки в генерации идентификаторов приводят к коллизиям — совпадению значений у разных объектов, что нарушает целостность данных. Кроме того, «умные» идентификаторы, кодирующие сведения об объекте, со временем устаревают: если заложенный в номер признак меняется, идентификатор перестаёт соответствовать действительности.

Значение

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

Источники: стандарты ISO/IEC, документация по языкам программирования, руководства по проектированию баз данных, нормативные акты РФ о персональных данных и налоговом учёте.

Загружаем BFOmetr…