Словарь данных
Словарь данных (англ. data dictionary) — это централизованное хранилище метаданных, содержащее структурированное описание элементов данных, их типов, форматов, взаимосвязей, правил валидации и источников происхождения в рамках информационной системы, базы данных или организации в целом. Словарь данных служит инструментом стандартизации и документирования данных, обеспечивая единообразное понимание их смысла и структуры всеми участниками процессов управления данными.
История
Идея документирования данных возникла одновременно с развитием систем управления базами данных (СУБД) в 1960-х годах. Первые словари данных были частью программного обеспечения СУБД и представляли собой системные таблицы, описывающие структуру реляционных баз данных (например, таблицы, столбцы, индексы). В 1970-х — 1980-х годах, с ростом сложности корпоративных информационных систем, появились автономные (внешние) словари данных, не привязанные к конкретной СУБД. Они позволяли документировать данные из разных источников, включая файлы, отчёты и программы.
В 1990-х годах концепция словаря данных была расширена в рамках управления корпоративными данными и метаданными. Появились репозитории метаданных, которые включали не только структурные описания, но и бизнес-правила, модели данных (например, в нотации IDEF1X или ER-диаграммы) и информацию о происхождении данных (lineage). В 2000-х годах, с распространением практик управления данными (Data Governance) и регуляторных требований (например, Basel II, GDPR, 152-ФЗ «О персональных данных»), словари данных стали важным элементом обеспечения качества данных, их прозрачности и соответствия нормативным актам.
Классификация
Словари данных классифицируются по нескольким признакам.
По способу интеграции
- Активные (Active): Встроены непосредственно в СУБД. Автоматически обновляются при изменении структуры базы данных (например, создании таблицы или добавлении столбца). Примером служит системный каталог (system catalog) в Oracle, PostgreSQL или Microsoft SQL Server.
- Пассивные (Passive): Существуют отдельно от СУБД, часто в виде документов (Excel, Word, Confluence) или специализированного программного обеспечения. Требуют ручного обновления при изменении структуры данных, что может приводить к расхождениям между реальной схемой и её описанием.
- Гибридные: Сочетают автоматическое извлечение метаданных из источников с ручным дополнением бизнес-описаний и правил.
По уровню детализации
- Физический (Physical): Описывает технические характеристики данных в конкретной системе: имена таблиц и столбцов, типы данных (INTEGER, VARCHAR, DATE), размеры, индексы, ограничения (NOT NULL, PRIMARY KEY, FOREIGN KEY).
- Логический (Logical): Описывает данные с точки зрения бизнес-пользователей: бизнес-названия (например, «Дата рождения клиента» вместо «BIRTH_DT»), определения, допустимые значения, связи между сущностями (например, «Клиент может иметь несколько заказов»).
- Концептуальный (Conceptual): Описывает высокоуровневые бизнес-сущности и их взаимосвязи, не привязываясь к конкретным системам и технологиям. Используется на этапе стратегического планирования данных.
Структура и содержание
Типичный словарь данных для одного элемента данных (атрибута) включает следующие поля:
- Имя элемента: Техническое имя (например,
CUST_LAST_NAME). - Бизнес-имя: Понятное пользователю название (например, «Фамилия клиента»).
- Определение: Чёткое описание того, что представляет собой данный элемент (например, «Фамилия физического лица, являющегося клиентом банка, в соответствии с документом, удостоверяющим личность»).
- Тип данных: Технический тип (строка, число, дата, булево значение).
- Формат: Правила представления (например,
VARCHAR(100),DATE (YYYY-MM-DD),DECIMAL(10,2)). - Допустимые значения: Список возможных значений или диапазон (например,
M/F,0-150для возраста, ссылка на справочник). - Источник: Система или процесс, из которого данные поступают (например, CRM-система, внешний API, ручной ввод).
- Правила валидации: Бизнес-правила, которым должны соответствовать данные (например, «Поле обязательно для заполнения», «Значение должно быть уникальным»).
- Владелец данных: Подразделение или должностное лицо, ответственное за качество и актуальность данных.
- Дата последнего изменения: Метка времени последнего обновления записи в словаре.
Применение
Словари данных используются в различных аспектах управления данными и разработки информационных систем:
- Проектирование баз данных: Обеспечивают единообразие именования и структуры данных, упрощают создание моделей данных.
- Разработка программного обеспечения: Позволяют разработчикам быстро находить и понимать структуру данных, снижая количество ошибок интеграции.
- Интеграция данных (ETL/ELT): Служат источником информации о форматах и правилах преобразования данных при переносе между системами.
- Аналитика и бизнес-отчётность: Помогают аналитикам и бизнес-пользователям правильно интерпретировать значения в отчётах и дашбордах.
- Управление качеством данных: Позволяют выявлять несоответствия данных установленным правилам и стандартам.
- Обеспечение соответствия нормативным требованиям: Документирование обработки персональных данных (в соответствии с 152-ФЗ), финансовой отчётности и других регулируемых данных.
- Обучение новых сотрудников: Служат справочным материалом для быстрого ознакомления с корпоративной информационной средой.
Инструменты
Существует множество программных продуктов для создания и ведения словарей данных, от простых решений до корпоративных платформ управления метаданными:
- Встроенные в СУБД: Системные каталоги Oracle Data Dictionary, PostgreSQL
information_schema, Microsoft SQL Serversysschema. - Специализированные инструменты: Erwin Data Modeler, SAP PowerDesigner, IBM InfoSphere Data Architect.
- Платформы управления метаданными: Informatica Enterprise Data Catalog, Collibra, Alation, Ataccama ONE.
- Открытое программное обеспечение: Apache Atlas, Amundsen (от Lyft), DataHub (от LinkedIn).
- Простые решения: Документы Microsoft Excel, Google Sheets, вики-страницы (Confluence, MediaWiki).
Словарь данных и реестр данных
Понятия «словарь данных» и «реестр данных» (data registry) часто смешиваются, но имеют различия. Словарь данных описывает структуру и значение данных, в то время как реестр данных (или каталог данных) — это инвентаризация всех доступных наборов данных, их источников и местоположений. Реестр данных отвечает на вопрос «какие данные у нас есть и где они находятся?», а словарь данных — на вопрос «что означают эти данные и как они устроены?». На практике эти инструменты часто дополняют друг друга в рамках единой системы управления метаданными.
Критика
Несмотря на свою полезность, словари данных имеют ряд недостатков:
- Трудоёмкость поддержки: Ведение актуального словаря данных, особенно пассивного, требует значительных ручных усилий и дисциплины. При частых изменениях в системах словарь быстро устаревает.
- Сложность согласования: В крупных организациях с большим количеством разнородных систем согласование единых определений и форматов данных может быть крайне сложным и политизированным процессом.
- Неполнота: Словари данных часто описывают только структурированные данные (базы данных, файлы CSV) и редко охватывают неструктурированные данные (документы, изображения, видео).
- Отсутствие автоматизации: Многие организации продолжают использовать словари данных в виде Excel-файлов, которые не интегрированы с системами-источниками, что снижает их ценность.
Источники
- ГОСТ Р ИСО/МЭК 11179-2010 «Информационная технология. Регистры метаданных (словари данных)».
- DAMA International. «DAMA-DMBOK: Data Management Body of Knowledge». Technics Publications, 2017.
- Inmon, W. H. «Building the Data Warehouse». John Wiley & Sons, 2005.
- Date, C. J. «An Introduction to Database Systems». Addison-Wesley, 2003.
- Федеральный закон от 27.07.2006 № 152-ФЗ «О персональных данных».
BFOmetr — база данных и аналитика по компаниям России.
На главную BFOmetr →