Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [mysql] ottimizzare join su grosse tabelle

    ciao a tutti,
    avrei bisosogno di un consiglio.

    Debbo fare un update tra tabelle multiple ognuna delle quali di oltre 150.000 record.

    la forma più facile della query sarebbe qualcosa del tipo:

    update tabella1,tabella2
    set tabella1.nome = tabella2.nome
    ....
    where tabella1.chiave1 = tabella2.chiave1 and tabella1.chiave2=tabella2.chiave2


    ma ho visto che questo comporta fare il join tra le 2 tabelle belle grosse, e il sistema risulta lentissimo.
    Quindi le mia domande sono:
    1) è normale che con queste dimensioni di tabelle il join faccia fatica? Nonostante il fatto che i campi da far l'update alla fine non sono molti
    2) quali parametri dovrei settare in my.cnf per provare a ottimizzare le prestazioni?
    3) L'unica alternativa è cambiare la struttura dei DB per cercare di evitare gli update?

    grazie

  2. #2
    ps: altra cosa,
    leggevo che fare un update tra tabelle è più lento se queste sono dotate di indice, perchè anche gli indici stessi devono essere aggiornati, è vero?

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.