Elaborare i Big Data con U-SQL e Azure Data Lake

di Andrea Tosato, in Big Data,

Nei sistemi informativi moderni è presente una crescita esponenziale di dati da processare. Più un sistema evolve nel tempo e più i dati aumentano; sorge la necessità di acquisire dati da sistemi tra loro eterogenei e non strutturati; sorgono quindi problemi di acquisizione e di elaborazione a fronte di un incremento di dati da elaborare. I problemi appena descritti possono essere inseriti in un contesto definito con il nome di Big Data. Il termine descrive tutte le metodologie e tecnologie che consentono di estrarre e analizzare dati di qualsiasi tipo che devono essere processati da un sistema produttivo.

Il contesto

In Azure sono presenti diversi strumenti per l'analisi dei dati, Azure Data Lake Analytics è strumento che ci permette di analizzare dati provenienti da altri servizi presenti sul Cloud Microsoft. In particolare con Azure Data Lake possiamo utilizzare i dati presenti in altri strumenti come Data Warehouse, SQL Database, Blog Storage e così via. Come vedremo nel prossimo paragrafo, per utilizzare Azure Data Lake dovremmo sfruttare un nuovo linguaggio che unisce le competenze di sviluppatori C# e sviluppatori SQL.

Un nuovo linguaggio

Nel 2015 Microsoft affronta il problema dei Big Data creando un nuovo linguaggio denominato U-SQL e introducendo una serie di servizi Azure come Azure Data Lake. La U di U-SQL, oltre ad essere consecutiva in ordine alfabetico ai linguaggi di elaborazione dati precedenti come SQL (ANSI SQL) e T-SQL, ha un significato che definisce la natura del linguaggio stesso. U-SQL significa letteralmente Unified-SQL, e mescola i benefici di scalabilità e la familiarità del linguaggio SQL con l'espressività e la programmabilità del linguaggio C#. Il linguaggio U-SQL abilita gli sviluppatori e i data scientists a processare qualsiasi tipo di dato con un codice facilmente mantenibile e scalabile al mutare della quantità di dati in ingresso al sistema. Il linguaggio U-SQL prepara, trasforma e analizza i dati; permette allo sviluppatore di focalizzare gli sforzi sul problema e non sul come debba essere implementata la soluzione; l'infrastruttura scalabile consente di gestire i dati indipendentemente dalla quantità in esso presente. Uno dei punti di forza del linguaggio U-SQL è quello di poter riutilizzare segmenti di codice C# su più progetti, cosa che con il linguaggio SQL è di difficile applicazione.

Gli ambiti di utilizzo

Come detto in precedenza, il linguaggio U-SQL si presta bene a sistemi con alto consumo di dati. Sebbene il tema big data venga utilizzato spesso per definire qualsiasi processo che manipoli dati, sistemi come quello che stiamo descrivendo ci consentono di agire in un processo più ampio rispetto alla semplice lettura di una query da un database. Il modello di utilizzo di U-SQL elabora dati non strutturati e presenti in sorgenti dati dal formato più disparato; possiamo quindi acquisire dati da sensori, siti web, database relazionali, social e servizi presenti su Azure come Azure Stream Analytics o Azure Event Hub.

Nei casi più comuni, il dato viene elaborato dal sistema come file residente su sistemi quali Azure Blob Storage o da Azure Data Lake Storage. Il servizio Azure Data Lake fornisce una istanza SQL Server sulla quale è possibile creare database multipli in cui ospitare dati ed eseguire le elaborazioni, l'utilizzo del database è consigliato per archiviare i dati durante il processo di elaborazione e ottimizzarne l'accesso. Il servizio Azure Data Factory, potrà infine esportare dati dal servizio Azure Data Lake a sistemi esterni come Azure SQL Database o Azure SQL Datawarehouse. Il fulcro del sistema quindi risulta l'elaborazione del dato, tramite operatori SQL, come aggregazioni e filtri oppure tramite funzioni C# che vanno ad implementare logiche più o meno complesse. Infine il dato elaborato potrà essere archiviato su ulteriori file o sul sistema Azure Data Lake Storage. Possiamo trovare un ampio utilizzo dello strumento in sistemi di image processing o di shopping recommendation che possiamo trovare in numerosi siti di e-commerce.

5 pagine in totale: 1 2 3 4 5
Contenuti dell'articolo

Commenti

Visualizza/aggiungi commenti

| Condividi su: Twitter, Facebook, LinkedIn

Per inserire un commento, devi avere un account.

Fai il login e torna a questa pagina, oppure registrati alla nostra community.

Approfondimenti

Top Ten Articoli

Articoli via e-mail

Iscriviti alla nostra newsletter nuoviarticoli per ricevere via e-mail le notifiche!

In primo piano

I più letti di oggi

In evidenza

Misc