Amazon je izdal izvorno kodo Babelfish za PostgreSQL

Pred kratkim je odjeknila novica, da se je Amazon odločil izdati izvorno kodo za "Babelfish za PostgreSQL", predlaganje razširitve baze podatkov PostgreSQL z implementacijo specifičnih zmogljivosti baze podatkov Microsoft SQL Server.

Ključni cilj projekta je zagotoviti zmožnost izvajanja aplikacij, napisanih za SQL Server, na strežnikih, ki izvajajo PostgreSQL. Koda projekta je odprta pod licencami Apache 2.0 in licenco PostgreSQL.

Za tiste, ki ne poznajo Babelfisha, morate vedeti, da je to podpira omrežni protokol, ki se uporablja za povezovanje odjemalcev z razširitvami jezika poizvedb, specifičnih za SQL Server, T-SQL in SQL Server, ki vam omogoča prevajanje delujočih aplikacij iz strežnika Microsoft SQL Server v PostgreSQL brez spreminjanja vaše kode ali z minimalnimi spremembami in brez zamenjave gonilnikov v DBMS. Za aplikacije je Babelfish videti kot običajen strežnik SQL. Projekt je že v uporabi na Amazon Aurora.

Danes je Babelfish na voljo za Aurora PostgreSQL. Babelfish omogoča Amazon Aurora PostgreSQL-Compatible Edition, da razume protokol povezave SQL Server. Omogoča vam, da svoje aplikacije s strežnika SQL Server na PostgreSQL preselite ceneje, hitreje in z manj tveganja, povezanega s takšno spremembo.

Navedeno je, da projekt Babelfish sledi modelu odprtega razvoja ki sodelavcem skupnosti omogoča, da spremenijo in vplivajo na razvoj. Za uporabnike sprememba v Babelfish vam bo omogočil, da se izognete znatnim licenčninam za uporabo SQL Server, obide licenčne omejitve in ni odvisen od sprememb politike vzdrževanja lastniškega izdelka (preklic ugodnosti, prekinitev podpore platforme, zvišanje cen).

Projekt vključuje nabor razširitev PostgreSQL, nabor popravkov za PostgreSQL in komplet orodij za kompas:

Razširitve zagotavljajo podporo za PostgreSQL za dodatno sintakso, tipe podatkov in funkcije, potrebne za selitev iz strežnika SQL Server. Predlagane so 4 razširitve:

  • babelfishpg_tsql: ki je razširitev za izvajanje implementacije jezika T-SQL (Transact-SQL), ki dopolnjuje SQL s proceduralnim programiranjem, podporo za lokalne spremenljivke in napredne funkcije za obdelavo nizov, datumov in matematičnih izrazov. Večina zahtevanih funkcij T-SQL je bila implementirana, vključno s točkami shranjevanja, shranjenimi procedurami in ugnezdenimi transakcijami. Vendar pa pomemben del sintakse in funkcij ostaja nerealiziran (praviloma so to značilnosti, ki se v resničnih aplikacijah redko uporabljajo, tabela združljivosti). Na primer, konstrukcije "DODAJ PODPIS", "USTVARI AGREGAT", "USTVARI/SPREMENI/IZPUŠČI VLOGO APLIKACIJE | SESTAVLJANJE | ASIMETRIČNI KLJUČ", "ZAČETEK ČAS POGOVORA", "KONČAJ/PREMIKNI POGOVOR" in tako naprej. še niso na voljo.
  • babelfishpg_tds: razširitev za implementacijo protokola TDS (Tabular Data Stream), ki se uporablja v SQL Serverju za omrežno povezavo med DBMS in odjemalcem. Podprt je protokol TDS različice 7.1 in novejše.
  • babelfishpg_common: razširitev za implementacijo specifičnih podatkovnih tipov SQL Server.
    babelfishpg_money: je izvedba vrste denarja, ki temelji na razširitveni kodi FixedDecimal.

Popravki vključujejo spremembe motorja PostgreSQL, potrebne za zagotavljanje dodatne funkcionalnosti razširitvam Babelfish. Trenutno skupaj z razvijalci PostgreSQL poteka delo na vključitvi pripravljenih popravkov v glavno sestavo PostgreSQL. Popravki, pripravljeni za PostgreSQL 13.

Pripomoček za kompas je zasnovan za razčlenitev skriptov T-SQL DDL in kode SQL za združljivost z Babelfish. V izhodu se ustvari poročilo, katere funkcije, potrebne za zagon aplikacije, Babelfish še ne podpira.

Uradno so podprte naslednje odjemalske knjižnice za povezavo z MS SQL Server:

  • Ponudnik OLEDB / MSOLEDBSQL
  • Gonilnik OLEDB / SQLOLEDB
  • Entitetni okvir Ado.NET
  • Izvorni odjemalec SQL Server 11.0
  • ODBC (odprta povezljivost z bazo podatkov)
    JDBC (povezljivost z bazo podatkov Java)

Končno če vas zanima več o tem, lahko preverite podrobnosti beležke V naslednji povezavi. Kar se tiče tistih, ki jih zanima, da bi lahko videli izvorno kodo, lahko to storijo iz te povezave.


Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Za podatke odgovoren: Miguel Ángel Gatón
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.