Amazon a publié le code source Babelfish pour PostgreSQL

Récemment la nouvelle a été publiée qu'Amazon a décidé de publier le code source de "Babelfish for PostgreSQL", proposant une extension de la base de données PostgreSQL avec la mise en œuvre de capacités spécifiques de la base de données Microsoft SQL Server.

L'objectif principal du projet est de fournir la possibilité d'exécuter des applications écrites pour SQL Server sur des serveurs exécutant PostgreSQL. Le code du projet est ouvert sous les licences Apache 2.0 et PostgreSQL License.

Pour ceux qui ne connaissent pas Babelfish, sachez que cette prend en charge le protocole réseau utilisé pour connecter les clients aux extensions de langage de requête spécifiques à SQL Server, T-SQL et SQL Server, vous permettant de traduire les applications en cours d'exécution de Microsoft SQL Server vers PostgreSQL sans modifier votre code ou avec des changements minimes et sans remplacer les pilotes dans le SGBD. Pour les applications, Babelfish ressemble à un serveur SQL normal. Le projet est déjà utilisé sur Amazon Aurora.

Aujourd'hui, nous rendons Babelfish disponible pour Aurora PostgreSQL. Babelfish permet à Amazon Aurora Édition compatible PostgreSQL de comprendre le protocole de connexion SQL Server. Il vous permet de migrer vos applications de SQL Server vers PostgreSQL moins cher, plus rapidement et avec moins de risques associés à un tel changement.

Il est précisé que le projet Babelfish suit un modèle de développement ouvert qui permet aux contributeurs de la communauté d'apporter des changements et d'influencer le développement. Pour les utilisateurs, le passage à Babelfish vous permettra d'éviter des redevances importantes pour l'utilisation de SQL Server, contourner les restrictions de licence et ne pas dépendre de changements dans la politique de maintenance d'un produit propriétaire (annulation des avantages, fin du support de la plate-forme, augmentation des prix).

Le projet comprend un ensemble d'extensions PostgreSQL, un ensemble de correctifs PostgreSQL et une boîte à outils de boussole :

Les extensions fournissent une prise en charge PostgreSQL pour la syntaxe, les types de données et les fonctions supplémentaires requis pour migrer à partir de SQL Server. Au total, 4 extensions sont proposées :

  • babelfishpg_tsql : qui est une extension pour effectuer une implémentation du langage T-SQL (Transact-SQL) qui augmente SQL avec une programmation procédurale, une prise en charge des variables locales et des fonctions avancées pour gérer les chaînes, les dates et les expressions mathématiques. La plupart des fonctions T-SQL demandées ont été implémentées, y compris les points de sauvegarde, les procédures stockées et les transactions imbriquées. Cependant, une partie importante de la syntaxe et des fonctions reste non réalisée (en règle générale, ce sont des caractéristiques rarement utilisées dans des applications réelles, une table de compatibilité). Par exemple, les constructions "AJOUTER UNE SIGNATURE", "CRÉER UN AGGREGATE", "CRÉER / MODIFIER / SUPPRIMER LE RLE D'APPLICATION | ASSEMBLER | CLÉ ASYMÉTRIQUE", "DÉBUT DE L'HEURE DE LA CONVERSATION", "FIN / DÉPLACER LA CONVERSATION", et ainsi de suite. ne sont pas encore disponibles.
  • babelfishpg_tds : une extension pour l'implémentation du protocole TDS (Tabular Data Stream) utilisé dans SQL Server pour la connexion réseau entre le SGBD et le client. Le protocole TDS version 7.1 et supérieure est pris en charge.
  • babelfishpg_common : une extension pour l'implémentation de types de données spécifiques à SQL Server.
    babelfishpg_money : est une implémentation de type money basée sur le code d'extension FixedDecimal.

Les correctifs incluent les modifications du moteur PostgreSQL nécessaires pour fournir des fonctionnalités supplémentaires aux extensions Babelfish. Actuellement, avec les développeurs de PostgreSQL, des travaux sont en cours pour inclure les correctifs préparés dans la composition principale de PostgreSQL. Patchs préparés pour PostgreSQL 13.

L'utilitaire de boussole est conçu pour analyser les scripts T-SQL DDL et le code SQL pour assurer la compatibilité avec Babelfish. Dans la sortie, un rapport est généré indiquant que la fonctionnalité requise pour démarrer l'application n'est pas encore prise en charge par Babelfish.

Les bibliothèques clientes suivantes pour la connexion à MS SQL Server sont officiellement prises en charge :

  • Fournisseur OLEDB / MSOLEDBSQL
  • Pilote OLEDB / SQLOLEDB
  • Cadre d'entité Ado.NET
  • Client natif SQL Server 11.0
  • ODBC (Open Database Connectivity)
    JDBC (Connectivité de base de données Java)

Enfin si vous souhaitez en savoir plus, vous pouvez vérifier les détails de la note dans le lien suivant. Quant à ceux qui souhaitent voir le code source, ils peuvent le faire de ce lien.


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont marqués avec *

*

*

  1. Responsable des données: Miguel Ángel Gatón
  2. Finalité des données: Contrôle du SPAM, gestion des commentaires.
  3. Légitimation: votre consentement
  4. Communication des données: Les données ne seront pas communiquées à des tiers sauf obligation légale.
  5. Stockage des données: base de données hébergée par Occentus Networks (EU)
  6. Droits: à tout moment, vous pouvez limiter, récupérer et supprimer vos informations.