Kiadásra került az IvorySQL 4.0 verziója, amely a PostgreSQL adatbázis-kezelő szoftver kompatibilitását biztosítja az Oracle adatbázisokra tervezett alkalmazásokkal. Az IvorySQL lehetőséget kínál arra, hogy átlátszó alternatívaként működjön a legutolsó PostgreSQL verzióval, amely a „compatible_db” beállítással bővül, lehetővé téve az Oracle-al való kompatibilitást. A kód C nyelven készült és Apache 2.0 licenc alatt érhető el.
Az IvorySQL megvalósítja a PL/iSQL eljárásnyelvet, amely követi az Oracle PL/SQL szintaxisát, támogatja az Oracle stílusú csomagokat és azokkal végzett műveleteket, mint például a „CREATE PACKAGE”. Kompatibilis Oracle függvények és típusok állnak rendelkezésre, valamint támogatja az Oracle-specifikus műveletek, kifejezések és operátorok szintaxisát, például ALTER TABLE, DELETE, UPDATE, CONNECT BY (hierarchikus lekérdezések), GROUP BY, UNION és MINUS.
Az új verzióban:
- A kód alapja frissítésre került a PostgreSQL 17 verzióra.
- Hozzáadódott a rejtett oszlopok támogatása, amelyek segítségével bizonyos oszlopok elrejthetők az új alkalmazásokra történő migráció megkönnyítése érdekében (a rejtett oszlopok csak nevük kifejezett megadásakor láthatók, és nem jelennek meg a „SELECT * FROM” típusú általános lekérdezésekben).
- Új lehetőségeket vezettek be a PL/SQL csomagok kezelésére, lehetővé téve a csomagok létrehozását, paramétereik megváltoztatását és leírások csatolását. A psql környezetbe egy új parancs került bevezetésre a csomagok kezelésére: „\dk”.
- A PL/SQL csomagokkal való munka teljesítménye javult, és a csomagok gyorsítótárazásának támogatása is bevezetésre került.
- Új ACL funkciókat kínálnak a PL/SQL csomagokhoz kapcsolódó jogosultságok kezelésére.
- Hozzáadódott a pg_get_functiondef kiterjesztés támogatása, amely megvalósítja a pg_get_functiondef(), pg_get_functiondef(OID, VARIADIC OID[]) és pg_get_functiondef(VARIADIC TEXT[]) függvényeket, lehetővé téve adott függvénynév-lista alapján a függvények definícióinak lekérését.
- Telepítőcsomagok kerültek hozzáadásra Ubuntu számára.
Kiemelhető a SynchDB 1.0 kiegészítő kiadása is, amely a PostgreSQL adatainak replikálására szolgál egy vagy több külső DBMS-ből, mint például MySQL, MS SQLServer és Oracle. Ezek a külső DBMS-ek adatforrásként működnek, amelyek közvetlenül átkerülnek egy cél PostgreSQL adatbázisba, anélkül, hogy további rétegekre lenne szükség az adatok szinkronizálásának folyamatához (az összes szinkronizálási műveletet a SynchDB kiegészítő kezeli). A projekt kódja C és Java nyelveken íródott és Apache 2.0 licenc alatt terjesztik. A SynchDB 1.0 a projekt első stabil kiadásaként került bejegyzésre.
A rendszer hat összetevőt tartalmaz:
- Debezium Runner Engine — Java alapú motor, amely modulokat biztosít a különböző DBMS-ekből (MySQL, MS SQLServer és Oracle) érkező adatok változásainak feldolgozásához és a kapott adatok JSON formátumban történő átkonvertálásához.
- SynchDB Worker — elindítja a Debezium Runner Engine példányait, hogy adatokat replikáljon konkrét DBMS-ekből, JSON formátumban kapja meg a változásokat, és továbbítja őket a Formátum Átalakító modulnak.
- SynchDB Launcher — létrehozza és lezárja a SynchDB kezelőit, PostgreSQL API-t használva háttérfolyamatok indításához.
- Formátum Átalakító — elemzi a JSON formátumú változások folyását, átalakítja a külső adattípusokat és DDL-kéréseket PostgreSQL-el kompatibilis típusokká és kérésekké.
- Replikációs Ügynök — feldolgozza a Format Converter-ből származó HeapTupleData formátumú kimenetet, és indítja az adatbeillesztési módszereket PostgreSQL adatbázisba.
- Table Synch Agent (fejlesztés alatt) — hatékony módszert nyújt a táblák kezdeti szinkronizálására.

Forrás: opennet.ru
