Byl zveřejněn release projektu IvorySQL 4.0, který rozvíjí edici databázového systému PostgreSQL zajišťující kompatibilitu s aplikacemi určenými pro databázový systém Oracle. IvorySQL prohlašuje možnost fungování jako transparentní náhrada za poslední verzi PostgreSQL, jejíž rozdíl spočívá v přidání konfigurace "compatible_db", zahrnující režim kompatibility s Oracle. Kód je napsán v jazyce C a šíří se pod licencí Apache 2.0.
IvorySQL implementuje procedurální jazyk PL/iSQL, který napodobuje syntaxi PL/SQL v Oracle, podporuje balíčky ve stylu Oracle a operace s balíčky, jako je "CREATE PACKAGE". Poskytuje sadu funkcí a typů kompatibilních s Oracle, stejně jako je podporována specifická syntaxe operací, výrazů a operátorů, jako jsou ALTER TABLE, DELETE, UPDATE, CONNECT BY (hierarchické dotazy), GROUP BY, UNION a MINUS.
V nové verzi:
- Byl proveden přechod na kódovou základnu PostgreSQL 17.
- Byla přidána podpora neviditelných sloupců, které umožňují skrývat určité sloupce pro usnadnění migrace na nové aplikace (neviditelné sloupce se zobrazují pouze při výslovném uvedení jejich názvu a neobjevují se v obecných dotazech typu "SELECT * FROM").
- Byly přidány možnosti pro správu PL/SQL balíčků, které umožňují vytvářet balíčky, měnit jejich parametry a připojovat popisy. V psql byla pro operace s balíčky přidána nová příkaz "\dk".
- Zvýšila se výkonnost práce s PL/SQL balíčky a byla přidána podpora ukládání do mezipaměti balíčků.
- Byly navrženy nové funkce ACL pro správu oprávnění v souvislosti s PL/SQL balíčky.
- Byla přidána podpora rozšíření pg_get_functiondef s implementací funkcí pg_get_functiondef(), pg_get_functiondef(OID, VARIADIC OID[]) a pg_get_functiondef(VARIADIC TEXT[]), které umožňují získat definice funkcí na základě zadaného seznamu názvů funkcí.
- Byly přidány instalační balíčky pro Ubuntu.
Dále lze zmínit vydání rozšíření SynchDB 1.0, určeného pro replikaci dat v PostgreSQL z jedné nebo více externích databází, jako jsou MySQL, MS SQLServer a Oracle. Takové externí databáze slouží jako zdroje dat, které jsou přímo přenášeny do jedné cílové databáze na základě PostgreSQL, bez použití dalších vrstev pro orchestraci procesu synchronizace dat (všechny operace synchronizace jsou zpracovávány rozšířením SynchDB). Kód projektu je napsán v jazycích C a Java a šíří se pod licencí Apache 2.0. SynchDB 1.0 je považováno za první stabilní verzi projektu.
Systém obsahuje šest komponentů:
- Debezium Runner Engine — engine written in Java that provides modules for processing streams of data changes from various DBMS (MySQL, MS SQLServer, and Oracle) and broadcasting the received data in a universal JSON format.
- SynchDB Worker — launches instances of Debezium Runner Engine to replicate data from specific DBMS, receiving changes from them in JSON format and passing them to the Format Converter module.
- SynchDB Launcher — creates and terminates SynchDB handlers using the PostgreSQL API to start background processes.
- Format Converter — parses the stream of changes in JSON format, converting external data types and DDL requests into types and queries compatible with PostgreSQL.
- Replication Agent — processes the output in HeapTupleData format from Format Converter and invokes methods to insert data into PostgreSQL.
- Table Synch Agent (ve vývoji) — poskytuje efektivní metodu počáteční synchronizace tabulek.

Zdroj: opennet.ru
