MySQL HeatWave di Oracle passa al pilota automatico

0
141

Tony Baer (dbInsight)

di Tony Baer (dbInsight) per Big on Data | 10 agosto 2021 — 16:00 GMT (17:00 BST) | Argomento: Analisi dei Big Data

Alla fine dello scorso anno, Oracle ha portato MySQL in una nuova direzione introducendo un database-as-a-service (DBaaS) cloud che ha aggiunto l'analisi. Otto mesi dopo, il suo prossimo atto è l'introduzione di una nuova funzionalità “Autopilot” nel suo servizio di database MySQL con HeatWave che utilizza l'apprendimento automatico per migliorare le prestazioni OLTP e OLAP del database. È la seconda volta che Oracle applica l'apprendimento automatico per ottimizzare il funzionamento del database, ma rispetto all'Autonomous Database, le funzionalità Autopilot di MySQL HeatWave sono progettate per introdurre l'automazione intelligente in un mercato che lavora con piccoli database dipartimentali che preferisce l'open source, è sensibile ai costi ed è più abituato alla rotazione manuale delle manopole.

Nello specifico, MySQL Autopilot utilizza l'apprendimento automatico interiorizzato per assistere gli utenti in alcune attività e applica l'automazione a ciclo chiuso per gestirne altre. Assiste gli utenti fornendo consigli su come eseguire il provisioning e caricare il database e implementa l'automazione a ciclo chiuso per la gestione degli errori/recupero degli errori e l'esecuzione delle query. E con l'apprendimento automatico, Autopilot può migliorare in modo iterativo i piani di query in base ai risultati di altre query simili e diverse. L'ultima versione di MySQL HeatWave aumenta anche il dimensionamento dei cluster a 64, più che raddoppiando i limiti di capacità a istanze da 32 TB e aumenta la scalabilità del 20%.

Ad esempio, durante il provisioning del database, Autopilot esegue una scansione intelligente della tabella utilizzando tecniche di campionamento adattivo per prevedere il dimensionamento ottimale del cluster. Questo si basa sulla previsione della quantità di memoria che sarà richiesta per contenere la tabella e i risultati intermedi in memoria. In questo caso, l'output del modello fornisce raccomandazioni, inclusa una spiegazione della raccomandazione al cliente, che alla fine decide il dimensionamento del cluster.

Al contrario, nel caso dell'esecuzione di query, il modello pianifica automaticamente le query utilizzando la logica per ridurre il conflitto tra query a esecuzione breve e lunga caratteristica dei carichi di lavoro misti. Senza tale pianificazione intelligente delle query, le query brevi, che dovrebbero essere interattive, potrebbero subire ritardi a causa di lunghi carichi di lavoro, a meno che non intervenga un amministratore del database. Con Autopilot, questo scenario può essere evitato in quanto prevede il tempo di esecuzione di ogni query, quindi dà la priorità alle query brevi rispetto a quelle lunghe per ridurre o eliminare le attese per le query interattive.

Altre funzioni di Autopilot includono ottimizzazioni per il caricamento e la decisione di dove posizionare fisicamente i dati. In base ai modelli di query, l'algoritmo si sforza di posizionare le righe più frequentemente unite più vicine tra loro e all'interno delle stesse partizioni o adiacenti sullo stesso nodo. Quindi prevede il grado di miglioramento che l'utente può aspettarsi confrontando il posizionamento ottimizzato proposto rispetto a quello predefinito. Spiegare i risultati sarà utile per i clienti che decidono se seguire i consigli sul posizionamento dei dati di HeatWave.

Una caratteristica correlata che influisce sulla pianificazione delle query è il miglioramento del piano di query automatico in cui il sistema apprende dalle query e migliora le prestazioni delle query successive che non sono t necessariamente identico alle query esistenti.

In confronto, i pianificatori di query con database relazionali convenzionali tendono a essere basati su regole, ottimizzando i costi o le prestazioni. A loro volta, i DBA esperti in genere si occupano della progettazione dello schema per l'ottimizzazione delle query previste e della disposizione dei dati (caricamento dei dati per ottimizzare l'accesso). Le routine di MySQL Autopilot automatizzano queste attività utilizzando ML e l'azienda afferma che i suoi algoritmi possono migliorare le prestazioni su benchmark come TPC-H (solitamente utilizzato per l'analisi) fino al 40%.

Come abbiamo notato con Oracle Autonomous Database, i database rappresentano un caso d'uso ideale per l'applicazione del machine learning poiché i problemi sono ben delimitati, le ottimizzazioni possono essere ben definite (ad es. ottimizzare per prestazioni, throughput o capacità, ecc.) e possono alimentarsi con una ricca offerta di dati operativi. Autopilot utilizza modelli ML per ottimizzare la pianificazione e le prestazioni delle query; capacità del cluster; sovraccarico di rete; e parallelizzare le operazioni di caricamento.

Altri miglioramenti in questa versione includono aumenti di capacità; mentre la versione iniziale di Oracle MySQL HeatWave limitava i cluster a 24 nodi (contenendo fino a 12 TB di dati), la nuova versione aumenta a 64 nodi e 32 TB di dati. La scalabilità del sistema per le query end-to-end è stata migliorata di circa il 20%.

Si rafforza anche la sicurezza; mentre i dati erano già crittografati a riposo, nella nuova versione vengono crittografati anche in rete. Ciò lo mette in sincronia con le offerte MySQL di Azure e Google Cloud; in confronto, la crittografia è facoltativa con Amazon Aurora.

Come abbiamo notato quando Oracle ha rilasciato per la prima volta l'attuale servizio di database MySQL con HeatWave alla fine dello scorso anno, il servizio Oracle non doveva essere una copia dei servizi cloud rivali che implementavano il database MySQL open source senza modifiche.

Da questo punto di vista, il servizio di Oracle è più paragonabile ad Amazon Aurora, dove AWS ha aggiunto i propri miglioramenti al motore di storage per consentire a MySQL di gestire implementazioni di elaborazione delle transazioni più grandi e multi-terabyte che supportano un'elevata concorrenza. Il servizio Oracle gestisce questo, ma si differenzia anche aggiungendo analisi con l'acceleratore di query in memoria HeatWave. Abbiamo esaminato le differenze, offrendo confronti con Microsoft Azure (che ha esteso PostgreSQL per supportare l'elaborazione delle transazioni sharded) e, naturalmente, Aurora. E abbiamo confrontato le estensioni analitiche con altre piattaforme personalizzate come Actian Vector.

Mentre Amazon Redshift è stato sullo schermo radar di Oracle per un po' di tempo, avanzando rapidamente al presente, non sorprende che Oracle stia prendendo di mira Snowflake. Citando benchmark di terze parti che ha commissionato e pubblicato, Oracle afferma che MySQL HeatWave supera Snowflake; Amazon Redshift; Analisi delle sinapsi di Azure; e BigQuery di Google Cloud Platform. A differenza della maggior parte dei rivali di database cloud, Oracle ha posizionato a lungo i suoi database per gestire transazioni miste e carichi di lavoro analitici e quando MySQL HeatWave è stato rilasciato per la prima volta alla fine dello scorso anno, lo ha esteso a MySQL. Quindi, rispetto ad AWS, ad esempio, Oracle posiziona MySQL HeatWave come trascendente le capacità di Amazon Redshift (per l'analisi); AQUA (accelerazione delle query analitiche); Aurora (per le transazioni); e colla (per ETL).

Quando si confronta Oracle MySQL HeatWave con altre piattaforme di cloud data warehousing o “data lakehouse”, ci sono ancora differenze per quanto riguarda l'integrazione di AutoML o altri servizi di apprendimento automatico e non è possibile eseguire Spark in modo nativo. Detto questo, l'obiettivo iniziale sono le organizzazioni che cercano di consolidare le proprie istanze MySQL e di espanderle all'analisi. Potremmo vedere queste funzionalità arrivare su HeatWave lungo la strada.

Le funzionalità di Autopilot basate sull'apprendimento automatico di HeatWave invitano naturalmente al confronto con Oracle Autonomous Database. Ma ognuno serve un pubblico molto diverso. Basato su Exadata, l'Autonomous Database è inteso come una piattaforma di consolidamento aziendale per le istanze Oracle che possono raggiungere l'intervallo di petabyte. Come notato sopra, i database MySQL sono in genere molto più piccoli, tendono ad essere eseguiti a livello di dipartimento, con clienti che cercano un basso costo. Nella maggior parte delle organizzazioni, potrebbero esserci dozzine, se non centinaia o più database dipartimentali MySQL in circolazione. Questo è il punto debole che Oracle sta prendendo di mira con MySQL Database Service con HeatWave.

Come abbiamo notato, dato che altri hanno battuto Oracle sulla linea di partenza con le proprie implementazioni MySQL Vanilla, Oracle ha dovuto fare qualcosa di diverso. In questa versione, l'aggiunta dell'apprendimento automatico invia agli sviluppatori il messaggio che su Oracle Cloud Infrastructure, le loro istanze MySQL dovrebbero anche richiedere meno cure, alimentazione e prestazioni migliori.

Divulgazione: Oracle è un client dbInsight.

Big Data

Dov'è il launchpad del cloud ibrido di IBM? Sette modi per rendere la tecnologia in tempo reale reale per la tua organizzazione Machine learning all'avanguardia: TinyML sta diventando grande Quali sono le prospettive di Cloudera? McDonald's vuole “democratizzare” il machine learning per tutti gli utenti nelle sue operazioni

Argomenti correlati:

Cloud Digital Transformation Robotica Internet of Things Innovation Software aziendale Tony Baer (dbInsight)

Di Tony Baer (dbInsight) per Big on Data | 10 agosto 2021 — 16:00 GMT (17:00 BST) | Argomento: Analisi dei Big Data