IvorySQL 4.0 vĂ€ljaanne on avaldatud, arendades PostgreSQL andmebaasisĂŒsteemi, mis tagab ĂŒhilduvuse Oracle andmebaasisĂŒsteemide jaoks mĂ”eldud rakendustega. IvorySQL-i puhul on vĂ”imalus töötada viimase PostgreSQL-i versiooni lĂ€bipaistva asendusena, mille eripĂ€ra on seadistus 'compatible_db', mis hĂ”lmab Oracle'i ĂŒhilduvuse reĆŸiimi. Kood on kirjutatud C keeles ja levitatakse Apache 2.0 litsentsi alusel.
IvorySQL rakendab PL/iSQL protseduurikeelt, mis kordab Oracle'i PL/SQL sĂŒntaksit, toetab Oracle'i stiilis pakette ja pakettide toiminguid, nagu 'CREATE PACKAGE'. Pakutakse Oracle'iga ĂŒhilduvat funktsioonide ja tĂŒĂŒpide komplekti, samuti toetatakse Oracle'ile spetsiifilisi sĂŒntaksite toimingute, vĂ€ljendite ja operaatorite, nagu ALTER TABLE, DELETE, UPDATE, CONNECT BY (hierarhilised pĂ€ringud), GROUP BY, UNION ja MINUS kasutamist.
Uues versioonis:
- Tehtud ĂŒleminek PostgreSQL 17 koodibaasile.
- Lisatud toetused nĂ€htamatute veergude jaoks, mis vĂ”imaldavad teatud veergude varjamist uutele rakendustele ĂŒlemineku hĂ”lbustamiseks (nĂ€htamatud veerud kuvatakse ainult siis, kui nende nimed on selgelt mÀÀratud ja nad ei ilmu ĂŒldistes pĂ€ringutes nagu 'SELECT * FROM').
- Lisatud funktsioonid PL/SQL paketihaldamiseks, mis vÔimaldavad pakette luua, nende parameetreid muuta ja kirjeldust lisada. PSQL-is on paketiga töötamise jaoks lisatud uus kÀsk '\dk'.
- PL/SQL pakettide töötlemise jÔudlust on parandatud ja lisatud pakkumise vahemÀlu tugi.
- Pakuti vÀlja uued ACL funktsioonid PL/SQL pakettide seonduvate privileegide haldamiseks.
- Lisatud tugi pg_get_functiondef laiendusele rakendustega pg_get_functiondef(), pg_get_functiondef(OID, VARIADIC OID[]) ja pg_get_functiondef(VARIADIC TEXT[]), mis vÔimaldavad funktsioonide definitsioone pÔhineda mÀÀratud funktsioonide nimede loetelule.
- Lisatud installimispaketid Ubuntu jaoks.
Lisaks vĂ”ib mĂ€rkida, et ilmus SynchDB 1.0 laiendus, mis on ette nĂ€htud PostgreSQL-is andmete replikatsiooniks ĂŒhest vĂ”i mitmest vĂ€list andmebaasihaldurist, nagu MySQL, MS SQLServer ja Oracle. Sellised vĂ€list andmebaasihaldurid toimivad andmeallikatena, mille andmed kantakse otseselt ĂŒhte PostgreSQL-i pĂ”hinevasse sihtandmebaasi, ilma et oleks vajalikud tĂ€iendavad kihtide kasutamine andmete sĂŒnkroniseerimise protsessi juhtimiseks (kĂ”ik sĂŒnkroonimisoperatsioonid töötleb SynchDB laiendus). Projekti kood on kirjutatud keeltes C ja Java ning see levitatakse Apache 2.0 litsentsi alusel. SynchDB 1.0 on tĂ€histatud projekti esimese stabiilse vĂ€ljalaskena.
SĂŒsteem koosneb kuuest komponendist:
- Debezium Runner Engine â Java-pĂ”hine mootor, mis pakub mooduleid andmebaaside (MySQL, MS SQLServer ja Oracle) muudatusvoogude töötlemiseks ja saadud andmete edastamiseks ĂŒhtses JSON-vormingus.
- SynchDB Worker â kĂ€ivitab Debezium Runner Engine eksemplare, et replitseerida andmeid konkreetsest andmebaasihaldurist, vĂ”tab neilt vastu muudatused JSON-vormingus ja edastab need Formaat Konverteri moodulile.
- SynchDB Launcher â loob ja lĂ”petab SynchDB töötlejate tööd, kasutades PostgreSQL API-d taustprotsesside kĂ€ivitamiseks.
- Formaat Konverter â analĂŒĂŒsib JSON-vormingus muudatusvoogu, muundab vĂ€list andmetĂŒĂŒpi ja DDL-pĂ€ringud PostgreSQL-iga ĂŒhilduvateks andmetĂŒĂŒpideks ja pĂ€ringuteks.
- Replikatsiooni Agent â töötleb Formaat Konverterist saadud HeapTupleData vormingus vĂ€ljundit ja kĂ€ivitab meetodeid andmete PostgreSQL-i sisestamiseks.
- Table Synch Agent (arendamisel) â pakub tĂ”husat meetodit tabelite algsĂŒnkroniseerimiseks.

Allikas: opennet.ru
