Italian translation of Five Reasons to use InterBase in 2020 and Beyond
InterBase è e continua a essere una delle gemme nascoste nel mondo dei database relazionali.
Dalla sua apparizione nei primi anni ’80, attraverso l’adozione generalizzata e l’evoluzione sotto la Borland, InterBase ha alle spalle un curriculum che si estende su decenni; a volte definendo lo standard su cui sono stati misurati tutti gli altri database.
Con l’acquisto del portafoglio di sviluppo della Borland da parte di Embarcadero nel 2008, InterBase è stato ulteriormente aggiornato con i progressi tecnologici più recenti; superandoli anche con delle funzionalità come Change Views.
Grazie al costante refactoring e all’evoluzione da quando Embarcadero è subentrata, le sue prestazioni e la sua portata sono migliorate radicalmente. Ancora una volta InterBase è all’avanguardia, in quanto a prestazioni, sicurezza e diversità della piattaforma.
Gli investimenti in ottimizzazioni nel nostro “gigante buono” negli ultimi otto anni sono troppe da elencare. Embarcadero ha svolto un lavoro straordinario nel modernizzare questo database amatissimo e oserei dire, archetipico database relazionale. Allo stesso tempo, è riuscito a conservare la funzionalità che è la quintessenza di InterBase: Le caratteristiche con cui il prodotto si contraddistingue.
Per un vecchio sviluppatore di Delphi come me, utilizzare di nuovo InterBase nel mio ambiente di produzione è un’esperienza emozionante. InterBase era compreso nel mio curriculum universitario e l’ho usato nel mio primo sviluppo di software commerciale assieme a Delphi.
Familiare ma inconfondibilmente moderno, rinnovato ma maturo e affermato.
Vorrei elencare cinque buoni motivi per cui InterBase dovrebbe essere il tuo prossimo database. Scrivere su un argomento che mi appassiona si trasforma facilmente in un romanzo, motivo per cui mi limito solamente a cinque ragioni.
Vediamo perché InterBase 2020 dovrebbe essere il tuo prossimo database.
Table of Contents
1: Diversità della piattaforma
Il mondo della tecnologia è cambiato radicalmente in brevissimo tempo. Il modo in cui la tecnologia si evolve, che si tratti di software o hardware, è in genere attraverso balzi improvvisi e inaspettati. La rivoluzione della tecnologia mobile del 2007 guidata da Steve Jobs, mentre svelava l’iPhone alla conferenza degli sviluppatori Apple a San Francisco, è stata uno di quei balzi.
Da un giorno all’altro, i criteri per lo sviluppo del software sono irrevocabilmente cambiati.
Proiettati nel 2020, i due terzi della popolazione del pianeta vanno in giro con un proverbiale super computer in tasca. Ognuno di questi pieno di applicazioni, dalla complessità in costante crescita e con una reale necessità di persistenza di dati affidabili.
Oggi le attività commerciali si svolgono sempre di più con dispositivi mobili e di conseguenza, è necessaria la capacità di distribuire software su piattaforme, sistemi operativi e hardware diversi. L’informatica multipiattaforma è ora il prerequisito su cui tutti gli sviluppatori devono basare la propria strategia, indipendentemente dal linguaggio di programmazione.
Quando c’è bisogno di supporto multipiattaforma, InterBase è un pioniere e in anticipo sui tempi.
Già alla fine degli anni ’80, InterBase era disponibile per una varietà di sistemi informatici; dalle grandi e potenti macchine aziendali con sistema operativo Unix, ai computer di casa più modesti come l’Apollo o il Commodore Amiga.
Gli obiettivi del 2020 sono molto diversi, ma InterBase rimane lo stesso sistema di database versatile e indipendente dalle piattaforme di sempre. Oggi può essere distribuito su tutte le principali piattaforme e sistemi operativi: Windows, Linux, macOS, Android e iOS. InterBase supporta anche la connettività dei sistemi operativi eterogenei su tutte le piattaforme supportate.
La possibilità di utilizzare lo stesso database su più architetture è di gran lunga la mia caratteristica preferita. Risparmia tempo, riduce i costi e semplifica notevolmente la vita durante la manutenzione.
Internet delle Cose
Con l’avvento dell’Internet delle cose (IdC), l’informatica integrata ha subito una trasformazione notevole. Una che è strettamente legata alla rivoluzione del telefono cellulare e legata alla nostra presenza qui.
L’informatica integrata era una nicchia specializzata del mercato. Una nicchia più o meno dominata dagli ingegneri elettronici. Ma poiché la rivoluzione del telefono cellulare ha stimolato la produzione di massa di CPU, chipset e SoC (system on a chip) convenienti, era solo una questione di tempo prima che qualcuno potesse assemblare un nuovo stile di scheda integrata. E nel 2012 è esattamente quello che è successo. Il minicomputer Raspberry Pi da $ 35 è diventato realtà, e con esso, incorporato è diventato un termine familiare.
Dato che questa nuova classe di schede madri integrate è realizzata con le stesse parti di telefoni cellulari e tablet, hanno anche un livello di prestazioni che le rende interessanti per il mercato dei consumatori. Hanno gli stessi CPU, eseguono gli stessi sistemi operativi (Android), il che significa che possono eseguire lo stesso software.
Qui entra in gioco InterBase.
La creazione di soluzioni che includono anche l’hardware è uno degli aspetti più interessanti dello sviluppo del software. InterBase copre una vasta gamma di dispositivi integrati (ARM e x86): le schede IdC e i telefoni cellulari sono in definitiva solo configurazioni diverse delle stesse parti.
E su dispositivi così piccoli, la necessità di un database veloce, affidabile e sicuro è molto importante.
Per fortuna, con InterBase è tutto sotto controllo.
2: Change Views
Una delle funzionalità esclusive di InterBase è il modo in cui gestisce le notifiche e i feedback. InterBase ha diversi meccanismi per informare gli sviluppatori sulle alterazioni al livello dei dati, e senza dubbio il più potente di questi è Change Views.
A differenza di una normale vista di database, Change Views si basa su un modello di Data Subscription. Definisci i criteri per le modifiche di cui vuoi essere informato, e una volta definiti, interroga il database “cosa è cambiato dall’ultima volta che abbiamo parlato?”
L’impatto su cose come la connettività di rete e il carico utile è immediato. Soprattutto quando si opera con un Cluster di database che offre gli stessi dati per target diversi (ad es. Applicazione Web vs. applicazione mobile), affidandosi al caching nel middleware.
Invece di eseguire il polling manuale di un insieme fisso di righe per aggiornare la cache, la tecnica più tipica per il middleware, Change Views recupera solo ciò che è cambiato. L’intervento inizia eseguendo il polling di un set completo di righe, se vuoi un fotogramma chiave. Una volta popolato, in futuro verranno recuperate solo le modifiche.
Quando è utilizzato in un sistema ad alta intensità di dati, Change Views ha un impatto enorme sulle prestazioni e sulla reattività.
Ulteriori informazioni su change Views
3: I Tablespaces
La cosa grandiosa di un motore di database maturo è che hai opzioni disponibili per scenari a cui potresti non aver mai pensato. Un motore database utilizzato da decenni in un ambiente di produzione ha accumulato una vasta esperienza che può giovare e gioverà all’utente finale e allo sviluppatore. Vi è una profondità e una sostanza in ciò che alcuni dei sistemi di database “più rumorosi” non riescono a fornire.
I Tablespace sono un aspetto della gestione dei dati che esiste al di fuori della struttura della tabella di cui uno sviluppatore si occuperebbe normalmente. Rientra maggiormente nella categoria della gestione e dell’amministrazione avanzata. Il concetto generale è abbastanza facile da capire e prendere in considerazione, soprattutto se stai realizzando un software che potrebbe potenzialmente crescere ben oltre i tuoi piani iniziali (come sempre accade!).
Tramite i tablespace, un amministratore di database riorganizza le tabelle e gli indici archiviati fisicamente nei file del database. Questo diventa davvero interessante quando si gestisce un database di 20 terabyte, accessibile tutti i giorni 24 ore su 24, da 4000 utenti attivi. Essere in grado di delegare i dati di autenticazione (i campi come nome utente, hash password, ecc.) a un disco SSD, è di grandissima importanza per le prestazioni.
Un miglioramento anche di pochi millisecondi per ogni operazione, quando moltiplicato per il numero di query eseguite all’ora, equivale a una piccola eternità in termini informatici.
Funzionalità come questa assumono un senso eccellente per le imprese online che operano con una vetrina basata sul web. Delle ricerche ci dicono che il tempo medio di rallentamenti tollerabile da parte di un potenziale cliente prima di andare altrove, viene misurato in secondi. Essere in grado di modificare le prestazioni dei dati a livello di file system è qualcosa di impressionante e gradita.
Ulteriori informazioni sui Tablespaces
4: Funzioni native delle UDF
UDF è l’abbreviazione di “user defined functions (funzioni definite dall’utente)” ed è un modo semplice ed elegante per gli sviluppatori di espandere la capacità delle loro query. In molti modi, si può vedere le UDF come un tipo di plug-in nativo.
Non è una novità, le UDF fanno parte dell’API InterBase da molto tempo. Sono una di quelle funzioni che aiutano a rendere InterBase incredibilmente versatile e popolare. Scrivere un articolo su InterBase senza menzionare le UDF sarebbe impensabile.
Un UDF è una normale libreria nativa (ad esempio DLL) in cui gli sviluppatori implementano qualsiasi funzione di cui hanno bisogno. Una volta caricate in InterBase, è possibile utilizzare queste funzioni fianco a fianco con le funzioni SQL conforme allo standard.
Questo apre alcune interessanti opportunità di elaborazione dei dati. I dati BLOB possono essere scaricati su una funzione nativa per l’elaborazione, prima che vengano inviati alla loro destinazione. Non ci vuole una grande immaginazione per vedere come l’UDF accoppiato con la tecnologia Web offre agli sviluppatori i mattoni per assemblare un sistema al pari di Oracle PL / SQL, ma senza i limiti e i costi.
Implicazione delle UDF nella vita reale
Ho trascorso diversi anni come sviluppatore per il governo norvegese. Quando alla fine mi sono avventurato nel settore privato, mi è stato offerto un posto in quello che è il più grande fornitore di software medici della Scandinavia.
Le regole e i regolamenti relativi all’accesso e alla visualizzazione di documenti medici di natura personale e sensibile, sono comprensibilmente estremamente rigidi. Ciò che potrebbe non essere così noto, è che InterBase è stato (e rimane fino a oggi) la spina dorsale del sistema medico più diffuso nella regione.
Parte di tale scelta si basava esclusivamente sul fatto che InterBase consente agli sviluppatori di espandersi e interfacciarsi direttamente con il motore database ad un “basso” livello. Oltre alla sicurezza di livello industriale che InterBase fornisce da subito — Le UDF sono state create per crittografare i documenti medici scansionati — rendendo i dati inutili al di fuori dell’ecosistema.
Devo ancora trovare un motore di database che renda questo livello di personalizzazione così semplice.
5: Sicurezza
Embarcadero ha introdotto la crittografia di livello aziendale (AES) con il lancio di InterBase 2009. La maggior parte dei motori di database opera con crittografia binaria di lettura / scrittura a livello del file, il che significa che le pagine di dati che compongono il/i file del database sono crittografate e decrittografate man mano che vengono scritte e lette.
Ma InterBase supporta anche un secondo livello di sicurezza. E puoi scegliere se applicare uno o entrambi nella tua strategia di distribuzione.
- Crittografia a livello di database
- Crittografia a livello di colonna
Crittografia a livello di database
Come ho accennato brevemente, questo è il tipo più comune di crittografia che applica una cifratura alle pagine di dati che compongono il file di archiviazione.
Crittografia a livello di colonna
Come suggerisce il nome, questa è una strategia per proteggere le colonne del database stesso. È importante sottolineare che questa strategia di crittografia è separata dalla Crittografia a livello di database, aggiungendo un ulteriore livello di sicurezza.
Supporto per la Cifratura
InterBase supporta due cifrature. C’è il vecchio algoritmo DES di livello industriale. Questo è un tipo più debole di crittografia adatto ai dati non confidenziali. Ha il vantaggio di non richiedere una licenza separata.
AES è il secondo tipo di crittografia. È stato adottato come standard federale statunitense nel 2002. AES consente un numero maggiore di bit con cui codificare i dati rispetto a DES. Gli Stati Uniti regolano l’esportazione di AES a causa della sua forza.
Ulteriori informazioni sullo standard di crittografia AES e sui regolamenti.
Trova informazioni più approfondite su InterBase e sui suoi modelli di crittografia.
Riflessioni
Potrei facilmente riempire un libro con i buoni motivi per cui InterBase Spacca. Limitarmi solamente a cinque era difficile. InterBase rappresenta una ricca eredità di eccellenza che si espande su decenni e una continua innovazione che non smette mai di avanzare. Mi ritrovo a volerne aggiungere sempre di più, solo per diffondere il messaggio.
L’unico modo per familiarizzarsi con InterBase è dedicarci un po’di tempo. Se hai letto fino a qui, chiaramente trovi InterBase interessante. Lo devi a te stesso di scaricare una versione di prova e dare un’occhiata più da vicino! Se stai tornando a Delphi o C ++ Builder, scopri le fantastiche nuove funzionalità offerte da RAD Studio.
Consulta le informazioni più dettagliate su InterBase sul sito Web del prodotto.
Grazie per il tuo tempo!
Design. Code. Compile. Deploy.
Start Free Trial Upgrade Today
Free Delphi Community Edition Free C++Builder Community Edition