Pregunta

Estamos tratando de identificar las ubicaciones de cierta información almacenada a través de nuestra empresa con el fin de ponerla en conformidad con nuestras políticas de datos. En el extremo archivo, estamos usando Nessus para buscar a través de diferentes archivos, pero me pregunto acerca de en el extremo de base de datos.

El uso de Nessus parece en gran medida inútil porque sería dar salida a los datos en bruto y que no nos dicen lo que la tabla o fila que estaba, o nos da mucha información útil, especialmente teniendo en cuenta estas bases de datos son bastante grandes (cientos de gigabytes).

También digno de mención, este sistema tiene que ser capaz de hacer juego basado en patrones (tales como el uso de expresiones regulares). No es sólo un "tonto de búsqueda" motor.

He investigado el uso de minería de datos y almacenamiento de datos con el fin de encontrar estos datos, pero parece que son más para el análisis de los datos de los que en realidad sólo la búsqueda de datos.

¿Hay un mejor método de búsqueda a través de grandes cantidades de datos en una base de datos para tratar de encontrar esta información? Estamos utilizando tanto Oracle 11g y SQL Server 2008 y la necesidad de realizar las búsquedas en ambos, así que me gustaría permanecer lejos de los paradigmas específicos de servidor (aunque si tengo que volver a escribir algo de código para traducir de T-SQL para PL / SQL, y viceversa, no me importa)

¿Fue útil?

Solución

En SQL Server para buscar a través de grandes cantidades de texto, se puede mirar en la búsqueda de texto completo.

http://msdn.microsoft.com/en- es / library / ms142559.aspx

Pero si estoy leyendo bien, desea araña su base de datos de una manera similar a cómo una búsqueda en Internet motores de sitios web y páginas web.

Se puede usar un conjunto de consultas de texto completo que traen los resultados que abarcan múltiples tablas.

Otros consejos

Oracle es compatible con la expresión regular con la función RegExp_Like () y debería ser bastante sencillo para automatizar la generación del código que necesita en función de metadate sistema (para encontrar todas las columnas de texto por una cierta longitud, por ejemplo, e incluirlos en un predicado que againt tabla para encontrar las filas y los valores que coinciden con la expresión regular). No suena demasiado difícil realmente. En teoría podrías comprobar limitar columnas para evitar la inserción de valores que coinciden con una expresión regular, pero que puede ser excesiva.

Oracle texto es adecuado para la búsqueda de palabras / frases en larg (ish) fragmentos de texto (por ejemplo, archivos PDF, HTMLs, TXT o DOC) mantenidos en la base de datos. Hay algunas búsquedas falta de nitidez limitada, pero no expresiones regulares per se.

En realidad, no entra en qué tipo de datos que está buscando o lo que usted tiene en sus bases de datos. Nessus indica que busca problemas de seguridad, pero el título de "Correlación de datos" sugiere algo completamente diferente.

En realidad las estructuras de datos deben proporcionar la información sobre qué buscar y dónde. Eso es lo que las bases de datos están a punto - estructuración de los datos para la accesibilidad. Una base de datos retrocediendo un CMS, software de foro o similar sería una harina de otro costal.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top