Mysql
 sql >> Database >  >> RDS >> Mysql

compressione del testo url (non accorciamento) e memorizzazione in mysql

Un'altra idea da provare potrebbe essere quella di identificare stringhe comuni e rappresentarle con una bitmap. Ad esempio, avere due bit per rappresentare il protocollo (http, https, ftp o altro), un altro bit per indicare se il dominio inizia con "wwww", due bit per indicare se il dominio termina con ".com", ". org", ".edu" o qualcos'altro. Dovresti fare alcune analisi sui tuoi dati e vedere se hanno senso e se ci sono altre stringhe comuni che puoi identificare.

Se hai molti URL per lo stesso sito, potresti anche considerare di dividere la tua tabella in due diverse, una contenente il dominio e l'altra contenente il percorso relativo al dominio (e la stringa di query e l'ID del frammento, se presente). Avresti una tabella di link con l'ID dell'URL, l'id del dominio e l'id del percorso e sostituiresti la tabella URL originale con una vista che univa le tre tabelle. La tabella del dominio non dovrebbe essere limitata al dominio, potresti includere tutto l'URL che era comune (ad esempio, "http://stackoverflow.com/questions"). Questo non richiederebbe troppo codice per essere implementato e ha il vantaggio di essere ancora leggibile. La tua codifica numerica potrebbe essere più efficiente, una volta capito, dovrai analizzare i tuoi dati per vedere quale ha più senso.