Che cos'è Presto?
Esplora IBM® watsonx.data
mano che sposta parti di dati tra posizioni diverse per simboleggiare lo spostamento dei dati tra server come avviene quando si utilizza Presto...

Presto, o database Presto (PrestoDB), è un motore di SQL query distribuito e open source in grado di interrogare grandi set di dati da diverse fonti di dati, consentendo alle aziende di risolvere problemi di dati su larga scala. Offre alle organizzazioni di tutte le dimensioni un modo rapido ed efficiente per analizzare i big data da varie fonti, inclusi i sistemi on-premise e il cloud. Presto aiuta inoltre le aziende a eseguire query su petabyte di dati utilizzando le attuali funzionalità SQL, senza dover imparare un nuovo linguaggio.

Oggi, Presto è più comunemente utilizzato per l'esecuzione di query su Hadoop e altri provider di data storage comuni, consentendo agli utenti di gestire più linguaggi di query e interfacce per database e storage. 

Nell'era digitale, l'analytics dei big data sta rapidamente diventando una competenza fondamentale per le imprese, indipendentemente dalle dimensioni o dal settore. La capacità di raccogliere, archiviare e analizzare grandi quantità di dati relativi ai processi di business, alle preferenze dei clienti e alle tendenze di mercato è estremamente preziosa. L'importanza principale di Presto per l'analytics dei dati è la sua capacità di analizzare i dati indipendentemente dalla posizione di storage e senza doverli spostare prima in un sistema più strutturato, come un data warehouse o un data lake.

Scopri come funziona watsonx.data

In questa demo, vediamo come iniziare a lavorare con watsonx.data, connettersi alle fonti esterne, interrogare i dati da più fonti e molto altro ancora.

Contenuti correlati

Iscriviti alla newsletter IBM

I vantaggi di Presto

Presto è diventato uno strumento popolare per i data scientist e gli ingegneri che hanno a che fare con più linguaggi di query, database in silo e diversi tipi di storage. Le sue funzionalità ad alte prestazioni consentono agli utenti di interrogare grandi volumi di dati in tempo reale, indipendentemente dalla posizione dei dati, utilizzando una semplice interfaccia ANSI SQL. La velocità e le prestazioni di Presto nell'esecuzione di query su grandi volumi di dati lo hanno reso uno strumento indispensabile per alcune delle aziende più grandi del mondo, tra cui Facebook, Airbnb, Netflix, Microsoft, Apple (iOS) e AWS (Athena e Amazon s3).

L'architettura Presto è unica in quanto è progettata per interrogare i dati indipendentemente dalla posizione di storage, rendendoli più scalabili ed efficienti rispetto ad altre soluzioni simili. Le query di Presto consentono agli ingegneri di utilizzare i dati senza doverli spostare fisicamente da posizione alla posizione. Si tratta di una capacità importante per le organizzazioni che hanno a che fare con una quantità sempre maggiore di dati da memorizzare e analizzare.

Presto è stato creato per consentire a data scientist e ingegneri di interrogare in modo interattivo grandi quantità di dati, indipendentemente dall'origine o dal tipo di storage. Poiché Presto non memorizza dati, ma comunica piuttosto con un database separato per le sue query, è più flessibile rispetto ai concorrenti e può aumentare o ridurre rapidamente le query in base alle mutevoli esigenze dell'organizzazione. Secondo un white paper di IBM, Presto, ottimizzato per i workload di business intelligence (BI), può aiutare le aziende a ottimizzare i prezzi dei loro data warehouse e ridurre i costi fino al 50%. 

Ecco alcuni dei principali vantaggi offerti dall'utilizzo di un workflow Presto:

Costi inferiori: man mano che crescono le dimensioni dei data warehouse e il numero di utenti che eseguono query, non è raro che le aziende vedano i costi aumentare rapidamente. Presto, tuttavia, è ottimizzato per grandi quantità di piccole query, semplificando l'interrogazione di qualsiasi quantità di dati mantenendo al contempo bassi i costi. Inoltre, poiché Presto è open source, non vi sono costi connessi alla sua implementazione e questo può comportare risparmi significativi per le aziende che desiderano elaborare grandi volumi di dati.

Maggiore scalabilità: è normale che gli ingegneri configurino più motori e linguaggi su un unico sistema di storage data lake e questo può rendere necessario il replatforming in futuro e limitare la scalabilità della soluzione. Con Presto, tutte le query vengono condotte utilizzando il linguaggio e l'interfaccia universali ANSI SQL, rendendo ridondante il replatforming. Inoltre, Presto può essere utilizzato sia per piccole che per grandi quantità di dati e può essere facilmente ampliato da uno o due utenti a migliaia. Presto implementa più motori di calcolo con dialetti e API SQL unici e questo lo rende uno strumento ideale per scalare workload che potrebbero essere troppo complessi e dispendiosi in termini di tempo per essere gestiti da team di ingegneri e data scientist.

Prestazioni migliori: mentre molti motori di query che eseguono SQL su Hadoop sono limitati nelle prestazioni di calcolo perché sono progettati per scrivere i risultati su disco, il modello distribuito in memoria di Presto consente di eseguire grandi quantità di query interattive contemporaneamente su set di dati di grandi dimensioni.Seguendo un classico design di MPP (massively parallel processing ), Presto pianifica quante più query possibili su un singolo nodo di lavoro e utilizza lo streaming shuffle in memoria per aumentare ulteriormente la velocità di elaborazione.L'esecuzione delle attività in memoria rende ridondanti la scrittura e la lettura dal disco tra le fasi e riduce il tempo di ciascuna esecuzione delle query, facendo di Presto un'opzione di latenza inferiore rispetto alla concorrenza.

Flessibilità migliorata: Presto utilizza un modello plug-and-play per tutte le sue origini dati, tra cui Cassandra, Kafka, MySQL, Hadoop, file system distribuito (HDFS), PostgreSQL e altri, rendendo le query su di essi più veloci e più agevoli rispetto ad altri strumenti paragonabili che mancano questa funzionalità. Inoltre, l'architettura flessibile di Presto significa che non è limitata a un singolo fornitore, ma funziona sulla maggior parte delle distribuzioni Hadoop, diventando uno degli strumenti più portatili disponibili.

Sebbene Presto non sia l'unica opzione SQL-on-Hadoop disponibile per sviluppatori e ingegneri dei dati, la sua architettura unica che mantiene le funzionalità di query separate dal data storage la rende una delle più flessibili. A differenza di altri strumenti, Presto separa il motore di query dal data storage e utilizza connettori per comunicare tra di loro. Questa funzionalità aggiuntiva offre agli ingegneri maggiore flessibilità rispetto ad altri strumenti nel modo in cui costruiscono soluzioni utilizzando Presto.

Come funziona Presto?

Presto utilizza un sistema di gestione del database MPP con un nodo coordinatore che funziona in tandem con altri nodi. Un ecosistema Presto è composto da tre tipi di server: un server coordinatore, un server di lavoro e un server Resource Manager.

Coordinatore: un coordinatore è considerato il cervello di un'installazione di Presto. È responsabile di alcune delle attività più critiche, tra cui l'analisi degli statement, la pianificazione delle query e la gestione dei nodi worker di Presto. In definitiva, è responsabile del recupero dei dati dai nodi worker e dell'invio dei risultati al client.

Worker: il worker è responsabile della raccolta dei dati dai nodi worker e di garantire il regolare scambio di dati tra se stesso e i connettori.

Resource manager: il resource manager raccoglie i dati da tutti i nodi coordinatore e di lavoro e crea una vista globale o un "cluster Presto". 

Quando SQL Server del coordinatore Presto riceve una query SQL da un utente, la prima cosa che fa è utilizzare una query personalizzata per analizzare, pianificare e programmare un piano distribuito sugli altri nodi. L'API Rest di Presto viene utilizzata per inviare le istruzioni della query per l'esecuzione su un server e per recuperare i risultati per il client. Presto supporta i significati SQL ANSI standard, inclusi join, query, sottoquery e aggregazioni. Una volta compilata la query, Presto analizza la richiesta nelle diverse fasi tra i nodi di lavoro.

Poiché Presto è stato creato in base al concetto di astrazione dei dati, è estensibile a qualsiasi origine dati e può facilmente interrogare origini dati come data lake, data warehouse e database relazionali. L'astrazione dei dati è un processo di programmazione che consente lo storage e la manipolazione dei dati in modo più efficiente separando la sua rappresentazione dallo storage fisico. Questa astrazione consente al motore di query di concentrarsi esclusivamente sugli aspetti dei dati pertinenti per la query. Utilizzando il processo di astrazione dei dati, i dati vengono interrogati ovunque siano memorizzati anziché dopo essere stati spostati in un altro sistema di analytics.

Breve storia di Presto

Inizialmente sviluppato da Facebook per eseguire query interattive su un enorme data warehouse Apache Hadoop, gli sviluppatori di Presto lo hanno sempre immaginato come un software open source e hanno cercato di renderlo gratuito per uso commerciale in modo che chiunque potesse utilizzarlo per l'analytics e la gestione dei dati. Nel 2013, è stato reso open source su GitHub affinché chiunque potesse scaricarlo con la licenza del software Apache. Nel 2019, tre dei membri originali del team di sviluppo di Presto hanno lasciato il progetto e hanno fondato un "fork" di Presto noto come Presto Software Foundation, o più comunemente, come prestosql.

Le fondazioni Linux e altre comunità open source offrono webinar e formazione su Presto in inglese e altre lingue per ingegneri e sviluppatori che desiderano ottenere la certificazione. Questi forum sono anche utili per scoprire le novità di Presto.

Casi d'uso di Presto 

Presto consente alle organizzazioni di interrogare repository di dati su larga scala e database NoSQL in modo rapido ed efficiente per una varietà di scopi aziendali. Ecco alcuni dei suoi casi d'uso più comuni:

Query ad hoc

Presto consente un'esplorazione rapida dei dati e un reporting semplice per una diversa serie di scopi aziendali. Utilizzando i più diffusi connettori Presto, come Hive, MongoDB o Cassandra, gli utenti possono interrogare i dati a cui hanno interesse e ottenere risultati in pochi secondi. Grazie alla sua velocità e flessibilità, Presto consente agli utenti di iterare ed esplorare ulteriormente i set di dati, indipendentemente da dove risiedono.

Ecco alcuni dei repository di dati più utilizzati a cui Presto può connettersi:

  • BigQuery
  • HDFS
  • Storage cloud
  • Cloud SQL per MySQL
  • Apache Cassandra o Kafka
Distribuzioni cloud e cloud ibrido

Secondo una valutazione delle prestazioni del 2021 condotta da RedHat, il crescente utilizzo di ambienti cloud ibridi da parte delle imprese sta esercitando una maggiore pressione sullo storage cloud-native, per il quale Presto, "il motore di query distribuito più veloce oggi disponibile" è l'ideale. 1 Lo spostamento dei workload da un ambiente on-premise a un'infrastruttura cloud o di cloud ibrido presenta numerosi vantaggi, tra cui prestazioni e scalabilità migliorate. L'architettura di Presto lo rende una scelta vincente per tali implementazioni poiché può essere avviato in pochi minuti senza ulteriori operazioni di provisioning, configurazione o ottimizzazione. 

Machine learning (ML)

Presto aiuta gli ingegneri a preparare i dati ed eseguire l'ingegnerizzazione e l'estrazione delle funzioni in un modo altamente efficiente che garantisce che siano pronti per il machine learning (ML). Il numero di connettori, il motore SQL e le funzionalità di interrogazione lo rendono ideale per gli ingegneri che cercano un accesso rapido e semplice a grandi volumi di dati. Inoltre, Presto dispone di strumenti progettati appositamente per le funzioni di apprendimento automatico (ML), quali l'aggregazione, che consentono ai data scientist di addestrare i classificatori e i regressori di macchine vettoriali di supporto (SVM) per affrontare i problemi di apprendimento supervisionati.

Reportistica

Presto consente di interrogare i dati da più fonti generando un unico report o dashboard facilmente accessibile per scopi di BI. Presto è abbastanza semplice e facile da usare da consentire agli analisti di condurre query e creare report senza l'aiuto di ingegneri.

Analytics

Presto consente agli analisti di condurre query su dati strutturati e non strutturati direttamente su un data lake senza un processo di trasformazione dei dati.

Preparazione dati

Il processo di raccolta e preparazione dei dati può essere costoso e inefficiente. I data scientist possono passare ore e ore a raccogliere e preparare i dati prima ancora di poterli analizzare. Presto automatizza questo processo con velocità e precisione in modo che data scientist e ingegneri possano dedicare buona parte del loro tempo ad attività più importanti.  

Soluzioni NVMe
Dati e IA IBM® watsonx.data

Presto è open source e può essere installato manualmente. Puoi anche utilizzare Presto con una soluzione di data lakehouse come IBM® watsonx.data per una scalabilità più rapida dei workload AI. IBM® watsonx.data è uno storage dei dati fit-for-purpose basato su un'architettura open lakehouse e supportato da query, governance e formati open data per accedere e condividere i dati.

Maggiori informazioni su IBM® watsonx.data

Risorse correlate Presto: dai un senso a tutti i tuoi dati, di qualsiasi dimensione, ovunque

Scopri come Presto, un motore di SQL query open source veloce e flessibile, può aiutarti a fornire gli insight di cui le aziende hanno bisogno.

IBM aiuta le aziende a scalare i carichi di lavoro AI

Scopri di più su IBM® watsonx.data, uno storage dei dati che aiuta le aziende a unificare e governare facilmente i dati strutturati e non strutturati.

Il potenziale dirompente delle architetture open data lakehouse e IBM® watsonx.data

Esplora l'architettura open data lakehouse e scopri come combina la flessibilità e i vantaggi in termini di costi dei data lake con le prestazioni dei data warehouse.

IBM® watsonx.data: uno storage dei dati aperto, ibrido e controllato

Scopri come IBM® watsonx.data aiuta le aziende ad affrontare le sfide del complesso landscape dei dati di oggi e ad adattare l'AI per soddisfare le loro esigenze.

Fasi successive

Ottieni gli insight di cui hai bisogno con Presto, un motore di SQL query open source veloce e flessibile e IBM® watsonx.data, uno storage dei dati aperto, ibrido e governato per scalare i workload AI, per tutti i tuoi dati, ovunque.

Scopri IBM® watsonx.data
Note a piè di pagina

1 Caratterizzazione delle prestazioni in modalità esterna per database e analytics, (link esterno a ibm.com) Red Hat, 18 gennaio 2021