2010-03-12 4 views
10

Supponiamo che tu abbia un piccolo progetto che sulla superficie sembra una buona corrispondenza per uno strumento ETL come Talend.Straight Java/Groovy rispetto allo strumento ETL (Talend/etc) - quali librerie useresti?

Ma supponiamo inoltre di non aver mai utilizzato Talend e inoltre, non ti fidi degli strumenti di "programmazione visuale" in generale e preferiresti codificare tutto alla vecchia maniera (testo su un IDE bello!) Con l'aiuto di un lingua appropriata & librerie di supporto.

Quali sono alcuni modelli di linguaggio & librerie di supporto che potrebbero aiutarti a evitare la tentazione/trap dello strumento ETL?

+1

ETL: Estrai, Trasforma, Carica. http://en.wikipedia.org/wiki/Etl – Thilo

+1

Ho trovato questo collegamento utile quando stavo cercando di prendere questa decisione: [Kimball University: The Subsystems of ETL Revisited] (http://www.informationweek.com/news/software/bi/202405400? queryText = sottosistemi + etl + rivisitato) – Bradford

risposta

0

A seconda delle dimensioni dello schema DB, si potrebbe mappare tutto reale veloce in Hibernate e basta usare il modello di oggetto risultante a fare il vostro lavoro (a seconda di ciò che si desidera che lo strumento ETL per comunque)

2

penso questa è una buona corrispondenza per i framework ispirati a Rails, come Grails on Groovy o Lift on Scala.

5

Dipende se il deliverable è il processore o l'output stesso. Se hai solo bisogno di consegnare l'output, non è necessario mantenere il codice. Se il codice deve essere mantenuto, lo manterrai o qualcun altro?

Se qualcun altro ha bisogno di mantenere, userei Java o gli darò Talend.

Se si tratta di codice usa e getta, userei quello che sarà più facile o divertente da programmare.

Se è necessario mantenerlo e l'elaborazione è complessa, utilizzerei Scala. Ha:

  • some libraries per interagire con i database
  • letterali XML
  • combinatori parser
  • caratteristiche interessanti sui suoi pacchetti di raccolta (carta, filtri, groupBy, partizione, ...)
  • e ovviamente qualsiasi altra libreria Java esistente.
+0

Ho controllato il codice generato da Talend ... Sei sicuro che possa essere mantenuto dopo la creazione? – yura

+0

@yura, ho appena guardato brevemente * Talend * e non l'ho usato personalmente. Quando intendevo le definizioni e le configurazioni di Talend potevano essere mantenute (non necessariamente il codice generato). – huynhjl

+0

Ok, volevo solo sapere se le lingue visive (come Talend o Pentaho) possono essere usate per complesse regole ETL che richiedono supporto e manutenzione a lungo termine. – yura

4

Ero abituato a pensare che "la programmazione visiva" è qualcosa per le persone che non possono programmare. Poi sono stato esposto a Talend in un progetto e mi sono reso conto che questo tipo di strumento è perfetto per il lavoro, quando si tratta di spostare i dati da A a B e di trasformarli nel processo. È una progettazione software orientata ai componenti, da un'etichetta più accademica.

Mi considero ancora un programmatore decente che può fare qualsiasi cosa, e poi alcuni, con un editor di testo e un prompt della shell. Ma sono diventato anche un grande fan di Talend.

Full disclosure: Ora lavoro per l'azienda :-)

4

Partenza DataExpress. È un toolkit ETL cross-database basato su Scala.