PostgreSQL è un database che nasce modulare, separando nettamente il motore – che esegue le operazioni sui dati – dalle interfacce – che raccolgono le query per interpretarle e darle in esecuzione al motore. Una di queste (la più usata) è quella per SQL, ovviamente col proprio dialetto.
SQL è un linguaggio ad alto livello, di fatto lo standard per lavorare con i database relazionali, che viene declinato in vari dialetti, almeno tanti quanti i database che lo implementano.
Questi dialetti sono tutti simili, ma abbastanza peculiari per essere incompatibili tra loro. Tanto che un’applicazione che preveda l’uso di un certo database (Oracle, MySQL) non può funzionare con un database diverso, sebbene il linguaggio usato per comunicare col DB sia SQL.
La settimana scorsa, è comprso sul blog di AWS (il servizio cloud i Amazon) un post dal titolo programmatico:
Goodbye Microsoft SQL Server, Hello Babelfish
Addio Microsoft SQL, benvenuto Babelfish
A cosa si fa riferimento? Babelfish è un’estensione del database open-source PostgreSQL che si pone come obbiettivo il poter esporre un’interfaccia compatibile con Microsoft SQL. E questo per permettere la migrazione del DB senza modificare le applicazioni.
L’estensione è già disponibile nel servizio erogato da Amazon stesso, tramite AWS Aurora, ma è open-source: chiunque sia interessato può scaricarlo e applicarlo.
Al momento la compatibilità non è ancora completa, ma la promessa è quella di continuare a lavorarci per raggiungerla in breve tempo. Inoltre, sono necessrie alcune modifiche anche al motore, per poter gestire dei tipi di dati e relazioni nuovi – non presenti nell’attuale codice upstream. Pertanto, oltre all’estensione, va scaricato (e compilato) anche il codice di PostgreSQL appositamente modificato.
Una delle potenzialità di questo particolare progetto è insita nell’architettura di PostgreSQL: essendo Babelfish solo un’interfaccia, gli stessi dati (lo stesso motore) possono essere manipolati contemporaneamente anche con l’interfaccia nativa.
Il post citato è piuttosto dettagliato, comprese le istruzioni per attivare questa funzionlità su AWS – senza costi aggiuntivi. Ve ne consigliamo la lettura casomai foste interessati.
PS : if you wonder where the name Babelfish comes from, just remember the answer is 42. (Or you can read this slightly longer answer.)
P.S. Se vi state domandando da dove nasca il nome Babelfish, ricordatevi solo che la risposta è 42. (O potete leggere questa risposta appena più lunga [N.d.A. il link italiano è diverso volutamente].)
Ho coltivato la mia passione per l’informatica fin da bambino, coi primi programmi BASIC. In età adulta mi sono avvicinato a Linux ed alla programmazione C, per poi interessarmi di reti. Infine, il mio hobby è diventato anche il mio lavoro.
Per me il modo migliore di imparare è fare, e per questo devo utilizzare le tecnologie che ritengo interessanti; a questo scopo, il mondo opensource offre gli strumenti perfetti.
Lascia un commento