JSON su Oracle DB: l'azienda punta su un approccio più pratico per il nuovo ciclo di webinar

JSON su Oracle DB: l'azienda punta su un approccio più pratico per il nuovo ciclo di webinar

Il primo appuntamento con il ciclo di tre webinar di Oracle dedicati ai database noSQL e in particolare JSON, si è rivelato estremamente pratico, con numerosi esempi di codice. Il prossimo appuntamento è previsto per il 1° ottobre

di pubblicata il , alle 15:01 nel canale Innovazione
Oracle
 

Come avevamo anticipato, il successo dei webinar organizzati da Oracle durante la pandemia ha spinto il colosso a proseguire nell’iniziativa, cambiando anche leggermente il format, che ora è più orientato agli aspetti pratici.

Oracle, infatti, si è resa conto che ai suoi appuntamenti online si iscrivevano non solamente sviluppatori senior o dirigenti curiosi di conoscere l’evoluzione tecnologica, ma anche numerosi studenti. Un pubblico inatteso che ha spinto l’azienda ad andare più a fondo con gli argomenti, trattando tematiche molto concrete.

Il primo webinar del ciclo relativo a JSON, per esempio, si è focalizzato proprio sui vantaggi di usare un set di dati NoSQL sul DB di Oracle, con tanto di esempi pratici di codice. Il 1° ottobre e il 6° si terranno invece i successivi appuntamenti della serie. 

Perché gli sviluppatori preferiscono JSON?

Esistono due macrocategorie di database: quelli relazionali (SQL) e quelli non relazionali (NoSQL). La scelta fra le due tipologie dipende dal tipo di dato trattato, e considerata la mole di informazioni che gestiscono oggi le imprese, è estremamente probabile che vengano utilizzati entrambi in differenti ambiti. Oracle DB, rispetto ad altre soluzioni, ha il vantaggio di non essere specializzato solo su una tipologia, ma può gestire sia dati SQL sia quelli NoSQL.

A oggi, l’approccio preferito dagli sviluppatori per le loro applicazioni è quello di legarle ove possibile a un database NoSQL, in particolare JSON. I motivi sono parecchi, ma prevalentemente possiamo riassumerli nella semplicità di utilizzo

JsonOracle

In primo luogo, JSON è un formato facile da leggere e comprendere per gli sviluppatori. A questo si aggiunge il fatto che JSON supporta schemi dinamici, che possono anche essere modificati con semplicità. È anche molto flessibile, e supporta una grande varietà di dati, risultando quindi adatto a una pluralità di situazioni.

Sul mercato sono disponibili molte soluzioni di database specializzate proprio su JSON (Couchbase, Amazon DocumentDB e soprattutto MongoDB) ma secondo Oracle questi DB hanno alcune limitazioni: per esempio, non godono della stessa scalabilità di OracleDB e richiedono la scrittura di codice ad-hoc per eseguire anche le più semplici operazioni sui dati. Inoltre, non permettono di combinare dati JSON con dati non-JSON, imponendo quindi l’utilizzo di un ulteriore DB per gestire questi ultimi.

JsonOracle2

Oracle DB, al contrario, ha come punto di forza il supporto a qualsiasi tipo di dato, fatto che velocizza la realizzazione di app dato che non richiede di appoggiarsi a differenti soluzioni a seconda delle informazioni che si andranno a trattare.

Un altro aspetto che contraddistingue Oracle da altre soluzioni di database è la semplicità della gestione dei container, oggi sempre più utilizzati per accelerare lo sviluppo delle app. OracleDB, infatti, include gli strumenti necessari a gestire backup, protezione e spostamento dei container. Non che le alternative ne siano sprovvisti, ma il problema è che quando si utilizzano più database contemporaneamente, le operazioni di backup ripristino diventano più lunghe e complesse.

Qualche esempio pratico

Dopo aver analizzato le caratteristiche principali dell’supporto JSON in OracleDB, il webinar è proseguito con un’analisi più approfondita delle sue funzioni. Una delle più interessanti è rappresentata dalle API a disposizione dei developer: appoggiandosi a esse, non è necessario imparare il linguaggio specifico di OracleDB, ma si possono semplicemente “importare” i DB con poche righe di codice.

JsonOracle3

Un esempio pratico ha riguardato la creazione di un database per un’applicazione destinata al mondo universitario. Se con un DB relazionale è prima necessario capire le entità coinvolte (studenti, professori, atenei) e identificarne le correlazioni, con JSON tutto questo lavoro può essere saltato direttamente: non essendo JSON un modello basato su relazioni, infatti, non è necessario comprendere la natura dei dati da trattare. Concretamente, questo significa che si può creare il db con un semplice comando.

Allo stesso modo, risulta più semplice aggiungere documenti alla raccolta.

JsonOracle

Un’altra grande differenza di JSON è che le entità non sono linkate, ma “embeddate, fatto che semplifica e velocizza notevolmente le query e l’inserimento di nuovi dati. L’embed, però, non è la panacea a tutti i mali e porta con sé alcune limitazioni, in particolare la ridondanza dei dati, che vengono ripetuti più e più volte. Una complicazione non da poco dal momento che così facendo vengono mescolate più entità.

Qui entrano in gioco le peculiarità dell’approccio di Oracle DB, che include degli strumenti per trasformare automaticamente un dato JSON in uno relazionale all’interno del database multimodello dell’azienda che, come già detto, è in grado di gestire dati di vario tipo.

I prossimi appuntamenti coi webinar di Oracle

Il primo webinar del ciclo di Oracle è servito come introduzione. Il prossimo appuntamento, previsto per il 1° ottobre, sarà incentrato sullo sviluppo di un’applicazione web dedicata al mondo scolastico, scritta appoggiandosi al framework Apex, che sfrutta JSON per la gestione di dati di tipo grafo e spaziali per offrire informazioni sugli atenei e i relativi corsi. Un’app pratica, insomma, non un semplice esercizio di stile, app che verrà poi distribuita ai partecipanti.

Il terzo e appuntamento è invece previsto per il 6 ottobre: i partecipanti impareranno a sfruttare una funzionalità resa disponibile da pochissimo che consente di “convertire” (più correttamente reindirizzare) un’app per MongoDB su Oracle DB semplicemente facendo leva su API, evitando quindi di doverla ripensare e riscrivere.

 
^