|
сравнение двух наборов данных
|
|||
---|---|---|---|
#18+
Добрый день У меня есть тулза написанная на pl/sql, которая сравнивает два набора данных (около десятка таблиц) Т.е. у нас есть таблица, заполненная данными, которые прошли через логику какой то ETL, потом мы изменияем логику обработки данных (заливаем новый код в базу) , эта таблица снова наполняется данными, обработанными на новом коде. Входные данные одни и теже. Эта тулза сравнивает две эти таблицы (до и после) и выдает отчет в виде вьюхе в которой перечислены все расхождения и ссылки на записи в таблицах где они найдены. На выходе мы имеем большое количество расхождений в результатах сравнения. Они связаны с тем, что 1. Специфика работы ETL такова, что некоторые поля могут заполнятся не четко - т.е. из некоторого набора значений, неоднозначно 2. Баги Моя задача найти расхождения, которые могут возникнуть только в результате некорректной работы логики, т.е. баги. Все остальные расхождения я должен пропустить. Теперь проблема - проблема отфильтровки багов от всех остальных расхождений в том, что в таблицах содержится много строк (10 млн) У меня просто нет столько времени, чтобы успеть пересмотреть все расхождения. Вопрос - как с этим бороться. Ответ - уменьшить количество данных уже в работе, но пока маловероятен. Какие еще есть способы? Может быть есть какие то статистические методы очистить результат? Короче любые оригинальные идеи - хелп! ... |
|||
:
Нравится:
Не нравится:
|
|||
30.01.2012, 17:08 |
|
сравнение двух наборов данных
|
|||
---|---|---|---|
#18+
Sepultura_666, оригинальная идея truncate на оба датасета и сказать, что они идентичны. А вообще в описанной вами формулировке вам нужно отделить расхождения вызванные пунктом 1 от тех, что вызваны пунктом 2. Как вариант на том же PL/SQL написать тулзу которая сможет это сделать автоматически. Но тут дьявол в деталях. А но общий вопрос- общий ответ . ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2012, 13:24 |
|
сравнение двух наборов данных
|
|||
---|---|---|---|
#18+
да вопрос как раз в том, как отделить 1 от 2. как этот шум отчистить ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2012, 14:13 |
|
сравнение двух наборов данных
|
|||
---|---|---|---|
#18+
Не имея входных и выходных данных, а также правил вашей ETL обсуждать что такое шум бессмысленно. Максимум что Вам ответят вызвать функцию CleanNoise() Вам нужно сначала определиться с этим, а как потом автоматизировать средствами того же PL/SQL можно спросить в профильном форуме. ... |
|||
:
Нравится:
Не нравится:
|
|||
01.02.2012, 15:49 |
|
|
start [/forum/topic.php?fid=36&msg=37641760&tid=1554757]: |
0ms |
get settings: |
11ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
31ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
48ms |
get tp. blocked users: |
2ms |
others: | 261ms |
total: | 391ms |
0 / 0 |