Els conceptes data warehouse i data lake se solen confondre. No obstant això, aquests dos tipus d'emmagatzematge de dades són molt més diferents del que pot semblar a simple vista. De fet, l'única cosa que tenen en comú és que contenen grans quantitats de dades.
Un data warehouse (magatzem de dades, en espanyol) és una infraestructura d'emmagatzematge de dades utilitzada per a emmagatzemar, organitzar i analitzar grans volums de dades estructurades —a vegades també dades semiestructurades i no estructurades—. Aquestes dades poden provenir de de diverses fonts dins d'una organització, com a bases de dades operatives, sistemes de gestió de relacions amb els clients (CRM), sistemes de gestió de recursos empresarials (ERP) i altres fonts.
L'objectiu principal d'un data warehouse és proporcionar un entorn centralitzat per a la presa de decisions empresarials en permetre a les organitzacions consolidar dades de diferents fonts i analitzar-les per a obtenir perspectives significatives i oportunitats de negoci. Per a aconseguir això, les dades es transformen i s'emmagatzemen en un format optimitzat per a l'anàlisi, la qual cosa facilita la consulta i el reporting.
El concepte de 'data warehouse' està estretament lligat a la presa de decisions basada en dades i a l'aprofitament d'informació corporativa des del seu origen. Aquest tipus de magatzem de dades està especialment dissenyat per a satisfer les necessitats d'intel·ligència empresarial i anàlisi de dades, i sovint es denomina Enterprise Data Warehouse (EDW) per aquesta raó.
Per a ser més específics, un data warehouse pot definir-se com una arquitectura d'emmagatzematge i integració de dades que facilita l'organització, transformació, comprensió i gestió de les dades. A més, permet aprofitar aquestes dades per a prendre decisions empresarials més informades. La creació i el desenvolupament d'aquesta arquitectura, juntament amb les operacions associades, es coneixen com 'data warehousing'. Aquest terme es refereix al procés de recopilació, integració i organització de dades en un data warehouse.
A diferència d'altres bases de dades, l'objectiu principal d'un data warehouse és transformar dades brutes en perspicàcies empresarials i facilitar l'accés a aquestes dades per part dels usuaris de l'empresa de manera ràpida i eficient.
Un data warehouse típicament es complementa eines i tecnologies per a l'extracció, transformació i càrrega (ETL) de les dades, així com plataformes per a l'anàlisi i la visualització de dades. Utilitza tècniques com la indexació, la partició i l'optimització de consultes per a garantir que les consultes analítiques siguin ràpides i eficients, fins i tot quan es treballa amb grans volums de dades.
En resum, un data warehouse és un component fonamental en l'àmbit de la intel·ligència empresarial, ja que ajuda a les organitzacions a prendre decisions informades basades en anàlisis de dades precises i rellevants.
Un data warehouse funciona mitjançant un procés sistemàtic que involucra l'extracció, transformació, càrrega (ETL) i anàlisi de dades.
Un data warehouse sol ser el magatzem de dades central d'una organització. Després d'extreure dades de les seves fonts originals i integrar-los en el data warehouse, aquests són processats, transformats i organitzats en vistes i taules de dimensions o fets. El mètode comunament utilitzat per a aquest propòsit és el procés ETL (Extract, Transform and Lloeu) o, més recentment, ELT (Extract, Lloeu, and Transform).
Una vegada que les dades han estat transformats i organitzats, els usuaris poden accedir a ells a través de SQL, eines d'intel·ligència empresarial com Power BI, plataformes de gestió de clients com un CRM, entre altres opcions.
A continuació, detallem com funciona un data warehouse:
Extracció (Extract): Les dades s'extreuen de diverses fonts dins d'una organització, com a bases de dades operatives, sistemes CRM, ERP i altres sistemes d'informació. Aquestes dades poden ser de diferents tipus, com a dades transaccionals, dades de clients, dades de vendes, etc.
Transformació (Transform): Una vegada que les dades s'han extret, passen per un procés de transformació. Durant aquesta etapa, les dades es netegen i es transformen en un format estàndard. Això implica corregir errors, eliminar duplicats i convertir les dades a un format consistent. A més, es poden aplicar unes certes regles de negoci i càlculs per a crear dades agregades i derivades que siguin útils per a l'anàlisi.
Càrrega (Load): Les dades transformades es carreguen en el data warehouse, on s'emmagatzemen en estructures optimitzades per a l'anàlisi. Les dades solen organitzar-se en taules i columnes per a facilitar les consultes. Aquest procés pot implicar la creació d'índexs per a millorar la velocitat de les consultes i la partició de dades per a una gestió més eficient.
Anàlisi (Analysis): Una vegada que les dades estan en el data warehouse, els usuaris poden realitzar anàlisis complexes i generar informes. Això es fa utilitzant eines d'anàlisis i visualització que accedeixen a les dades del data warehouse i permeten als usuaris fer preguntes complexes i descobrir patrons i tendències en les dades.
Presentació (Presentation): Els resultats de l'anàlisi es presenten als usuaris en forma d'informes, dashboards i visualitzacions interactives. Aquests informes ajuden les organitzacions a prendre decisions informades basades en les dades analitzades.
És important destacar que el procés d'un data warehouse és continu i repetitiu. Les dades s'actualitzen regularment per a assegurar-se que la informació analitzada estigui sempre actualitzada i sigui rellevant per a la presa de decisions empresarials.
D'altra banda, recentment, algunes corporacions estan enfoando el procés d'extracció, transformació i càrrega de les dades (ETL) des d'una altra perspectiva, ELT, per a guanyar velocitat i flexibilitat.
Els data lake i els data warehouse s’utilitzen de forma generalitzada per l’emmagatzematge de big data però, encara que tots dos són magatzems de dades, no són termes intercanviables. Un data lake o "llac de dades" és un gran conjunt de dades en brut, que encara no té una finalitat definida. En canvi, un data warehouse o "magatzem de dades" és un dipòsit de dades que ja estan estructurades i filtrades i han estat processades per un objectiu concret.
Els conceptes data warehouse i data lake se solen confondre. No obstant això, aquests dos tipus d'emmagatzematge de dades són molt més diferents del que pot semblar a simple vista. De fet, l'única cosa que tenen en comú és que contenen grans quantitats de dades.
És important realitzar la distinció, ja que els data lake i els data warehosue atenen diferents propòsits, per la qual cosa requereixen un enfocament diferent per a ser optimitzats adequadament.
Totes dues eines són parts fonamentals d'un procés d'integració de dades i solen ser usades en processos ETL. La integració de dades és la base de qualsevol estratègia de dades. Si les dades no estan adequadament integrats, transformar-los en valor empresarial serà altament complex.
Totes dues eines són parts fonamentals d'un procés d'integració de dades i solen ser usades en processos ETL. La integració de dades és la base de qualsevol estratègia de dades. Si les dades no estan adequadament integrats, transformar-los en valor empresarial serà altament complex.
Algunes de les diferències principals entre un data warehouse i un data lake són l’estructura de les dades, els mètodes de processament, en quin àmbit s’utilitzen i quina és la finalitat de les dades.
Així, un data lake emmagatzema dades sense processar i que encara no tenen una finalitat determinada. Els seus usuaris finals són els científics de dades i la seva accessibilitat és elevada. A més, a un data lake, justament degut a aquesta fàcil accessibilitat, es poden actualitzar les dades ràpidament.
Per altra banda, un data warehouse inclou dades processades i que ja s’estan utilitzant i que, per tant, tenen una finalitat concreta. Els usuaris finals d’un DW són, normalment, empresaris i persones de negocis i és més complicat realitzar canvis.
La diferència que més allunya ambdós conceptes és, segurament, l’estructura variable de les dades en brut. Les dades processades, en canvi, són estables. Com que els data lake són els que solen emmagatzemar aquestes dades en brut, la seva capacitat d’emmagatzematge ha de ser superior a les d’un data warehouse. Tenir aquestes dades en brut té molts beneficis, com poder analitzar-les ràpidament i per a qualsevol propòsit. Tot i això, si no existeixen les mesures adequades de qualitat i govern de dades, els data lake poden convertir-se en una espècie de contenidor intractable de dades del qual se’n pot treure poc valor.
Els beneficis d’un data warehouse també són interessants: com que només emmagatzemen dades processades, estalvien molt espai d’emmagatzematge, cosa que es tradueix en un estalvi de diners. A més, com que estan processades, les dades són molt més comprensibles i es tornen accessibles per un públic menys tècnic.
Més enllà del seu propòsit d’emmagatzematge, aquests dos conceptes són bastant diferents. Els data lakes, pel seu contingut no estructurat, poden ser complicats de navegar i requereixen d'un científic de dades, mentre que els data warehouse són més indicats per ser utilitzats en una empresa per part d’usuaris menys tècnics. Per totes aquestes diferències, cada empresa ha de valorar amb els experts quin dels dos tipus els convé més segons per a què seran utilitzats.
La decisió d'usar un magatzem de dades o un llac de dades depèn dels requisits específics i els casos d'ús de l'organització. Tant els magatzems de dades com els llacs de dades tenen fortaleses i febleses diferents, per la qual cosa és essencial comprendre les característiques de cadascun i considerar les necessitats de gestió de dades de l'organització. Aquí hi ha alguns escenaris en els quals podries triar un magatzem de dades en lloc d'un llac de dades:
Dades Estructurades i Intel·ligència Empresarial: Si la teva organització treballa principalment amb dades estructurades (per exemple, dades transaccionals, registres de vendes, dades financeres) i requereix capacitats d'intel·ligència empresarial i generació d'informes, un magatzem de dades és una elecció adequada. Els magatzems de dades estan optimitzats per a manejar dades estructurades i estan dissenyats per a admetre consultes analítiques complexes i generar informes precisos i consistents.
Anàlisi de Dades Històriques: Els magatzems de dades són adequats per a emmagatzemar dades històriques i mantenir un registre de les transaccions comercials al llarg del temps. Proporcionen una vista variant en el temps de les dades, la qual cosa permet l'anàlisi de tendències històriques i el seguiment del rendiment.
Esquema Ben Definit i Estable: Si les teves dades tenen un esquema ben definit i estable, és a dir, l'estructura de les dades no canvia amb freqüència, un magatzem de dades és avantatjós. Els magatzems de dades depenen d'esquemes predefinits per a organitzar les dades de manera eficient, la qual cosa els fa menys flexibles per a adaptar-se a canvis en l'esquema sobre la marxa.
Dades Agregades i Resumides: Si els teus requisits d'informes i anàlisis impliquen dades agregades i resumides (per exemple, totals de vendes, ingressos trimestrals, mitjanes anuals), un magatzem de dades pot emmagatzemar i gestionar dades preagregats de manera eficient per a un rendiment de consulta més ràpid.
Integració amb Eines de BI Tradicionals: Els magatzems de dades són compatibles amb eines tradicionals d'intel·ligència empresarial (BI) i plataformes de generació d'informes. Si la teva organització ja utilitza eines de BI populars com Tableau, Power BI o Qlik, integrar un magatzem de dades en la teva infraestructura existent és relativament senzill.
Com ja hem avançat, el gran aspecte diferenciador d'un data warehouse és la seva arquitectura, que s'estructura en diferents capes que interactuen entre elles i, al seu torn, amb les dades.
L'arquitectura clàssica d'un data warehouse es compon de 3 capes:
Bronze: En la capa Bronze, també coneguda com a capa de Staging, les dades s'extreuen de les seves fonts originals, generalment mitjançant scripts SQL.
Silver: En la capa Silver, també dita Core, les dades de diverses fonts originals s'integren en el data warehouse. Després d'emmagatzemar-los, les dades es transformen i modelen, sovint utilitzant esquemes d'estrella o floc de neu. Després, es transfereixen a un servidor de processament analític en línia (OLAP). Una vegada completada la transferència, les dades es transformen novament i es carreguen en el data warehouse, on estan disponibles per a anàlisi posterior i per a recolzar la presa de decisions.
Com ja hem avançat, aquestes dues capes inicials solen implementar-se mitjançant un procés ETL o ELT.
Or: En la capa Or, les dades són refinades perquè siguin accessibles per als usuaris. Això implica organitzar-los de manera que estiguin preparats per a ser utilitzats i exportats en diverses plataformes d'intel·ligència empresarial, generació d'informes i visualització de dades, com Power BI i altres interfícies front-end.
Conclusió
En resum, tant el data warehouse com el data lake són eines fonamentals en l'àmbit de l'emmagatzematge de dades, però difereixen en la seva estructura, propòsit i enfocament. Mentre que el data warehouse se centra en dades processades i estructurades per a la presa de decisions empresarials, el data lake emmagatzema dades en brut sense una finalitat definida. Cadascuna d'aquestes eines té els seus avantatges i desavantatges, per la qual cosa és important triar l'opció que millor s'adapti a les necessitats específiques de cada organització. Si bé el data warehouse és ideal per a treballar amb dades estructurades i realitzar anàlisis històriques, el data lake ofereix una major flexibilitat i accessibilitat per als científics de dades. En última instància, és essencial tenir una estratègia de dades ben plantejada i comptar amb experts que puguin guiar en l'elecció i optimització de l'emmagatzematge de dades.