IvorySQL 4.0-projektet har slÀppts och utvecklar PostgreSQL DBMS-utgÄvan som ger kompatibilitet med applikationer designade för att fungera med Oracle DBMS. IvorySQL pÄstÄr sig kunna fungera som en transparent ersÀttning för den senaste versionen av PostgreSQL, skillnaden ligger i utseendet pÄ instÀllningen "compatible_db", som inkluderar kompatibilitetslÀget med Oracle. Koden Àr skriven i C och distribueras under Apache 2.0-licensen.
IvorySQL implementerar procedurellt sprÄk PL/iSQL, vilket speglar Oracles PL/SQL-syntax, och stöder paket och paketoperationer i Oracle-stil som CREATE PACKAGE. Det tillhandahÄller en Oracle-kompatibel uppsÀttning funktioner och typer, och stöder Oracle-specifik syntax för operationer, uttryck och operatorer som ALTER TABLE, DELETE, UPDATE, CONNECT BY (hierarkiska frÄgor), GROUP BY, UNION och MINUS.
I den nya versionen:
- ĂvergĂ„ngen till PostgreSQL 17-kodbasen har slutförts.
- Lade till stöd för osynliga kolumner, vilket gör att du kan dölja vissa kolumner för att förenkla migrering till nya applikationer (osynliga kolumner visas bara nÀr deras namn uttryckligen anges och visas inte i vanliga frÄgor som "SELECT * FROM").
- Lade till funktioner för att hantera PL/SQL-paket, vilket gör att du kan skapa paket, Àndra deras parametrar och lÀgga till en beskrivning. Ett nytt kommando "\dk" har lagts till i psql för att hantera paket.
- FörbÀttrad prestanda vid arbete med PL/SQL-paket och utökat stöd för paketcachning.
- Nya ACL-funktioner introduceras för att hantera behörigheter i relation till PL/SQL-paket.
- Lade till stöd för pg_get_functiondef-tillÀgget med implementeringen av funktionerna pg_get_functiondef(), pg_get_functiondef(OID, VARIADIC OID[]) och pg_get_functiondef(VARIADIC TEXT[]), vilka lÄter dig hÀmta funktionsdefinitioner baserat pÄ den angivna listan med funktionsnamn.
- Lade till installationspaket för Ubuntu.
Dessutom kan vi notera lanseringen av SynchDB 1.0-tillÀgget, utformat för att replikera data frÄn en eller flera tredjepartsdatabashanteringssystem (DBMS), sÄsom MySQL, MS SQLServer och Oracle, till PostgreSQL. SÄdana externa DBMS fungerar som datakÀllor som överförs direkt till en enda mÄldatabas baserad pÄ PostgreSQL, utan att anvÀnda ytterligare lager för att orkestrera datasynkroniseringsprocessen (alla synkroniseringsoperationer bearbetas av SynchDB-tillÀgget). Projektkoden Àr skriven i C och Java och distribueras under Apache 2.0-licensen. SynchDB 1.0 Àr markerad som den första stabila versionen av projektet.
Systemet innehÄller sex komponenter:
- Debezium Runner Engine Àr en Java-motor som tillhandahÄller moduler för att bearbeta dataÀndringsströmmar frÄn olika databaser (MySQL, MS SQLServer och Oracle) och sÀnda mottagna data i det universella JSON-formatet.
- SynchDB Worker â startar instanser av Debezium Runner Engine för att replikera data frĂ„n specifika DBMS, tar emot Ă€ndringar frĂ„n dem i JSON-format och skickar dem till Format Converter-modulen.
- SynchDB Launcher â Skapar och avslutar SynchDB-hanterare med PostgreSQL API för att starta bakgrundsprocesser.
- Formatkonverterare - analyserar en Àndringsström i JSON-format, konverterar datatyper och DDL-frÄgor frÄn tredje part till PostgreSQL-kompatibla typer och frÄgor.
- Replikeringsagent - bearbetar HeapTupleData-formatutdata frÄn formatkonverteraren och kör metoder för att ersÀtta data i PostgreSQL.
- Tabellsynkroniseringsagent (under utveckling) â tillhandahĂ„ller en effektiv metod för initial tabellsynkronisering.

KĂ€lla: opennet.ru
