{"id":121167,"date":"2024-12-29T15:46:00","date_gmt":"2024-12-29T13:46:01","guid":{"rendered":"https:\/\/prohoster.info\/blog\/novosti-interneta\/dostupny-ivorysql-4-0-i-synchdb-1-0-nadstrojki-k-postgresql-dlya-vzaimodejstviya-s-drugimi-subd"},"modified":"2024-12-29T15:46:00","modified_gmt":"2024-12-29T13:46:01","slug":"dostupny-ivorysql-4-0-i-synchdb-1-0-nadstrojki-k-postgresql-dlya-vzaimodejstviya-s-drugimi-subd","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pl\/blog\/news\/dostupny-ivorysql-4-0-i-synchdb-1-0-nadstrojki-k-postgresql-dlya-vzaimodejstviya-s-drugimi-subd","title":{"rendered":"Dost\u0119pne s\u0105 IvorySQL 4.0 i SynchDB 1.0, nak\u0142adki do PostgreSQL do interakcji z innymi systemami DB","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Opublikowano wydanie projektu IvorySQL 4.0, rozwijaj\u0105cego edycj\u0119 systemu DBMS PostgreSQL, zapewniaj\u0105c\u0105 kompatybilno\u015b\u0107 z aplikacjami zaprojektowanymi do pracy z DBMS Oracle. W IvorySQL og\u0142oszono mo\u017cliwo\u015b\u0107 pracy jako przezroczysta zamiana ostatniej wersji PostgreSQL, kt\u00f3rej r\u00f3\u017cnic\u0105 jest pojawienie si\u0119 ustawienia \u00abcompatible_db\u00bb, obejmuj\u0105cego tryb kompatybilno\u015bci z Oracle. Kod napisany jest w j\u0119zyku C i jest dystrybuowany na licencji Apache 2.0.    <\/p>\n<p>IvorySQL realizuje proceduralny j\u0119zyk PL\/iSQL, powtarzaj\u0105cy sk\u0142adni\u0119 PL\/SQL w Oracle, wspiera paczki w stylu Oracle oraz operacje na paczkach, takie jak \u00abCREATE PACKAGE\u00bb. Oferowany jest zestaw funkcji i typ\u00f3w kompatybilny z Oracle, a tak\u017ce wspierana jest specyficzna dla Oracle sk\u0142adnia operacji, wyra\u017ce\u0144 i operator\u00f3w, takich jak ALTER TABLE, DELETE, UPDATE, CONNECT BY (zapytania hierarchiczne), GROUP BY, UNION i MINUS.      <\/p>\n<p>W nowej wersji:  <\/p>\n<ul>\n<li class=\"l\"> Zrealizowano przej\u015bcie na baz\u0119 kodu PostgreSQL 17.\n<li class=\"l\"> Dodano wsparcie dla niewidocznych kolumn, umo\u017cliwiaj\u0105cych ukrycie okre\u015blonych kolumn w celu uproszczenia migracji do nowych aplikacji (niewidoczne kolumny s\u0105 wy\u015bwietlane tylko przy wyra\u017anym wskazaniu ich nazwy i nie s\u0105 wy\u015bwietlane w og\u00f3lnych zapytaniach typu \u00abSELECT * FROM\u00bb).\n<li class=\"l\"> Dodano mo\u017cliwo\u015bci zarz\u0105dzania paczkami PL\/SQL, umo\u017cliwiaj\u0105ce tworzenie paczek, zmienianie ich parametr\u00f3w i do\u0142\u0105czanie opis\u00f3w. W psql dodano nowe polecenie \u00abdk\u00bb do operacji z paczkami.\n<li class=\"l\"> Zwi\u0119kszono wydajno\u015b\u0107 pracy z pakietami PL\/SQL oraz dodano wsparcie dla cachowania pakiet\u00f3w.\n<li class=\"l\"> Proponowane s\u0105 nowe funkcje ACL do zarz\u0105dzania przywilejami zwi\u0105zanymi z pakietami PL\/SQL.\n<li class=\"l\"> Dodano wsparcie dla rozszerzenia pg_get_functiondef z implementacj\u0105 funkcji pg_get_functiondef(), pg_get_functiondef(OID, VARIADIC OID[]) oraz pg_get_functiondef(VARIADIC TEXT[]), kt\u00f3re pozwalaj\u0105 na uzyskanie definicji funkcji na podstawie podanej listy nazw funkcji.\n<li class=\"l\"> Dodano pakiety instalacyjne dla Ubuntu.  <\/ul>\n<p>Dodatkowo warto wspomnie\u0107 o wydaniu rozszerzenia SynchDB 1.0, kt\u00f3re ma na celu replikacj\u0119 danych z jednej lub kilku zewn\u0119trznych baz danych do PostgreSQL, takich jak MySQL, MS SQLServer i Oracle. Te zewn\u0119trzne bazy danych stanowi\u0105 \u017ar\u00f3d\u0142a danych, kt\u00f3re s\u0105 bezpo\u015brednio przenoszone do jednej docelowej bazy danych opartej na PostgreSQL, bez u\u017cywania dodatkowych warstw do orchestracji procesu synchronizacji danych (wszystkie operacje synchronizacji s\u0105 przetwarzane przez rozszerzenie SynchDB). Kod projektu jest napisany w j\u0119zykach C i Java i jest udost\u0119pniany na licencji Apache 2.0. SynchDB 1.0 jest oznaczone jako pierwsze stabilne wydanie projektu.    <\/p>\n<p>System sk\u0142ada si\u0119 z sze\u015bciu komponent\u00f3w:  <\/p>\n<ul>\n<li class=\"l\"> Debezium Runner Engine \u2014 silnik Java, oferuj\u0105cy modu\u0142y do przetwarzania strumieni zmian danych z r\u00f3\u017cnych system\u00f3w DBMS (MySQL, MS SQLServer i Oracle) i transformatywania uzyskanych danych w uniwersalnym formacie JSON.\n<li class=\"l\"> SynchDB Worker \u2014 uruchamia instancje Debezium Runner Engine do replikacji danych z konkretnych system\u00f3w DBMS, przyjmuje od nich zmiany w formacie JSON i przekazuje je do modu\u0142u Format Converter.\n<li class=\"l\"> SynchDB Launcher \u2014 tworzy i ko\u0144czy dzia\u0142anie przetwarzaczy SynchDB, korzystaj\u0105c z API PostgreSQL do uruchomienia proces\u00f3w dzia\u0142aj\u0105cych w tle.\n<li class=\"l\"> Format Converter \u2014 przetwarza strumie\u0144 zmian w formacie JSON, konwertuje zewn\u0119trzne typy danych i zapytania DDL na typy i zapytania zgodne z PostgreSQL.\n<li class=\"l\"> Replication Agent \u2014 przetwarza wyj\u015bcie w formacie HeapTupleData z Format Converter i uruchamia metody do wstawiania danych do PostgreSQL.\n<li class=\"l\"> Table Synch Agent (w opracowaniu) \u2014 oferuje skuteczn\u0105 metod\u0119 wst\u0119pnej synchronizacji tabel.  <\/ul>\n<p>      <center><img decoding=\"async\" alt=\"Dost\u0119pne s\u0105 IvorySQL 4.0 i SynchDB 1.0, nak\u0142adki do PostgreSQL do interakcji z innymi systemami DB\" src=\"\/wp-content\/uploads\/2024\/12\/c8e38abad675ca21ad7d0ca36aa2ceea.png\" style=\"display:block;margin: 0 auto;\" \/><\/center><br \/>\n<br \/>\u0179r\u00f3d\u0142o: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=62483\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u043f\u0440\u043e\u0435\u043a\u0442\u0430 IvorySQL 4.0, \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0440\u0435\u0434\u0430\u043a\u0446\u0438\u044e \u0421\u0423\u0411\u0414 PostgreSQL, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0443\u044e \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c \u0441 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438, \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d\u043d\u044b\u043c\u0438 \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0443 \u0441 \u0421\u0423\u0411\u0414 Oracle. \u0412 IvorySQL \u0437\u0430\u044f\u0432\u043b\u0435\u043d\u0430 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u044b \u0432 \u043a\u0430\u0447\u0435\u0441\u0442\u0432\u0435 \u043f\u0440\u043e\u0437\u0440\u0430\u0447\u043d\u043e\u0439 \u0437\u0430\u043c\u0435\u043d\u044b \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 PostgreSQL, \u043e\u0442\u043b\u0438\u0447\u0438\u0435 \u043e\u0442 \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u0441\u0432\u043e\u0434\u0438\u0442\u0441\u044f \u043a \u043f\u043e\u044f\u0432\u043b\u0435\u043d\u0438\u044e \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 &#171;compatible_db&#187;, \u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0449\u0435\u0439 \u0440\u0435\u0436\u0438\u043c \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u0438 \u0441 Oracle. \u041a\u043e\u0434 \u043d\u0430\u043f\u0438\u0441\u0430\u043d \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 \u0421\u0438 \u0438 \u0440\u0430\u0441\u043f\u0440\u043e\u0441\u0442\u0440\u0430\u043d\u044f\u0435\u0442\u0441\u044f \u043f\u043e\u0434 \u043b\u0438\u0446\u0435\u043d\u0437\u0438\u0435\u0439 Apache 2.0. [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":121168,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-121167","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u043f\u0440\u043e\u0435\u043a\u0442\u0430 IvorySQL 4.0, \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0440\u0435\u0434\u0430\u043a\u0446\u0438\u044e \u0421\u0423\u0411\u0414 PostgreSQL, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0443\u044e \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c \u0441 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438, \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d\u043d\u044b\u043c\u0438 \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0443 \u0441 \u0421\u0423\u0411\u0414 Oracle.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/pl\/blog\/news\/dostupny-ivorysql-4-0-i-synchdb-1-0-nadstrojki-k-postgresql-dlya-vzaimodejstviya-s-drugimi-subd\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"pl_PL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u044b IvorySQL 4.0 \u0438 SynchDB 1.0, \u043d\u0430\u0434\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043a PostgreSQL \u0434\u043b\u044f \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0441 \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u0421\u0423\u0411\u0414 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u043f\u0440\u043e\u0435\u043a\u0442\u0430 IvorySQL 4.0, \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0440\u0435\u0434\u0430\u043a\u0446\u0438\u044e \u0421\u0423\u0411\u0414 PostgreSQL, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0443\u044e \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c \u0441 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438, \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d\u043d\u044b\u043c\u0438 \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0443 \u0441 \u0421\u0423\u0411\u0414 Oracle.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pl\/blog\/news\/dostupny-ivorysql-4-0-i-synchdb-1-0-nadstrojki-k-postgresql-dlya-vzaimodejstviya-s-drugimi-subd\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2024-12-29T13:46:01+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2024-12-29T13:46:01+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Dost\u0119pne s\u0105 IvorySQL 4.0 i SynchDB 1.0, rozszerzenia do PostgreSQL do interakcji z innymi bazami danych | ProHoster","description":"Opublikowano wydanie projektu IvorySQL 4.0, rozwijaj\u0105cego edycj\u0119 bazy danych PostgreSQL, zapewniaj\u0105cego zgodno\u015b\u0107 z aplikacjami zaprojektowanymi do pracy z baz\u0105 danych Oracle.","canonical_url":"https:\/\/prohoster.info\/pl\/blog\/news\/dostupny-ivorysql-4-0-i-synchdb-1-0-nadstrojki-k-postgresql-dlya-vzaimodejstviya-s-drugimi-subd","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pl_PL","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0414\u043e\u0441\u0442\u0443\u043f\u043d\u044b IvorySQL 4.0 \u0438 SynchDB 1.0, \u043d\u0430\u0434\u0441\u0442\u0440\u043e\u0439\u043a\u0438 \u043a PostgreSQL \u0434\u043b\u044f \u0432\u0437\u0430\u0438\u043c\u043e\u0434\u0435\u0439\u0441\u0442\u0432\u0438\u044f \u0441 \u0434\u0440\u0443\u0433\u0438\u043c\u0438 \u0421\u0423\u0411\u0414 | ProHoster","og:description":"\u041e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d \u0432\u044b\u043f\u0443\u0441\u043a \u043f\u0440\u043e\u0435\u043a\u0442\u0430 IvorySQL 4.0, \u0440\u0430\u0437\u0432\u0438\u0432\u0430\u044e\u0449\u0435\u0433\u043e \u0440\u0435\u0434\u0430\u043a\u0446\u0438\u044e \u0421\u0423\u0411\u0414 PostgreSQL, \u043e\u0431\u0435\u0441\u043f\u0435\u0447\u0438\u0432\u0430\u044e\u0449\u0443\u044e \u0441\u043e\u0432\u043c\u0435\u0441\u0442\u0438\u043c\u043e\u0441\u0442\u044c \u0441 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438, \u0440\u0430\u0441\u0441\u0447\u0438\u0442\u0430\u043d\u043d\u044b\u043c\u0438 \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0443 \u0441 \u0421\u0423\u0411\u0414 Oracle.","og:url":"https:\/\/prohoster.info\/pl\/blog\/news\/dostupny-ivorysql-4-0-i-synchdb-1-0-nadstrojki-k-postgresql-dlya-vzaimodejstviya-s-drugimi-subd","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2024-12-29T13:46:01+00:00","article:modified_time":"2024-12-29T13:46:01+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"121167","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":"default","schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-23 09:15:22","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2026-01-23 09:15:22","updated":"2026-01-23 09:15:22","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/121167","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/comments?post=121167"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/121167\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/media\/121168"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/media?parent=121167"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/categories?post=121167"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/tags?post=121167"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}