Как сверить данные после переноса между системами

Контроль количества, сумм, связей и выборочных значений с объяснением каждого расхождения.

Практическое решение · 3 мин чтения
Как сверить данные после переноса между системами — tarasovcode
Инженерия данныхКак сверить данные после переноса между системами

Перенос завершился без технической ошибки, но это не подтверждает совпадение данных. Системы могут по-разному округлять суммы, хранить пустые значения и интерпретировать время. Сверка должна опираться на согласованное преобразование и один временной срез.

Что подготовить

  • Снимки источника и приемника на согласованную точку.
  • Таблица преобразования полей, исключений и правил округления.
  • Устойчивые ключи сопоставления и критичные связи между сущностями.

Порядок работы

  1. Зафиксируйте границы среза и исключите движение данных во время сравнения либо учтите его отдельным журналом.
  2. Сравните количество по группам, а не только общий итог: статусам, периодам и типам объектов.
  3. Проверьте агрегаты числовых полей и отдельно пустые, отрицательные и предельные значения.
  4. Сопоставьте записи по ключу и сформируйте отчет отсутствующих, лишних и отличающихся объектов.
  5. Проверьте связи и характерную выборку в интерфейсе приемника; объясните каждое допустимое расхождение.

Разобранный пример

Общее число заказов совпало, но в одном месяце на десять меньше, а в соседнем на десять больше. Причина может быть в переводе временной зоны. Группировка по периоду обнаруживает проблему, которую не показывает общий счетчик.

Как проверить результат

  • Все расхождения имеют статус, причину и принятое решение.
  • Округление сравнивается по утвержденному правилу, а не произвольному допуску.
  • Ни одна связь не указывает на потерянный объект.

Если что-то пошло не так

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

Реестр расхождений с владельцем решения

Каждое расхождение оформляйте отдельной строкой: сущность, ключ, поле, значение источника, значение приемника, правило преобразования и статус разбора. Статус «допустимо» должен сопровождаться причиной. Без этого список исключений постепенно превращается в способ скрывать ошибки, а следующий перенос повторяет те же проблемы.

Начните с полноты ключей: только в источнике, только в приемнике и присутствующие с обеих сторон. Затем сравнивайте поля совпавших объектов. Такой порядок отличает пропущенную запись от неверного значения. Для связей проверяйте не только существование адресата, но и соответствие нужному объекту: ссылка на чужую существующую запись тоже ошибочна.

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

Промпт для разбора ваших материалов

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

Частые вопросы

Достаточно ли сравнить количество строк?

Нет. Одинаковое количество возможно при разных объектах и ошибочных значениях.

Нужно ли проверять каждое поле?

Критичность задается требованиями, но исключенные поля должны быть перечислены явно с причиной.

Материал библиотеки решений Ильи Тарасова / TarasovWeb.

О проекте

Практическая библиотека Ильи Тарасова и TarasovWeb. Telegram-канал · Личная страница · ВКонтакте.

#tarasovweb #ИльяТарасов