Database SQL Server di origine

Questa pagina contiene informazioni su:

  • Il comportamento del modo in cui Datastream gestisce i dati estratti da un database SQL Server di origine.
  • Le versioni dei database SQL Server supportate da Datastream.
  • Limitazioni note per l'utilizzo del database SQL Server come origine.

Comportamento

Datastream monitora le modifiche del linguaggio di manipolazione dei dati (DML) utilizzando uno tra i seguenti metodi CDC:

Log delle transazioni

Quando utilizzi questo metodo CDC, Datastream legge le modifiche nell'origine direttamente dai log delle transazioni. Questo metodo richiede meno risorse e consente un recupero più rapido dei dati, ma presenta più limitazioni.

Per evitare perdite di dati, è importante che i log non vengano troncati prima Datastream li legge. D'altra parte, se conservi i file di log troppo tempo, occupano spazio di archiviazione e questo potrebbe causare per attivare la modalità di sola lettura.

Per assicurarti che il lettore CDC abbia tempo sufficiente per leggere i log, consentendo al contempo troncamento dei log per liberare spazio di archiviazione, devi applicare come la modifica degli intervalli di polling e l'impostazione di una protezione da troncamento. Questi passaggi forniscono un ulteriore livello di protezione per garantire che Datastream possa leggere i dati anche in caso di tempi di riposo lato Datastream o di un problema di connettività tra il database di origine e Datastream.

Per istruzioni dettagliate su come applicare queste misure aggiuntive, consulta le Configura un database SQL Server di origine e seleziona il tipo di database.

Modifica tabelle

Il metodo CDC delle tabelle di variazione consente agli utenti di conservare i log per un periodo di tempo più breve e quindi di risparmiare spazio di archiviazione, ma supporta un throughput inferiore rispetto al metodo dei log delle transazioni. Questo metodo ha meno limitazioni rispetto ai log delle transazioni. Ad esempio, elimina il rischio di troncamento dei log che porta a errori permanenti negli stream e supporta la replica delle tabelle criptate. Per ulteriori informazioni, vedi Limitazioni note.

Quando utilizzi questo metodo CDC, le modifiche all'origine vengono monitorate utilizzando tabelle delle modifiche dedicate. I log delle transazioni vengono ancora utilizzati, ma in misura limitata e non è necessario conservarli per periodi più lunghi. Poiché gli eventi DML vengono applicati tabelle di origine, le modifiche vengono replicate nelle tabelle delle modifiche corrispondenti. Le tabelle delle modifiche hanno la stessa struttura delle tabelle di origine, ma con colonne aggiuntive per includere i metadati delle modifiche. Solo le transazioni committate vengono aggiunte alle tabelle delle modifiche, insieme al numero di sequenza di log (LSN) dell'operazione di commit.

Versioni

Datastream supporta le seguenti versioni ed edizioni dei database SQL Server:

  • Self-managed (on-premise o ospitato sul cloud) con le seguenti versioni:
    • Enterprise: 2008 e successivi
    • Standard: 2016 SP1 e versioni successive
    • Sviluppatore: 2008 e versioni successive
  • Amazon RDS per SQL Server
  • Azure SQL Database (livello S3 e versioni successive).

  • Cloud SQL per SQL Server

Datastream non supporta le seguenti versioni dei database SQL Server:

  • SQL Server Standard dalla versione 2008 al 2014
  • SQL Server Express
  • SQL Server Web

Limitazioni note

Le limitazioni note per l'utilizzo del database SQL Server come origine includono:

  • I flussi sono limitati a 10.000 tabelle.
  • Non è possibile eseguire il backfill di una tabella con più di 500 milioni di righe, a meno che non siano soddisfatte le seguenti condizioni:
    1. La tabella ha un indice univoco.
    2. Nessuna delle colonne di indice è nulla.
    3. Tutte le colonne dell'indice sono incluse nello stream.
  • I database con durabilità ritardata o con il recupero accelerato del database (ADR) abilitato non sono supportati.
  • Il flusso di modifiche alle tabelle di sistema non è supportato.
  • L'autenticazione Windows Active Directory (AD) non è supportata.
  • I seguenti tipi di dati non sono supportati e non vengono replicati nella destinazione:
    • SQL_VARIANT
    • HIERARCHYID
    • GEOMETRY
    • GEOGRAPHY
  • Datastream replica i tipi di dati definiti dall'utente, ma è il tipo di dato di base da cui derivi il tipo definito dall'utente che viene archiviato nella destinazione. Ad esempio, se definisci un tipo di dati USERNAME in base al tipo di dati VARCHAR(50), i dati vengono archiviati nella destinazione come VARCHAR(50).
  • Datastream non supporta CDC per le colonne di oggetti di grandi dimensioni (TEXT, NTEXT, XML, IMAGE) e le colonne con lunghezza massima variabile (VARCHAR(MAX), VARBINARY(MAX), NVARCHAR(MAX)) nelle tabelle senza un indice univoco.

    Se le colonne di oggetti di grandi dimensioni non sono incluse nel flusso, la CDC è supportata.

  • Datastream non supporta il mascheramento dei dati. I dati vengono replicati senza e il mascheramento.

  • Datastream non supporta la replica delle modifiche applicate al database utilizzando il pacchetto DACPAC (Data Tier Application Package).

  • Datastream non replica le modifiche apportate utilizzando le istruzioni WRITETEXT o UPDATETEXT.

  • Datastream non supporta la replica delle colonne calcolate.

  • Datastream non supporta i tipi di compressione PAGE, COLUMNSTORE o COLUMNSTORE ARCHIVE.

Limitazioni aggiuntive quando si utilizza il metodo dei log delle transazioni

Se utilizzi il metodo CDC dei log delle transazioni, si applicano le seguenti limitazioni aggiuntive:

  • La crittografia dei dati trasparenti (TDE) non è supportata.
  • La crittografia a livello di colonna non è supportata. I dati in queste colonne vengono sostituiti con valori NULL.
  • Datastream non supporta l'istruzione ROLLBACK TO SAVEPOINT. Questi eventi di rollback vengono ignorati e non vengono replicati nella destinazione.
  • Datastream non supporta CDC per le righe superiori a 8 kB nel i seguenti tipi di tabelle:
    • Tabelle senza un indice univoco
    • Tabelle contenenti solo un indice univoco non in cluster con uno o più colonne di lunghezza variabile (VARCHAR, VARBINARY, NVARCHAR)
  • Datastream non supporta CDC per le colonne di oggetti di grandi dimensioni (TEXT, NTEXT, XML, IMAGE) nei seguenti tipi di tabelle:

    • Tabelle senza un indice univoco
    • Tabelle contenenti solo un indice univoco non cluster con una o più colonne di lunghezza variabile (VARCHAR, VARBINARY, NVARCHAR)

    Se le colonne di oggetti di grandi dimensioni non sono incluse nel flusso, CDC è supportata solo per queste tabelle, se hanno indici validi.

Passaggi successivi