O le faʻasalalauga o le IvorySQL 4.0 poloketi ua faʻasalalau, faʻavaeina se lomiga o le PostgreSQL DBMS e tuʻuina atu le fetaui ma talosaga ua fuafuaina e galulue ai ma le Oracle DBMS. Fai mai IvorySQL e mafai ona galue o se sui manino mo le lomiga lata mai o PostgreSQL, o le eseesega e oʻo mai i lalo i le faʻaalia o le "compatible_db" seti, lea e aofia ai le tulaga faʻafetaui ma Oracle. O le code e tusia i le C ma tufatufaina i lalo ole Apache 2.0 laisene.
IvorySQL o loʻo faʻaaogaina le PL/iSQL gagana faʻataʻitaʻiga, lea e toe faʻaaogaina ai le Oracle's PL/SQL syntax, ma lagolagoina faʻapipiʻi Oracle-style ma gaioiga faʻapipiʻi e pei o le "CREATE PACKAGE". Tuuina atu se seti o galuega ma ituaiga e fetaui ma Oracle, ma lagolagoina Oracle-specific syntax mo gaioiga, faʻamatalaga, ma faʻamatalaga e pei ole ALTER TABLE, DELETE, UPDATE, CONNECT BY (faʻatonuga fesili), GROUP BY, UNION, ma MINUS.
I le lomiga fou:
- O le suiga i le PostgreSQL 17 codebase ua maeʻa.
- Faʻaopoopoina le lagolago mo koluma e le vaaia, faʻatagaina oe e natia nisi koluma e faʻafaigofie ai femalagaiga i talosaga fou (o koluma e le vaaia e naʻo le faʻaalia pe a e faʻamaonia manino o latou igoa ma e le faʻaalia i le lautele SELECT * FROM fesili).
- Faʻaopoopo mea faʻapitoa mo le faʻatonutonuina o pusa PL/SQL, faʻatagaina oe e fatuina afifi, sui o latou faʻamau ma faʻapipiʻi se faʻamatalaga. O se poloaiga fou "\dk" ua faʻaopoopoina i le psql mo faʻagaioiga faʻaputuga.
- Faʻaleleia le faʻatinoga mo le galue i pusa PL/SQL ma faʻaopoopo le lagolago mo le faʻapipiʻiina o pusa.
- O galuega fou a le ACL ua fa'atulagaina mo le fa'afoeina o avanoa e feso'ota'i ma PL/SQL afifi.
- Fa'aopoopo le lagolago mo le fa'aopoopoga pg_get_functiondef fa'atasi ai ma fa'atinoga o le pg_get_functiondef(), pg_get_functiondef(OID, VARIADIC OID[]) ma le pg_get_functiondef(VARIADIC TEXT[]) galuega e mafai ai ona e maua fa'auigaga galuega e fa'avae i luga o se lisi fa'apitoa o igoa o galuega.
- Ua fa'aopoopoina afifi fa'apipi'i mo Ubuntu.
E le gata i lea, e mafai ona matou matauina le faʻasalalauga o le SynchDB 1.0 faʻaopoopoga, ua fuafuaina mo le toe faʻapipiʻiina o faʻamaumauga mai le tasi pe sili atu DBMSs lona tolu, e pei o MySQL, MS SQLServer ma Oracle, i PostgreSQL. O ia DBMS i fafo e fai ma faʻamatalaga faʻamatalaga e tuʻu saʻo atu i se tasi faʻamaumauga faʻamaumauga e faʻavae i luga o le PostgreSQL, e aunoa ma le faʻaogaina o faʻaopoopoga faʻaopoopo e faʻatautaia ai le faʻasologa o faʻamaumauga (o faʻagaioiga uma e faʻaogaina e le SynchDB extension). O le fa'ailoga o le poloketi o lo'o tusia i gagana C ma Java, ma fa'asoa i lalo ole laisene Apache 2.0. SynchDB 1.0 ua faʻailogaina o le faʻasalalauga muamua o le poloketi.
O le faiga e aofia ai vaega e ono:
- Debezium Runner Engine o se masini Java lea e tuʻuina atu ai faʻaoga mo le faʻaogaina o vaitafe o suiga o faʻamaumauga mai DBMS eseese (MySQL, MS SQLServer ma Oracle) ma le faʻaliliuina o faʻamatalaga na maua i le JSON lautele.
- SynchDB Worker - faʻalauiloa Debezium Runner Engine faʻataʻitaʻiga e toe faʻafoʻi faʻamatalaga mai DBMS patino, maua suiga mai ia i latou i le JSON format ma faʻafeiloaʻi i latou i le Format Converter module.
- SynchDB Launcher - Fausia ma fa'amutaina SynchDB fa'aaoga le PostgreSQL API e fa'alauiloa ai faiga fa'avae.
- Fa'aliliuga Fa'atonu - fa'asolo e sui le vaitafe i le JSON fa'asologa, fa'aliliu ituaiga fa'amaumauga a isi vaega ma fesili DDL ile PostgreSQL fa'atusa ma fesili.
- Replication Agent - Fa'agasolo le gaosiga o le HeapTupleData mai le Format Converter ma fa'atautaia auala e sui ai fa'amaumauga i le PostgreSQL.
- Table Synch Agent (i le atinaʻeina) - Tuuina atu se auala lelei mo le faʻatulagaina muamua o le laulau.

puna: opennet.ru
