Strategie di deployment di IBM Db2 Warehouse su Google Cloud

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Questo documento è la prima parte di un set di più parti che illustra le opzioni per il deployment di IBM Db2 Warehouse su Google Cloud. Questa parte fornisce una panoramica di cos'è DB2 Warehouse e per cosa viene utilizzata, dei punti importanti da prendere in considerazione quando si pianifica un deployment e delle opzioni per il deployment.
La serie è composta da queste parti:

Introduzione

IBM Db2 Warehouse è un data warehouse di analisi di cui è stato eseguito il deployment utilizzando container Docker. Il data warehouse Db2 offre un'analisi in-database scalabile, elaborazione in memoria e supporto per le applicazioni dati.

Terminologia

I seguenti termini sono importanti per comprendere un deployment Db2 Warehouse su Google Cloud.

Nodo di dati
Qualsiasi membro del cluster Db2 IBM Warehouse.
Nodo head
Una designazione per un nodo di dati che esegue la console web di amministrazione e che funge da gestore del cluster. In ogni cluster è presente esattamente un nodo head.
Cluster IBM Db2 Warehouse
Un gruppo di macchine che funzionano come un'istanza di warehouse IBM Db2 configurata per connettività, elezioni leader, failover e scalabilità.Il cluster è composto da un nodo head e da due o più nodi di dati aggiuntivi.
File system condiviso
Un file system che viene montato come risorsa di lettura/scrittura su tutti i nodi del cluster. Questa operazione è richiesta da un cluster Db2 Warehouse.

Quando eseguire il deployment di IBM Db2 Warehouse su Google Cloud

Potresti prendere in considerazione il deployment di Db2 Warehouse su Google Cloud nelle seguenti condizioni:

  • Stai già gestendo un data warehouse on-premise o su un altro cloud provider e vuoi spostare (&lift;spostare e spostare) il carico di lavoro in Google Cloud senza eseguire la migrazione a un altro prodotto di data warehouse.
  • Stai considerando un deployment ibrido, ad esempio a scopo di ripristino di emergenza e disponibilità.
  • Utilizzi già Db2 Warehouse e vuoi sfruttare le competenze e l'esperienza del tuo team per eseguire il deployment di un data warehouse per un nuovo carico di lavoro di analisi.

Architettura di alto livello di un cluster Db2 Warehouse

Il seguente diagramma illustra un deployment di Db2 Warehouse tipico. Il deployment consiste di un nodo head, due nodi di dati e un file system condiviso, nonché l'accesso interattivo dell'utente e una connessione all'applicazione.

Architettura di alto livello di un deployment Db2 Warehouse su GCP

Per tutti i deployment Db2 Warehouse:

  • Le immagini Docker di Db2 Warehouse sono ottenute dal Docker Store. Queste immagini sono necessarie quando esegui il deployment di nuove istanze (ad esempio, a scalabilità) e quando devi eseguire l'upgrade delle istanze esistenti a una nuova versione di Db2 Warehouse.
  • Per eseguire carichi di lavoro in produzione, è necessaria una licenza appropriata oltre a qualsiasi periodo di prova gratuito disponibile.
  • Un cluster Warehouse Db2 presuppone una topologia di rete fissa, ovvero i nodi e gli indirizzi IP non cambiano nel tempo. Le modifiche alla configurazione del cluster richiedono la rimozione del cluster e l'aggiornamento manuale della configurazione.
  • Il file system condiviso che stai utilizzando deve essere montato in modalità di lettura e scrittura su tutti i nodi del cluster.
  • Per agevolare le comunicazioni, i nodi del cluster richiedono l'apertura di un'ampia gamma di porte.

Considerazioni sul deployment

Questa sezione illustra le diverse opzioni per il deployment e l'esecuzione di Db2 Warehouse su Google Cloud.

Risorse di computing

I tutorial di questa serie mostrano come eseguire il deployment di Db2 Warehouse su Google Cloud in due modi diversi:

Quando scegliere Compute Engine

Compute Engine è un servizio a livello di IaaS. Scegli Compute Engine quando devi assumere il controllo completo delle risorse di elaborazione e della configurazione della rete virtualizzate. Gli elementi fondamentali del deployment di Db2 Warehouse sono macchine virtuali. IBM Db2 Warehouse è un data warehouse di livello aziendale. Di conseguenza, è un carico di lavoro che generalmente si adatta a questo approccio IaaS.

Quando scegliere GKE

GKE si occupa della gestione automatica dei cluster Kubernetes. I carichi di lavoro dei data warehouse come Db2 Warehouse non vengono in genere eseguiti su GKE, pertanto il deployment di IBM Db2 Warehouse su GKE richiede una conoscenza avanzata di Kubernetes. Se il tuo team DevOps si impegna a utilizzare GKE per il deployment in generale, può essere utile usare GKE per il deployment di Db2 Warehouse.

Opzioni di archiviazione

Puoi scegliere diversi sistemi di archiviazione condivisi per Db2 Warehouse. Ad esempio, puoi scegliere volumi NFS, IBM Spectrum Scale File System (GPFS) o GlusterFS. Ognuna di queste opzioni richiede una connessione di rete rapida e affidabile tra i nodi di dati warehouse Db2 e il sistema di archiviazione condiviso.

Quando scegli un sistema di archiviazione condiviso, tieni presente quanto segue:

  • Licenze e costi. Ad esempio, GlusterFS è una soluzione open source, mentre IBM Spectrum Scale richiede l'acquisto di una licenza.
  • Gestione servizio. Se hai bisogno di una soluzione completamente gestita, puoi scegliere Filestore. Se, invece, hai bisogno di perfezionare la soluzione di archiviazione, implementare i tuoi server NFS o utilizzare un file system distribuito, potrebbe soddisfare meglio le tue esigenze.
  • Rete. I file system condivisi richiedono una rete veloce e affidabile per le comunicazioni tra i nodi nel cluster. I requisiti di larghezza di banda sono una funzione della velocità effettiva di lettura e scrittura richiesta. Esistono alcune differenze tra le diverse soluzioni di archiviazione. Ad esempio, quando utilizzi l'archiviazione NFS remota, è fondamentale avere una connessione veloce dai nodi ai server NFS. Se viene eseguito il deployment del file system distribuito sui nodi stessi, le comunicazioni tra nodi richiedono più larghezza di banda rispetto al caso NFS remoto.
  • Esperienza e competenze nel team. Se il tuo team ha esperienza con una determinata tecnologia o soluzione, spesso è più economico in termini di tempo e di risorse rispetto a tale tecnologia.
  • Strumenti attuali. Se gestisci la soluzione di archiviazione esistente con una toolchain consolidata, potrebbe essere dispendioso in termini di tempo e denaro, ma è necessario avere una toolchain dedicata solo per gestire i componenti di archiviazione appena sottoposti a deployment.

Nei tutorial di questa serie utilizzerai due diversi tipi di spazio di archiviazione:

  • Non adatti ai minori. Utilizzi Filestore, un servizio di archiviazione di file completamente gestito e ad alte prestazioni che ha un'interfaccia file system e può essere utilizzato per condividere dati. I volumi di dati gestiti con Filestore sono accessibili utilizzando il protocollo Network File System (NFS).
  • GlusterFS, un file system distribuito e scalabile progettato per la scalabilità e la replica. Offre più interfacce di accesso, inclusi client nativo GlusterFS, un client basato su FUSE e NFS. Con GlusterFS, puoi anche perfezionare la configurazione del backend di archiviazione (ad esempio il numero di repliche) per il tuo ambiente. Un server GlusterFS può essere eseguito su Compute Engine o in un cluster Kubernetes (in questo caso, creato e gestito in GKE). Tieni presente che, quando configuri GlusterFS, devi anche eseguire il provisioning di dispositivi di archiviazione a blocchi dedicati, che saranno gestiti esclusivamente dai daemon GlusterFS.

Passaggi successivi