FDLC: Ciclul de viata al dezvoltarii fluxului cu registre NiFi

Publicat initial la https://www.datacrafts.fr

Una dintre caracteristicile puternice ale Apache NiFi este capacitatea de a proiecta fluxuri de date complexe cu o interfata UI usor de utilizat. Aceasta caracteristica permite utilizatorilor sa proiecteze si sa testeze cu usurinta fluxurile de date intr-un timp scurt. Cu toate acestea, paradigma bazata pe interfata de utilizare introduce provocari in industrializarea acestor fluxuri de date. In acest articol, vom explora mai intai de ce este important sa adoptati un proces in jurul ciclului de viata al dezvoltarii pentru proiectarea fluxului in NiFi. shemale porno Apoi vom trece prin motivele pentru care instrumentele existente nu sunt potrivite pentru paradigmele fluxurilor de date. In cele din urma, vom introduce doua caracteristici noi adaugate in NiFi 1.5 pentru a sprijini ciclul de viata al fluxului de date si va vom arata cum sa le utilizati intr-un caz de utilizare practic simplu.

Proiectarea unui flux de date in NiFi este similara cu scrierea codului in limba preferata. Trebuie sa definiti algoritmul care va rezolva problema in cel mai elegant si mai eficient mod. S-ar putea sa testati diferite abordari si sa lucrati treptat la obiectivul dvs. porno alpha france final. Deci, trebuie sa tineti evidenta mai multor versiuni de flux si sa navigati intre ele cu usurinta. Aproape ca te aud spunand „ Git ”! dar nu uitati, proiectam fluxuri de date intr-o interfata de utilizare.

Odata ce sunteti multumit de designul dvs., trebuie sa-i validati performanta si comportamentele in setari realiste inainte de a-l implementa in productie. Puteti utiliza un cluster NiFi de testare cu mai multe noduri si va poate stresa fluxul de date la scara. adeline lange porno Aici, trebuie sa mutati fluxul din clusterul dev in clusterul de testare si, ulterior, din clusterul de testare in clusterul de productie. Setarile precum numele de gazda, adresele IP, numele bazelor de date, parolele etc. trebuie schimbate dinamic atunci cand se muta fluxurile dintr-un mediu in altul.

SDLC: Ciclul de viata al dezvoltarii software-ului

In dezvoltarea software-ului, aceste sarcini sunt gestionate de procesul SDLC si de un set de instrumente precum versiunea de coduri (de exemplu, Github) sau instrumente de automatizare (de exemplu, Jenkins). Exista cateva optiuni pentru a utiliza aceste instrumente cu NiFi, dar nu fara provocari. Prima optiune este sa folositi fisierul flow. vagin porno xml.gz care stocheaza configuratiile tuturor fluxurilor de date care ruleaza intr-un cluster NiFi. Acest fisier poate fi versionat intr-un depozit Git si implementat in mai multe medii. Principala provocare este ca flow.xml contine configuratii ale tuturor fluxurilor dintr-un cluster dat, spre deosebire de a avea doar configuratia fluxului care este actualizata / dezvoltata. Atingerea tuturor fluxurilor care ruleaza in productie atunci cand doriti sa faceti o usoara modificare a unuia dintre fluxuri nu este o solutie acceptabila. porno alternatif

O alta optiune este utilizarea sabloanelor NiFi pentru a gestiona fluxurile individual. Cu sabloanele, se poate proiecta un flux, il poate exporta, il poate versiona cu Github si il poate implementa intr-un mediu nou. Deoarece NiFi are un API REST frumos, intregul proces poate fi automatizat cu ceva efort. Chiar daca aceasta optiune este mai curata decat prima, vine cu dificultatile sale: schimbarea dinamica a setarilor dependente de mediu, actualizarea fluxurilor de rulare, doar pentru a numi cateva.

Pentru a facilita viata dezvoltatorilor de fluxuri, comunitatea NiFi a decis sa lucreze la aceste subiecte pentru a oferi capabilitati native pentru implementari de flux. Imi place sa-i spun capabilitati Flow Development Life Cycle (FDLC) . disney porno Aceste capabilitati sunt registre Flow si Variable.

  • Flow Registry: un subproiect al Apache NiFi care ofera o locatie centrala pentru stocarea si gestionarea resurselor partajate in una sau mai multe instante de NiFi si / sau MiNiFi. Suporta stocarea si gestionarea fluxurilor versionate si se integreaza cu NiFi pentru a permite stocarea, recuperarea si actualizarea fluxurilor versionate. Pur si simplu, este Git of NiFi (acolo, il ai!). Registrul Flow a fost integrat cu NiFi incepand cu versiunea 1.5 (NIFI-4435). porno gay noir
  • Registru variabil: ofera utilizatorilor flexibilitate pentru a crea dinamic variabile si a se referi la acestea in proprietatile componentelor. Nu numai ca simplifica configuratia prin reutilizarea valorii, dar imbunatateste si portabilitatea fluxurilor catre medii noi. Gestionarea acestor variabile se face prin interfata NiFi UI la nivel de grup de proces. Aceste variabile pot fi actualizate la runtime fara a reporni NiFi. Aceasta este o mare imbunatatire in comparatie cu registrul de variabile bazat pe fisiere anterior. Registrul variabil este disponibil incepand de la NiFi 1. porno gay ttbm 4 (NIFI-4224).

Sa incepem !

Sa incepem prin descarcarea si pornirea registrului NiFi:

wget http://apache.crihan.fr/dist/nifi/nifi-registry/nifi-registry-0.1.0/nifi-registry-0. xxl porno 1.0-bin.tar.gz



tar -zxf nifi-registry-0.1.0 -bin. mormon porno tar.



  • porno simpson
  • porno robe
  • porno chienne
  • porno hut
  • porno 974
  • free porno sex
  • porno homo
  • porno vintage francais
  • porno hub gay
  • my porno
  • big booty porno
  • porno cousine
  • flm porno
  • tiktok porno
  • vido porno
  • cosplay porno
  • film porno francais streaming
  • porno mature anal
  • absolu porno
  • porno prof





gz



./nifi-registry-0.1.0/bin/nifi-registry.sh start

Dupa pornire, UI-ul Registry este disponibil la http: // registry: 18080 / nifi-registry /. porno viol Faceti clic pe pictograma instrument din partea dreapta sus a interfetei de utilizare si apoi faceti clic pe GALATURA NOUA. Un compartiment este echivalent cu un depozit in limba Github. Este doar un container pentru organizarea fluxurilor. Sa numim noua noastra galeata „Ingestie”.

O noua instanta de registru NiFi

Setarile Registrului clientilor

Sa presupunem ca avem 2 instante NiFi 1.5 pe care le vom folosi pentru dezvoltari si medii de productie. porno club Pentru a conecta o instanta NiFi la registrul de flux, faceti clic pe meniul Hamburger din partea dreapta sus a UI NiFi, faceti clic pe Setari controler, Client registru, apoi adaugati. Setati clientul de registry cu adresa de registry si dati-i un nume. Repetati aceiasi pasi pentru a doua instanta NiFi.

Pentru a testa caracteristicile registrului de flux, sa folosim instanta Dev si sa proiectam un flux simplu care genereaza date fictive si sa le impingem la Kafka. In primul rand, incepeti prin crearea unui nou grup de proces si denumiti-l „Kafka Ingestion”. Deoarece brokerul nostru Kafka este diferit atunci cand suntem in Dev si in Prod, vom folosi variabile pentru gazda brokerului, portul si numele subiectului. porno gay muscle Pentru a face acest lucru, faceti clic dreapta pe grupul de proces, apoi pe variabile, apoi pe butonul „+”. Adaugati 3 variabile dupa cum urmeaza.

Variabile pe care le vom folosi in flux si valorile lor in cluster Dev

Aceste variabile sunt tratate de cadrul NiFi si stocate in fisierul de definitie a fluxului ( flow.xml ). Exista o sectiune „variabila” la sfarsitul fiecarei sectiuni de grup de proces care listeaza variabilele definite si valorile acestora. Din perspectiva experientei utilizatorului, puteti adauga / actualiza / sterge variabile fara a fi nevoie sa reporniti instanta NiFi. porno xxl

Acum adaugati un GenerateFlowFile, setati programarea la 120 de secunde si proprietatea Text personalizat la orice sir doriti. Adaugati un PublishKafka_0_10 si configurati-l dupa cum urmeaza (retineti utilizarea variabilelor $ {kafka-broker} $ {kafka-port} si $ {kafka-topic})

Configurarea PublishKafka in Dev Cluster

Conectati si porniti cele doua procesoare asa cum este ilustrat in imaginea de mai jos. Deoarece avem o instanta de broker Kafka locala cu un subiect „test” deja creat, putem vedea datele care duc la relatia de succes.

Pentru a salva fluxul nostru in registrul de flux, sa navigam la grupul de proces radacina, sa facem clic dreapta pe grupul de proces „Versiune Kafka Ingestion” si sa incepem controlul versiunii. Incheiem cu o fereastra in care ni se solicita sa setam numele fluxului, descrierea fluxului si comentariile versiunii. Faceti clic pe Salvare si atat. porno italia Fluxul dvs. este salvat, versionat si gata pentru a fi implementat in alta parte. Navigati la UI-ul registry pentru a verifica daca fluxul a fost publicat cu informatiile sale.

De asemenea, puteti observa ca aspectul vizual al grupului de proces s-a schimbat. Acum exista acum o bifa verde care indica faptul ca grupul de procese are ultima versiune disponibila in Registrul de flux, asa cum este ilustrat in imaginea de mai jos.

Pentru a implementa acest flux in productie, pur si simplu adaugati un nou grup de proces in clusterul de productie, faceti clic pe linkul Import si selectati fluxul pe care doriti sa il importati. porno hetero Fluxul acum este implementat pe clusterul de productie si este gata de pornire.

Inainte de a incepe grupul de proces, faceti clic pe variabile si modificati variabilele pentru a se potrivi cu setarile mediului dvs. de productie. De exemplu, schimbati kafka-broker din localhost in hdpcluster.hortonworks.com . bande dessinée porno NiFi are grija sa opreasca componentele afectate, sa aplice actualizari si sa reporneasca acele componente: o modalitate ingrijita de actualizare a acestor variabile. Dupa cum arata imaginea de mai jos, numai Publish_Kafka_0_10 este afectat de aceasta operatiune.

Acum putem incepe grupul de proces pentru ca fluxul sa ruleze in productie. Ia-ti timp sa iei cafeaua aia 🙂

Sa consideram acum ca trebuie sa ne actualizam fluxul. Sa revenim la instanta noastra Dev si sa schimbam programarea GenerateFlowFile de la 120 de secunde la 60 de secunde.

Putem vedea ca grupul de procese are o pictograma stea gri, ceea ce inseamna ca nu mai este sincronizat cu registrul de flux. telecharger film porno Pentru a transfera aceste modificari in registrul de flux, faceti clic pe Versiune , apoi faceti modificari locale. Aceste modificari sunt acum vizibile in registrul de flux cu toate detaliile furnizate impreuna cu commit.

Pentru a implementa aceasta noua versiune a fluxului in clusterul de productie, reveniti la clusterul de productie. Veti vedea pictograma rosie pe grupul de proces care va anunta ca este disponibila o noua versiune a fluxului. Faceti clic dreapta pe grupul de procese, selectati versiunile si apoi alegeti ultima versiune disponibila. Noul flux este implementat pentru dvs. porno 300 Observati ca variabilele existente nu sunt afectate de aceasta actualizare.

Daca am avea o noua variabila definita in aceasta versiune, numele si valoarea ei ar fi fost sincronizate cu clusterul de productie.

In plus fata de experienta de utilizare lina pe care registrele NiFi Flow si Variable o aduc procesului de implementare, acestea ajuta la mentinerea fluxului intr-o stare coerenta. Sa luam in considerare cazul in care clusterul de productie are mai multe fisiere de flux in coada dintre GenerateFlowFile si PublishKafka .

Ce se intampla daca adaug un UpdateAttribute intre aceste doua procesoare in Dev si apoi incadrez aceasta actualizare in productie? NiFi isi va muta elegant coada de date intre GenerateFlowFile si UpdateAttribute .

In unele situatii, actualizarile de la Dev la Prod nu pot fi aplicate fara a pierde date. porno vietnam Sa luam in considerare un scenariu similar in care unele date se afla inca in coada dintre cele doua procesoare initiale, in timp ce unele modificari de rupere au fost aplicate in Dev si angajate in registrul de flux.