Mi rendo conto che con NiFi, come lo definisce il documento, "il miglioramento continuo si verifica nella produzione". Quindi questo non si presta a essere usato come uno strumento di sviluppo tradizionale. Comunque per il progetto a cui sto lavorando è stato deciso che questo è lo strumento che useremo, quindi preferirei non discuterne i meriti in quanto mi rendo conto che ci saranno alcuni problemi.Ciclo di vita dello sviluppo per Apache NiFi
Ad esempio, se applico le modifiche in un ambiente esistente (dalla gestione temporanea alla produzione) e ci sono state modifiche in tempo reale nella destinazione, verranno sovrascritte. Quindi ho delle domande su come organizzare il ciclo di vita dello sviluppo.
- E 'possibile unire le modifiche che sono stati fatto da più sviluppatori in parallelo (unire i file modello XML esportati)? Sto indovinando che la fusione di eventuali modifiche significative potrebbe essere difficile ma non l'ho tentata.
- Come gestire le versioni modifiche? Suppongo che potresti esportare l'intera configurazione come modello e verificarlo nel controllo della versione?
- Come distribuire un flusso su un altro server? È possibile implementare una distribuzione NiFi azionaria e quindi aggiornarla dal modello esportato (come menzionato sopra) utilizzando l'API NiFi REST?
- Come gestire la distribuzione in un ambiente diverso che potrebbe avere configurazione diversa? Dovresti aggiornare il file XML del modello? O posso farlo in modo dinamico da qualcosa come Zookeeper?
Sembra [1], [2] e [3] sono non ancora implementato. Puoi dare un aggiornamento su come risolvere i problemi dichiarati nella versione attuale? Penso che in questo momento le persone stiano semplicemente importando ed esportando modelli. Questo ha alcuni inconvenienti, ad es. nessuna opzione di aggiornamento reale, è sufficiente rimuovere la vecchia versione e leggerne la nuova. –
Hai ragione non esiste una vera opzione di aggiornamento (per un gruppo di processi esistente). Il modello comune oggi è quello di spingere una nuova versione del gruppo di processi, quindi modificare le connessioni che alimentano quel gruppo. Questo può essere fatto con un paio di chiamate REST programmaticamente. Il registro apache nifi per la gestione del flusso, le variabili del gruppo di processi e i componenti con versioni sono tutti ben avviati con gli ultimi due nell'ultima versione. La prossima versione sembra probabile che il registro Apache nifi sia integrato per i flussi con versione e a quel punto si otterrà il vero aggiornamento! Dovrebbe essere molto bello. –