Condividere dati intermedi tra moderni sistemi come tool di Big Data e workflow di Artificial Intelligence(AI) può essere complesso e sfidante in quanto passibile di subire uno dei problemi più comuni della gestione di grandi quantitativi di informazioni: i colli di bottiglia( bottlenecks).
Se prendiamo come esempi un sistema per il rilevamento delle frodi o un sistema di business intelligence possiamo ben comprendere che una possibile pipeline sicuramente implementa numerose attività sui dati come:
- inserimento di tipo I/O;
- failover;
- trasformazione dei dati poliformi(come NoSQL, SQL, dataframes, graph, ecc..) per renderli omogenei;
- salvataggio/caricamento dei dati su/da differenti storage esterni,
che hanno come effetto la diminuzione delle performance e l’aumento dell’overhead. Tradotto in termini economici vuol dire sostenere maggiori costi.
Vineyard: un in-memory immutable data manager
La soluzione ai problemi descritti precedentemente si chiama Vineyard e si definisce come un “in-memory immutable data manager“, cioè un gestore dei dati che lavora a livello di memoria del computer su informazioni che una volta inserite all’interno diventano immutabili.
L’architettura è complessa ma concettualmente semplificabile in un classico servizio Client-Server dove l’istanza server di Vineyard fornisce informazioni “in-memory” ai Client di Vineyard che possono essere rappresentati da grafici analitici di GraphScope, servizi Big Data, computazioni numeriche di Mars o anche strumenti di Machine Learning come TensorFlow.
Tra le funzionalità principali di Vineyard puoi trovare:
- condivisione dei dati in maniera zero-copy cioè senza ridondanze( per un approfondimento puoi visitare il seguente link);
- condivisione di immutable data su differenti sistemi senza aggiungere alcun overhead ed eliminando la necessità di serializzare/deserializzare i dati quando è necessario migrarli da un sistema all’altro;
- astrazione e compatibilità con qualsiasi linguaggio di programmazione;
- possibilità di creare routine task durante l’analisi di Big Data come adattamenti degli IO, strategie di partizione dei dati, migrazione dei dati, ecc… con possibilità di riutilizzare tali routine su sistemi differenti grazie all’astrazione intrinseca di Vineyard;
- orchestrazione dei dati su Kubernetes (per un approfondimento puoi leggere il seguente articolo)
In poche parole Vineyard ti permette di gestire dati distribuiti in maniera strutturata e con il massimo livello di performance perchè si evitano ridondanze ed overhead inutili.
Contattaci subito e senza impegno per implementare Vineyard nella tua architettura.
Glue Labs e la gestione performante dei dati
Ti supportiamo nell’implementazione di soluzioni tecnologiche che garantiscono la qualità dei dati e li arricchiscono di informazioni con massime performance. Siamo Google Cloud Partner e grazie all’esperienza maturata in tantissimi settori, con numerosi Clienti e con un solido gruppo aziendale ti forniamo soluzioni software con garanzia 12 mesi da qualsiasi bug. Contattaci subito e senza impegno per maggiori informazioni.