Перейти к содержимому

Фотография

сравнение двух наборов данных


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 3

#1 Sepultura_666

Sepultura_666

    Новый участник

  • Members
  • Pip
  • 5 сообщений

Отправлено 30 января 2012 - 13:33

Добрый день
У меня есть тулза написанная на pl/sql, которая сравнивает два набора данных (около десятка таблиц)
Т.е. у нас есть таблица, заполненная данными, которые прошли через логику какой то ETL, потом мы изменияем логику обработки данных (заливаем новый код в базу) , эта таблица снова наполняется данными, обработанными на новом коде.
Входные данные одни и теже. Эта тулза сравнивает две эти таблицы (до и после) и выдает отчет в виде вьюхе в которой перечислены все расхождения и ссылки на записи в таблицах где они найдены.
На выходе мы имеем большое количество расхождений в результатах сравнения. Они связаны с тем, что
1. Специфика работы ETL такова, что некоторые поля могут заполнятся не четко - т.е. из некоторого набора значений, неоднозначно
2. Баги

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

Теперь проблема - проблема отфильтровки багов от всех остальных расхождений в том, что в таблицах содержится много строк (10 млн)
У меня просто нет столько времени, чтобы успеть пересмотреть все расхождения.

Вопрос - как с этим бороться. Ответ - уменьшить количество данных уже в работе, но пока маловероятен. Какие еще есть способы? Может быть есть какие то статистические методы очистить результат? Короче любые оригинальные идеи - хелп!
  • 0

#2 ch_ip

ch_ip

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 097 сообщений
  • ФИО:Павел Абдюшев
  • Город:Москва


Отправлено 30 января 2012 - 22:20

На выходе мы имеем большое количество расхождений в результатах сравнения. Они связаны с тем, что
1. Специфика работы ETL такова, что некоторые поля могут заполнятся не четко - т.е. из некоторого набора значений, неоднозначно

Какие есть типы расхождений, не являющиеся багами? Перечислите все (в идале) ну или бОльшую часть, которая оставляет проблемы (вызывает наибольшее количество шума).
В каком виде к вам приходит результат сравнения?
  • 0

#3 Sepultura_666

Sepultura_666

    Новый участник

  • Members
  • Pip
  • 5 сообщений

Отправлено 31 января 2012 - 14:32


На выходе мы имеем большое количество расхождений в результатах сравнения. Они связаны с тем, что
1. Специфика работы ETL такова, что некоторые поля могут заполнятся не четко - т.е. из некоторого набора значений, неоднозначно

Какие есть типы расхождений, не являющиеся багами? Перечислите все (в идале) ну или бОльшую часть, которая оставляет проблемы (вызывает наибольшее количество шума).
В каком виде к вам приходит результат сравнения?


Добрый день
Некоторые поля в финальных таблицах заполняются на основе соответствия данным в нескольких промежуточных таблицах. Т.е. например
У нас есть входная таблица А, промежуточные Б1, Б2, Б3 и финальная В.
Запись перед тем как попасть из А в В, проходит проверку на соответствие записям в Б1, Б2, Б3. А после этого она (т.е. поле) получает какое то значение и попадает в В. Проблема в том, что логика настолько навороченная, что значение которая она получит может зависить от того,
во-первых с какой таблицы начали проверку
во-вторых в процессе заполнения может оказаться что допустим в промежуточных таблицах существуют более актульные записи (более свежие грубо говоря) и тогда будут использованы они и опять выходное значение может быть другим.
Как то так.
Результат у меня в виде вьюхи, которая содержит в себе следующие поля
таблица для сравнения, rowid в этой таблице, эталонная таблица, rowid в этой таблице, поле по которому есть расхожения, величины в двух несовпадающих полях
Как то так
  • 0

#4 Stren

Stren

    Активный участник

  • Members
  • PipPip
  • 129 сообщений
  • ФИО:Буланов Алексей Александрович
  • Город:Москва

Отправлено 29 февраля 2012 - 11:44

фильтры на результат вью дабы отсекать мусор может быть помогут ? а вообще для реконсиляций много решений, и каждое частный случай, ваш случай не самый запущеный, так как есть idrow, а то бывали случаи до сих пор в дрожь кидает. :)
  • 0
С уважением Алексей ака Stren, подробнее в профайле.


Количество пользователей, читающих эту тему: 1

0 пользователей, 1 гостей, 0 анонимных