имена, присвоенные одному и тому же элементу данных, - все это серьезно отражается на качестве хранимой информации. До недавнего времени наводить порядок в таких данных приходилось самостоятельно, вручную разбираясь с каждой записью. Теперь существует с десяток систем, автоматизирующих большую часть работы. Это самые разнообразные средства - от по-настоящему сложных алгоритмов, автоматически отыскивающих замысловато запрятанные неувязки в любых частях базы данных до таких, которые просто проверяют имена и адреса.

Одно плохо - средства эти стоят дорого, их трудно осваивать, а на выполнение нужной работы уходит много времени. Однако специалисты по информационным системам утверждают, что овчинка стоит выделки.

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

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

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

"Проверка целостности - важная операция, однако она не заменяет очистки данных. Средства очистки используют сложные алгоритмы и методы для сопоставления данных на более высоком уровне", - говорит Стив Кранфорд, совладелец консультационной фирмы KPMG Peat Marvick LLP.

Некоторые поставщики программных систем для хранилищ данных понимают, что нужны более мощные средства, чем проверка целостности, и включают в свои продукты новые функции очистки. Так, версия Orlando SAS System for Data Warehousing, выпущенная недавно фирмой SAS Institute, помимо средств проверки целостности содержит полноценные средства очистки. Orlando может подсчитать число вхождений отдельного элемента данных - как, скажем, "Digital" или "DEC", а затем можно вставить в форматирующую программу указание об их изменении. Можно, к примеру, выполнить первый проход с использованием строки для поиска всех сходно звучащих записей. Или сделать преобразования дат и времен и привести все записи к стандартному формату. По словам Пола Сентрика, инженера фирмы LTV Steel, привлекательность интегрированного продукта SAS в том, что он значительно облегчает обучение персонала информационных подразделений. К тому же применение SAS позволит алгоритмы, написанные для программ мэйнфреймов, без труда перенести на Unix.

Кто кандидат? Необходимо отметить, что во всех новых проектах по созданию репозитариев данных очистка не требуется. Если нужно построить киоск данных на основе единственного источника, который уже вычищен (неважно, благодаря очистке или путем контроля на этапе ввода), - прибегать к очистке данных нет нужды, достаточно контроля целостности.

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

Во многих проектах по созданию репозитариев без очистки не обойтись: по мере роста числа используемых баз данных и старения самих данных информация все более загрязняется.

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

Чистые, но недостоверные. И все же "чистый" необязательно означает "правильный". Сама по себе очистка предполагает синхронизацию сегментов информации из различных баз данных и их объединение - там, где это возможно. Отсюда вывод: в качестве основного источника данных надо выбрать тот, в котором имеется наименьшее число ошибок. Так утверждает Гейл МакКвейг из US West. В 1991 году компания начала работу над проектом синхронизации всех своих баз данных, содержащих миллионы записей, каждая из которых включает в себя множество полей. "Приступая к очистке, вы не можете заранее быть уверены в правильности результата, вы будете только знать, что он соответствует другим базам в системе, - говорит МакКвейг. - Для каждого элемента надо определить наиболее подходящую основную базу. К примеру, если речь идет о телефонной линии, то в качестве основной надо брать базу используемых технических средств, если об адресе - адресную базу".

В работе над очисткой данных US West применяет продукт фирмы Apertus Enterprise Integrator, причем очистка ведется независимо от создания нового банка данных. По мнению МакКвейга, очистка окупает себя, несмотря на то, что на ее проведение пришлось отвлечь от основной работы 25 человек - 18 техников и семь инженеров: "Нам удалось вернуть в дело массу ресурсов - телефонные номера, линии, - которые считались занятыми, но на самом деле были свободны".

Выберите средство. Для того чтобы сделать выбор и приобрести верное средство, необходимо разобраться в сути поставленной задачи. Эти средства отнюдь не сходят с конвейера; каждое из них уникально. Однако их можно разделить на две условные категории: универсальные системы, предназначенные для обслуживания всей базы данных целиком, и верификаторы имени/адреса для очистки только данных о клиентах.

Большая часть продуктов, имеющихся на рынке, относится к первой категории. Это: Enterprise Integrator компании Apertus; Integrity Data Reengineering Tool производства Validy Technology; Data Quality Administrator от Gladstone Computer Services; Inforefiner фирмы Platinium Technology; QDB Analyze (производство QDB Solutions) Trillium Software System компании Hart-Hanks Data Technologies.

Эти системы следует выбирать тогда, когда речь идет о создании банков данных всего предприятия и, соответственно, о сплошной очистке данных. Каждая система использует собственную технологию и имеет собственную сферу приложений. Некоторые из них работают в пакетном режиме, например Trillium, которая просматривает данные в поисках определенных образов и обучается на основе найденной информации. Образы, подлежащие распознаванию (скажем, названия фирм или городские адреса), задаются на этапе предварительного программирования. Другие продукты, например системы компаний Apertus и Validy, представляют собой средства разработки. В первой применяются правила, написанные на языке Object Query Language. С ней довольно легко работать, но для написания правил требуется настоящее мастерство.

Система компании Validy при отборе записей использует алгоритмы нечеткой логики и делает этот очень эффективно, выуживая такое, что человеку просто в голову не пришло бы проверять. Но эту систему труднее освоить. По словам Мери Найве из компании GNA (страховые и финансовые услуги), Integrity Data Reengineering Tool оказалась очень полезной при построении двух систем поддержки принятия решений (информационной системы о клиентах и программы подготовки консолидированных отчетов) на основе баз нескольких компаний, приобретенных GNA и развернутых до того на мэйнфреймах.

Игра имен. В простых системах, наподобие систем анализа рынка, вполне можно обойтись очисткой имен и адресов. К этой категории относятся два продукта: Nadis компании Group 1 Software и пакет компании Postalsoft. Последний содержит три библиотеки: исправления и кодировки адресов, оформления правильных имен и слияния/очистки. Первая библиотека корректирует адреса, вторая предлагает способ их стандартизации, третья выполняет консолидирующие функции.

Эти продукты быть может и не дадут немедленной экономии, однако их проще использовать, и, поскольку область применения их не так широка, работу по очистке они выполнят значительно быстрее. Nadis стоит, в зависимости от платформы, от 65 до 250 тыс. долл. В качестве дополнительной функции это ПО придает адресам вид, отвечающий требованиям почты. К примеру, Nadis автоматически преобразует имя и адрес в стандарт Universal Name and Address data standard.

Дополнительный продукт компании Group 1, Code-1 Plus, проверяет список адресов на соответствие требованиям. Сертификация гарантирует корректность ZIP-кода и используется при больших объемах исходящей почты. Те, кто применял эти средства, говорят, что автоматизация работы по обеспечению соответствия адресов различным правилам, установленным почтовым ведомством, стоит затраченных усилий и средств, даже если приходится дополнять названные пакеты другими средствами очистки.

Медленно, трудно,.. стоит того. Какую бы систему очистки данных пользователь ни применял, он обречен на долгую и утомительную работу. Большинство систем трудно освоить досконально, и, несмотря на все усилия, определенная часть неправильных записей все равно останется; их придется вычищать вручную. Достоверно установлено, что 80% усилий при построении банка данных уходит на начальные преобразования. В зависимости от состояния данных эта фаза может продлиться три, шесть и более месяцев. Однако, несмотря на время, затраченное на изучение, настройку и объединение необходимых средств очистки данных, игра, несомненно, стоит свеч, поскольку в результате пользователь получает гарантию, что решения в компании будут приниматься на основе самой достоверной информации.


Глоссарий

Загрузка данных (data loading): операция помещения записей исходной базы данных в новый репозитарий после их очистки.

Извлечение данных (data extraction): получение данных из исходной базы данных до выполнения очистки.

Киоск данных (data mart): подмножество хранилища данных, организованное для конкретного использования или конкретного пользователя.

Очистка данных (data scrubbing): исправление наследуемых данных предприятия путем выявления несогласованностей, дублирования и ошибок ввода. Очистке могут подвергаться данные как из одной БД, так и из нескольких. Средства очистки также объединяют записи.

Преобразование данных (data transformation): операция перевода исходных данных в формат, установленный в хранилище данных.

Проверка целостности (integrity checking): действия по установлению корректности загрузки записей из источника в новый репозитарий.

Система анализа рынка (householding application): программа, позволяющая на основе анализа информации о клиентах принимать решения по проведению торговой политики компании, например с ее помощью можно выяснить, "кто является основными потребителями услуг компании" или "как и где надо проводить рекламную кампанию".