Shard aware routing by sharding key

Предоставляем API для роутинга запросов на конкретный репликасет по ключу шардирования переданного пользователем.

API включает в себя вспомогательные объекты для построения ключа по названию таблицы и операции над этим ключем (например, взятие конкретного соединение из драйвера).

Пример вспомогательных объектов

  • Sharding Key Factory - создается 1 раз для конкретной таблицы и используется для построения ключа шардирования для разных значений колонок. Для нас алгоритм построения ключа == алгоритм подсчета bucket-id
  • Sharding Key - объект, который хранит данные для роутинга конкретного запроса. Для нас это bucket-id и тир.