Domanda

Ho implementato il rilevamento delta mentre warehouse caricamento dei dati dai sistemi di transazione utilizzando una colonna di identità o di una colonna data-ora nelle tabelle delle transazioni di origine. Quando i dati devono essere estratte prossima volta, l'ultima volta valore massimo data-ora estratto viene utilizzato nel filtro di interrogazione estrazione per identificare i record nuovi o modificati. Questo è stato abbastanza buono, tranne quando c'erano più transazioni nello stesso secondo milli.

Ma ora abbiamo Change Data Capture (CDC) con SQL Server 2008 e fornisce un nuovo materiale chiamato LSN (Log Sequence Number) che è binaria di lunghezza 10. Ora sono confuso. Quali dati devono essere conservati per windowing scopo, il LSN o la data-ora. Naturalmente LSN elimina la necessità di memorizzare i valori di data-tempo addizionale in tabelle di grandi dimensioni delle transazioni, ma questo ha degli svantaggi? Quale dovrei usare? Mi sento, la mappatura dei LSN aggiornati in tempo e quindi la memorizzazione di data-ora non è un metodo affidabile. Qual è la tua opinione?

PS:. Per, i professionisti non BI, spiacenti

È stato utile?

Soluzione 2

Dopo un sacco di attesa non vedo ulteriori risposte qui. Ho usato LSN nel mio attuale progetto di finestre e lo trovo meglio di valori di tempo di data in quanto è più preciso e il processo è semplice. Mi consiglia di utilizzare LSN. Se qualcuno là fuori non sono d'accordo, per favore fatemelo sapere ...

Altri suggerimenti

Se si imposta CDC, si ottiene una tabella di sistema aggiunto al database con il nome cdc.lsn_time_mapping in modo da poter utilizzare sia.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top