Как отправить данные из прогресса Open Edge DB в postgresql, если данные таблицы изменятся? - PullRequest
0 голосов
/ 11 октября 2019

у нас есть прогресс openge db и PostgreSQL, если данные таблицы изменяются в прогрессе db, то мы должны сделать то же самое в PostgreSQL db.

1 Ответ

0 голосов
/ 07 ноября 2019

Серебряной пули нет. Но немного поработав, вы могли бы это сделать:

В Progress есть дополнительный продукт под названием «CDC» для захвата данных изменений, который позволяет обнаруживать измененные данные, регистрировать изменения и затем использовать собственную логику для экспорта. данные.

Вам нужен OpenEdge 11.7 или лучше для его запуска.

https://www.progress.com/openedge/components/openedge-change-data-capture?&utm_source=google&utm_medium=cpc&utm_campaign=progress-openedge-cdc-search&gclid=Cj0KCQiAno_uBRC1ARIsAB496IXd6R1acqLMF2lM53Z1tjIFk-ON1J86lAnhkngoJzhKVQW2X-9zHkQaAq92EALw_wcB&gclsrc=aw.ds

Есть еще один связанный продукт под названием Pro2, но я не верю, что онподдерживает PostgresSQL в качестве цели (хотя я могу ошибаться в этом).

Если вы не хотите идти по этому пути, вам нужно реализовать нечто подобное с триггерами репликации (Pro2 изначально был основан на репликациитриггеры и все еще могут их использовать). Никаких дополнительных лицензий не требуется, и они доступны в любом современном выпуске. Но вам придется «свернуть свою» логику, и усилия будут больше.

Третий вариант - извращение подсистемы аудита. Ваши измененные данные могут быть событиями аудита, и вы, возможно, могли бы написать некоторую логику для извлечения измененных данных из журналов аудита.

...