При рассмотрении вопроса о размещении внешней подчиненной базы данных, что более важно в сетевом соединении для поддержания актуальной репликации: низкая задержка или высокая пропускная способность?
Если объем реплицируемых данных превышает доступную полосу пропускания, репликация вообще не будет успешной. Поэтому важна высокая пропускная способность.
Однако низкая задержка будет важна, если вы делаете много небольших обновлений. Итак, это зависит от того, что записывается в эту БД.
Основным фактором, определяющим требования к задержке, является то, ожидает ли основное приложение ответа / подтверждения данных, отправляемых на ведомое устройство. Если такое подтверждение требуется, то необходима низкая задержка, чтобы приложение не зависало. Если приложению все равно, задержка, скорее всего, не проблема.
Основным фактором, определяющим требования к пропускной способности, является объем изменяемых данных и количество времени, в течение которого вы готовы мириться с отставанием ведомого устройства после серии изменений.
Это может зависеть от того, какую активность будет получать ваша база данных, или от изменений, которые будут произведены в исходной базе данных.
Если в исходной БД будет изменяться большой объем данных, я бы выбрал более высокую пропускную способность, чтобы не отставать от изменений.
Я не думаю, что если задержка действительно велика, это будет серьезной проблемой.
В основном это зависит от обстоятельств.
Это зависит от базы данных, типа репликации и количества реплицируемых данных (рабочая нагрузка / транзакции в единицу времени, обновления журнала и т. Д.).
Доставка журналов обычно означает, что ваша единица репликации довольно велика (несколько КБ), и вы, вероятно, выиграете от большей пропускной способности больше, чем от более низкой задержки.
Если вы выполняете репликацию отдельных транзакций (может быть выполнено разными способами с разными ядрами базы данных), вы можете генерировать трафик, который представляет собой небольшие пакеты.
Лучше всего смоделировать его как можно ближе к реальной реализации и измерить. Вы можете поговорить с людьми, использующими похожее программное обеспечение и имеющими аналогичные рабочие нагрузки, чтобы почувствовать масштаб. В конце концов, вам, вероятно, придется это сделать, чтобы увидеть, как это работает.
Мое общее практическое правило состоит в том, что вам нужно соединение с меньшей задержкой для системы типа OLTP [обработка онлайн-транзакций] с активным зеркалированием (много мелких транзакций) или активно зеркалируемым ODS [операционное хранилище данных], но вам понадобится соединение с более высокой пропускной способностью для хранилища данных (или любого другого типа настройки), где вы зеркалируете партиями.