La inestabilitat del mercat —cada vegada més volàtil a causa de la globalització, la diversificació, l'expansió, etc.— fa que els processos ETL siguin més necessaris que mai. Per què? La resposta és molt simple: El procés ETL és imprescindible perquè els negocis prenguin decisions basades en les dades —data-driven decisions— en comptes de basar les seves estratègies empresarials en decisions arbitràries o suposicions. Així doncs, aplicar un procés ETL es tradueix en guanyar control sobre les dades.
Els processos ETL han anat guanyant rellevància en el món empresarial a mesura que el Big Data també ho ha fet. Actualment les empreses acumulen grans quantitats de dades que resulten necessàries per dur a terme operacions empresarials, però que, si no es gestionen bé, poden acabar provocant una sobreabundància d'informació inútil o una sobrecàrrega pels encarregats d'analitzar la informació. A més, disposar de dades no integrades i mal gestionades pot suposar un sobrecost per a l'empresa mentre que, a l'invers, les converteix en un actiu empresarial.
Si treballes en una empresa moderna, segurament hauràs sentit parlar d'ETL, encara que potser segueixis sense tenir clar què és exactament. Doncs bé, ETL (Extractar, Transformar, Carregar) és, en resumides comptes, un procés d'emmagatzematge, tractament i gestió de dades. Aquest procés permet el trasllat de dades de múltiples fonts a un únic lloc, ja sigui un data warehouse, un data lake, una base de dades relacional o no relacional...
Les sigles en anglès corresponen a Extract, Transform i Load, que són, bàsicament, les fases del procés.
És comú que la gent confongui els conceptes ETL i SSIS, pensant que compleixen funcions diferents o que són processos semblants però amb diferències. En realitat, SSIS és una eina ETL de Microsoft SQL Server que, a més del procés ETL, permet altres funcions com la fusió, neteja o agregació de dades i inclou eines de disseny, funcions de fluxos de treball, eines gràfiques, etc. A més, SSIS simplifica la transició de dades d'una base de dades a una altra i pot extreure dades de moltes fonts diferents: bases de dades de SQL Server, fitxers d'Excel, bases de dades Oracle i DB2, etc. Com a soci de Power BI de Microsoft, Bismart treballa amb aquesta eina.
Mentre que ETL es refereix al procés d'extreure, transformar i carregar dades (Extract, Transform i Load), SSIS és una eina que fa precisament això: extreure, transformar i carregar les dades de múltiples fonts a una única base de dades com un data warehouse.
Concretant, el que realment fa ETL és llegir dades d'una altra base de dades o de múltiples fonts de dades per convertir-les a través de taules de cerca, aplicant regles o combinant les dades existents amb altres dades. Així, el procés assegura que les dades compleixen els requisits fixats per l'empresa o pel client del procés, per finalment emmagatzemar-les en un data warehouse. El procés, doncs, garanteix la rellevància, utilitat, precisió, qualitat i accessibilitat de les dades per part dels seus consumidors.
Com ja hem vist, SSIS es refereix a SQL Server Integration Services i el seu ús s'estén a una gran quantitat de procediments relacionats amb el trasllat i la migració d'actius de dades, més enllà del procés ETL. SSIS és, bàsicament, una eina d'integració de dades dissenyada per resoldre necessitats empresarials i aplicacions de fluxos de treball. Entre els seus múltiples sistemes, SSIS disposa d'una eina específica per realitzar processos ETL.
Per aconseguir la integració de les dades i dur a terme el procés ETL, SISS segueix aquests passos:
No obstant això, SSIS té capacitat per realitzar altres processos a més de l'ETL. Per exemple, el conjunt de sistemes permet netejar, agregar i fusionar dades. També simplifica el trasllat de dades d'un sistema o font a un altre i es pot connectar amb una gran quantitat d'APIs per extreure dades de SQL Server, Oracle, DB2, arxius d'Excel, etc.
Més enllà de la migració de dades, SSIS disposa d'eines gràfiques i pot realitzar fluxos de treball com operacions de FTP, enviar correus electrònics, etc.
Està clar, doncs, que parlar de les diferències entre ETL i SSIS no és del tot encertat, ja que ETL és un procés i SSIS és una eina de Microsoft utilitzada per realitzar aquest procés.
1. Extracció: L'extracció és la primera fase d'un procés ETL i consisteix a extreure les dades dels sistemes i aplicacions on es troben. En aquesta fase les dades són convertides a un únic format i depurats. És a dir, tots passen a ser compatibles els uns amb els altres perquè es puguin interpretar en el seu conjunt i s'eliminen aquells que resultin innecessaris i es corregeixen errors.
2. Transformació: En aquesta etapa les dades es transformen perquè coincideixin amb l'estructura que hàgim determinat en nostre data warehouse. És a dir, en un data warehouse podem agrupar les dades per conceptes de lliure elecció —segons les nostres àrees de negoci, els departaments de l'empresa o l'ús que els anem a donar, per exemple—. A més, en aquesta fase les dades es validen tècnicament, es normalitzen i se'ls apliquen filtres, creus i agregats.
3. Carrega: Com el seu nom indica, en aquesta fase les dades ja transformades es carreguen al data warehouse on queden registrats per sempre —el data warehouse és un sistema no volàtil que evita la pèrdua o alteració de la informació. A més, el data warehouse es va actualitzant a mesura que s'afegeixen noves dades i és la millor manera d'obtenir un registre històric de tota la informació de l'empresa.
Dur a terme un procés ETL no és tasca fàcil i, de fet, pot resultar molt complexa. Per això, és necessari tenir el coneixement adequat per a triar l'eina i el tipus de processament adequats depenent de la quantitat de dades de la qual disposem, de la grandària i sector de l'organització, de les operacions que es vulguin realitzar, etc.
Existeixen tres processaments ETL possibles que no són excloents, és a dir, que poden combinar-se en una mateixa ETL.
Un procés ETL hauria de complir una sèrie de requisits perquè el seu funcionament sigui el convenient:
Capacitat d'adaptació: Un ETL ha de ser capaç de connectar amb múltiples sistemes que inclouen dades d'estructures diferents com bases de dades relacionals i no relacionals, XML, fitxers de diversos formats, aplicacions ERP, CRM i SCM, serveis web com Google Analytics, correus electrònics, plataformes d'ofimàtica, etc.
Capacitat d'entrega de dades: Així mateix, ha de ser capaç de proporcionar dades a altres aplicacions.
Capacitat de transformació de dades: La transformació de dades és una de les fases clau d'un procés ETL. Un ETL òptim ha de poder realitzar transformacions bàsiques (càlculs simples o conversió de tipus), transformacions intermèdies (agregacions, sumes, etc.) i transformacions complexes com ara anàlisi de textos.
Capacitat de metadades i modelatge de dades: Un ETL ha de ser capaç de recuperar els models de dades originals, crear i mantenir models, fer mapatges de models físics a lògics, sincronitzar els canvis en les metadades i tenir un repositori de metadades obert.
Capacitat de disseny i entorn de desenvolupament: L'ETL ha de tenir competències per representar gràficament els objectes del repositori, els suports per a proves i depuració, gestionar fluxos de treball, etc.
Capacitat de gestió de dades: Això vol dir validar la qualitat de les dades, crear perfils, tenir capacitat d'extracció d'informació, etc.
Capacitat d'adaptació a altres plataformes: L'ETL ha d'adaptar-se a les altres plataformes amb les quals treballa l'empresa.
Capacitat d'operacions administratives com la monitorització de les integracions de dades, gestionar errors, executar controls de seguretat, etc.
Capacitat d'arquitectura i integració: Un ETL ha de garantir la interoperabilitat entre els diferents elements que componen l'eina d'integració de dades.
En l'actualitat, pràcticament totes les empreses requereixen d'un procés d'integració de dades òptim com el procés ETL. Aquest procés estableix un sistema de suport per a la presa de decisions empresarials i fa que les dades siguin accessibles des de qualsevol lloc i en qualsevol moment.
A més a més, el gran avantatge del procés ETL és que assegura que les dades estiguin sempre netes, consolidades i preparades per ser utilitzades. El magatzem de dades on es troben les dades després del procés ETL, normalment un data warehouse, s'actualitza automàticament. A més a més, el procés ofereix un repositori històric de dades, ja que emmagatzema totes les dades històriques, les guarda sense possibilitat de pèrdua i permet als analistes realitzar comparacions temporals completes, analitzar diferents períodes temporals, descobrir tendències temporals i fins i tot predir tendències futures.
ETL maximitza el valor dels nostres actius de dades, fomenta la qualitat de les dades i assisteix als càrrecs decisius a l'hora d'obtenir respostes precises a preguntes clau per al bon funcionament del negoci. A més a més, en integrar una gran varietat de dades procedents de múltiples fonts, ETL minimitza el processament del sistema de producció, reduint el temps de resposta necessari per a l'anàlisi i el desenvolupament d'informes.
La finalitat principal d'un procés ETL és que les dades estiguin preparades per poder guiar el procés de presa de decisions. ETL construeix i carrega un data warehouse amb dades consolidades, íntegres, fiables i útils. Les dades innecessàries, errònies o ineficaces no arriben a emmagatzemar-se al data warehouse, cosa que, a més a més, suposa un estalvi de costos important per a l'organització.
A més a més d'estalviar costos, podem utilitzar ETL fins i tot per generar ingressos a partir dels nostres actius de dades. Com? Vegem-ho amb un exemple. Imaginem que el director d'un hotel necessita recopilar dades sobre l'ocupació mitjana i les tarifes de cada habitació del seu hotel. Mitjançant el procés ETL i d'altres eines de business intelligence, podrem descobrir els ingressos agregats de cada habitació i, per exemple, trobar estadístiques sobre la quota general del mercat. Reunint aquestes dades, el director de l'hotel pot calibrar la seva posició respecte a diversos mercats del sector, analitzar l'evolució de la tendència en el temps i, en conseqüència, decidir oferir descomptes estratègics en el preu de les seves habitacions.
Avui dia existeixen una gran quantitat d'eines especialment dedicades a implementar processos ETL, però, evidentment, no totes tenen les mateixes capacitats ni resulten igual d'eficients per a totes les companyies. Per a assegurar-nos que el procés ETL opera amb eficàcia, és fonamental saber com triar l'eina ETL adequada per a la nostra companyia.
En primer lloc, a l'hora de triar una eina ETL hem d'assegurar-nos que aquesta eina compleix tots els requisits —exposats a dalt— que ha de tenir una eina ETL segons Gartner.
Una vegada tenim clares les capacitats que ha de tenir l'eina, podem passar a considerar quin triar d'entre els diferents tipus d'eines ETL que existeixen. És fonamental tenir en compte que l'efectivitat de l'eina dependrà de les característiques de l'empresa, de la quantitat de dades amb us que treballa, dels usos que vulgui donar-li a aquestes dades. És a dir, totes les tipologies d'eines ETL tenen aspectes positius, la clau està a triar el tipus d'eina que millor encaix amb la nostra organització i amb el propòsit de les nostres dades.
Les eines ETL es poden classificar en les següents categories:
En què hem de fixar-nos?
En triar una eina ETL és primordial fixar-nos, com a mínim, en els següents aspectes:
La consultora tecnològica Gartner publica cada any un informe —el Quadrant Màgic de Gartner— en el qual es fa un rànquing de les millors eines tecnològiques segons diferents funcionalitats i àrees d'actuació. El quadrant classifica les eines, plataformes i APIs en 4 cataegorías: Chanllengers (Desafiadores), Leaders (Líders), Niche players (actors de nínxol) i Visionaries (visionaris).
Fixant-nos en l'últim informe d'eines d'integració de dades publicat per Gartner en 2020, veiem que les 10 millors eines ETL segons la multinacional són: Informatica, IBM, SAP, Oracle, SAS, Microsoft Azure, Qlik, Talend i TIBCO. Consulta el Quadrant Màgic de Gartner sobre eines d'integració de dades complet a continuació:
Disposar d'un procés ETL és un avantatge competitiu per a qualsevol empresa, ja que permet que els treballadors i directius d'una empresa puguin accedir a les dades de manera ràpida i senzilla i puguin manejar-los fins i tot aquelles persones que no són necessàriament expertes o que no tenen les capacitats tècniques.
A més, la ETL és un element base per a garantir la integració de dades, el data management i el govern de dades que, al seu torn, contribueixen a una millor presa de decisions estratègiques.
Així mateix, el procés ETL està estretament relacionat amb el data quality, és a dir, a l'anàlisi de qualitat de les nostres dades, ja que quan les dades passen pel procés són validats, depurats, netejats, es corregeixen errors, etc. És a dir, implementar un procés ETL ens assegura que les nostres dades tenen la qualitat desitjada, cosa que permetrà prendre millors decisions empresarials, evitar errors operacionals, reduir el cost de la reparació de dades i lliurar a l'equip de gestió de dades de tasques innecessàries.
A continuació, fem un repàs dels principals avantatges d'implementar un procés ETL en una empresa:
Una de les tendències més noves relacionades amb ETL és el seu progressiu desenvolupament en el núvol: ETL Cloud Service. Cada vegada més empreses opten per realitzar els seus processos ETL en entorns cloud en lloc de fer-ho en servidors locals. Ho confirma un estudi d'IDG publicat en 2020 que apunta que el 81% de les empreses ja compten amb una o més aplicacions i tenen part de la seva infraestructura en el núvol. Així mateix, l'informe destaca que d'entre aquestes companyies, el 92% tenen part dels seus entorns IT en el núvol.
El trasllat de ETL al núvol no és casualitat i està relacionat amb l'evolució del món feia l'entorn digital. Igual que passa en altres esferes de la vida, els negocis emmagatzemen avui la gran majoria dels seus actius de dades, eines, serveis i softwares en el núvol.
Com ja expliquem en una entrada anterior on vam exposar els beneficis de la integració cloud, adquirir o desenvolupar un procés ETL basat en el núvol ofereix uns certs avantatges com una major velocitat o el fet que la instal·lació i posada en marxa de ETL és molt més ràpida. A més, l'entorn cloud permet streaming en temps real, afavoreix la integració i l'escalabilitat, suposa un estalvi de diners i és una manera d'assegurar la seguretat de les dades de l'empresa, pel fet que les companyies que ofereixen entorns cloud per a processos ETL han de revisar, reforçar, enfortir i renovar els seus sistemes de seguretat constantment.
El procés ETL difereix segons l'entorn en què es desenvolupa. En un procés ETL realitzat en un servidor local, les dades són extretes d'una font de dades local i, després de la seva transformació, es carreguen en un altre servidor local o data warehouse local. Aquest tipus d'emmagatzematges o servidors normalment es troben físicament dins de l'oficina de l'empresa.
L'ETL Cloud Service o el procés ETL realitzat al núvol compleix exactament la mateixa funció que l'ETL local i contempla els mateixos passos. L'única diferència, doncs, és que tant el magatzem de dades font com el data warehouse on les dades consolidades són finalment carregades estan digitalitzats i s'emmagatzemen al núvol.
Aquesta diferència, però, condiciona el procés i implica que un procés ETL local i un procés ETL al núvol es desenvolupin de formes lleugerament diferents.
En l'entorn del núvol, el procés es desenvolupa a partir de clústers de computació compartits que operen com a entitats independents i es troben en diferents llocs del món. Així, els processos de computació es desenvolupen mitjançant espais de treball en entorns de núvol a través de sistemes com, per exemple, Data Factory. Aquests processos aconsegueixen nivells majors de connectivitat entre les fonts de dades que l'ETL local i capaciten la gestió gràfica del flux de dades mitjançant interfícies que connecten les fonts d'origen amb els magatzems de destinació de les dades.
A més de les capacitats més grans, la velocitat i la connectivitat, les eines i els sistemes que participen en el procés ETL a la núvol resolen amb eficàcia la majoria de limitacions del procés ETL més tradicional. Els principals problemes que soluciona la núvol són l'elevat cost dels magatzems de dades i servidors físics o la pèrdua de tota la informació recopilada i consolidada cada vegada que ocorre una fallada tècnica. D'altra banda, l'entorn de la núvol prescindeix de tasques necessàries en un procés ETL realitzat en un servidor local: actualitzacions, reparació d'errors, manteniment, etc.
Tot això converteix la velocitat en el major benefici de realitzar un procés ETL a la núvol. Les organitzacions que encara desenvolupen els seus processos ETL a partir de servidors locals estan en desavantatge respecte a les companyies que s'han traslladat a la núvol, ja que difícilment podran competir amb l'agilitat i el dinamisme del servei de núvol.
Una altra avantatge important del núvol és que permet una major escalabilitat. El procés, al realitzar-se sense necessitar cap tipus d'instal·lació o maquinari, permet a les empreses expandir els seus recursos quan ho necessiten, sense necessitat de grans inversions o de pagar per material que no utilitzen. Aquest tipus d'expansió automàtica, a més a més, comporta un gran estalvi de temps i de diners, ja que a la núvol les empreses només paguen per la capacitat de processament i l'espai que utilitzen. En canvi, en un servidor local, resulta sumament difícil adaptar la mida i capacitat del servidor a les necessitats específiques del negoci en cada moment. Les necessitats de les empreses evolucionen constantment i l'escalabilitat és un requisit per a qualsevol empresa que pretengui focalitzar-se en l'expansió i el creixement.
En definitiva, el benefici més destacat i apreciat de l'ETL a la núvol és el nivell superior de velocitat. La núvol facilita la rapidesa de les tasques de computació i afavoreix el desenvolupament òptim i àgil d'activitats de business intelligence, ja que els entorns locals tenen més predisposició a aturar-se degut a la velocitat vertiginosa de creixement del volum de dades amb què treballen les organitzacions. Així mateix, l'entorn de la núvol es connecta tant a entorns locals com a altres serveis allotjats a la núvol.
Com ja hem vist, a mesura que la tecnologia, la digitalització i l'evolució de les capacitats d'Internet han avançat, les empreses han anat traslladant els seus processos ETL a l'entorn cloud. En aquesta línia, IDG anunciava el 2018 que el 38% de les organitzacions reconeixien que els seus departaments IT demanaven el trasllat total de la infraestructura IT al núvol.
Com hem vist anteriorment, les raons són múltiples. L'avantatge més destacat de l'ETL Cloud Service és, sens dubte, la major velocitat. Les tasques de computació que requereix qualsevol procés ETL es desenvolupen de forma molt més àgil al núvol. De fet, en els servidors locals, el procés i les activitats de business intelligence poden veure's interrompudes a mesura que els actius de dades d'una empresa s'expandeixen i augmenten. La majoria dels servidors locals tenen capacitats limitades i, arribat el moment, poden deixar de funcionar de manera òptima. En canvi, al núvol, l'espai es pot escalar fàcilment i les organitzacions poden augmentar la capacitat i el processament quan ho necessiten. A més a més, l'entorn cloud és sumament més flexible que l'entorn local, ja que les empreses poden pagar únicament pel que utilitzen.
Avui en dia, el cicle de vida d'un data warehouse es pot automatitzar mitjançant una tecnologia puntera basada en patrons i processos de disseny sofisticats que automatitzen la planificació, la modelització i la integració de dades del data warehouse. L'automatització serveix per evitar aquelles tasques que comporten una major quantitat de temps com la generació de codis ETL en una base de dades.
El procés ETL basat a la núvol es pot aplicar per automatitzar un data warehouse. Un data warehouse és un tipus de base de dades especialment pensada per afavorir l'emmagatzematge, filtratge i anàlisi de grans quantitats de dades i que permet consultar i analitzar les dades de forma simultània i creuada, sense necessitat de combinar i consolidar la informació de múltiples fonts de dades.
En un data warehouse tradicional, les dades passen per tres fases:
Dur a terme un procés ETL habilita maximitzar el valor del nostre magatzem de dades o data warehouse. Un data warehouse simplement actua com el lloc on les dades són guardades. Les eines de business intelligence, pel seu costat, serveixen per a realitzar anàlisi a partir de les dades una vegada ja han estat transformats. ETL és el procés intermedi que prepara totes les dades, provinguin d'on provinguin i en el format en el qual es trobin, perquè puguin ser analitzats i utilitzats.
En aquest sentit, és fonamental entendre ETL com un procés vinculat a l'adquisició d'un data warehouse. Sense el procés ETL, el magatzem de dades no permet aprofitar el valor de les dades.
En la mateixa línia, si nostre data warehouse es troba en un entorn cloud, és convenient apostar per un procés ETL cloud.
L'aparició del Big Data ha provocat una transformació significativa en la forma en què es gestionen i emmagatzemen les dades, la qual cosa ha portat a noves demandes quant al processament tradicional d'emmagatzematge de dades. A mesura que han sorgit nous requisits en termes de volum i velocitat, els processos ETL han evolucionat cap a una perspectiva diferent coneguda com ELT. Aquesta nova perspectiva ha sorgit com a resposta a les demandes actuals de volum, velocitat i veracitat en la integració i l'emmagatzematge de dades, i ha canviat l'ordre habitual del procés ETL.
El terme "Big Data" va sorgir per primera vegada a la fi dels anys 90 per a descriure la creixent problemàtica que enfrontaven les organitzacions en relació amb la quantitat de dades generades. En 1997, un grup d'investigadors de la NASA va publicar un article destacant que l'augment de les dades s'estava convertint en un desafiament per als sistemes informàtics existents. Aquesta situació va impulsar l'avanç tecnològic cap a plataformes capaces de manejar conjunts de dades massives. En 2001, l'empresa estatunidenca Gartner va publicar una recerca titulada "3D Data Management: Controlling Data Volume, Velocity and Variety", on es van esmentar per primera vegada les "3V" que les tecnologies de Big Data havien d'abordar: volum, velocitat i varietat.
El Big Data va plantejar nous desafiaments per al procés ETL. L'augment en volum, velocitat i varietat exigit pel Big Data va qüestionar la capacitat de les eines ETL, que en moltes ocasions no podien manejar el ritme necessari per a processar conjunts de dades massives, la qual cosa generava falta de capacitat i velocitat, a més de suposar sobrecostos.
L'aparició de nous formats i fonts de dades, juntament amb els requisits de consolidació de dades, va revelar la rigidesa del procés ETL i va canviar la forma tradicional de consumir dades. La demanda de major velocitat i varietat va portar als consumidors de dades a necessitar accés immediat a les dades en brut, en lloc d'esperar que el departament de TU els transformés i els fes accessibles.
A més, el Big Data també va impulsar la creació dels data lakes, que són magatzems de dades que no requereixen un esquema predefinit, a diferència dels data warehouses tradicionals, la qual cosa va introduir esquemes d'emmagatzematge més flexibles.
Les eines ETL, que es van construir pensant principalment en la gestió per part del departament de TU, solen ser complicades d'instal·lar, configurar i gestionar. A més, aquestes eines conceben la transformació de dades com una tasca exclusiva dels professionals de TU, la qual cosa dificulta l'accés dels consumidors de dades. Segons aquesta lògica, els consumidors només poden accedir al producte final emmagatzemat en un data warehouse estandarditzat.
En aquest context, va sorgir la innovació, remodelant el procés i fent-lo més adequat per a treballar amb Big Data i serveis en el núvol. ELT proporciona major flexibilitat, escalabilitat, rendiment i velocitat, al mateix temps que redueix els costos.
No obstant això, ELT també presenta els seus propis desafiaments. A diferència de ETL, les eines ELT estan dissenyades per a facilitar l'accés a les dades als consumidors finals, la qual cosa democratitza l'accés a les dades i permet als usuaris obtenir-los des de qualsevol font de dades a través d'una URL. Tanmateix, això pot plantejar riscos per a la governança de les dades.
Encara que ELT ha millorat tant l'extracció (E) com la càrrega (L) de dades, continua havent-hi desafiaments quant a la transformació (T). En l'actualitat, l'anàlisi de dades exerceix un paper fonamental en les empreses. Malgrat els esforços de ELT, l'anàlisi basada en la transformació de dades no s'ha simplificat i continua sent competència del departament de TU, especialment d'enginyers i científics de dades. Transformar les dades en brut en actius llestos per a ser utilitzats pels consumidors encara requereix de múltiples eines i processos complexos que els consumidors de dades no tenen la capacitat d'abordar.
A més, els diversos processos i eines necessaris per a la transformació de dades continuen presentant els mateixos problemes que ETL, com la velocitat del procés, la quantitat de recursos requerits, el cost i la falta d'escalabilitat.
S'ha resolt el problema? Perquè ELT reemplaci definitivament a ETL, les eines ELT haurien d'evolucionar. Quant a aquesta evolució, s'espera que en un futur pròxim aquestes eines incloguin capacitats de govern de dades i vagin abordant gradualment les dificultats que encara persisteixen.
Tant ELT (Extreure, Carregar, Transformar) com ETL (Extreure, Transformar, Carregar) són processos utilitzats per a moure dades sense processar des d'un sistema font a una base de dades de destí, com un data lake o un data warehouse. Aquestes fonts de dades poden residir en múltiples repositoris o sistemes heretats, i després es transfereixen al magatzem de dades de destí mitjançant ELT o ETL.
En un enfocament de processament de dades conegut com ELT (Extreure, Carregar, Transformar), s'extreuen dades no estructurades d'un sistema font i es carreguen directament en un data lake per a la seva posterior transformació. A diferència de l'enfocament tradicional ETL (Extreure, Transformar, Carregar), les dades estan disponibles immediatament per als sistemes d'intel·ligència empresarial sense requerir una preparació prèvia. Això permet als analistes i científics de dades realitzar transformacions ad hoc segons sigui necessari.
L'enfocament ELT és especialment útil per a dur a terme transformacions bàsiques en les dades, com a validació o eliminació de duplicats. Aquests processos s'actualitzen en temps real i s'apliquen a grans volums de dades en el seu estat original.
No obstant això, l'enfocament ELT és relativament nou i el seu desenvolupament tècnic encara no ha aconseguit el mateix nivell d'avanç que l'enfocament ETL. Inicialment, el procés ELT es basava en seqüències de comandos SQL codificades, la qual cosa augmentava el risc d'errors de codificació en comparació amb els mètodes més avançats utilitzats en ETL.
En un procés ETL, les dades s'extreuen de les seves fonts d'origen i se sotmeten a transformacions per a preparar-les abans de carregar-les en els sistemes de destí.
En un escenari ETL tradicional, les dades no estructurades s'extreuen i es carreguen en una àrea de preparació o de staging, on se sotmeten a un procés de transformació. Durant aquesta etapa, les dades s'organitzen, es netegen i es transformen en dades estructurades. Aquest procés de transformació garanteix que les dades, ara estructurats, siguin compatibles amb el sistema d'emmagatzematge de dades de destí, generalment un data warehouse.
Tot i que les eines i el procés ETL continuen dominant el trasllat i la integració de dades en el món del business, recentment el procés ETL està sent enfocat des d'una altra perspectiva: ELT. Si bé és cert que algunes empreses ja estan apostant per ELT en comptes de ETL, és necessari ressaltar que ELT no té per què ser el substitut de ETL i és que es poden complementar tots dos processos i, de fet, alguns experts ja parlen del procés ETLT que combina totes dues perspectives, creant el següent pipeline: Extreure, Transformar, Carregar i Transformar.
La principal diferència entre ambdues és la pertorbació de l'ordre habitual de ETL: Extreure, Transformar i Carregar. En ELT, en canvi, l'ordre del procés és: Extreure, Carregar i Transformar. És a dir, en un procés ELT, les dades són extretes de la font d'origen, carregats a un únic lloc —normalment un data lake— i finalment, una vegada les dades ja estan integrats en un mateix magatzem de dades, es duen a terme transformacions en les dades: normalització de dades, filtrats, combinacions, validació de dades, agregacions, etc. En el procés ETL, en canvi, les dades s'extreuen i les transformacions es realitzen abans de carregar les dades en un data warehouse.
A la pràctica, no obstant això, és habitual que els diferents passos d'aquests processos es donin en paral·lel. És a dir, en els processos ETL, les companyies solen dur a terme l'extracció, transformació i càrrega de les dades alhora per a estalviar temps. La principal diferència entre ELT i ETL, doncs, no està tant en l'ordre del procés sinó en la ubicació en la qual es realitzen les transformacions de les dades. En el cas de ETL, les transformacions es donen en un magatzem de dades temporal —on es guarden les dades després de ser extrets i abans de ser carregats al data warehouse definitiu—. Aquest magatzem temporal funciona amb un motor de processament especialitzat que permet les transformacions. En el cas de ELT, en canvi, les transformacions succeeixen en el magatzem de dades back-end, que té capacitat de realitzar transformacions i no requereix d'un motor especialitzat. En aquest sentit, ELT té una arquitectura més simple que ETL. Quan les dades són extretes de la font d'origen, s'inclouen directament en la staging area del magatzem de dades de destí on es duen a terme les transformacions en les dades raw. Una vegada transformats, les dades es copien en una altra àrea del data warehouse.
Perquè el procés ELT sigui productiu és fonamental disposar de les capacitats de computació i processament necessàries per a poder dur a terme transformacions en les dades. A la pràctica, això es tradueix en l'adquisició i ús d'eines com Azure Databricks, Azure Data Lake o Azure Synapse Analytics. D'altra banda, aquest ordre de procés requereix d'un entorn que pugui ser escalable i que permia augmentar l'espai i la capacitat quan sigui necessari. Entorns com Azure són ideals per a aquesta mena de processos, ja que les eines de Azure són de pagament per ús. És a dir, les empreses paguen per l'espai que usen i poden augmentar la quantitat d'espai quan vulguin.
Com hem vist, si bé ETL Cloud ofereix una major velocitat que ETL local, ELT incrementa encara més aquesta velocitat, sent aquest precisament el seu major punt a favor. ELT agilitza la ingesta de dades evitant les operacions més pesades del pipeline i la còpia de les dades, pas imprescindible en un procés ETL.
A continuació, explorem de manera gràfica les principals diferències entre ETL i ELT:
Els principals avantatges de ELT respecte a ETL i el motiu pel qual moltes companyies estan apostant per aquesta nova tendència és, sens dubte, la major velocitat i flexibilitat. ELT té una velocitat d'ingesta de dades molt major que ETL pel fet que s'omet la còpia de les dades, que si es dona en ETL i el pipeline evita altres operacions àrdues.
Així mateix, l'altre gran punt fort de ELT és que aporta flexibilitat als analistes de dades que poden carregar les dades sense haver de definir abans què faran amb elles i poden, per contra, realitzar les transformacions que vulguin en el moment en què ho necessitin. A més, ELT permet, pel mateix motiu, que els analistes o científics de dades puguin carregar les dades sense determinar prèviament la seva estructura. ELT, en canvi, és un procés més rígid que requereix que els analistes defineixin l'estructura i ús de les dades abans que aquests siguin carregades i, a més, dificulta la recuperació de les dades originals.
Tot i que ELT aporti beneficis dels quals no disposa ETL, el mateix passa al revés. ETL, per exemple, és un procés més adequat per a treballar amb dades estructurades i pot afavorir la seguretat, qualitat i governança de les dades.
En qualsevol cas, totes dues perspectives tenen els seus pros i les seves contres i seran més o menys òptimes segons les característiques de cada empresa i dels seus actius de dades, així com de l'ús que se'ls vulgui donar a les dades. Fins i tot l'ús paral·lel d'ambdues, podria suposar un augment de valor per a la companyia.
El procés ETL implica una sèrie de passos addicionals en comparació amb ELT, la qual cosa ho fa una mica més lent. Aquests passos inclouen carregar les dades en una àrea de preparació per a realitzar les transformacions necessàries. No obstant això, a canvi d'aquesta major complexitat, ETL ofereix un procés més segur que resulta en dades més netes i amb menor probabilitat d'errors de codificació.
Una dels avantatges clau de ETL és la seva capacitat per a realitzar transformacions en les dades abans de carregar-les en el magatzem de destí. Això proporciona una capa addicional de seguretat, ja que les dades transformades es carreguen de forma més de confiança i garanteixen la integritat d'aquests. D'altra banda, les eines ELT estan dissenyades per a permetre un accés més directe a les dades per part dels usuaris finals, la qual cosa implica un major risc de seguretat i fa més desafiadora garantir la governança de les dades.
A més, l'enfocament ETL ofereix beneficis específics en termes de compliment de normes de privacitat de dades, com el RGPD (Reglament General de Protecció de Dades). En un procés ELT, les dades sensibles poden estar més exposats a riscos de robatori o hackeo.
Pel que fa a les capacitats avançades, les eines ETL han evolucionat significativament a causa del seu major temps en el mercat. Aquestes inclouen funcions completes d'automatització del flux de dades, recomanacions de regles per al procés d'extracció, transformació i càrrega, una interfície visual per a especificar regles i fluxos de dades, suport per a la gestió de dades complexes, així com mesures addicionals de seguretat i compliment de normes de privacitat. Aquestes característiques fan que les eines ETL siguin una opció més sòlida i establerta en comparació amb ELT.
Tant ETL com ELT són opcions vàlides per a dur a terme el procés d'extracció, transformació i càrrega de les dades. La seva validesa i prevalença per sobre de l'altra opció sempre estarà vinculada a les característiques i necessitats específiques de cada empresa, així com a la naturalesa i quantitat d'actius de dades.
Si la teva empresa ja compta amb un sistema de processament ETL que funciona amb eficàcia no existeix cap motiu per a renunciar a ell i canviar-ho per un procés ELT. No obstant això, si la teva companyia té previst adquirir més magatzems de dades —especialment magatzems cloud— en el futur, podria resultar interessant apostar per ELT.
Sempre cal tenir en compte que ELT no és un sistema ni depèn d'una eina específica. És una arquitectura i, per tant, si disposes d'una eina ETL com SSIS, pots fàcilment integrar-la en el procés ELT.
Tampoc cal descartar el procés ETLT que no és més que la unió entre ETL i ELT. ETLT pot maximitzar el valor del procés ETL i ELT aprofitant el millor de cadascun. En un procés ETLT, una eina ETL podria extreure les dades de les seves fonts d'origen i emmagatzemar-les en un data lake perquè, a través del procés ETL, les dades s'extraurien del data lake i serien transformats per a posteriorment emmagatzemar-los en un data warehouse.
No hi ha cap dubte que la nova perspectiva de ETL, ELT, ha arribat per a quedar-se. No obstant això, no cal pensar que ELT serà substituirà ETL.
ETL o ELT? Quan és millor realitzar les transformacions, abans o després de la càrrega?
La selecció entre ETL i ELT depèn de diversos factors i no es pot establir una resposta definitiva sobre quin és millor en tots els casos. La elecció de l'aproximació més adequada ha de basar-se en les necessitats i requisits específics de cada projecte.
En general, ETL s'ha utilitzat tradicionalment quan es requereix una transformació exhaustiva de les dades abans de carregar-les a l'emmagatzematge de destinació. Aquest enfocament és preferible quan es necessita garantir la qualitat i consistència de les dades abans del seu anàlisi. En realitzar les transformacions abans de la càrrega, es poden aplicar regles de validació, netejar dades errònies o duplicades, i estructurar-les d'acord amb un esquema predefinit. A més, ETL sol ser més segur en termes de compliment de normatives de privacitat i governança de dades, ja que les transformacions es realitzen abans que les dades arribin a l'emmagatzematge.
D'altra banda, ELT s'ha tornat més popular en el context del Big Data i la necessitat de processar grans volums de dades de manera eficient. ELT permet una càrrega ràpida de dades en brut en un data lake o un emmagatzematge de dades sense estructurar, la qual cosa accelera el procés d'ingestió. Les transformacions es realitzen posteriorment, quan les dades estan disponibles a l'emmagatzematge, el que permet un anàlisi ad-hoc i una major flexibilitat per explorar les dades sense restriccions prèvies. ELT és especialment útil quan es requereix una alta velocitat de processament i es prioritza l'agilitat en l'exploració i el descobriment de dades.
És important avaluar amb cura les necessitats del projecte, considerant factors com el volum i la varietat de les dades, la complexitat de les transformacions requerides, la seguretat i el compliment normatiu, així com els recursos i habilitats disponibles en l'equip. En molts casos, pot ser beneficiós combinar elements d'ambdós enfocaments, utilitzant ETL per a la neteja i estructuració inicial de les dades, i després aprofitant ELT per a l'anàlisi i l'exploració posterior. La elecció dependrà de les circumstàncies particulars i l'equilibri entre els requisits de qualitat, velocitat i flexibilitat del projecte.
Les empreses han de triar entre un procés ETL o un procés ELT segons el cas d'ús.
El procés ETL resulta eficient en escenaris on es manegen conjunts de dades petites o mitjanes que requereixen transformacions complexes. No obstant això, la seva eficàcia disminueix a mesura que els conjunts de dades creixen, ja que les operacions d'agregació es tornen més complicades.
Quin tipus d'empreses poden beneficiar-se de l'ús de ETL?
ELT és una solució especialment dissenyada per a la gestió i la integració eficient de grans quantitats de dades, ja siguin estructurats o no estructurats. A més, resulta especialment adequat per a entorns que requereixen un accés ràpid i en temps real a les dades.
Existeixen uns certs tipus d'empreses que es beneficiarien en triar ELT:
En resum, mentre que ETL s'adapta millor a conjunts de dades petites o mitjanes que requereixen transformacions complexes, ELT és l'elecció més adequada quan es tracta de bregar amb grans volums de dades, tant estructurats com no estructurats. A més, ELT és especialment útil en entorns que demanden l'ús de dades en temps real i ofereix una execució més ràpida del procés.
El Reglament General de Protecció de Dades (GDPR) és el nou marc regulador de la Unió Europea relacionat amb la protecció de dades que va entrar en vigor al maig de 2018, després d'una transició de dos anys. La nova legislació va néixer amb la intenció d'unificar les lleis de protecció de dades de tots els països de la Unió Europea i de reforçar el control dels ciutadans sobre les seves dades i informació personal.
La nova llei va obligar totes les empreses i organitzacions que tractaven amb dades de ciutadans de la UE a revisar i adaptar les seves polítiques de protecció de dades i, segons un estudi de Gartner, la gran majoria d'empreses encara no havien aplicat les mesures necessàries per complir amb la llei mesos abans del termini final d'aplicació.
En aquest sentit, la majoria d'empreses que estaven treballant amb processos ETL tenien un problema ja que la majoria de sistemes ETL no complien amb la GDPR. Això va obligar les empreses a apostar per nous sistemes com el Master Data Management Enterprise Information Integration (MDM/EII). MDM/EII és una tecnologia d'integració de dades i interoperabilitat que habilita la consulta de dades en múltiples formats i procedents de diferents fonts de dades i està especialment dissenyada per complir amb la GDPR. El nou sistema que agilitza el trasllat d'informació entre sistemes assegura que, en cada pas del procés, la recopilació i integració de dades es realitza complint els requisits de la legislació europea i garanteix la integritat de les dades que són consolidades, exactes i congruents amb l'objectiu pel qual són traslladades i emprades.
La integració orientada a la informació no requereix modificacions en els sistemes implicats, sinó només la implementació del mecanisme d'intercanvi d'informació entre els repositoris de dades de les aplicacions respectives. Representa la forma d'integració més senzilla i de menor impacte en comparació amb altres tipus d'integració: orientada a processos o a serveis.
A més a més, després de dos anys de GDPR, el compliment de les normes de protecció de dades personals per part de les companyies segueix en qüestió. De fet, la revista Forbes ja va publicar el 2017 que més del 50% de les empreses enquestades no estaven preparades per les noves mesures regulatòries. El pronòstic va ser confirmat pel bufet d'advocats DLA que va publicar al gener de 2021 que l'any 2020 les multes de la GDPR s'havien incrementat en un 40% respecte als 20 mesos anteriors. Aquest fet pot ser resultat que, o bé les empreses incompleixen cada vegada més la normativa, cosa que seria estranya tenint en compte les conseqüències, o bé la Unió Europea està reforçant progressivament les sancions per forçar el compliment de les noves polítiques de privacitat i protecció de dades.
Aquest panorama ens porta a reflexionar sobre el paper del data quality i el data governance en l'aplicació de les mesures reguladores. El compliment de la GDPR per part de les organitzacions passa per garantir la qualitat de les dades i crear mesures de govern de dades per tenir-les controlades, validades, consolidades i, especialment, tenir clar quines dades emmagatzema l'empresa, on es troben tots els actius de dades, per què processos passen, si estan segures, si són fiables i quina és la seva finalitat.
En aquest sentit, doncs, el problema de la manca de compliment per part de les empreses no recau en els sistemes ETL. Si bé és cert que molts no estaven preparats en el seu moment, el funcionament de les eines ETL és segur si l'ús es complementa amb polítiques de data quality i data governance que, aquestes sí, són imprescindibles per al compliment de la llei.
La fi de les cookies en Google Chrome: Un pas més en la protecció de dades
El 2019, Google va fer pública la seva intenció d'eliminar gradualment les cookies de tercers en Chrome i bloquejar altres tècniques de seguiment encobertes, com el fingerprinting. Justin Schuh, director d'enginyeria de Chrome, va explicar que aquesta era l'estratègia de Google per a redissenyar els estàndards web i garantir la privacitat predeterminada. A principis de març de 2021, Google va confirmar el seu compromís d'eliminar per complet les cookies de tercers en Chrome per a 2022. La companyia planeja implementar mesures de protecció de la privacitat a través del pla "Privacy Sandbox". Algunes d'aquestes noves normes ja s'estan provant en Chrome 89, amb l'expectativa d'oferir-les als clients de Google Ads a partir d'abril.
Encara que la iniciativa ha estat ben rebuda pel públic en general, ha generat preocupació entre les empreses i els anunciants sobre el futur de la publicitat i el màrqueting digital en un món sense cookies.
Per a ajudar els negocis a adaptar-se, Bismart ha desenvolupat una guia pràctica que proporciona mesures i precaucions que s'han de prendre en aquest nou escenari. Pots descarregar la "Guia per a sobreviure en un món sense cookies" a continuació.
© Bismart 2022| Todos los derechos reservados | Política de Privacidad | Política de Cookies | Política de Calidad | Condiciones de uso