Корреляция данных в больших базах данных - PullRequest
0 голосов
/ 02 декабря 2009

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

Использование Nessus казалось бы в значительной степени бессмысленным, поскольку оно выводило бы необработанные данные и не сообщало бы нам, в какой таблице или строке оно находилось, или давало бы нам много полезной информации, особенно учитывая, что эти базы данных достаточно велики (сотни гигабайт).

Также стоит отметить, что эта система должна иметь возможность выполнять сопоставление на основе шаблонов (например, с помощью регулярных выражений). Не просто «тупой поисковый» движок.

Я исследовал использование Data Mining и Warehousing для того, чтобы найти эти данные, но похоже, что они больше предназначены для анализа данных, чем просто для поиска данных.

Есть ли лучший способ поиска больших объемов данных в базе данных, чтобы попытаться найти эту информацию? Мы используем и Oracle 11g, и SQL Server 2008, и нам нужно выполнить поиск по обоим, поэтому я бы хотел избежать серверно-ориентированных парадигм (хотя, если мне придется переписать некоторый код для перевода из T-SQL в PL / SQL, и наоборот, я не против)

Ответы [ 3 ]

2 голосов
/ 02 декабря 2009

На сервере SQL Server для поиска больших объемов текста вы можете просмотреть полнотекстовый поиск.

Подробнее здесь http://msdn.microsoft.com/en-us/library/ms142559.aspx

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

Вы можете использовать набор полнотекстовых запросов, которые возвращают результаты, охватывающие несколько таблиц.

1 голос
/ 06 декабря 2009

Oracle поддерживает регулярное выражение с функцией RegExp_Like (), и должно быть довольно просто автоматизировать генерацию необходимого кода на основе системного метадата (например, найти все текстовые столбцы определенной длины и включить их). в предикате againt этой таблицы, чтобы найти строки и значения, которые соответствуют вашему регулярному выражению). Звучит не слишком сложно на самом деле. Теоретически вы можете проверить ограничивающие столбцы, чтобы предотвратить вставку значений, которые соответствуют регулярному выражению, но это может быть излишним.

0 голосов
/ 02 декабря 2009

Oracle Text подходит для поиска слов / фраз в больших битах текста (например, PDF, HTML, TXT или DOC), хранящихся в базе данных. Есть некий нечеткий поиск, но нет регулярных выражений как таковых.

Вы на самом деле не знаете, какие данные вы ищете или что у вас есть в ваших базах данных. Nessus указывает, что вы ищете проблемы безопасности, но заголовок «Корреляция данных» предлагает нечто совершенно иное.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...