Publications
Che dimensioni hanno i file di log dei miei DB ?
Questo piccolo script (per Sql2005) riporta, per ciascun database, le dimensione dei dati, del file di log, la percentuale di utilizzo del log ed il modello di recovery attivo.
select
rtrim (pc1.instance_name) as database_name,
pc3.cntr_value/1024.0 as database_size_mb,
pc1.cntr_value/1024.0 as log_size_mb,
cast (pc2.cntr_value*100.0/pc1.cntr_value as dec (5,2)) as log_space_used_perc,
db.recovery_model_desc
from
sys.databases as db
inner join
sys.dm_os_performance_counters as pc1 on pc1.instance_name = db.name
inner join
sys.dm_os_performance_counters as pc2 on pc1.instance_name = pc2.instance_name
inner join
sys.dm_os_performance_counters as pc3 on pc1.instance_name = pc3.instance_name
where
pc1.counter_name = ‘Log file(s) Size (KB)’
and
pc2.counter_name = ‘Log file(s) Used Size (KB)’
and
pc3.counter_name = ‘Data File(s) Size (KB)’
and
pc1.cntr_value > 0
order by
pc1.instance_name
Calcolare la dimensione di un record
Stimare la quantità di spazio che sarà, presumibilmente, necessaria per memorizzare le informazioni all’interno di un database è sicuramente un’operazione utile in fase di definizione e modellazione della nostra base dati. In questo tip viene descritto come fare:
http://www.microsoft.com/italy/msdn/risorsemsdn/community/tips/0702.mspx#EEAAC
Consigli sull'utilizzo di GUID come Primary Key
Una serie di importanti consigli sull’utilizzo (o il NON utilizzo) di colonne GUID:
http://www.microsoft.com/italy/msdn/risorsemsdn/community/tips/0706.mspx#EOB
Contare i giorni lavorativi tra due date
Un tip su come calcolare in modo molto efficiente quanti giorni lavorativi si sono tra due date:
http://www.microsoft.com/italy/msdn/risorsemsdn/community/tips/0706.mspx#E2C
Creare un template per Reporting Services
La creazione di un template per la creazione di report è un buona best practice da prendere in considerazione. Per creare un template e renderlo disponibile da Visual Studio è un’operazione piuttosto semplice. Una volta definito e creato il report che farà da template basterà copiarlo nella cartella
:\Program Files\Microsoft Visual Studio 8\Common7\IDE\PrivateAssemblies\ProjectItems\ReportProject
Fare DISTINCT con COLLATE
Un sempice quanto utile tip per eseguire delle SELECT DISTINCT con una collation arbitraria:
http://www.microsoft.com/italy/msdn/risorsemsdn/community/tips/0612.mspx#E6C
Integration Services: Performance Tuning Techniques
Raccolta di tecniche comuni di performance tuning su Integration Services
http://download.microsoft.com/download/4/7/a/47a548b9-249e-484c-abd7-29f31282b04d/SSISPerfTuning.doc