SYNITI / HIT SOFTWARE

Richiedi una Demo o una Prova Gratuita

Syniti Data Replication (formerly DBMoto)
Replica bidirezionale real-time da DB a DB

Richiedi una Demo o una Prova Gratuita

 

Trasferimento vs Replicazione dei Dati in Tempo Reale

Numerose aziende hanno sviluppato internamente procedure di trasferimento “in toto” dei dati, spesso con il risultato di appesantire notevolmente la rete e i server e di disporre solo dei dati del giorno prima. Viene trasferito tutto il database, anche quando non serve, e viene trasferito troppo tardi.

Syniti Data replication (anteriormente conosciuto come HiT DBMoto) elimina il concetto di aggiornamento consentendo la replicazione dei dati in tempo reale e creando un canale tra i dati aziendali e le vostre applicazioni.

  • Potente soluzione per replicare dati
  • Indipendente dalla piattaforma database server
  • Replicazione real time e bidirezionale per tutti i maggiori DB
  • Non invasivo, facile da installare, configurare e usare
  • Gestione di script e filtri per un completo controllo delle repliche

Caratteristiche principali

  • User friendly: L’intero processo di replicazione è configurato usando wizard e le repliche possono essere schedulate, eseguite e monitorate usando l’interfaccia grafica user-friendly dell’Enterprise Manager
  • Accessibilità: SynitiDR lavora su Microsoft Windows e l’Enterprise Manager può girare remotamente per configurare e gestire i processi di replica.
  • Replicazione massiva – Refresh: Tutti i record selezionati vengono scanditi e replicati con meccanismi ottimizzati.
  • Replicazione incrementale – Mirroring: Basata sul journal di DB2 dell’AS/400 (iSeries, System i, i) e transaction log di SQL Server, Oracle, DB2 per Window e Unix. Supporta i database più diffusi fra cui MySQL, Gupta, IBM, Informix, SAP Sybase ASE, SAP Sybase SQL Anywhere, SAP Hana, PostgreSQL ecc. Streaming come Apache Kafka, soluzioni cloud come MS Azure.
  • Replicazione bidirezionale – Synchronization: Come il mirroring ma ogni sistema è sia source che target.
  • Non richiede programmazione sul server IBM AS/400-iSeries- i: Non richiede nomenclatura proprietaria o campi riservati sugli oggetti del database DB2/400.
  • Event-driven: SynitiDR può generare eventi di replicazione definiti dall’interfaccia grafica.
  • Personalizzabile: Con la tecnologia Microsoft con C# .Net o VBScript si possono realizzare scripts per personalizzare ulteriormente i processi di replica.
  • DataBase supportati:

Database Refresh Mirroring (Source) Mirroring (Target) Synchronization
Actian Vector X   X  
Amazon Aurora MySQL X X X  
Amazon Aurora PostgreSQL X   X X
Amazon RDS for MariaDB X X X  
Amazon RDS for MySQL X X X  
Amazon RDS for Oracle X X X  
Amazon RDS for PostgreSQL X X X  
Amazon RDS for SQL Server X X X X
Amazon Redshift X   X  
Amazon S3 X*   X  
DocumentDB X*   X  
Files – CSV X*   X  
Files – JSON X*   X  
Files – XML X*   X  
Firebird X   X  
Google BigQuery X*   X  
Google Cloud SQL MySQL X   X X
Google Cloud SQL PostgreSQL X   X  
Gupta SQLBase X X X X
Hadoop HDFS X*   X  
IBM Db2 for i X X X X
IBM Db2 for zOS X X X X
IBM Db2 LUW X X X X
IBM Informix
X X X X
IBM PureData for Analytics (Netezza) X X X  
Ingres X   X  
Kafka – Apache X*   X  
MariaDB X X X X
Microsoft Access X   X  
Microsoft Azure Data Lake Gen 1 X*   X  
Microsoft Azure Data Lake Gen 2 X*   X  
Microsoft Azure Data Warehouse X*   X  
Microsoft Azure for MySQL X   X  
Microsoft Azure SQL Database
X X X X
Microsoft Azure SQL Server
X X X X
Microsoft SQL Server
X X X X
Microsoft SQL Server CE X X X X
MongoDB Atlas X*   X  
MySQL X X X X
Oracle X X X X
Oracle Autonomous Database
X X X  
Oracle Autonomous Data Warehouse
X X X  
Oracle Cloud MySQL Instance X X X  
PostgreSQL
X X X X
SAP ECC* X*   X  
SAP HANA
X X X X
SAP Sybase ASE
X X X X
SAP Sybase IQ
X X X X
SAP Sybase SQL Anywhere
X X X X
Snowflake X   X  
Teradata X   X  
Tibero – TmaxSoft
X   X  
Vertica X   X  

Per consultare la lista completa dei database supportati visita anche: SynitiDR Lista DB

Selezione dei dati da replicare

La replicazione, totale o incrementale, è applicabile all’intera tabella o a una parte della tabella definita dall’utente.

Per ogni replicazione i dati sono selezionati usando il “Replication Wizard” da dove si può:

  • Mappare le colonne da replicare.
  • Filtrare i dati usando le espressioni.
  • Scrivere degli script per filtrare/modificare i dati durante la replicazione.

Esempi di Mappatura Verticale:

  • solo codice e descrizione
  • solo ragione sociale, telefono e fax
  • solo codice, password ed e-mail.

Esempi di Criteri di filtro:

  • solo i prodotti venduti al dettaglio
  • solo i clienti che hanno servizi on line
  • solo i rivenditori Europa.

IBM Pure Data / NETEZZA, VECTORWISE, VERTICA, Google Apps Engine…

Replicazione massiva

La replicazione massiva legge tutti i dati (rimangono sempre valide le regole mappatura e di filtro) del sorgente trasferendoli nel database di destinazione. La replicazione massiva può essere lanciata da menù oppure pianificata a intervalli di tempo stabiliti dall’utente.

Solitamente la replicazione massiva viene eseguita una sola volta, nella fase iniziale del processo di replicazione, seguita dalla replicazione incrementale.

Replicazione incrementale

Prendiamo per esempio il caso di replica AS/400 – SQL Server. La replicazione in tempo reale acquisisce il journal di DB2/400 e il transaction log di SQL Server riportando nel database destinazione le sole modifiche. L’intervallo di lettura del journal/log è tipicamente di un minuto ed è modificabile dall’utente.

La gestione dei soli record modificati consente:

  • replicazione in tempo reale.
  • minimo carico di lavoro per il server IBM iSeries e il server Microsoft SQL Server.

Ambiente Microsoft C# e VB .NET

SynitiDR è una soluzione di replicazione real time che fornisce un ambiente di scripting. SynitiDR è dotato di un ambiente Microsoft C# e VB .NET che consente all’utente di definire funzioni, procedure e variabili. Le funzioni C# e VB .NET possono essere usate in due contesti:

  • Regole di mappatura
  • Eventi di replicazione

A seguito di un inserimento, una modifica o una cancellazione di un record su DB2/400:

  • DBMoto genera un evento C# o  VB .NET
  • L’evento è gestito da codice C# o VB .NET

SynitiDR ha funzioni di tipo built-in ma l’utente può in qualsiasi momento definire le proprie funzioni che meglio gestiscono i dati aziendali. SynitiDR non richiede lo sviluppo di stored procedure o l’adozione di sintassi proprietarie.

Sincronizzazione

  • In modalità sincronizzazione i database sono entrambi sorgente e destinazione
  • I record sono sincronizzati sulla base delle modifiche notificate via log e trigger
  • Può essere combinata con il Refresh

 

Journal e Log

Per esempio, consideriamo il caso di replicazione AS/400 – SQL Server. Il journal e il transaction log rappresentano l’unico modo nativo per intercettare i cambiamenti avvenuti nei database DB2/400 e SQL Server.

Ogni operazione di inserimento, modifica o cancellazione ai dati sorgenti è memorizzata nei journal. DBMoto gestisce automaticamente i journal/log e i cambi di ricevitore.

Performance

è opinione comune che i journal rallentino le performance di sistema; questo era vero nelle prime versioni di AS/400. Le versioni attuali di DB2/400 gestiscono in modo completamente performante il log delle transazioni in modo analogo a quanto fanno SQL Server o altri Database Relational Management System nei quali non è possibile disabilitare la gestione del log.

Commit rollback

L’uso di journal e log consente di implementare transazioni sicure.

I programmi iSeries/AS400 di ultima generazione supportano le transazioni con i tipici comandi di Begin Transaction, Commit, Rollback, End Transaction. SynitiDR supporta completamente la gestione delle transazioni e il database target rappresenta sempre una copia fedele dei dati del sorgente indipendentemente dall’esito finale della transazione.

Semplicità d’uso

Facile configurazione della Replicazione

1. Configura i metadata per la replicazione

2. Configura le connessione al database sorgente

3. Configura il database target

4. Crea le tabelle target (se necessario)

5. Configura la replicazione.

  • Definisce quando far partire la replicazione
  • Definisce i dettagli della replicazione (tabelle, campi e funzioni di trasformazione)
  • Definisce gli script associate ad una particolare replicazione
  • Fa partire la replicazio