none
Riduzione dimensioni troncando tabelle temporanee RRS feed

  • Domanda

  • Ciao,

    vorrei se possibile un consiglio/chiarimento in relazione alle dimensioni di un database ed al numero di record su alcune tabelle:

    su una istanza SQL server 2012 c'è un db che pesa 42 Gb di spazio disco e contiene alcune tabelle temporanee che contengono tra i 15 e 20 Mln di righe...

    a me parreebbe logico vuotare le tabelle poco prima del bkup serale, poi farelo srink e poi bkup..

    le righe vengono poi riaccodate ad ogni stampa che lanciano gli utenti.... 

    Domando...... la mia "idea di pulizia" è corretta o comunque l'effort del server per poi rialloccare lo spazio che serve vanificherebbe il troncamento delle tabelle?

    Calcolando spannometricamente, potrei ridurre di circa 5Gb la dimensione con le tabelle vuote...

    Suggerimenti?


    Marco

    martedì 19 marzo 2019 13:35

Risposte

  • Ciao Marco,

    se i dati nelle tabelle temporanee non ti servono, puoi fare il TRUNCATE ogni giorno. Non fare lo shrink perché in termini di dimensioni del backup non avresti benefici ed avresti l'effetto collaterale di deframmentare gli indici. In ogni caso, come fai notare, ogni giorno le tabelle sarebbero nuovamente popolate e SQL Server è costretto ad utilizzare risorse per riallocare lo spazio sui dischi. Quindi è una operazione inutile.

    Verifica anche di aver abilitato la compressione dei backup nella configurazione dell'istanza e/o durante il backup.


    HTH,

    Cris

    Please Mark This As Answer if it solved your issue or Vote This As Helpful if it helps to solve your issue. Thank you!

    martedì 19 marzo 2019 14:34

Tutte le risposte

  • Ciao Marco,

    se i dati nelle tabelle temporanee non ti servono, puoi fare il TRUNCATE ogni giorno. Non fare lo shrink perché in termini di dimensioni del backup non avresti benefici ed avresti l'effetto collaterale di deframmentare gli indici. In ogni caso, come fai notare, ogni giorno le tabelle sarebbero nuovamente popolate e SQL Server è costretto ad utilizzare risorse per riallocare lo spazio sui dischi. Quindi è una operazione inutile.

    Verifica anche di aver abilitato la compressione dei backup nella configurazione dell'istanza e/o durante il backup.


    HTH,

    Cris

    Please Mark This As Answer if it solved your issue or Vote This As Helpful if it helps to solve your issue. Thank you!

    martedì 19 marzo 2019 14:34
  • Grazie mille!!..... domanda ulteriore...

    se la tabella pesa 1 Gb con i dati.... una volta fatto il TRUNCATE TABLE... manterrebbe "tutta la sua dimensione?"..... mi pare che gli indici vengono mantenuti vero?...

    Intendo dire... lo spazio di 1Gb viene comunque mantenuto fino all'operazione di srink?..


    Marco

    martedì 19 marzo 2019 15:12
  • Ciao,

    lo spazio sul disco rimane allocato anche se "vuoto", così come rimane la definizione degli eventuali indici. 


    HTH,

    Cris

    Please Mark This As Answer if it solved your issue or Vote This As Helpful if it helps to solve your issue. Thank you!

    mercoledì 20 marzo 2019 06:22