Amazon je objavio izvorni kod Babelfish za PostgreSQL

Nedavno objavljena je vijest da je Amazon odlučio objaviti izvorni kod za "Babelfish za PostgreSQL", predlaganje proširenja na PostgreSQL bazu podataka sa implementacijom specifičnih mogućnosti baze podataka Microsoft SQL Server.

Ključni cilj projekta je pružiti mogućnost pokretanja aplikacija napisanih za SQL Server na serverima koji rade na PostgreSQL-u. Kod projekta je otvoren pod Apache 2.0 licencama i PostgreSQL licencom.

Za one koji nisu upoznati sa Babelfish-om, trebali biste znati da je ovo podržava mrežni protokol koji se koristi za povezivanje klijenata na SQL Server, T-SQL i proširenja jezika upita specifičnih za SQL Server, omogućavajući vam da prevedete pokrenute aplikacije sa Microsoft SQL Servera u PostgreSQL bez modifikacije vašeg koda ili uz minimalne promene i bez zamene drajvera u DBMS. Za aplikacije, Babelfish izgleda kao normalan SQL server. Projekat je već u upotrebi na Amazon Aurori.

Danas Babelfish činimo dostupnim za Aurora PostgreSQL. Babelfish omogućava Amazon Aurora PostgreSQL-Compatible Edition da razumije protokol povezivanja SQL Servera. Omogućava vam da migrirate svoje aplikacije sa SQL Servera na PostgreSQL jeftinije, brže i sa manje rizika povezanih s takvom promjenom.

Navodi se da je projekat Babelfish slijedi otvoreni model razvoja koji omogućava doprinosnicima zajednice da naprave promjene i utiču na razvoj. Za korisnike, promjena u Babelfish će vam omogućiti da izbjegnete značajne naknade za korištenje SQL Servera, zaobilaze ograničenja licence i ne ovise o promjenama u politici održavanja vlasničkog proizvoda (otkazivanje pogodnosti, ukidanje podrške platformi, povećanje cijena).

Projekat uključuje set PostgreSQL ekstenzija, set zakrpa za PostgreSQL i komplet alata za kompas:

Ekstenzije pružaju PostgreSQL podršku za dodatnu sintaksu, tipove podataka i funkcije potrebne za migraciju sa SQL Servera. Predložena su ukupno 4 proširenja:

  • babelfishpg_tsql: koji je proširenje za implementaciju T-SQL (Transact-SQL) jezika koji dopunjava SQL proceduralnim programiranjem, podrškom za lokalne varijable i napredne funkcije za rukovanje stringovima, datumima i matematičkim izrazima. Većina traženih T-SQL funkcija je implementirana, uključujući točke spremanja, pohranjene procedure i ugniježđene transakcije. Međutim, značajan dio sintakse i funkcija ostaje nerealizovan (u pravilu su to karakteristike koje se rijetko koriste u stvarnim aplikacijama, tablica kompatibilnosti). Na primjer, konstrukcije "DODAJ POTPIS", "KREIRAJ AGREGAT", "KREIRAJ / PROMIJENI / ISPUSTI ULOGU APLIKACIJE | SKLOP | ASIMETRIČNI KLJUČ", "VRIJEME POČETKA RAZGOVORA", "KRAJ / PREMIJESTI RAZGOVOR" i tako dalje. još nisu dostupni.
  • babelfishpg_tds: proširenje za implementaciju TDS (Tabular Data Stream) protokol koji se koristi u SQL Serveru za mrežnu vezu između DBMS-a i klijenta. Podržan je TDS protokol verzija 7.1 i novije.
  • babelfishpg_common: proširenje za implementaciju specifičnih tipova podataka SQL Servera.
    babelfishpg_money: je implementacija tipa novca zasnovana na kodu ekstenzije FixedDecimal.

Zakrpe uključuju promjene na PostgreSQL mašini neophodne za pružanje dodatne funkcionalnosti Babelfish ekstenzijama. Trenutno, zajedno sa PostgreSQL programerima, radi se na uključivanju pripremljenih zakrpa u glavnu PostgreSQL kompoziciju. Zakrpe pripremljene za PostgreSQL 13.

Kompas je dizajniran da analizira T-SQL DDL skripte i SQL kod za kompatibilnost sa Babelfish. U izlazu se generira izvještaj koja funkcionalnost potrebna za pokretanje aplikacije Babelfish još ne podržava.

Sljedeće klijentske biblioteke za povezivanje na MS SQL Server su službeno podržane:

  • OLEDB / MSOLEDBSQL provajder
  • OLEDB / SQLOLEDB drajver
  • Ado.NET okvir entiteta
  • SQL Server 11.0 Izvorni klijent
  • ODBC (Open Database Connectivity)
    JDBC (Java povezivanje baze podataka)

Konačno ako ste zainteresirani da saznate više o tome, možete provjeriti detalje bilješke Na sledećem linku. Što se tiče onih koji su zainteresirani da mogu vidjeti izvorni kod, oni to mogu učiniti sa ovog linka.


Sadržaj članka pridržava se naših principa urednička etika. Da biste prijavili grešku, kliknite ovdje.

Budite prvi koji komentarišete

Ostavite komentar

Vaša e-mail adresa neće biti objavljena.

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obavezi.
  5. Pohrana podataka: Baza podataka koju hostuje Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.