Blog · 6 min de lectura

Búsqueda instantánea sobre 62 millones de CNPJ: la ingeniería detrás de BaseCNPJ

Escribiste, apareció. Sugerir la empresa correcta en milisegundos sobre una base gigante es un problema de indexación, no de suerte.
Por · publicado el

En BaseCNPJ, empiezas a escribir el nombre de una empresa y las sugerencias aparecen al instante — sobre una base de más de 62 millones de establecimientos. Parece trivial desde el lado de quien la usa; desde el lado de la ingeniería, es un problema clásico de indexación y normalización de datos públicos. Este es el resumen de cómo lo resuelve Meta Dados.

El desafío: autocompletar sobre 62 millones de registros

La búsqueda "as-you-type" (a medida que se escribe) necesita responder en decenas de milisegundos, de lo contrario la sugerencia llega después de la siguiente tecla. Hacer esto con un LIKE comodín en una tabla de 62 millones de filas es el camino garantizado hacia la lentitud: cada tecla recorre la base entera.

Indexación para búsqueda por prefijo

La solución es preparar el dato para la búsqueda, no buscar en el dato crudo. Mantenemos una capa de índice optimizada para coincidencia por prefijo y por término, sobre el nombre empresarial y el nombre de fantasía ya normalizados. La consulta que el usuario dispara golpea el índice — pequeño y hecho para eso — y no la tabla transaccional entera.

El usuario escribe"pad..."Índice de prefijonombres normalizadosSugerencias (ms)Dirección RFBcompletaGeocodificadorpropio · dedicadoCoordenada27,5M puntos
La búsqueda golpea un índice de prefijo sobre nombres normalizados (milisegundos), no la tabla de 62M; la dirección se convierte en coordenada mediante un geocodificador propio.

Normalización: el dato de la Receita es sucio

Los datos abiertos de la Receita Federal llegan con acentuación inconsistente, mayúsculas y minúsculas variadas, abreviaturas y ruido. Antes de indexar, normalizamos: eliminación de acentos, estandarización de mayúsculas/minúsculas, tratamiento de términos comunes. Es esa normalización la que hace que "padaria sao joao" encuentre "PADARIA SÃO JOÃO LTDA" sin que el usuario se preocupe por cómo lo escribió.

Geolocalización por dirección exacta

Aquí está el diferencial que pocos tienen: no nos detenemos en el municipio. Un geocodificador propio, alojado en servidor dedicado, resuelve la dirección catastral completa en coordenada (latitud/longitud), con caché por entidad. Ya son más de 27,5 millones de puntos geolocalizados, cubriendo el 99,7% de la población geocodificable — el residuo son empresas con sede en el exterior, caracterizado y acotado, no ignorado. Esto habilita consulta por proximidad y radio, densidad sectorial y cobertura territorial de verdad — no una aproximación por centro de ciudad.

Frescura: reindexar en cada ciclo de la Receita

La Receita publica los datos en ciclos mensuales. En cada ciclo, la base se reprocesa y el índice se reconstruye — con validación de completitud antes de entrar en producción. Y Metabase monitorea el propio uso de la búsqueda y de la API por cliente, cerrando el ciclo entre ingeniería y negocio.

Sistemas que conectamos aquí

Preguntas frecuentes

¿Cómo sugerir empresas mientras el usuario escribe sin sobrecargar la base de datos?

La clave es no buscar en la tabla transaccional en cada tecla. Una capa de índice preparada para coincidencia por prefijo, sobre campos ya normalizados, responde en milisegundos y aísla la búsqueda de la carga de producción. La base de datos principal queda libre para lo que hace mejor.

¿La geolocalización es por coordenada exacta de cada empresa?

Sí. Un geocodificador propio, corriendo en servidor dedicado, resuelve la dirección catastral completa en coordenada (latitud/longitud), con caché por entidad — más de 27,5 millones de puntos, 99,7% de cobertura de la población geocodificable. Lo que no geocodificamos (empresas con sede en el exterior) está caracterizado y acotado, no escondido.

Empieza sin costo

¿Tienes una base grande que necesita volverse consultable y visual? Diagnóstico gratuito en 48h.

Mapeamos sus sistemas actuales, señalamos los mayores cuellos de botella y entregamos un plan priorizado por riesgo × esfuerzo. Usted sale con claridad — contrate o no a Meta Dados.

Quiero mi diagnóstico → Hablar por WhatsApp Sin compromiso, sin tarjeta.
Respondemos en hasta 2 horas hábiles.
←  Voltar para Blog