Что такое целостность данных?
Что такое целостность данных?
Она подразумевает поддержание целостности данных, обеспечение точности, безошибочности, согласованности и полной функциональности данных на протяжении всего жизненного цикла. Поддержание целостности данных в едином хранилище должно быть управляемым независимо от количества запросов на доступ, объема и скорости данных. Современные облачные среды требуют сложного непрерывного перемещения данных между распределенными хранилищами и сервисами. Системы высокопроизводительной онлайн-обработки транзакций (OLTP) требуют строгих проверок целостности данных для обеспечения согласованности системы. Инженеры по обработке данных должны проводить проверки целостности в новых и существующих хранилищах и процессах, включая интеграцию, резервное копирование и миграцию в облако. В этой статье рассматриваются проблемы и решения в области управления целостностью данных в облаке.
Целостность данных – это процесс поддержания точности, согласованности и полноты данных на протяжении всего их жизненного цикла. Это ключевая часть обеспечения качества данных, которая гарантирует актуальность и надежность данных организации для обработки транзакций, бизнес-аналитики и аналитики. Целостность данных включает различные методы и протоколы для проверки данных и защиты конфиденциальной информации от несанкционированного доступа.
Почему целостность данных настолько важна? Она гарантирует, что данные организации остаются надежными для учета финансовой и другой деловой активности, а также принятия решений. Целостность данных важна независимо от инструментов и ролей, используемых для обработки данных и их преобразования.
Целостность данных крайне важна в системах онлайн-обработки транзакций (OLTP), поскольку она обеспечивает точную обработку бизнес-транзакций, согласованность финансовых операций и предотвращает такие проблемы, как двойное бронирование или потеря транзакций. Нарушения целостности данных могут привести к таким последствиям, как несоблюдение нормативных требований и снижение удовлетворенности клиентов.
Какие проблемы возникают при сохранении целостности данных?
Обеспечение целостности данных в организации требует решения проблем управления данными, связанных с персоналом и технологиями.
Среды OLTP
Самой большой проблемой целостности данных в средах OLTP является управление параллельными транзакциями при сохранении согласованности данных, особенно во время операций с большими объемами. Для решения этой задачи необходимо сбалансировать строгое соответствие требованиям по атомарности, согласованности, изолированности и долговечности (ACID) с требованиями к эксплуатационным характеристикам. Здесь несколько пользователей должны иметь возможность одновременно изменять одни и те же данные, не сталкиваясь с ситуациями гонки и тупиками, сохраняя при этом возможности обработки данных системой в реальном времени.
Бизнес-аналитика
В случаях использования бизнес-аналитики ограниченная интеграция источников данных и систем не позволяет компаниям сохранять единое и точное представление о своих информационных активах. Кроме того, использование ручного ввода и сбора данных может привести к опечаткам, упущениям и несоответствиям, которые снижают точность данных.
Аудит и отслеживание данных
Еще одна проблема заключается в отсутствии надлежащих журналов аудита, что затрудняет отслеживание истории данных от момента сбора до удаления. Организации рискуют потерять видимость несанкционированных изменений данных. Устаревшие системы еще больше усложняют целостность данных из-за использования устаревших форматов файлов или отсутствия важных функций проверки. Перемещение данных в облако позволяет внедрить более централизованные механизмы обеспечения качества данных и сократить время и усилия, необходимые для проверки целостности данных.
Как защищаются данные в облаке?
Целостность данных можно разделить на два основных типа.
Физическая целостность
Процессы обеспечения физической целостности защищают данные от повреждения в результате стихийных бедствий, перебоев в подаче электроэнергии, аппаратных сбоев или других факторов, влияющих на физические устройства хранения данных. В облаке физическая целостность автоматически управляется поставщиком облачных услуг. В соответствии с моделью совместной ответственности это является обязанностью поставщика облачных услуг.
Например, центры обработки данных AWS предоставляют четырехуровневую инфраструктуру защиты данных физическим устройствам, на которых хранятся ваши данные. Функции защиты данных включают:
- строгий контроль доступа в серверную комнату, обеспеченный многофакторной аутентификацией и электронными средствами управления;
- меры по предотвращению вторжений, такие как автоматическое обнаружение несанкционированного удаления данных;
- безопасное управление устройствами хранения данных от установки и выделения до удаления и вывода из эксплуатации;
- строгие сторонние аудиты более 2600 требований безопасности, включая проверки оборудования.
Логическая целостность
Процессы логической целостности обеспечивают соответствие данных основным правилам системы хранения, в которой они находятся. Логическую целостность можно дополнительно разделить на четыре подтипа:
- целостность домена обеспечивает точность данных, ограничивая значения в определенном диапазоне, формате или заранее заданном наборе (например, с использованием типов данных и других аналогичных ограничений);
- целостность объектов обеспечивает уникальную идентификацию отдельных записей данных с помощью таких механизмов, как первичный ключ, что предотвращает дублирование или нулевое значение в ключевых полях;
- целостность ссылок поддерживает согласованные взаимосвязи между таблицами, применяя ограничения внешнего ключа для предотвращения изолированных записей данных;
- определенная пользователем целостность данных реализует специфичные для бизнеса правила, выходящие за рамки стандартных ограничений, таких как настраиваемая логика проверки или применение на уровне приложения.
Пользователь облака отвечает за реализацию ограничений логической целостности и обеспечение качества данных. В соответствии с моделью совместной ответственности это является обязанностью клиента.
Однако сервисы данных AWS предоставляют различные механизмы для поддержки проверки целостности данных, такие как алгоритмы контрольных сумм, инструменты мониторинга качества данных и автоматические проверки целостности данных во время резервного копирования и синхронизации данных.
Управляемые сервисы предоставляют автоматические и настраиваемые ограничения для обеспечения целостности данных. В системах и базах данных OLTP процессы логической целостности помогают сохранить атомарность, согласованность, изолированность и надежность каждой транзакции.
Как обеспечить целостность данных в облаке?
Рассмотрите следующие меры по реализации логической целостности в облаке AWS.
Реализация целостности объектных данных
Большинство операций с облачными данными начинаются с корзин Amazon S3, в которых можно хранить данные любого типа в виде объектов. Можно неоднократно перемещать данные между корзинами Amazon S3, базами данных и другими облачными сервисами или локальным хранилищем. Amazon S3 предоставляет встроенные механизмы контрольных сумм для снижения рисков целостности данных во время загрузки и копирования.
Контрольная сумма – это уникальное значение фиксированной длины, генерируемое на основе данных с использованием определенного алгоритма. Она создает уникальный цифровой отпечаток, позволяющий системам обнаруживать повреждение данных или непреднамеренные изменения. При копировании объектов Amazon S3 вычисляет контрольную сумму исходного объекта и применяет ее к целевому объекту. В случае несоответствия сервис выдает предупреждения. Amazon S3 поддерживает как полные объектные, так и составные контрольные суммы для многокомпонентных загрузок. Полные контрольные суммы объектов охватывают весь файл, а составные объединяют отдельные контрольные суммы на уровне частей.
Используйте функцию контрольной суммы, как описано ниже.
Загрузка
Amazon S3 поддерживает несколько алгоритмов безопасного хеширования (SHA) и циклического избыточного кода (CRC), включая CRC-64/NVME, CRC-32, CRC-32C, SHA-1 и SHA-256. При использовании Консоли управления AWS выберите алгоритм контрольной суммы во время загрузки. Если контрольная сумма не указана, Amazon S3 по умолчанию использует CRC-64/NVME.
Загрузка
При загрузке объектов запрашивайте сохраненное значение контрольной суммы для проверки целостности данных. В зависимости от того, завершена ли загрузка или все еще продолжается, извлеките значения контрольной суммы с помощью операций GetObject, HeadObject или ListParts.
Копирование
Если объект копируется с помощью операции CopyObject, Amazon S3 генерирует прямую контрольную сумму для всего объекта. Если объект изначально был загружен в виде нескольких частей, его контрольная сумма при копировании изменится, даже если данные останутся прежними.
Обеспечение целостности конвейера данных
Другой распространенный вариант использования – перемещение данных в облачные озера, хранилища или сервисы управляемых баз данных. Настройка проверок целостности данных в таких конвейерах чревата ошибками, утомительна и требует много времени. Необходимо вручную написать код мониторинга и правила качества данных, предупреждающие потребителей об ухудшении их качества.
Во время миграции
Сервис миграции баз данных AWS (DMS) защищает целостность данных во время миграции в базы данных облака AWS с помощью множества встроенных механизмов защиты и проверки. DMS выполняет автоматическую проверку для сравнения исходных и целевых данных, выявляя и устраняя расхождения путем повторной синхронизации данных.
DMS включает функции контрольной точки и восстановления, которые позволяют возобновить миграцию из последнего заведомо исправного состояния в случае возникновения сбоев, а также предоставляют комплексные возможности мониторинга и регистрации для отслеживания хода миграции. Кроме того, DMS обеспечивает безопасность данных с помощью SSL-шифрования данных в движении и интеграции с сервисами безопасности AWS.
Инфраструктура баз данных
Базы данных AWS защищают целостность данных с помощью множества комплексных механизмов и функций, включая автоматическое резервное копирование и развертывание в нескольких зонах доступности, которые обеспечивают надежность и согласованность данных. Эти базы данных обеспечивают ссылочную целостность с помощью встроенных ограничений, сохраняют соответствие принципам ACID для согласованности транзакций и предоставляют возможности восстановления на определенный момент времени. Сервисы управляемых баз данных, такие как Amazon Relational Database Service (RDS) и Amazon Aurora, позволяют настроить специальные средства управления целостностью данных. Например, Aurora позволяет устанавливать разные уровни изоляции транзакций в базе данных OLTP.
Для повышения уровня защиты базы данных AWS поддерживают аварийное восстановление путем развертывания в нескольких регионах, реплицируя данные в географически распределенных регионах. Интеграция с Amazon CloudWatch помогает выявлять и устранять потенциальные проблемы с целостностью данных до того, как они повлияют на операционную деятельность.
Интеграция данных
AWS Glue – это бессерверный сервис интеграции данных для подготовки и объединения данных в облаке AWS. Функция Качество данных AWS Glue сокращает ручную проверку данных с нескольких дней до нескольких часов. Она автоматически рекомендует правила качества, вычисляет статистику, отслеживает и предупреждает пользователя при обнаружении неверных или неполных данных. Она работает с языком определения качества данных (DQDL), специфичным для домена языком, который используется для определения правил целостности данных.
При сборе данных из систем OLTP для использования в аналитике можно применять конвейеры AWS Glue для передачи данных из баз данных в аналитические сервисы.
Кроме того, можно публиковать метрики в Amazon CloudWatch для мониторинга и оповещения.
Внедрение целостности резервного копирования данных
В крупных корпоративных проектах разные команды могут создавать резервные копии данных и получать доступ к хранилищам Amazon S3 из разных мест. Управление данными становится проблемой в таких распределенных операциях резервного копирования данных. Обратите внимание, что базы данных AWS оснащены встроенными функциями резервного копирования.
AWS Backup – это полностью управляемый сервис, который централизует и автоматизирует защиту данных в таких сервисах AWS, как Amazon Simple Storage Service (S3), Amazon Elastic Compute Cloud (EC2), Amazon FSx, а также в гибридных рабочих нагрузках VMware. Вы можете централизованно развертывать политики защиты данных для управления, администрирования и настройки резервного копирования в ресурсах и аккаунтах AWS.
Сервис AWS Backup разработан для поддержания целостности данных на протяжении всего их жизненного цикла – от передачи и хранения до обработки. Он применяет строгие меры безопасности ко всем хранимым данным, независимо от их типа, обеспечивая высокую степень защиты от несанкционированного доступа. Вы сохраняете полный контроль над классификацией данных, местами хранения и политиками безопасности, что позволяет управлять, архивировать и защищать данные в соответствии со своими потребностями.
AWS Backup сотрудничает с другими сервисами AWS для сохранения целостности данных с помощью нескольких механизмов. Сюда входят:
- непрерывная проверка контрольных сумм для предотвращения повреждений;
- внутренние контрольные суммы для проверки целостности данных в движении и местах хранения;
- автоматическое восстановление избыточности в случае сбоев диска.
Данные резервно хранятся в нескольких физических местах, а проверки на уровне сети также помогают выявлять повреждения во время передачи данных.
Как AWS может помочь сохранить целостность данных?
Целостность данных также повышает доверие к аналитике, обеспечивает соответствие нормативным требованиям и гарантирует сохранение ценности данных на протяжении всего жизненного цикла. Однако при локальном развертывании обеспечение целостности данных – сложная и дорогостоящая задача, которая может привести к потере времени из-за ручной, распределенной и избыточной работы.
Облачные технологии централизуют процесс и выполняют большую часть тяжелой работы за вас. В них по умолчанию встроено несколько проверок физической и логической целостности. Механизмы автоматизации самостоятельно генерируют программные правила, необходимые для обеспечения целостности данных. Инженерам данных нужно только настроить параметры или проверить работу, выполняемую автоматизированными механизмами. Целостность данных позволяет системам OLTP сохранять идеальную точность при обработке больших объемов транзакций в реальном времени, что крайне важно для надежных бизнес-операций и практик.
Начните работу, создав бесплатный облачной аккаунт уже сегодня.