0

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

Есть ли ориентир для воздействия крупных индексов? Предположительно, эталонная задача будет вставлять объекты в большой вид, затем запрашивать другую реплику и измерять время.

ответ

1

Факторы, связанные с этим сложнее.

Действительно, увеличивающееся число индексов, возможно, будет увеличиваться в конечном итоге, поскольку требуется больше работы с их применением. Индексы синхронно записываются, тогда как сам объект всегда применяется до того, как возвращается комманда. Шаблон «Чтение/Запись» также может влиять на конечную согласованность, например, превышение 1 транзакции в секунду для каждой группы сущностей. Другие факторы в хвосте включают такие вещи, как сбои в центрах обработки данных/реплики и последующее восстановление.

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

Общее руководство в конечном итоге согласовано в среднем разрешено в миллисекундах, а иногда и секундах. В экстремальном конце в зависимости от факторов это может увеличиться до нескольких часов или больше (например, дата-центр просто возвращается в онлайн).

Рекомендуется использовать сильные механизмы согласованности (запросы предков, поисковые запросы), если это возможно, в ситуациях, когда возможная согласованность неприемлема.