¿Cómo pueden las computadoras buscar bases de datos extremadamente grandes?

Los motores de búsqueda funcionan mediante el uso de índices: los datos se buscan previamente, por lo que para un motor de búsqueda de texto como Google existe conceptualmente una base de datos con una clave para cada palabra que pueda buscar. Las bases de datos pueden tener una o más claves explícitas, por lo que, por ejemplo, si desea buscar los números de VIN del automóvil por número de lugar de licencia, es más rápido crear una clave para el número de placa que utilizar la clave existente para VIN e iterar a través de todos los archivos. Algunas bases de datos se pueden replicar para permitir búsquedas paralelas, de modo que dos computadoras pueden buscar dos mitades simultáneamente y los resultados se fusionan.

En el pasado, se realizó algún trabajo en la memoria direccionable por contenido, que podía realizar una coincidencia de forma nativa sin iteración para buscar un valor. Sin embargo, no he escuchado mucho de eso recientemente.

Creo que “una base de datos que contiene información sobre todos los átomos del Sistema Solar” va a disparar esa condición inalcanzable. Para cada celda de memoria, necesita al menos varias moléculas. Por lo tanto, consumirías toda la materia en el sistema solar y aún no podrías contener toda la información sobre cada átomo.

Las búsquedas más rápidas hoy en día de grandes cantidades de datos son para bases de datos “en memoria”, que a menudo se almacenan orientadas a columnas en lugar de orientadas a filas como las bases de datos tradicionales (y son). Consulte Base de datos en memoria para obtener más información.