Мне нужно сохранить копию внешней базы данных (включая некоторые дополнительные производные данные). С тем же набором аппаратных средств, который из одного из следующих решений даст мне более быструю согласованность (низкое отставание) с высокой доступностью? Предположим, что обновления для внешней базы данных происходят с 1000 записей в секунду.Репликация через события Kafka vs. mysql
a) Создайте локальную реплику mysql внешнего db, используя репликацию mysql 5.7 (механизм файла двоичного журнала).
ИЛИ
б) Получить в режиме реального времени Кафка событие от внешней системы, делая HTTP GET для извлечения обновленных деталей объекта и использовать эти данные для поддержания локального MySQL реплики.
Спасибо. Мой реальный прецедент заключается в том, что если x изменяется во внешней системе, скажем A, то моя система, скажем B, должна знать. Затем используйте x и некоторые дополнительные данные, связанные с x, скажем X, для вычисления y и отправки y в еще одну внешнюю систему, например C. C. Получается с использованием тяжелого агрегированного запроса в хранилище данных внешней системы A. Теперь вопрос заключается в том, следует ли создавать реплику A в B через собственную репликацию MySQL или не выполнять репликацию, а скорее делать GET в событии изменения для x для хранения в локальной реплике перед использованием агрегированного запроса. – ahuman