Instrumente Utilizate Pentru Integrarea Datelor - Ase

Transcription

INSTRUMENTEUTILIZATE PENTRUINTEGRAREADATELORCursul 6

AGENDASisteme de gestiune a bazelor de dateInstrumente de gestiune a datelor pentruanalyticsInstrumente de integrare (ETL/ELT)1.2.3.1.2.Oracle Data IntegratorTalend Open Studio

1. SGBD un ansamblu complex de programe careasigură interfaţa între o bază de date şiutilizatorii acesteia.Rolul unui SGBD1.2.3.4.5.a defini şi descrie structura BD, printr-un limbajpropriu specific, conform unui anumit model de date;a încărca/valida datele în BD respectândrestricţiile de integritate impuse de modelul de dateutilizat;a realiza accesul la date pentru diferite operaţii(consultare, interogare, actualizare, editare situaţii deieşire), utilizând operatorii modelului de date;a întreţine BD cu ajutorul unor instrumentespecializate (editoare, utilitare (shells), navigatoare,convertoare etc.);a asigura protecţia BD sub aspectul securităţii şiintegrităţii datelor.

EXEMPLE DE SGBD Oracle DB2 Informix Paradox MySQL Progress SQLServer Ingress II MS Access Visual FoxPro

NOI TIPURI DE BAZE DE DATEBaze de date NoSQL Baze de date in-memory

BAZE DE DATE NOSQL BD NoSQL reprezintă o tehnologie dezvoltată pentru arăspunde cerințelor de aplicații în cloud și proiectate sărezolve problemele de scalabilitate, performanță, modelareși distribuire limitată a datelor din bazele de daterelaționale.nu impun o anumită schemă (structură a datelor), au unAPI simplu, sunt ”eventual consistente” și pot gestiona ocantitate foarte mare de dateTeorema CAP (Eric Brewer) – orice sistem distribuit demanagement al datelor poate sa indeplineasca maxim douadin urmatoarele trei proprietati:C: Consistenta - toate nodurile sistemului informatic stocheazaaceleasi date A: Availability / Disponibilitate - orice cerere va primi un raspuns P: Partitionare - sistemul continua sa functioneze in conditii departitionare a retelei

ACID Multe din sistemele de stocare NoSQL de asemeneanu garanteaza caracteristicile ACID (atomicitate,consistenta, izolare si durabilitate) pentru tranzactii.Atomicitate: orice tranzactie se executa “totul saunimic”;Consistenta: orice tranzactie va transfera baza dedate dintr-o stare stabila intr-o alta stare stabila;Izolare: rezultatul tranzactiilor (chiar desfasurateconcurent) va fi ca si cand s-au desfasurat succesiv;Durabilitate: o tranzactie odata incheiata va rezultain pastrarea starii stabile, chiar daca apare o cadere asistemului

A. CASSANDRADezvoltat initial de Facebook ca un proiect intern (2008).SGBD distribuit, orientat pe coloaneGratuit și ”open-source”, printre primele alegeri atuncicând vorbim de soluții de ”Big Data”, fiind scalabilă linear,proiectată să gestioneze cantități mari de date structurate Avem proprietatile: consistenta slaba, disponibilitate,partitionareOptimizat sa ofere performanta foarte buna pentru datedistribuite in mai multe centre de date cu replicareasincrona fara master - cu latenta foarte scazuta; Utilizari: proiectul CERN ATLAS, WebEx (Cisco), Reddit, Twitter

CASSANDRA: MODELUL DATELOR E un sistem de stocare cheie-valoare structurat, extins cu douănivele de imbricareModelul poate fi descris ca o serie de hash-map-uri imbricate, iarperechile cheie-valoare nu sunt stocate ca doua valoriindividuale, ci sunt cuplate intr-o clasa Column. Coloanele suntgrupate in familii de coloane, fiecare coloana avand: nume,valoare, marca de timpTabela este harta multidimensionala (hash map) indexata dupa ocheie (cheia randului)Modelarea începe de la funcționalitățile aplicațieiLimbajul de interogare oferit de Cassandra (CQL, CassandraQuery Language) nu suportă multe dintre operațiile comune înSQL, cum ar fi ”table joins” și ”data aggregation”Tabelele pot fi create, sterse sau modificate la runtime fara abloca update-uri sau interogari.

B. MONGODBBaza de date orientata pe documente;Este scrisă în C , iar ca sistem de stocare, MongoDButilizează un format similar JSON3 , şi anume BSON(Binary JSON).Distribuit sub o combinatie de licenta GNU si Apache;Se poate face cautare dupa campuri, expresii regulate;Orice camp dintr-un document poate fi indexat;Oferă un grad ridicat de disponibilitate, performanţă şiscalare automatăUtilizat pentru backend de Craiglist, eBay, Forsquare,SourceForge;

MONGODB – MODELUL DATELOR O înregistrare în MongoDB este un document ce prezintă o structurăde tip câmpuri şi valori atribuite acestora, ca de exemplu:Avantaje: că documentele corespund tipurilor de date native în maimulte limbaje de programare, iar schema dinamică a acestora poatesuporta polimorfismul obiectelor.MongoDB asigură disponibilitatea datelor prin intermediul unor seturide replici ale acestora, acestea asigurând totodată o redundanţă crescută.Fiecare replica intr-un set poate actiona ca replica primara sau secundarala un moment dat; atunci cand replica primara devine disfunctionala, inmod automat e selectata replica secundara care sa devina replica primara.

SISTEME DE DATE IN MEMORIE

DATA GRID VS DATABASEData GridDatabaseAplicație existentă Necesită schimbăriNeschimbatRBDMS existentNeschimbatNecesită schimbăriVitezăDaDaScalabilitateDaNu

C.APACHE GEODE BDdistribuita, in-memory,consistenta puternica 2002, Java Domeniul bancar, folositpentru a distribui modificăriasupra portofoliilor traderilor Dezvoltat de Pivotal (Gemfire) Propriul limbaj de regasirea datelor (OQL)

APACHE IGNITE BDdistribuita care stocheza siproceseaza volume mari de datepe un cluster de noduri 2007, Java Dezvoltat de GridGain Systems(GridGain) Suporta SQL (ANSI 99) Folosit de Apple (Apple AppStore)

HAZELCAST Solutiedata grid in-memory Java Suportapartial SQL Ofera multiple structuri dedate distribuite Se axeaza pe noifunctionalitati

Apache IgniteApache GeodeHazelcastJavaJavaJavaNoduri omogene DaDaDaStocarea datelor Partitionat Partitionat Partitionat ReplicatReplicatReplicatDaDaDaDa (ANSI SQLNu (OQL)Da (Partial)via SpringDaLimbaj a

2. INSTRUMENTE DE GESTIUNE A DATELORPENTRU ANALYTICSPiata solutiilor de management al datelor pentrusolutii ns-foranalytics.pdf

ORACLE Ofera Oracle Database 18c, Oracle Exadata DatabaseMachine, Oracle Big Data Appliance, Oracle Big DataManagement System, Oracle Big Data SQL and Oracle BigData Connectors.Servicii in cloud: Oracle Database Cloud Service, OracleDatabase Cloud Exadata Service si Oracle Big Data CloudService, dar si Oracle Autonomous Data Warehouse (ADW)Cloud – a redus mult efortul de administrare si realizare/corectare a analizelorLeader de piata de multi ani – skill-uri usor de gasit pe piata,ofera integrare usoara prin API-uri standardInsa, nu propune solutii pentru companii mici, preturile suntdestul de mari

MICROSOFT Ofera SQL Server,Ca servicii in cloud: Azure SQL Data Warehouse (datawarehouse MPP in cloud), Azure HDInsight (service deanaliza bazat pe Hortonworks), Azure Databricks(platforma analitica bazata pe Apache Spark) si AzureData Lake (stocare big data si platforma analitica)Analytics Platform System, un instrument pentru datawarehouse MPPO suita de produse pentru management distribuit aldepozitelor de date logiceCa urmare a orientarii timpurii spre zona cloud, Microsoftbeneficiaza si pe zona de management a datelor de ocrestere dubla fata de competitori din 2017Prima generatie de Azure SQL Data Warehouse a avutproblem de performantaMulti dintre clientii traditionali trec pe solutii in cloud

AMAZON WEB SERVICES Ofera Amazon Redshift, un serviciu in cloud pentru DW.Include:Redshift Spectrum un motor de interogare faraserver care utilizeaza acelasi optimizer ca si AR, darinterogheaza si date din Amazon Simple Storage Service(S3) si din stocarea locala a Redshift.Ofera Amazon S3,un depozit de obiecte in cloud;AWS Lake Formation, un serviciu sigur pentru data lake;AWS Glue, un serviciu pentru integrarea datelor si catalogde metadata;Amazon Elasticsearch, ca motor de cautare.Furnizorul principal de solutii cloud:A detinut peste 40% of din cresterea intregii piete in DBMSin 2017Adaptare lenta la cerinte cheie asteptate de mediile cloudde DMSA: elasticitate dinamica, tuning automat, repararearesurselor de calcul si de stocare.

SAP Ofera ca solutii in cloud:SAP HANA, un SGBD in-memory bazat pe coloane careatat pentru lucrul operational cat si pentru analytics. SAP BW/4HANA un pachet de solutii pentru DW Sunt oferite si ca solutii cloud, si ca stand-alonesoftwareOfera si SAP Cloud Platform Big Data Services,distribuire Hadoop in cloud, si SAP Vora (oferit incadrul SAP Data Hub) pentru procesare Spark siHadoopAu extins masiv parteneriatele cu toti marii furnizorde cloudAu investit masiv in Machne learning si AI, deexemplu SAP HANA poate rula algoritmi TensorFlowProblemele vin din zona d epreturi si supportutilizator

TERADATA Ofera o platforma software pentru analytics cu un motorSQL, un motor ML un un motor de grafuri;Teradata IntelliFlex si IntelliBase ca platforme pentru DWbazate pe MPPTeradata IntelliCloud e o solutie “as a service” oferita ininfrastructura de cloud public (AWS si Microsoft Azure) siTeradata CloudPropun o arhitectura ca suport pentru Logical DataWarehouse, Teradata’s Unified Data Architecture (UDA).Sunt printer liderii tehnologiei de integrare de multi ani,funtionalitati, calitatea, suportul la un nivel superiorNu e vazut ca un furnizor de cloud, solutii scumpe

SNOWFLAKE Ofera un DW gestionat in intregime ca serviciu pe infrastructuraAWS sau Microsoft Azure.Procesare relationala conform ACID, dar si suport nativ pentruformate de stocare de documente: JSON, Avro, Optimized RowColumnar (ORC), Parquet si XML.Conector native la Apache Spark, integrare cu R, suport pentrufunctii definite de utilizator, elasticitate dinamica, etcParteneriatele recente cu Qubole si Databricks asigura extindereasi pe zona de data lake.Sunt pe piata abia de 4 ani, deficient pe zona de training si suportNu ofera o serie de facilitate: lucrul cu view-urimaterializate sai procedure stocate, relatively immatureweb-based administrative user interfaceInterfata de administrare Web relative imatura

GOOGLE Google Cloud – partea din Google care se ocupa cu livrare desolutii pentru piata de businessOferte de dbPaaS pe platforma Google Cloud include:BigQuery, un depozit de date serverless Cloud Dataproc, un serviciu gestionat de Spark si Hadoop Cloud Dataflow, solutie pentru procesare data stream si batch Usurinta de folosire si performantaMulte dintre ofertele servicii de pe platforma Google Cloud au fostinitial parte din nucleul Google oferit consumatorilor. Initialplatforma a fost implementata de organizatiile native bazate pecloud.Avantajul serviciului complet gestionat BigQuery este un mareavantaj,Lipsuri pe partea de management si administrare a solutiilor

IBM offers stand-alone DBMSs (Db2, Db2 for z/OS, Informix)and appliances (PureData System for Analytics, PureDataSystem for Operational Analytics, Integrated AnalyticsSystem, Db2 Analytics Accelerator). Also, Hadoop solutions(BigInsights), managed data warehouse cloud services (Db2Warehouse on Cloud), and private cloud data warehousecapabilities (Db2 Warehouse). IBM’s Db2 BigSQL andFluid Query provide a consolidated access tier to a widerange of DBMSs and Hadoop distributions. IBM’s Db2Event Store provides a data management foundation forIoT and time series event data.Rich SQL functionality for Hadoopsuboptimal experiences with supportSoftware fixes and improvements required, particularly fornewer products

ORACLE DATA INTEGRATOR

OracleData Integrator ofera o tehnologieExtract Load and Transform (ELT) careimbunatateste performanta si reduce costurilede integrare a datelor. instrument performant de transfer,transformare si sincronizare a datelor intresisteme informatice prin programe in timpreal, in mod sicron si asincron; design modularizat, inovativ, conectivitate cutoate marile baze de date, aplicatiidatawarehouse si aplicatii analitice

KNOWLEDGE MODULES componente ale tehnologiei Oracle Data Integrator OpenConnector instruite sa proceseze un anumit set de task-uripe o anumita tehnologie sau set de tehnologii RKM (Reverse Knowledge Modules) – pentru reverse engineering almodelelor de date pentru o anumita tehnologieLKM (Loading Knowledge Modules) – pentru a extrage date dintabelele sursa ale bazei de date si alte sisteme( fisiere, middleware,mainframe)JKM (Journalizing Knowledge Modules) – folosite pentru a crea un logal modificarilor de date (insert, update si delete) a bazelor de datesursa pentru a contoriza modificarileIKM (Integration Knowledge Modules)) – pentru a incarca date intabelele tintaCKM (Check Knowledge Modules) – pentru a verifica integritateaconstrangerilorSKM (Service Knowledge Modules) – pentru a genera cosul necesarpentru crearea serviciilor de date

MOD DE FUNCTIONAREIn faza de design: se va alege o interfata sipentru fiecare dintre etapele ei (incarcare,verificare, etc) se vor specifica regulilefunctionale (mapari, constrangeri, etc.) simodulele de cunoastereSnowflakecare se vor folosi. In faza de RUN : ODI va folosi regulilefunctionale, KM-urile, optiunile KM-urilor simetadate continute in Repository(modele,topologii) pentru a genera automat un set detaskuri pentru a procesa jobul definit. Taskurileinclud conexiune, managementul tranzactiei sicodul adecvat pt task

TALEND OPEN STUDIO

CARACTERISTICI GENERALE Talend este o platforma open source de integrare software; susținut deo comunitate imensa de dezvoltatori. Talend publica codurile modulului sau de baza sub licența GNU PublicLicense sau licența Apache.

TALEND OPEN STUDIOun proiect open source bazat pe Eclipse RCP. folosit pe larg pentru integrarea intre sistemeleoperationale, procesele ETL si migrarea datelor. poate combina, converti si actualiza cu usurintadatele prezente in diverse locatii dintr-oorganizatie ofera o interfata grafica interactiva si usor deutilizat, care permite accesarea unui depozit demetadate care contine definitia si configuratiilepentru fiecare proces efectuat in Talend.

ARHITECTURA TALEND OPEN STUDIO Actioneaza ca un generator de coduri scripturi detransformare a datelor si subprograme Java. Joburile pot firulate stand-alone sau embedded.Interfata grafica interactiva - permite accesarea unuidepozit de metadate cu definitii si configuratiile pentrufiecare proces efectuat in Talend.

COMPONENTE TALENDO componenta este o piesa functionala care esteutilizata pentru a efectua o singura operatie inTalend. In backend, o componenta este unfragment de cod Java Talend ofera peste 800 de componente. Familii de componente: Databases: tMysqlConnection, tMysqlInput,tMysqlOutput, tMysqlClose File: tFileInputDelimited, tFileInputExcel,tFileOutputXML, tFileList, tFileArhive Internet: tFTPGet, tFTPPut, tHttpRequest,tSendMail Logs & Errors: tLogRow, tLogRowCatcher, tWarn

CONECTORICreati pentru a permite comunicarea intrecomponente Ofera peste 900 de conectori Ofera conectare rapida a bazelor de date in cloudsau on-premises, a aplicatiilor, datelor din retelede socializare si API-urilor

SAP Ofera ca solutii in cloud: SAP HANA, un SGBD in-memory bazat pe coloane care atat pentru lucrul operational cat si pentru analytics. SAP BW/4HANA un pachet de solutii pentru DW Sunt oferite si ca solutii cloud, si ca stand-alone software Ofera si SAP Cloud Platform Big Data Services, distribuire Hadoop in cloud, si SAP Vora (oferit in