Pot ser una mica difícil tenir en compte tots els serveis i opcions arquitectòniques disponibles quan penseu en plataformes de dades.
Una plataforma de dades empresarial sovint consta de magatzems de dades, models de dades, llacs de dades i informes, cadascun amb un propòsit específic i un conjunt d'habilitats necessàries. En canvi, durant els últims anys ha sorgit un nou disseny anomenat data Lakehouse.
La versatilitat dels llacs de dades i la gestió de dades del magatzem de dades es combinen en una arquitectura d'emmagatzematge de dades revolucionària anomenada "llac de dades".
Examinarem el data Lakehouse en profunditat en aquesta publicació, inclosos els seus components, característiques, arquitectura i altres aspectes.
Què és Data Lakehouse?
Com el seu nom indica, un data lakehouse és un nou tipus d'arquitectura de dades que combina un data lake amb un data warehouse per resoldre les mancances de cadascun per separat.
En essència, el sistema Lakehouse utilitza un emmagatzematge econòmic per mantenir grans quantitats de dades en les seves formes originals, com els llacs de dades. Afegir la capa de metadades a la part superior de la botiga també ofereix una estructura de dades i potencia les eines de gestió de dades com les que es troben als magatzems de dades.
Emmagatzema els enormes volums de dades organitzades, semiestructurades i no estructurades que obtenen de les diferents aplicacions empresarials, sistemes i gadgets utilitzats a tota la seva organització.
La majoria de les vegades, els llacs de dades utilitzen una infraestructura d'emmagatzematge de baix cost amb una interfície de programació d'aplicacions de fitxers (API) per emmagatzemar dades en formats de fitxer genèrics i oberts.
Això fa possible que molts equips accedeixin a totes les dades de l'empresa mitjançant un únic sistema per a diverses iniciatives, com ara ciència de dades, màquina d'aprenentatge, i intel·ligència empresarial.
Característiques
- Emmagatzematge de baix cost. Un data lakehouse ha de ser capaç d'emmagatzemar dades en un emmagatzematge d'objectes de baix cost, com ara Google Cloud Emmagatzematge, emmagatzematge de blobs d'Azure, Amazon Simple Storage Service o de manera nativa amb ORC o Parquet.
- Capacitat per a l'optimització de dades: l'optimització de la disposició de dades, la memòria cau i la indexació són alguns exemples de com un data lakehouse ha de ser capaç d'optimitzar les dades mantenint el format original de les dades.
- Una capa de metadades transaccionals: a més de l'emmagatzematge essencial de baix cost, això permet capacitats de gestió de dades crucials per al rendiment del magatzem de dades.
- Suport per a l'API Declarative DataFrame: la majoria de les eines d'IA poden utilitzar DataFrame per recuperar dades de magatzem d'objectes en brut. La compatibilitat amb l'API Declarative DataFrame augmenta la capacitat de millorar dinàmicament la presentació i l'estructura de les dades en resposta a una tasca concreta de ciència de dades o d'IA.
- Suport per a transaccions ACID: l'acrònim ACID, que significa atomicitat, consistència, aïllament i durabilitat, és un component crític per definir una transacció i garantir la coherència i la fiabilitat de les dades. Aquestes transaccions abans només eren possibles als magatzems de dades, però el Lakehouse ofereix l'opció d'utilitzar-los amb data llacs també. Amb diverses canalitzacions de dades que inclouen lectures i escriptures concurrents, això resol el problema de la baixa qualitat de les dades d'aquestes últimes.
Elements de Data Lakehouse
L'arquitectura del data Lakehouse es divideix en dos nivells principals a un alt nivell. La ingesta de dades de la capa d'emmagatzematge està controlada per la plataforma Lakehouse (és a dir, el llac de dades).
Sense necessitat de carregar les dades en un magatzem de dades o convertir-les en un format propietari, la capa de processament pot consultar directament les dades a la capa d'emmagatzematge mitjançant una sèrie d'eines.
Aleshores, les aplicacions de BI, així com les tecnologies d'IA i ML, poden utilitzar les dades. Aquest disseny proporciona l'economia d'un llac de dades, però com que qualsevol motor de processament pot llegir aquestes dades, les empreses tenen la llibertat de fer que les dades preparades siguin accessibles per a l'anàlisi per una sèrie de sistemes. El rendiment i el cost del processador es poden millorar amb aquest mètode per al processament i l'anàlisi.
A causa del seu suport per a transaccions de bases de dades que s'adhereixen als següents criteris d'ACID (atomicitat, consistència, aïllament i durabilitat), l'arquitectura també permet a moltes parts accedir i escriure dades simultàniament dins del sistema:
- Atomicitat es refereix al fet que la transacció completa o cap d'ella té èxit mentre es completa una transacció. En cas que s'interrompi un procés, això ajuda a evitar la pèrdua o la corrupció de dades.
- Consistència garanteix que les transaccions es produeixen d'una manera previsible i coherent. Manté la integritat de les dades assegurant-se que totes les dades són legítimes d'acord amb regles predeterminades.
- Aïllament assegura que, fins que no s'hagi acabat, cap transacció pot ser afectada per cap altra transacció dins del sistema. Això permet a nombroses parts llegir i escriure des del mateix sistema simultàniament sense interferir entre si.
- Durabilitat garanteix que els canvis a les dades d'un sistema continuen existint després de finalitzar una transacció, fins i tot en cas d'error del sistema. Qualsevol alteració produïda per una transacció es conserva per sempre.
Data Lakehouse Arquitectura
Databricks (l'innovador i dissenyador del seu concepte Delta Lake) i AWS són els dos principals defensors del concepte de data lakehouse. Per tant, ens basarem en els seus coneixements i coneixements per descriure la disposició arquitectònica de les cases del llac.
Un sistema de data llac normalment tindrà cinc capes:
- Capa d'ingestió
- Capa d'emmagatzematge
- Capa de metadades
- Capa API
- Capa de consum
Capa d'ingestió
La primera capa del sistema s'encarrega de recollir dades de diverses fonts i enviar-les a la capa d'emmagatzematge. La capa pot utilitzar diversos protocols per connectar-se a nombroses fonts internes i externes, inclosa la combinació de capacitats de processament de dades per lots i streaming, com ara
- bases de dades NoSQL,
- compartició de fitxers
- aplicacions CRM,
- llocs web,
- sensors IoT,
- Mitjà de comunicació social,
- Aplicacions de programari com a servei (SaaS) i
- sistemes de gestió de bases de dades relacionals, etc.
En aquest punt, es poden utilitzar components com Apache Kafka per a la transmissió de dades i Amazon Data Migration Service (Amazon DMS) per importar dades de RDBMS i bases de dades NoSQL.
Capa d'emmagatzematge
L'arquitectura Lakehouse està pensada per permetre l'emmagatzematge de diversos tipus de dades com a objectes en magatzems d'objectes econòmics, com ara AWS S3. Amb formats de fitxer oberts, les eines del client poden llegir aquests elements directament des de la botiga.
Això fa possible que moltes API i components de la capa de consum puguin accedir i utilitzar les mateixes dades. La capa de metadades emmagatzema els esquemes dels conjunts de dades estructurats i semiestructurats perquè els components els puguin aplicar a les dades mentre les llegeixen.
La plataforma del sistema de fitxers distribuïts de Hadoop (HDFS), per exemple, es pot utilitzar per construir serveis de dipòsit en núvol que divideixen la informàtica i l'emmagatzematge local. Lakehouse és ideal per a aquests serveis.
Capa de metadades
La capa de metadades és el component fonamental d'un data lakehouse que distingeix aquest disseny. És un catàleg únic que ofereix metadades (informació sobre altres peces de dades) per a tots els elements emmagatzemats al llac i permet als usuaris utilitzar capacitats d'administració com:
- Una versió coherent de la base de dades es veu per les transaccions concurrents gràcies a les transaccions ACID;
- emmagatzematge a la memòria cau per desar fitxers del magatzem d'objectes al núvol;
- afegir índexs d'estructura de dades mitjançant la indexació per accelerar el processament de consultes;
- utilitzant la clonació sense còpies per duplicar objectes de dades; i
- per emmagatzemar determinades versions de les dades, etc., utilitzeu el control de versions de dades.
A més, la capa de metadades permet la implementació de la gestió d'esquemes, l'ús de topologies d'esquemes DW com esquemes estrella/floc de neu i la prestació de governança de dades i capacitat d'auditoria directament al llac de dades, millorant la integritat de tota la canalització de dades.
Les funcions per a l'evolució i l'aplicació d'esquemes s'inclouen a la gestió d'esquemes. En rebutjar qualsevol escriptura que no compleixi l'esquema de la taula, l'aplicació de l'esquema permet als usuaris mantenir la integritat i la qualitat de les dades.
L'evolució de l'esquema permet modificar l'esquema actual de la taula per adaptar-se a les dades canviants. A causa d'una única interfície d'administració a la part superior del llac de dades, també hi ha possibilitats de control d'accés i auditoria.
Capa API
Ara hi ha una altra capa crucial de l'arquitectura, que allotja una sèrie d'API que tots els usuaris finals poden utilitzar per realitzar tasques més ràpidament i obtenir estadístiques més sofisticades.
L'ús de les API de metadades facilita la identificació i l'accés als elements de dades necessaris per a una aplicació determinada.
Pel que fa a les biblioteques d'aprenentatge automàtic, algunes d'elles, com TensorFlow i Spark MLlib, poden llegir formats de fitxer oberts com Parquet i accedir directament a la capa de metadades.
Al mateix temps, les API de DataFrame ofereixen més possibilitats d'optimització, permetent als programadors organitzar i canviar les dades disperses.
Capa de consum
Power BI, Tableau i altres eines i aplicacions s'allotgen a la capa de consum. Amb el disseny de la casa del llac, totes les metadades i totes les dades que es guarden en un llac són accessibles per a les aplicacions del client.
La caseta del llac pot ser utilitzada per tots els usuaris d'una empresa per realitzar tot tipus de operacions analítiques, inclosa la creació de taulers d'intel·ligència empresarial i l'execució de consultes SQL i tasques d'aprenentatge automàtic.
Avantatges de Data Lakehouse
Les organitzacions poden crear un llac de dades per unificar la seva plataforma de dades actual i optimitzar tot el seu procés de gestió de dades. En desmuntar les barreres de sitja que connecten diverses fonts, un llac de dades pot substituir la necessitat de solucions diferents.
En comparació amb les fonts de dades seleccionades, aquesta integració produeix un procediment d'extrem a extrem molt més eficaç. Això té diversos avantatges:
- Menys administració: en lloc d'extreure dades de dades en brut i preparar-les per utilitzar-les dins d'un magatzem de dades, un data lakehouse permet que qualsevol font que hi estigui vinculada tingui les seves dades disponibles i organitzades per utilitzar-les.
- Augment de la rendibilitat: les cases del llac de dades es construeixen utilitzant una infraestructura contemporània que divideix la computació i l'emmagatzematge, de manera que és senzill ampliar l'emmagatzematge sense augmentar la potència de càlcul. Només l'ús d'emmagatzematge de dades de baix cost dóna com a resultat una escalabilitat que és rendible.
- Millor govern de les dades: les cases del llac de dades es construeixen amb una arquitectura oberta estandarditzada, que permet un major control sobre la seguretat, les mètriques, l'accés basat en rols i altres components de gestió importants. En unificar recursos i fonts de dades, simplifiquen i milloren la governança.
- Normes simplificades: Com que la connexió estava molt restringida a la dècada de 1980, quan es van desenvolupar per primera vegada els magatzems de dades, sovint es van desenvolupar estàndards d'esquemes localitzats dins de les empreses, fins i tot dels departaments. Els data lakehouses utilitzen el fet que molts tipus de dades ara tenen estàndards oberts per a l'esquema ingerint nombroses fonts de dades amb l'esquema uniforme superposat per agilitzar els procediments.
Desavantatges de Data Lakehouse
Malgrat tot el broma que envolta les cases del llac de dades, és important tenir en compte que la idea encara és molt nova. Assegureu-vos de sospesar els desavantatges abans de comprometre's completament amb aquest nou disseny.
- Estructura monolítica: El disseny tot inclòs d'una casa llac ofereix diversos avantatges, però també planteja alguns problemes. L'arquitectura monolítica sovint comporta un servei deficient per a tots els usuaris i pot ser rígida i difícil de mantenir. Normalment, als arquitectes i dissenyadors els agrada una arquitectura més modular que poden personalitzar per a diversos casos d'ús.
- La tecnologia encara no hi és del tot: l'objectiu final implica una quantitat significativa d'aprenentatge automàtic i intel·ligència artificial. Abans que les cases del llac puguin funcionar com es preveia, aquestes tecnologies s'han de desenvolupar encara més.
- No és un avenç significatiu respecte a les estructures existents: Encara hi ha un escepticisme considerable sobre quant més valor aportaran realment les cases del llac. Alguns detractors afirmen que un disseny de magatzem llac combinat amb l'equip automatitzat adequat pot aconseguir una eficiència comparable.
Reptes de Data Lakehouse
Podria ser difícil adoptar la tècnica de data Lakehouse. A causa de la complexitat de les seves peces components, és incorrecte veure el data Lakehouse com una estructura ideal global o "una plataforma per a tot", per exemple.
A més, a causa de l'adopció creixent de data llacs, les empreses hauran de traslladar-hi els seus actuals magatzems de dades, confiant només en una promesa d'èxit sense cap benefici econòmic demostrable.
Si hi ha problemes de latència o interrupcions durant el procés de transferència, això podria resultar car, consumir molt de temps i potser insegur.
Els usuaris empresarials han d'adoptar tecnologies altament especialitzades, segons certs venedors que comercialitzen expressament o implícitament solucions com a data lakehouses. És possible que no funcionin sempre amb altres eines vinculades al llac de dades al centre del sistema, cosa que afegeixen problemes.
A més, pot ser difícil oferir analítiques les 24 hores del dia, els 7 dies de la setmana, mentre s'executen càrregues de treball crítiques per a l'empresa, la qual cosa requereix una infraestructura amb una escalabilitat rendible.
Conclusió
La varietat més nova de centres de dades dels darrers anys és el Data Lakehouse. Integra una varietat de camps, com ara tecnologia de la informació, programari de codi obert, cloud computing, i protocols d'emmagatzematge distribuït.
Permet a les empreses emmagatzemar de manera centralitzada tot tipus de dades des de qualsevol ubicació, simplificant la gestió i l'anàlisi. Data Lakehouse és un concepte força intrigant.
Qualsevol empresa tindria un avantatge competitiu important si tingués accés a una plataforma de dades tot-en-un que fos tan ràpida i eficient com un magatzem de dades alhora que fos tan flexible com un llac de dades.
La idea encara s'està desenvolupant i segueix sent relativament nova. Com a resultat, podria trigar un temps a determinar si alguna cosa es pot generalitzar o no.
Tots hauríem de tenir curiositat per la direcció que va cap l'arquitectura de Lakehouse.
Deixa un comentari