Posts

Applicazione pratica dei database temporali

Davide Mauri

Introduzione

L’utilizzo dei principi che stanno alla base dell’idea dei database temporali è una pratica che può essere di grande aiuto anche per la risoluzione di problemi legati alla presenza di informazioni temporale nei database ordierni.

In questo articolo si dimostrerà come richieste apparentemente non riconducibili alle regole definite dai concetti legati ai database temporali siano, invece, completamente risolvibili applicanto in toto tali principi. L’applicazione di questi ultimi è necessaria in quanto porta due fondamentali vantaggi:

SQL Server 2008 Webcast - 1 - Overview

Davide Mauri

Una completa overview di tutte le novità che SQL Server 2008 porterà con se, ed una overview del contenuto dei webcast programmati dedicati a SQL Server 2008:

Per vedere il webcast registrato utilizzate questo link:

http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032356365&Culture=it-IT

Il webcast è tenuto lunedi 5 Novembre 2007 alle h. 11.00

Il materiale di tutti i webcast sarà disponbile nei giorni successivi al webcast qui:

Quando utilizzare XML in un database?

Davide Mauri

Bella domanda.

Visto che la CTP di Sql Server 2005 è finalmente feature complete, e che quindi è possibile cominciare a fare dello sviluppo “serio”, è ora di cominciare anche ad aprire il vaso di Pandora delle nuove e contestate feature di Sql Server 2005. Una delle più interessanti è senza dubbio il nuovo tipo di dato xml.

Che dimensioni hanno i file di log dei miei DB ?

Davide Mauri

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