Вопрос

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

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

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

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

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

Это было полезно?

Решение

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

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

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

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

Другие советы

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

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

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

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top