Oracle DBMS менен иштөө үчүн иштелип чыккан тиркемелер менен шайкеш келүүнү камсыз кылган PostgreSQL DBMS басылмасынын иштелип чыккан IvorySQL 5.0 долбоорунун релизи жарык көрдү. IvorySQL PostgreSQLдин эң акыркы версиясын ачык алмаштыруучу катары иштей алат деп ырастайт, анын айырмасы Oracle менен шайкештик режимин камтыган “compatible_db” жөндөөлөрүнүн пайда болушуна байланыштуу. Код C тилинде жазылган жана Apache 2.0 лицензиясы боюнча таратылган.
IvorySQL Oracle's PL/SQL синтаксисин кайталаган PL/iSQL процедуралык тилин ишке ашырат жана Oracle стилиндеги пакеттерди жана "ПАКЕТ ТҮЗҮҮ" сыяктуу пакет операцияларын колдойт. Oracle'га шайкеш келген функциялардын жана типтердин топтомун камсыздайт жана ALTER TABLE, DELETE, UPDATE, CONNECT BY (иерархиялык сурамдар), GROUP BY, UNION жана MINUS сыяктуу операциялар, туюнтмалар жана билдирүүлөр үчүн Oracle үчүн атайын синтаксисти колдойт.
Жаңы версияда:
- PostgreSQL 18 код базасына өтүү аяктады.
- Oracle DBMS менен жакшыртылган шайкештик: уя орнотулган процедураларды, ROWID, NLS жана OUT параметрлерин колдоо, бош саптарды NULLге которуу, сеансты бириктирүүдө талдоочуларды өзгөртүү, GB18030 коддоо, SYS_GUID, SYS_CONTEXT жана USERENV функциялары.
- Oracle менен шайкеш келген INSTR, FORCE VIEW жана LIKE операторлору кошулду.
- PL/iSQL мүмкүнчүлүктөрү кеңейтилди: CALL синтаксисин колдоо, % ROWTYPE жана % TYPE кошулду.
- Helm пакет менеджери менен Docker Compose, Docker Swarm жана Kubernetes үчүн толук колдоо ишке ашырылган. Визуалдык жашоо циклин башкаруу куралдары IvorySQL Operator 5.0 жана IvorySQL Cloud 5.0 кошулду.
- Он PostgreSQL кеңейтүүсүн колдоо каралган: pg_cron, pgAudit, PostGIS, pgRouting, PGroonga, ddlx, pgsql-http, system_stats, plpgsql_check жана pgvector.
- Орнотуу пакеттери X86_64, ARM64, MIPS жана LoongArch архитектуралары үчүн түзүлгөн.
- IvorySQL менен иштөө үчүн браузерден онлайн чөйрөсү даярдалды, бул сизге IvorySQLди тутумуңузга орнотпостон жасоого мүмкүндүк берет.
Белгилей кетчү нерсе, SynchDB 1.3, MySQL, MS SQL Server жана Oracle сыяктуу бир же бир нече үчүнчү тараптын DBMSларынан маалыматтарды PostgreSQLге көчүрүү үчүн иштелип чыккан плагин. Бул тышкы МББдер маалымат булагы катары иштешет, алар түздөн-түз бир максаттуу PostgreSQL маалымат базасына өткөрүлүп берилет, маалыматтарды синхрондоштуруу процессин уюштуруу үчүн кошумча катмарлардын кереги жок (бардык синхрондоштуруу операциялары SynchDB плагини тарабынан ишке ашырылат). Долбоордун коду C жана Java тилдеринде жазылган жана Apache 2.0 лицензиясы боюнча таратылат.
Система төмөнкү компоненттерди камтыйт:
- Debezium Runner Engine – бул Java кыймылдаткычы, ал ар кандай DBMS (MySQL, MS SQLServer жана Oracle) маалымат өзгөртүүлөрүнүн агымдарын иштетүү жана алынган маалыматтарды универсалдуу JSON форматында которуу үчүн модулдарды камсыз кылат.
- SynchDB Worker - Debezium Runner Engine инстанцияларын конкреттүү DBMSлерден маалыматтарды көчүрүү үчүн ишке киргизет, алардан JSON форматында өзгөртүүлөрдү кабыл алат жана аларды Format Converter модулуна өткөрүп берет.
- SynchDB Launcher - Фондук процесстерди ишке киргизүү үчүн PostgreSQL API аркылуу SynchDB иштеткичтерин түзөт жана токтотот.
- Format Converter - JSON форматындагы өзгөртүү агымын талдайт, үчүнчү тараптын маалымат түрлөрүн жана DDL сурамдарын PostgreSQLге туура келген типтерге жана сурамдарга айлантат.
- Репликация агенти - Формат конвертеринен HeapTupleData чыгарууну иштетет жана PostgreSQLде маалыматтарды алмаштыруу ыкмаларын иштетет.

SynchDB 1.3 FDW (Чет элдик маалымат Wrapper) негизинде жаңы снапшот кыймылдаткычын сунуштайт жана OpenLog Replicator колдойт. Мурунку Debezium негизиндеги кыймылдаткычка салыштырмалуу, жаңы кыймылдаткыч Oracle чоң базаларынан маалыматтарды репликациялоодо аткарууну кыйла жакшыртат жана күтүү убактысын азайтат. Кошумча, жаңы версия кошумча статистикалык көрүнүштөрдү сунуштайт (synchdb_genstats, synchdb_snapstats жана synchdb_cdcstat), OpenLog Replicator азыр MODIFY жана DEFAULT ON NULL операторлорун колдойт жана PostgreSQL 18 жана IvorySQL 5ти колдойт.
Source: opennet.ru
