Eseguire la migrazione dei dati da Oracle all'account Azure Cosmos DB for Apache Cassandra usando Arcion

SI APPLICA A: Cassandra

L'API per Cassandra in Azure Cosmos DB è un'ottima scelta per i carichi di lavoro aziendali in esecuzione in Oracle per vari motivi, ad esempio:

  • Maggiore scalabilità e disponibilità: elimina i singoli punti di guasto e offre maggiore scalabilità e disponibilità per le applicazioni.

  • Risparmio significativo sui costi: è possibile risparmiare sui costi con Azure Cosmos DB, che include il costo delle macchine virtuali, della larghezza di banda e delle eventuali licenze Oracle applicabili. Inoltre, non è necessario gestire i costi relativi a data center, server, archiviazione su unità SSD, rete ed elettricità.

  • Nessun sovraccarico di gestione e monitoraggio: essendo un servizio cloud completamente gestito, Azure Cosmos DB elimina il sovraccarico della gestione e del monitoraggio di numerose impostazioni.

Esistono vari modi per eseguire la migrazione dei carichi di lavoro del database da una piattaforma a un'altra. Arcion è uno strumento che offre un modo sicuro e affidabile per eseguire una migrazione senza tempi di inattività da altri database ad Azure Cosmos DB. Questo articolo descrive come eseguire la migrazione dei dati da un database Oracle ad Azure Cosmos DB for Apache Cassandra usando Arcion.

Nota

Questa offerta di Arcion è attualmente in versione beta. Per altre informazioni, contattare il team di supporto Arcion

Vantaggi dell'uso di Arcion per la migrazione

La soluzione di migrazione di Arcion segue un approccio dettagliato per eseguire la migrazione di carichi di lavoro operativi complessi. Di seguito sono riportati alcuni dei principali aspetti del piano di migrazione di Arcion senza tempi di inattività:

  • Offre la migrazione automatica della logica di business (tabelle, indici, viste) dal database Oracle ad Azure Cosmos DB. ’Non è necessario creare schemi manualmente.

  • Arcion offre una replica di database parallela e di volume elevato. Consente di mantenere sincronizzate le piattaforme di origine e di destinazione durante la migrazione usando la tecnica CDC (Change-Data-Capture). Usando CDC, Arcion esegue continuamente il pull di un flusso di modifiche dal database di origine (Oracle) e lo applica al database di destinazione (Azure Cosmos DB).

  • È a tolleranza di errore e garantisce che la distribuzione di dati avvenga una sola volta, anche durante un errore hardware o software nel sistema.

  • Protegge i dati durante il transito usando metodologie di sicurezza come TLS/SSL e crittografia.

  • Offre servizi per convertire una logica di business complessa scritta in PL/SQL in una logica di business equivalente in Azure Cosmos DB.

Passaggi per la migrazione dei dati

Questa sezione descrive i passaggi necessari per configurare Arcion ed esegue la migrazione dei dati dal database Oracle ad Azure Cosmos DB.

  1. Nel computer in cui si prevede di installare il replicante Arcion aggiungere un certificato di sicurezza. Questo certificato è richiesto dal replicante Arcion per stabilire una connessione TLS con l'account Azure Cosmos DB specificato. È possibile aggiungere il certificato seguendo questa procedura:

    wget https://cacert.omniroot.com/bc2025.crt
    mv bc2025.crt bc2025.cer
    keytool -keystore $JAVA_HOME/lib/security/cacerts -importcert -alias bc2025ca -file bc2025.cer
    
  2. È possibile ottenere i file binari e di installazione di Arcion richiedendo una demo sul sito Web Arcion. In alternativa, è anche possibile inviare un'e-mail al team.

    arcion replicant tool download

    Arcion replicant files

  3. Nel terminale dell'interfaccia della riga di comando impostare la configurazione del database di origine. Aprire il file di configurazione usando il comando vi conf/conn/oracle.yml e aggiungere un elenco delimitato da virgole di indirizzi IP dei nodi Oracle, numero di porta, nome utente, password e altri dettagli obbligatori. Il codice seguente mostra un esempio di file di configurazione:

    type: ORACLE
    
    host: localhost
    port: 53546
    
    service-name: IO
    
    username: '<Username of your Oracle database>'
    password: '<Password of your Oracle database>'
    
    conn-cnt: 30
    use-ssl: false
    

    Open Oracle connection editor

    Oracle connection configuration

    Dopo aver inserito i dettagli di configurazione, salvare e chiudere il file.

  4. Facoltativamente, è possibile configurare il file di filtro del database di origine. Il file di filtro specifica gli schemi o le tabelle di cui eseguire la migrazione. Aprire il file di configurazione usando il comando vi filter/oracle_filter.yml e immettere i dettagli di configurazione seguenti:

    
    allow:
    -	schema: “io_arcion”
    Types: [TABLE]
    

    Dopo aver inserito i dettagli di filtro database, salvare e chiudere il file.

  5. Successivamente si imposterà la configurazione del database di destinazione. Prima di definire la configurazione, creare un account Azure Cosmos DB for Apache Cassandra. Scegliere la chiave di partizione corretta dai dati e quindi creare un keyspace e una tabella in cui archiviare i dati trasferiti.

  6. Prima di procedere alla migrazione dei dati, aumentare la velocità effettiva del contenitore fino alla quantità necessaria per l'applicazione in modo da accelerare la procedura. Ad esempio, è possibile aumentare la velocità effettiva fino a 100000 UR. L'aumento della velocità effettiva prima dell'avvio della migrazione dei dati consentirà di eseguire la procedura in meno tempo.

    Scale Azure Cosmos DB container throughout

    Al termine della migrazione, è necessario ridurre la velocità effettiva. In base alla quantità di dati archiviati e alle UR necessarie per ogni operazione, è possibile stimare la velocità effettiva necessaria dopo la migrazione dei dati. Per altre informazioni su come stimare le UR necessarie, vedere gli articoli Effettuare il provisioning della velocità effettiva nei contenitori e nei database e Stimare le UR/sec usando Azure Cosmos DB Capacity Planner.

  7. Ottenere il punto di contatto, la porta, il nome utente e la password primaria dell'account Azure Cosmos DB dal riquadro Stringa di connessione. Questi valori verranno usati nel file di configurazione.

  8. Nel terminale dell'interfaccia della riga di comando impostare la configurazione del database di destinazione. Aprire il file di configurazione usando il comando vi conf/conn/cosmosdb.yml e aggiungere un elenco delimitato da virgole di URI host, numero di porta, nome utente, password e altri parametri obbligatori. Di seguito è riportato un esempio di contenuto del file di configurazione:

    type: COSMOSDB
    
    host: `<Azure Cosmos DB account’s Contact point>`
    port: 10350
    
    username: 'arciondemo'
    password: `<Your Azure Cosmos DB account’s primary password>'
    
    max-connections: 30
    use-ssl: false
    
  9. Eseguire quindi la migrazione dei dati usando Arcion. È possibile eseguire il replicante Arcion in modalità Full o Snapshot:

    • Modalità Full: in questa modalità il replicante continua a essere eseguito dopo la migrazione e rimane in ascolto di eventuali modifiche nel sistema Oracle di origine. Le eventuali modifiche rilevate vengono replicate nell'account Azure Cosmos DB di destinazione in tempo reale.

    • Modalità Snapshot: in questa modalità è possibile eseguire la migrazione degli schemi e la replica dei dati una tantum. La replica in tempo reale non è supportata con questa opzione.

    Usando le due modalità precedenti, la migrazione può essere eseguita senza tempi di inattività.

  10. Per eseguire la migrazione dei dati, nel terminale dell'interfaccia della riga di comando del replicante Arcion eseguire il comando seguente:

    ./bin/replicant full conf/conn/oracle.yaml conf/conn/cosmosdb.yaml --filter filter/oracle_filter.yaml --replace-existing
    

    L'interfaccia utente del replicante mostra lo stato di avanzamento della replica. Al termine della migrazione degli schemi e dell'operazione snapshot, lo stato di avanzamento mostra 100%. Al termine della migrazione, è possibile convalidare i dati nel database Azure Cosmos DB di destinazione.

    Oracle data migration output

  11. Poiché è stata usata la modalità Full per la migrazione, è possibile eseguire operazioni come inserimento, aggiornamento o eliminazione dei dati nel database Oracle di origine. In seguito è possibile verificare che queste modifiche vengano replicate in tempo reale nel database Azure Cosmos DB di destinazione. Dopo la migrazione, assicurarsi di ridurre la velocità effettiva configurata per il contenitore Azure Cosmos DB.

  12. È possibile arrestare il replicante qualsiasi punto e riavviarlo con l'opzione --resume. La replica riprende dal punto in cui è stata arrestata senza compromettere la coerenza dei dati. Il comando seguente illustra come usare l'opzione resume.

    ./bin/replicant full conf/conn/oracle.yaml conf/conn/cosmosdb.yaml --filter filter/oracle_filter.yaml --replace-existing --resume
    

Per altre informazioni sulla migrazione dei dati alla destinazione e sulla migrazione in tempo reale, vedere la demo del replicante Arcion.

Passaggi successivi