Domanda

La maggior parte della mia azienda utilizza powercenter informatica per trasferire dati di tipo Estratto-Trasforma-Carica tra database.

Tuttavia, il progetto in cui mi trovo ha un grande lavoro Perl personalizzato con alcuni Java lanciati per buona misura per spostare i dati e attivare altri aggiornamenti.

Si parla di riscrivere la cosa per usare Powercenter, quali sono le esperienze delle persone in un progetto del genere, ha senso? Sembra che tu commercia molta flessibilità nell'andare a un simile "standard". soluzione, ma gli strumenti ETL ti offrono molto in termini di produttività, ad esempio?

È stato utile?

Soluzione

Informatica è utile per un team operativo. Consente a una persona non tecnica di monitorare e rieseguire i lavori. Tuttavia, rende qualsiasi compito molto più complicato di quanto debba essere. È un enorme software e richiede un po 'di tempo per imparare, ed è limitato nelle trasformazioni che può fare senza programmare. Sicuramente userei Perl o un linguaggio di programmazione ogni giorno su un "ETL Enterprise" strumento.

Altri suggerimenti

Avevamo Informatica e Tibco a partire dal 2001 e le persone erano in grado di raccogliere facilmente Informatica (per compiti di base) ma Tibco era un dolore. Tibco ora non c'è più e l'impronta di Informatica è cresciuta, e il suo codice è ora visto anche dagli analisti aziendali.

Una volta che sei competente, puoi fare molto rapidamente (ho fatto 3 tabelle dei fatti e 12 dimensioni da più fonti in una settimana, per un data mart di dati finanziari e PO), ed è più facile la manutenzione quando si cambia codice, pianificazione , passaggio a un altro sviluppatore, ecc. Meno tempo a disposizione, più tempo nelle riunioni e nei documenti dell'organizzazione.

Lo usiamo per data mart, spostamenti di dati e interfacce con ASP.

Ora ha una trasformazione Java se vuoi fare qualcosa di totalmente personalizzato, invece di un programma C compilato.

Nel tuo caso, mi convertirei a Informatica per due motivi: analisi dell'impatto (SLA) e manutenzione (monitoraggio, singolo strumento ETL). La riusabilità è un altro vantaggio.

Specifico per l'informatica: avere l'analisi dell'impatto è un ottimo strumento: impedisce molte correzioni di emergenza e ti aiuta a mantenere gli SLA. Per me, migliorare gli SLA è al di sopra della flessibilità. Anche le funzionalità di monitoraggio in Informatica sono molto utili.

In generale: se la tua azienda si sta spostando su un singolo strumento ETL, la conversione di quel lavoro renderà più semplice la sua manutenzione. È inoltre più efficiente e affidabile per i team di supporto monitorare uno strumento. Si spera che la tua azienda cerchi di rendere riutilizzabili gli oggetti, il che rende più semplice la conversione e aumenta la produttività futura (nuovi oggetti riutilizzabili che potresti creare durante la conversione).

Un avvertimento: le attività di conversione sono in realtà difficili da stimare. Rendi questo un progetto indipendente se puoi (non parte di un prodotto più grande).

La codifica ti offre una grande flessibilità. Sia esso Perl, Python, C #, Java, SQL - qualunque cosa. È possibile creare rapidamente e facilmente alcune trasformazioni di dati. Perché qualcuno dovrebbe mai preoccuparsi di guardare anche il software ETL, giusto?

Supponiamo che tu abbia pronta l'intera soluzione. Tutti i tuoi script nella lingua che preferisci sono lì. Ora alcune domande:

  • Se la quantità di dati aumenta e non è possibile adattare tutto in memoria, dove viene creata la cache? Puoi controllarlo?
  • Come si creano tutti i registri? L'hai creato tu?
  • E la gestione degli errori? In caso di errori (ad es. Problemi di spazio su disco, problemi di connettività, ecc.) La causa principale è facilmente indicata?
  • Come si fa il monitoraggio? C'è qualche dashboard dinamico?
  • Il clustering è possibile con la tua soluzione?
  • È possibile eseguire alcune trasformazioni di dati in più thread, per renderle più veloci?
  • Failover: come gestite gli errori? È possibile riavviare un processo dal punto di errore?
  • Connettività: viene visualizzata una nuova fonte di dati, ad esempio Salesforce, quanto tempo è necessario per migliorare lo script per leggere / scrivere su di esso?
  • Riesci a connetterti a sistemi ERP come SAP?
  • Riesci a ottenere il lignaggio dei dati e l'analisi dell'impatto dagli script?

Tutti questi - e anche di più - si ottengono quando si utilizza un software ETL di discesa. Qualcuno ha lavorato duramente e per anni per affrontare tutti quei problemi e ottenere un po 'di GUI per questo. Questa è la differenza.

Ora: se hai bisogno di qualcosa per caricare un file su un DB di tanto in tanto, tutto andrà bene. Ma se prevedi di avere molti di questi un software ETL vale la pena considerare. E se Informatica è già lì nella tua azienda, allora perché potenziare e reinventare la ruota?

Strumenti ETL come Informatica ti acquistano produttività (e belle foto) se hai persone che non sanno programmare. Ha senso se non c'è nessuno in grado di mantenere il codice. Per qualcuno in grado di programmare, è come assumere un gorilla da 500 libbre per spostare una talpa.

Vedi anche: Questo post e questo post in questa discussione

È un po 'carino per la registrazione automatica dei lavori (non devi pensare a cosa vuoi registrare ... è fatto praticamente per te) e agli strumenti di monitoraggio del runtime (quanto è lungo il mio flusso di lavoro e dove ha fallito?).

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