Elaborato Ferraro Antonino N46000100

Transcript

Elaborato Ferraro Antonino N46000100
Scuola Politecnica e delle Scienze di Base
Corso di Laurea in Ingegneria Informatica
Elaborato finale in Ingegneria del Software e dei Dati
Big Data Analytics: SAP HANA
Anno Accademico 2015/2016
Candidato:
Antonino Ferraro
matr. N46/000100
Al mio secondo nome,
che non ha potuto
apprezzare le gioie della
vita e l’amore e l’affetto
della nostra famiglia.
Big Data Analytics: SAP HANA
Indice
Introduzione............................................................................................1
1 Big Data Analytics ...............................................................................3
1.1 Caratteristiche.......................................................................... 4
1.2 Big Data e Social Media Analysis .................................................... 6
1.3 Rischi e problematiche................................................................ 8
2 SAP HANA ......................................................................................... 10
2.1 Architettura........................................................................... 11
2.1.1 Data storage Row vs Column.................................................. 13
2.2 Backup e Recovery .................................................................. 16
2.3 SAP HANA Modeling............................................................... 19
2.4 SAP HANA Predective Analysis Library (PAL)................................. 22
2.5 Sentiment Analysis in SAP HANA ................................................ 23
Conclusioni ............................................................................................ 28
Sviluppi Futuri ....................................................................................... 32
Bibliografia ............................................................................................ 34
Ringraziamenti ...................................................................................... 35
I
Big Data Analytics: SAP HANA
Introduzione
Con il termine BIG DATA si intende una raccolta dati estesa in termini
di volume, velocità e varietà tali che devono richiedere tecnologia e metodi analitici per la trattazione ed estrazione delle informazioni interessate.
La mole dei dati trattata con i Big Data è dell’ordine degli zettabyte, ossia
miliardi di terabyte, quindi si richiede una potenza di calcolo non indifferente per il trattamento delle informazioni.
Big Data rappresenta anche la correlazione fra dati strutturati, come le tabelle dei database e quelli non strutturati, come e-mail, immagini, informazioni dei social network o altro.
Dal punto di vista aziendale possiamo definire i Big Data come enormi
volumi di dati provenienti da diverse fonti, che, analizzati in tempo reale,
consentono di ottenere nuove forme di conoscenza per il mercato, inoltre, grazie ad un nuovo modo di analizzare grandi quantità di dati strutturati (come transazioni, log file, tabelle di un database, etc.) e non (come
documenti cartacei, immagini, etc.), è possibile capire anticipatamente i
trend del mercato e quindi avere un vantaggio competitivo rispetto la concorrenza.
1
Big Data Analytics: SAP HANA
SAP HANA è una piattaforma di gestione di basi di dati colonnare e
in-memory, sviluppato e commercializzato dalla società tedesca SAP che
permette di processare grandi volumi di dati in tempo reale.
Molte aziende hanno a che fare con enormi volumi di dati provenienti da
diverse fonti che hanno la necessità di essere processati in real-time, e, se
si aggiunge a tutto questo anche la necessità di dover ottenere tempi di risposta molto veloci, si aumenta la complessità di analisi: per soddisfare i
seguenti requisiti, SAP HANA risulta un software adatto.
SAP HANA nasce dall’acquisizione di alcune tecnologie, tra cui il motore
di ricerca TREX (column oriented), P*TIME (piattaforma OLTP in-
memory) e Max DB con il suo motore in-memory live Cache, oltre a ciò
SAP lo ha sviluppato assieme ad altri partner, precisamente con la Hasso
Plattner Institute e la Stanford University.
La sigla vuol dire SAP High-Performance Analytic Appliance.
2
Big Data Analytics: SAP HANA
Capitolo 1
Big Data Analytics
La filosofia Big Data punta a raccogliere l’intelligenza dei dati per tradurla
in vantaggi per business.
Anche se il concetto di Big Data sembra relativo unicamente alle problematiche di dimensione dei dati che si vanno a trattare, invece rappresenta
anche altro, ossia il concetto che i dati superano il limite dei trattamenti
tradizionali, volti ad estrarre valore e conoscenza di questi ultimi.
Il loro trattamento è basato sulla disponibilità di tecnologia open source
che utilizza commodity hardware e alle disponibilità di piattaforme cloud,
entrambi fattori che causano decisamente l’abbattimento dei costi.
Figura 1.01 – Big Data
3
Big Data Analytics: SAP HANA
1.1 Caratteristiche
È consuetudine definire le caratteristiche dei Big Data con le famose 3V:
 Volume
 Varietà
 Velocità
Infatti i Big Data sono disponibili in enormi volumi, si presentano con
formati destrutturati e caratteristiche eterogenee e spesso sono prodotti
con estrema velocità.
A tali caratteristiche si aggiungono:
 Variabilità
 Viralità
In modo da poter formare le cosiddette 5V.
Figura 1.02 – 5V
4
Big Data Analytics: SAP HANA
Riguardo al volume è facilmente intuibile che si trattano dataset di dimensioni che vanno dai terabytes fino agli zettabytes, quindi il primo passo
quando si opera con i Big Data è l’immagazzinamento: è facilmente intuibile che ciò comporta grossi investimenti in termini di storage e capacità
di calcolo per la grande mole di dati da trattare.
La varietà consiste nella presenza di dati non strutturati (o semistrutturati), un esempio son i vari social network (come Facebook, Twitter,
etc.), di conseguenza, dati come immagini, video, audio, stringhe di testo
cui attribuire un significato, non possono essere memorizzati in una tabella.
Altra caratteristica fondamentale è la velocità, ciò significa che bisogna
comprimere al massimo i tempi di gestione ed analisi poiché in brevissimo tempo un dato raccolto in precedenza può divenire obsoleto.
La variabilità riguarda la contestualizzazione di un dato, nel senso che un
dato può variare di significato in base al contesto in cui viene raccolto ed
analizzato, da questo motivo che nasce l’esigenza di trovare meccanismi
che riescono a fornire una semantica ai dati in base al contesto in cui sono
espressi.
La viralità è la caratteristica che viene espressa quando i dati si diffondono; un’ulteriore classificazione può essere fatta per il tipo di fonte: umana
o automatica, da cui i dati provengono e in base al loro formato, cioè
strutturati o non.
5
Big Data Analytics: SAP HANA
Un’idea del formato dei dati la dà l’immagine seguente:
Figura 1.03 – Dati Strutturati e non
1.2 Big Data e Social Media Analysis
I dati dal mondo del Web suscitano un forte interesse, sia perché presentano le caratteristiche fondamentali discusse nel paragrafo precedente (volume, varietà, velocità) sia perché contengono un elevato contenuto informativo di diversa natura:
 Pagine Html
 Tweet
 Contenuti Facebook o di altri social
 Commenti su forum e post
 Documenti XML, Office, PDF ecc.
Queste tipologie di dati, combinati a dati strutturati (come anagrafica
clienti, dati di vendita, ecc.) consentono ad una azienda molteplici vantaggi, ad esempio, attraverso l’uso dei social network o di blog, le persone possono esprimere opinioni riguardo un particolare prodotto o servizio, fornendo all’azienda importanti feedback per migliorare le proprie vendite,
quindi aumentare i propri ricavi.
6
Big Data Analytics: SAP HANA
Oltre a ciò, vi sono particolari utenti sui social network, i cosiddetti in-
fluencer, che riescono ad influenzare le opinioni degli altri utenti del social;
quindi l’azienda punta alla loro individuazione per creare una campagna
rivolta principalmente a loro.
Una delle sfide più frequenti nel mondo dei Big Data è proprio il ricavare
informazioni dai social media e blog, per capire il pensiero di un utente su
un determinato evento (o prodotto o argomento), in tal caso si parla di
Social Media Analysis.
Figura 1.04 – Big Data & Social Media
Le informazioni di un social media son maggiormente del tipo non strutturate (ad esempio le recensioni oppure i tweet o post su Facebook),
quindi l’approccio per una loro analisi non può essere effettuata col trattamento tradizionale dei dati, bensì con diverse conoscenze e strumenti.
7
Big Data Analytics: SAP HANA
Capire se un utente è interessato (e quanto) ad un prodotto, ha spinto le
aziende ad imboccare le vie del social media analysis per aumentare la propria competitività rispetto ai propri rivali e riuscire a capire in tempo reale
l’andamento del proprio brand ed attuare (o anticipare) delle scelte di mercato ancor prima rispetto i diretti competitors.
SAP HANA risulta perfetto per lo studio del sentimento degli utenti.
1.3 Rischi e problematiche
Da come discusso nei paragrafi in precedenza, si è capito che i Big Data
offrono grandi prospettive e potenzialità, però bisogna tener conto di alcune problematiche:
 Qualità dei dati
 Proprietà e privacy dei dati
I dati captati dal Web, come i forum o i social network, generano contenuti
semi-strutturati: la parte affidabile sono i metadati, mentre il testo può essere soggetto ad errori o abbreviazioni; i dati generati automaticamente,
come quelli provenienti da sensori, sono tipicamente esenti da errori ma
spesso contengono poco contenuto informativo, quindi è necessario integrarli con altri dati, provenienti da altri sistemi, per poi analizzarli.
Un’altra problematica legata alla qualità dei dati è riuscire ad eliminare o
almeno a limitare l’ambiguità dei dati: sappiamo che un dato può avere
diversi significati, perciò bisogna attribuirgli quello giusto, in base al contesto in esame, un valido aiuto sono i tag.
8
Big Data Analytics: SAP HANA
Altro aspetto è la veridicità delle informazioni, spesso e volentieri le informazioni sul Web (specialmente quelle sui social network) non sono veritiere, ossia non corrispondono a fatti realmente accaduti.
Il problema della privacy nasce dal fatto che i contenuti possono non essere accessibili a tutti (dati protetti) e da dati che non possono tener traccia di possibile spostamento degli utenti.
Figura 1.05 -Big Data & Privacy
9
Big Data Analytics: SAP HANA
Capitolo 2
SAP HANA
Il cuore di SAP HANA è rappresentato dal database HANA che risulta essere diverso dagli altri database.
Il database è sviluppato in C++ e gira su Suse Linux Enterprise Server; esso
è costituito da elementi hardware e software che sfruttano il calcolo
in-memory, unisce la tecnologia di database row-based e column-based.
I dati ora risiedono in memoria ram e non più nell’hard disk .
SAP HANA viene utilizzato per effettuare analisi e sviluppo applicazione
in real-time.
Figura 2.01 – Vantaggi di HANA
10
Big Data Analytics: SAP HANA
2.1 Architettura
Il database di HANA è costituito dai seguenti servizi:
 Index Server
 Name Server
 Statistics Server
 Preprocessor Server
 XS Engine
Figura 2.02 – Architettura di HANA
L’Index Server è il componente più importante del database, contiene i
dati attuali e il motore per processarli, oltre ciò l’Index Server processa le
istruzioni SQL.
11
Big Data Analytics: SAP HANA
Oltre SQL, il database supporta anche il linguaggio SQL-script e supporta
diverse librerie, come la PAL : Predictive Analysis Library .
Al suo interno è presente il Persistent Layer che ha il compito di far rispettare l’atomicità e la durabilità delle transazioni.
L’Index Server utilizza il Preprocessor Server per analizzare i dati di
testo per estrarne le informazioni.
Il Name Server contiene le informazioni sulla topologia del sistema SAP
HANA: in un sistema distribuito il Name Server tiene traccia su dove i
componenti sono in esecuzione e in quali server si trovano determinati
dati.
Il Statistic Server gestisce le statistiche riguardanti lo stato, le prestazioni
e il consumo delle risorse, inoltre questi dati sono memorizzati per ottenere uno storico, utile per le analisi future.
Le transazioni verso il database sono coordinate dal Session and Transac-
tion Manager, che tiene traccia delle transazioni, in esecuzione e chiuse, e
che coinvolge anche i motori di archiviazione, in seguito al commit o al
roll back di transazioni, in modo tale da eseguire le azioni necessarie.
Infine l’XS Engine è un componente opzionale.
Grazie a quest’ultimo i client possono connettersi al database di SAP
HANA tramite il protocollo http.
12
Big Data Analytics: SAP HANA
2.1.1 Data storage Row vs Column
I database relazionali generalmente utilizzano la memorizzazione dei dati
row-based, tuttavia l’archiviazione column-based è maggiormente adatta
negli applicativi di tipo business.
SAP HANA supporta entrambe le filosofie di memorizzazione ma è particolarmente ottimizzato per l’archiviazione basata su colonne:
- Row-storage: memorizza i record della tabella in una sequenza di
righe.
- Column-storage: memorizza i record della tabella in una sequenza
di colonne, vale a dire che i dati sono memorizzati in locazioni di
memoria contigue.
Il database in-memory di HANA, come detto in precedenza, supporta entrambi i criteri di memorizzazione: è proprio grazie a questa combinazione di approcci di storage che si ottiene velocità, flessibilità e massime prestazioni.
La differenza tra lo storage in righe e colonne è evidenziata nell’immagine
alla pagina seguente.
13
Big Data Analytics: SAP HANA
Figura 2.03 – Row Store vs Column Store
Possiamo definire i vantaggi per la memorizzazione column-based:
- Velocità di accesso ai dati: solo le colonne interessate saranno
effettivamente lette durante la query-processing.
- Miglior compressione: consente un’efficace compressione poiché
la maggior parte delle colonne contengono pochi valori distinti (rispetto al numero di righe).
- Miglior processamento in parallelo: nel caso di column-storage, i
dati sono già partizionati verticalmente, ciò comporta che colonne
differenti possono essere processate facilmente in parallelo; se più
colonne devono essere cercate o aggregate, ognuna delle seguenti
operazioni può essere assegnata a differenti core-processor.
Con la memorizzazione column-based si ottiene un indice costruito per
ogni colonna.
14
Big Data Analytics: SAP HANA
Adesso analizziamo i vantaggi per la memorizzazione row-based, essendo
che SAP HANA la supporta, essa può essere preferita nelle seguenti circostanze:
 L’applicazione deve processare un singolo record alla volta,
ovvero nel caso di molte operazioni di update e selezioni di record
singoli.
 L’applicazione necessita di accedere all’intera riga
 Non sono richieste aggregazioni e ricerche veloci
 La tabella ha un numero ridotto di righe
Figura 2.04 – Row Operation vs Column Operation
15
Big Data Analytics: SAP HANA
2.2 Backup e Recovery
SAP HANA è un database in-memory, ciò significa che tutti i dati sono in
memoria ram.
Sappiamo bene che la ram è una memoria volatile, quindi, cosa succede
nel caso di un arresto anomalo in SAP HANA?
Perderemo i dati?
La risposta è no.
SAP HANA vero che sfrutta la ram per trattare i dati per ottenere maggiori
performance ma anche il supporto di memoria di massa per effettuare il
backup, questo rende HANA sicuro.
In questo modo si garantisce non solo il massimo delle prestazioni, poiché detiene la maggior parte dei dati in memoria ram, ma anche tolleranza
ai guasti attraverso la memorizzazione dei dati sulla memoria di massa.
In un qualsiasi database è di fondamentale importanza garantire i requisiti
di:
 Atomicità
 Consistenza
 Isolamento
 Durabilità
le famosissime ACID.
16
Big Data Analytics: SAP HANA
Una transazione deve essere atomica: se una parte della transazione fallisce, l’intera transazione deve fallire e lasciare lo stato del database invariato.
Deve essere consistente: all’inizio di una transazione, il database si trova
in uno stato coerente e quando quest’ultima termina, il database deve essere in un altro stato SEMPRE coerente; non bisogna violare eventuali
vincoli di integrità e quindi non devono verificarsi contraddizioni (inconsistenza) tra i dati nel database.
Deve essere isolata: assicurarsi che nessuna transazione può interferire
con delle altre (devon essere indipendenti tra loro).
Deve essere garantita la durabilità : detta anche persistenza, si riferisce al
fatto che una volta andata a buon fine una transazione, i cambiamenti apportati da essa non devono essere persi.
Le prime tre proprietà sono indipendenti dalla filosofia in-memory, mentre
l’ultima in generale no.
La persistenza NON È GARANTITA se avviene un guasto al sistema
(ad esempio improvviso mancamento di alimentazione elettrica).
SAP HANA suddivide la memoria centrale (ram) in pagine, quando una
transazione modifica i dati, le pagine corrispondenti sono contrassegnate
e scritte sulla memoria secondaria (o memoria di massa) ad intervalli regolari.
17
Big Data Analytics: SAP HANA
In aggiunta, un log del database acquisisce tutte le modifiche effettuate
dalle transazioni: ogni transazione in esecuzione genera una log entry che
verrà scritta sul disco, tutto questo assicura lo stato di permanenza di tutte
le transazioni.
SAP HANA salva le pagine modificate nei cosiddetti savepoints, che saranno trasferiti in modo asincrono sulla memoria secondaria ad intervalli regolari (di default ogni 5 minuti).
Figura 2.05 – Operazioni di Backup su SAP HANA
Il log è aggiornato in modo sincrono, questo perché una transazione non
può essere confermata prima che il suo corrispondente log entry non è
stato scritto in memoria secondaria, tutto questo serve per soddisfare il
requisito di durabilità.
Nel caso di un’improvvisa interruzione di alimentazione elettrica, il
database può essere ravviato come un database disk-based.
Le pagine del database sono ripristinate attraverso i savepoints e sono applicati i log del database per ripristinare le modifiche che non son state
catturate nei savepoints; questa procedura garantisce il corretto ripristino
del database nello stesso identico stato precedente al mancamento
dell’alimentazione elettrica.
18
Big Data Analytics: SAP HANA
Figura 2.06 – Operazioni di Backup su SAP HANA 2
2.3 SAP HANA Modeling
SAP HANA permette la modellazione delle informazioni, si possono creare
delle viste di modellazione su tabelle ed implementare logiche di business
al fine di creare dei report.
Queste viste possono essere consultate attraverso applicazioni Html o
Java oppure da applicazioni native di HANA; è possibile utilizzare dei tool
messi a disposizione da HANA (come SAP Lumira o Office Analysis) per
connettersi direttamente ad HANA per utilizzarle.
Con SAP HANA Modeling si sfrutta la potenza di HANA.
19
Big Data Analytics: SAP HANA
Ciò è meglio evidenziato nella seguente immagine:
Figura 2.07 – SAP HANA Information Modeling
Le viste possono essere:
 Attribute View
 Analytic View
 Calculation View
A tempo di esecuzione, le viste fanno un uso implicito dell’ottimizzazione
dei motori di calcolo in-memory di SAP HANA e ciò consente di ottenere
le massime prestazioni.
N.B. Hana Data Modeling è possibile soltanto per le tabelle column-
oriented, ossia la modellazione delle informazioni funziona solo con tabelle archiviate in colonna.
20
Big Data Analytics: SAP HANA
Attribute View sono le dimensioni, le caratteristiche BW (Business Ware-
house) oppure i master data, essi sono utilizzati per unire le dimensioni o
altri attribute view, nella maggior parte dei casi è utilizzato per modellare i
master data come entità (ad esempio prodotto,dipendente,ecc.) e sono altamente riutilizzati e condivisi nelle Analytic e Calculation View.
Analytic View rappresentano gli star schema (concetto utilizzato negli
OLAP) o le tabelle dei fatti (centrale) circondate dalle tabelle delle dimensioni.
Nel linguaggio SAP BW, le Analytic View possono essere paragonate alle
strutture infocubes o info set.
Le Analytic View sono tipicamente definite su almeno una tabella dei fatti
insieme a più tabelle o Attribute View, esse sfruttano la potenza di calcolo
di SAP HANA per calcolare i dati aggregati, ad esempio: il numero di giornali venduti in una nazione o la potenza consumata da un’abitazione in un
mese e funzioni come sum, min, max, count, etc.
Naturalmente l’Analytic View è progettato per eseguire query dello star
schema.
Calculation View sono viste utilizzate al di sopra delle due precedentemente descritte, esse servono per effettuare calcoli complessi non possibili con le Attribute e Analytic View.
Possono essere costruite sia graficamente (user friendly) attraverso le Gra-
fical View, rese a disposizione dal SAP HANA Modeler o tramite istruzioni
SQL (dette scripted views).
La Calculation View è indicata per combinazioni di tabelle, Attribute e Analytic View per fornire richieste business complesse, essa offre la combinazione differente di Analytic View in un’unica sorgente di dati per il report.
21
Big Data Analytics: SAP HANA
SAP HANA sfrutta tre motori in base alla richiesta delle viste:
Figura 2.08 – Engine utilizzati dalle Viste
- Join Engine: utilizzato per le Attribute View.
- OLAP Engine: utilizzato per le Analytic View.
- Calculation Engine: utilizzato per Analytic View con attributi calcolati e per Calculation View.
2.4 SAP HANA Predective Analysis Library (PAL)
La Predective Analysis Library è una soluzione per l’analisi statistica, il data
mining.
Permette la creazione di modelli predittivi per scoprire significati nascosti
e relazioni tra i dati, per ottenere predizioni accurate sugli eventi futuri.
22
Big Data Analytics: SAP HANA
Essa eredità la tecnologia di acquisizione e manipolazione dati da SAP
Lumira.
SAP PAL definisce delle funzioni che possono essere invocate attraverso
delle procedure SQL Script per l’esecuzione di algoritmi analitici.
Gli algoritmi di Predictive Analysis son divisi in categorie:
 Clustering
 Classification
 Regression
 Association
 Time Series
 Pre-processing
 Statistics
 Social Network Analysis
 Miscellaneous
Le funzionalità possono essere ampliate e/o customizzate attraverso degli
script scritti in linguaggio R.
2.5 Sentiment Analysis in SAP HANA
La Sentiment Analisys è il processo per identificare ed estrarre informazioni soggettive da diverse fonti.
Essa definisce se un documento è positivo, negativo o neutro; per questo
motivo è conosciuta anche col nome di Opinion Mining.
23
Big Data Analytics: SAP HANA
Figura 2.09 – Sentiment Analysis
Si definisce sentimento ciò che una persona percepisce (feelings) ed è caratterizzato da 3 fattori:
- Attitudes
- Emotions
- Opinions.
Il sentimento nasce da impressioni soggettive, il che complica la sua corretta interpretazione.
La Sentiment Analysis viene utilizzata per scoprire cosa gli utenti pensano
su un determinato topic, ad esempio se si vuol conoscere attraverso Face-
book se la cucina giapponese a Napoli è buona o meno.
La Sentiment Analysis ragiona in base all’estrazione di termini che possono indicare se agli utenti piace o no un determinato prodotto/oggetto.
24
Big Data Analytics: SAP HANA
I domini di impiego sono svariati, un esempio è in politica, per monitorare l’opinione dei votanti o di determinate discussioni politiche.
Antecedentemente, l’analisi sentimentale era effettuata manualmente dal
dipartimento marketing di una azienda (o organizzazione), però tali operazioni sono complesse e limitate, per cui si è spostata l’attenzione sullo sviluppo di tecniche automatizzate.
Esistono diversi approcci di Sentiment Analisys:
 Machine learning
 Lexicon-based
Ci soffermiamo sui testi.
SAP HANA permette la trattazione di testi attraverso le funzionalità di
Text Analysis.
La Text Analysis è il processo che permette l’analisi di un testo non strutturato, per estrarne le informazioni e tradurle in strutturate, in modo da
poterle analizzare.
Figura 2.10 – Text Analysis conversione testo non strutturato
25
Big Data Analytics: SAP HANA
Precisamente SAP HANA mette a disposizione per le analisi del testo i
seguenti strumenti:

Full Text Search

Full Text Index

Fuzzy Search
La funzione primaria del Full Text Search è di ottimizzare la ricerca linguistica.
Esso è utilizzato per eseguire ricerche linguistiche nel testo e nei documenti memorizzati nel database.
In questo tipo di ricerca si prendono in considerazione tutte le parole in
tutti i documenti memorizzati, poiché ricerca un criterio di matching del
testo (specificato dall’utente) in ogni documento.
Quando si ha a che fare con un numero limitato di documenti è possibile
utilizzare Full Text Search, che scannerizza direttamente i contenuti dei
documenti con ogni query; questa strategia è detta serial scanning.
Tuttavia quando il numero di documenti da cercare è elevato, il Full Text
si particolarizza nel Full Text Index che si divide in due task: indicizza-
zione e ricerca.
La fase di indicizzazione scannerizza tutto il testo dei documenti e crea
un elenco di termini di ricerca (o meglio un indice); nella fase di ricerca,
in base alla query richiesta, ci si riferisce allo specifico indice e non più al
testo contenuto nei documenti in origine.
26
Big Data Analytics: SAP HANA
L’indicizzatore crea una entry (una voce) nell’indice per ogni termine o
parola trovata in un documento ed eventualmente annota la posizione relativa al suo interno.
Concettualmente Full Text Index consente la ricerca per colonne allo stesso modo di una ricerca in un libro attraverso il suo indice.
Fuzzy Search, conosciuta come ricerca di approssimazione di stringa, è
una tecnica per trovare delle stringhe che corrispondono a quelle di un
modello approssimativo (simile al caso esatto); si tratta di uno strumento
che trova applicazione nella ricerca di stringhe con errori ortografici o incomplete.
Un esempio di applicazione di fuzzy molto frequente è apprezzabile col
motore di ricerca Google: si ricerca la stringa ‘Fcbok’, il motore di ricerca
risponde coi risultati correlati alla stringa inserita ma anche la seguente dicitura “risultati relativi a Facebook”, se si clicca sopra questo alert si effettua una nuova ricerca, questa volta della stringa corretta.
Figura 2.11 – Text Analysis
27
Big Data Analytics: SAP HANA
Conclusioni
In questo elaborato si sono analizzati gli aspetti positivi che portano i Big
Data nel mondo del business, basti pensare che grazie a queste metodologie è possibile comprendere in modo rapido ed approfondito le dinamiche sui mercati in cui si opera, quindi è possibile anticipare determinate
decisioni di marketing per ottenere vantaggi rispetto i propri competitors.
I Big Data sono rivolti principalmente ad aziende di grandi dimensioni,
che già utilizzano queste tecnologie e che, grazie all’integrazione con i
servizi di cloud computing, iniziano ad ottenere dei benefici.
Bisogna però analizzare alcuni aspetti negativi riguardo la filosofia Big Da-
ta, ossia la qualità dei dati che si vanno ad analizzare e la proprietà e
privacy dei dati stessi, oltre ciò è importante analizzare la situazione in
Italia: il Big Data Analytics nel nostro paese è ancora acerbo.
Prima di tutto, si confonde facilmente la definizione di Big Data con quella di Data Mining o Business Intelligence.
Un altro aspetto fondamentale è che con i Big Data si analizzano dataset
molto elevati (ordine dello zettabyte), in realtà, poche aziende al mondo
hanno il bisogno di analizzare volumi di dati così enormi e in particolare
in Italia.
28
Big Data Analytics: SAP HANA
Alcuni esempi:
- Analisi politiche sui social network, in particolare su Twitter,
quest’ultimo ha i numeri da big data, ma le analisi effettuate sui twe-
et del corpo elettorale (circa 3,5 milioni di italiani hanno utilizzato
Twitter durante la campagna elettorale) son fatte con strumenti tradizionali.
- L’edizione di Sanremo 2013, che per numero di tweet fu un evento record in Italia, ha registrato circa 150.000 tweet durante la finale,
il volume di dati può essere racchiuso in circa 77 MB (senza compressione), si può già capire che l’analisi dei dati è stata fatta senza
ricorrere ai big data.
- Le transazioni bancarie sono effettuate sempre su sistemi transazionali (database tradizionali) e non con tecnologia Big Data, il motivo è semplice: se consideriamo che in Italia ci sono 38 milioni di
conti correnti (bancari e postali), calcolando su una media di 20 operazioni al mese (si considerano conti retail e non business) ci sono
600 milioni di operazioni al mese su tutti i conti correnti, cioè in 1
anno sono 7 miliardi. È un numero alto, ma gestibile tranquillamente senza l’aiuto dei big data, il volume complessivo di dati è di
alcuni terabyte.
Inoltre si è discusso di SAP HANA, una piattaforma in-memory in grado di
processare grandi volumi di dati in tempo reale, andando a discutere i
principali motivi che rendono performante questo tool.
29
Big Data Analytics: SAP HANA
Riepiloghiamo i vantaggi nell’uso di SAP HANA:
- Velocità e processing in real time
HANA gestisce enormi volumi di dati ad alta velocità e in tempo reale, grazie alla tecnologia in-memory.
- Varietà dei dati
HANA gestisce in modo egregio sia dati strutturati che non, provenienti da sorgenti interne o esterne.
- Qualsiasi fonte
HANA si integra con molteplici ambienti, infatti permette la gestione
dei dati del DBMS Oracle, Microsoft SQL Server e IBM DB2.
- Facilità delle viste
Con HANA è possibile creare in modo facile e rapido viste ad-hoc
senza la necessità di conoscere i dati o il tipo di query.
- Innovazione
SAP HANA ha innovato il sistema di calcolo in-memory, la sua facilità
di configurazione ed integrazione e le sue funzionalità rendono flessibile qualsiasi attività di business richiesta.
- Cloud
HANA offre un cloud computing tra i più avanzati, veloce, scalabile e
sicuro.
30
Big Data Analytics: SAP HANA
- Semplicità
HANA punta a ridurre/eliminare l’aggregazione dei dati,
l’indicizzazione, il mapping ed exchange-transfer-load (ETL) necessari
nei datawarehouse e data marts.
Incorpora logiche di business prestabilite, calcolo in-memory ed ottimizzazione per processori multicore a 64 bit.
- Costo
HANA riduce i costi di IT, così è possibile investire maggiormente
sull’innovazione aziendale.
- Libertà di scelta
HANA permette di lavorare con i propri partner preferiti, sia dal punto di vista hardware che software.
Figura 2.09 – SAP HANA Performance
31
Big Data Analytics: SAP HANA
Sviluppi Futuri
Possiamo concludere menzionando alcune realtà che sfrutteranno SAP
HANA.
Novembre 2016 – SAP annuncia la collaborazione con GE Digital
nell’industria iot (internet of things).
GE Digital offre la piattaforma PREDIX, che rivoluziona la digital transformation delle industrie attraverso la internet of things, la società prevede
di elaborare 1 milione di terabyte al giorno nel 2020.
Dicembre 2016 – SAP HANA aiuterà a trasformare la città di Nanjing (Cina) in una “città intelligente”.
La città cinese è tra le più trafficate al mondo, 8,23 milioni di persone, che
viaggiano in 10.000 taxi e 1 milione di auto private; da questi numeri si
capisce che la città è in difficoltà nel gestire il traffico.
Per questo motivo è stato sviluppato un sistema di gestione intelligente
grazie all’utilizzo di algoritmi avanzati su SAP HANA che lavorano su dati
captati da sensori e chip RFID.
32
Big Data Analytics: SAP HANA
Tali sensori comunicano direttamente con le telecamere del traffico, in tal
modo è possibile monitorare in tempo reale il traffico e prevedere le possibili future congestioni.
Dicembre
2016
–
Mercedes-AMG
utilizzerà
SAP HANA per
l’ottimizzazione dei processi di produzione.
La società già utilizza software SAP, per la precisione, SAP ERP su HANA
per ottimizzare il processo produttivo e nel 2018 passerà alla nuova relea-
se di SAP S/4 HANA (nuova generazione di SAP BUSINESS SUITE ottimizzata per l’uso su SAP HANA) che punta a migliorare le funzionalità di
logistica.
33
Big Data Analytics: SAP HANA
Bibliografia
[1] Mauriello, Carmine - 2016 - “Sistemi Di Multiclassificazione su Hardware Riprogrammabile”
[2] Pascucci, Lorenzo - 2013 - “Big Data: cosa sono”
URL: www.webmasterpoint.org/speciale/big-data-cosa-sono.html
[3] De Biase, Luca - 2013 - “Che cosa pensereste se vi dicessero che in Italia i Big
Data non esistono?”
URL: blog.debiase.com/2013/05/22/che-cosa-pensereste-se-vi-dicesseroche-in-italia-i-big-data-non-esistono/
[4] saphanatutorial - 2015 - “SAP HANA Architecture Overview”
URL: www.saphanatutorial.com/sap-hana-basic-course-2-1/
[5] saphanatutorial - 2014 - “Column Vs Row Data Storage”
URL: www.saphanatutorial.com/sap-hana-basic-course-2-3/
[6] saphanatutorial - 2012 - “SAP HANA Backup and Recovery”
URL: www.saphanatutorial.com/sap-hana-basic-course-2-4/
[7] Wikipedia, l’enciclopedia libera - 2016 - “Big data”
URL: it.wikipedia.org/wiki/Big_data
[8] Wikipedia, l’enciclopedia libera - 2016 - “SAP HANA”
URL: it.wikipedia.org/wiki/SAP_HANA/
34
Big Data Analytics: SAP HANA
Ringraziamenti
Ringrazio il Professore Ing. Vincenzo Moscato, per la massima disponibilità dimostratami.
Ringrazio mia madre e mio padre, per aver sostenuto questo traguardo e
che, nonostante tutto, hanno sempre creduto in me.
Ringrazio i miei fratelli, fonte di ispirazione.
Ringrazio tutti i miei colleghi universitari, adesso divenuti amici, per lo
splendido percorso ed avventure passate insieme, oltre al supporto prezioso offertomi durante questo percorso.
35