Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

403
Visualizações
¿Cuál es el tamaño óptimo de un índice de prefijo para direcciones URL (MySQL)?

Estoy recopilando algunos millones de filas de datos que contienen URL. Para deduplicarlos, necesito buscar una URL existente antes de insertar una nueva fila. Por lo tanto, me gustaría crear un índice en esa columna.

¿Cuál es el mejor tamaño de prefijo, sabiendo que la mayoría de las URL comienzan con http:// o https:// ?

over 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Para unos pocos millones de filas, esencialmente no hay posibilidad de que MD5(URL) tenga una colisión accidental. Son 32 dígitos hexadecimales ( CHAR(32) CHARACTER SET ascii ). O mejor sería UNHEX(...) y ponerlo en BINARY(16) .

Luego agregue un índice UNIQUE en esa columna.

Qué versión estás usando? Algunas versiones más nuevas de MariaDB tienen algo así incorporado.

over 4 years ago · Santiago Trujillo Relatório

0

Hay dos formas de agregar índice en una cadena larga:

  1. agregue el índice para crc32 (urls), simplemente agregue una columna llamada crc32_urls y cree un índice en esto. Es posible que algunas URL tengan el mismo resultado por crc32 (urls), por lo que cada vez que busque debe ejecutarse así:
 SELECT * FROM table WHERE crc32_urls = xxx AND urls = xxx
  1. use el índice de prefijo. Para suponer cuánto debe ser la longitud del prefijo. Puede calcular
 SELECT COUNT(DISTINCT urls)/COUNT(*) FROM table

comparado con

 SELECT COUNT(DISTINCT left(urls, x))/COUNT(*) FROM table

la x es la longitud que especificó. Cuando dos números estén cerca, elija la longitud mínima.

over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda