App Sharding

AppSharding

Продукт для создания и поддержки высокодоступных шардированных приложений

logo

Преимущества

повышенная отказоустойчивость

Распределение нагрузки на приложение или базу данных

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

Построение георезервированных кластеров

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

Перенос данных без недоступности

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

Поддержка различных стратегий шардирования

Создание шардированного приложения с единым пространством данных приложения при использовании различных стратегий шардирования

Горизонтальное масштабирование наборов данных

Легко реализуемое горизонтальное масштабирование наборов данных с сохранением стратегии шардирования

Поддержка любого уровня тенантной изоляции

Возможность создания сервисов с различным уровнем тенантной изоляции

Быстрая и надежная проверка релизов с помощью канареечных релизов

С помощью инструментов Service Mesh можно легко вывести новую версию в эксплуатацию параллельно с действующей и организовать канареечное тестирование с балансировкой трафика по версиям

Поддержка мультитетантности с требуемым уровнем изоляции

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

Возможности конфигурации

Предоставляет возможность настройки как с помощью файлов конфигурации (концепция Everything-As-A-Code), так и с помощью удобного АРМ пользователя

Сокращение затрат при сохранении уровня обслуживания

Снижение стоимости размещения сервисов на платформе при сохранении требуемого уровня обслуживания потребителей сервиса

Коммунальное размещение данных

Возможность создания сервисов с коммунальным размещением данных тенантов для снижения расходов

Сертифицировано в России

Разработано российской компанией и соответствует всем законам об импортозамещении

Архитектура

App consumer
Provider 1
AZ1
AZ2
Provider 2
AZ1
AZ2
APM Admin

Application Router

Выступает в роли Application Load Balancer и проксирует запросы L7 в сконфигурированную группу развертывания (Availability Zones – AZ) для определенной инсталляции

Route EFS

Компонент предназначен для определения актуального маршрута (FQDN) на основе ключа шардирования, полученного от APPR, а также заранее сконфигурированных гибких стратегий маршрутизации

Cross-cluster index

Ведение распределенного индекса - реестра соответствий ключей шардирования и кодов шардов

Поддерживает:

  • Получения кода шарда по запросу
  • Изменение записей в индексе
  • Первичная загрузка индексов
  • Автоматическое удаление ключей из индекса

Data Transfer

Оркестрирует перенос ваших данных между шардами приложения при использовании механизма AppSharding, а также помогает:

  • Упростить миграцию данных между шардами
  • Гибко распределять данные между шардами вашего приложения с использованием Cross-cluster index (CCI)
  • Плавно переносить данные с одной версии приложения на другую

Обучение в Bootcamp

Познакомьтесь со всеми продуктами и их возможностями в корпоративной школе Сбера

Связаться с нами

Задать вопрос