Прием потоковой передачи данных и изменения схемы

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

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

В этой статье описываются типичные изменения схемы и приводятся рекомендации по предотвращению проблем с приемом потоковой передачи во время этих изменений.

Изменения схемы

В следующем списке рассматриваются ключевые примеры изменений схемы.

Координация изменений схемы при приеме потоковой передачи

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

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

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

  1. Приостановить прием потоковой передачи.
  2. Дождитесь завершения всех невыполненных запросов на прием потоковой передачи.
  3. Изменение схемы.
  4. Выполните одну или несколько команд схемы приема потоковой передачи кэша CLEAR .
    • Повторяйте, пока не будет выполнено успешно, и все строки в выходных данных команды указывают на успешное выполнение.
  5. Возобновление приема потоковой передачи.

Примечание

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