Doli i projektit IvorySQL 5.0 është publikuar, i cili zhvillon një version të DBMS PostgreSQL që siguron kompatibilitet me aplikacionet të destinuara për të punuar me DBMS Oracle. IvorySQL ofron mundësinë e përdorimit si një zëvendësim transparent të versionit më të fundit të PostgreSQL, dallimi i të cilit përqendrohet në konfigurimin "compatible_db", duke përfshirë modin e kompatibilitetit me Oracle. Kodi është shkruar në gjuhën C dhe shpërndahet nën licencën Apache 2.0.
IvorySQL implementon gjuhën procedurale PL/iSQL, që përsërit sintaksën PL/SQL në Oracle, mbështet paketat në stilin Oracle dhe operacionet me paketa, si "CREATE PACKAGE". Oferon një grup funksionesh dhe tipash të pajtueshme me Oracle, si dhe mbështetet sintaksa specifike për Oracle e operacioneve, shprehjeve dhe operatorëve, si ALTER TABLE, DELETE, UPDATE, CONNECT BY (kërkesa hierarike), GROUP BY, UNION dhe MINUS.
Në këtë version të ri:
- Përmirësimi në bazën e kodit të PostgreSQL 18 është realizuar.
- Përmirësuar është kompatibiliteti me DBMS Oracle: është implementuar mbështetje për nënprograme të ndërlidhura, ROWID, parametra NLS dhe OUT, konvertimin e vargjeve të zbrazëta në NULL, ndërrimin e parserëve në lidhje me seancat, kodet GB18030, funksionet SYS_GUID, SYS_CONTEXT dhe USERENV.
- Janë shtuar operatorët e kompatibël me Oracle INSTR, FORCE VIEW dhe LIKE.
- Janë zgjeruar mundësitë e PL/iSQL: është shtuar mbështetje për sintaksën CALL, %ROWTYPE dhe %TYPE.
- Mbështetje e plotë për Docker Compose, Docker Swarm dhe Kubernetes është realizuar me menaxherin e paketave Helm. Në IvorySQL Operator 5.0 dhe IvorySQL Cloud 5.0 janë shtuar mjete për menaxhimin vizual të ciklit të jetës.
- Janë ofruar mbështetje për dhjetë zgjatje të PostgreSQL: pg_cron, pgAudit, PostGIS, pgRouting, PGroonga, ddlx, pgsql-http, system_stats, plpgsql_check dhe pgvector.
- Janë formuar paketat instalimi për arkitekturën X86_64, ARM64, MIPS dhe LoongArch.
- Një mjedis online për punë me IvorySQL nga shfletuesi është përgatitur, duke mundësuar përdorimin pa instaluar IvorySQL në sistemin tuaj.
Për më tepër, mund të theksohet lëshimi i zgjatjes SynchDB 1.3, e cila është e destinuar për replikimin e të dhënave nga një ose disa DBMS të jashtme, si MySQL, MS SQLServer dhe Oracle. Këto DBMS të jashtme shërbejnë si burime të dhënash, të cilat transferohen direkt në një DB të caktuar të bazuar në PostgreSQL, pa përdorur shtresa të tjera për orkestrimin e procesit të sinkronizimit të të dhënave (të gjitha operacionet e sinkronizimit përpunohen nga zgjatja SynchDB). Kodi i projektit është shkruar në gjuhët C dhe Java, dhe shpërndahet nën licencën Apache 2.0.
Sistemi përfshin komponentët:
- Debezium Runner Engine â njĂ« motor nĂ« Java, qĂ« ofron module pĂ«r trajtimin e rrjedhave tĂ« ndryshimeve tĂ« tĂ« dhĂ«nave nga DBMS tĂ« ndryshme (MySQL, MS SQLServer dhe Oracle) dhe pĂ«rkthen tĂ« dhĂ«nat e marra nĂ« njĂ« format univers pĂ«r JSON.
- SynchDB Worker â ngre instancat e Debezium Runner Engine pĂ«r replikimin e tĂ« dhĂ«nave nga DBMS tĂ« veçanta, merr ndryshimet prej tyre nĂ« formatin JSON dhe i kalon nĂ« modul tĂ« Format Converter.
- SynchDB Launcher â krijon dhe pĂ«rfundon punĂ«n e trajtuesve tĂ« SynchDB, duke pĂ«rdorur API-nĂ« e PostgreSQL pĂ«r tĂ« nisur procese pasive.
- Format Converter â analizoni rrjedhĂ«n e ndryshimeve nĂ« formatin JSON, pĂ«rtransformon tipet e tĂ« dhĂ«nave tĂ« jashtme dhe kĂ«rkesat DDL nĂ« tipe dhe kĂ«rkesa qĂ« janĂ« tĂ« pĂ«rputhshme me PostgreSQL.
- Replication Agent â trajton daljen nĂ« formatin HeapTupleData nga Format Converter dhe aktivizon metodat pĂ«r vendosjen e tĂ« dhĂ«nave nĂ« PostgreSQL.

Në SynchDB 1.3 është realizuar një motor i ri për formimin e snapshtesh, i ngritur mbi FDW (Foreign Data Wrapper) dhe i mbështetur për punë me OpenLog Replicator. Krahasuar me motorin e vjetër që bazohej në Debezium, motorin e ri lejon një rritje të dukshme të performancës dhe uljen e vonesave gjatë replikimit të të dhënave nga BD të mëdha Oracle. Për më tepër, në versionin e ri ofrohen pamje shtesë me statistikë (synchdb_genstats, synchdb_snapstats dhe synchdb_cdcstat), në OpenLog Replicator është shtuar mbështetje për shprehjet MODIFY dhe DEFAULT ON NULL, është shtuar mbështetje për DBMS PostgreSQL 18 dhe IvorySQL 5.
Burimi: opennet.ru
