Не упустите лучшие вакансии!
Подключите наш Telegram-бот и получайте мгновенные уведомления о новых предложениях из 10+ источников. Будьте первым, кто откликнется!
Подключить ботаРазработчик на С++ в команду строковых таблиц YDB
Также YDB — это платформа для создания инфраструктурных компонентов. Мы предлагаем пользователям не только надёжные транзакции поверх таблиц, но и готовые решения на основе самого движка: персистентные очереди, федеративные запросы, сетевые диски для виртуальных машин (Yandex Network Block Store) и другое.
Какие задачи вас ждут
Распределённые транзакцииYDB обеспечивает строгую согласованность с помощью распределённых транзакций. Они могут охватывать данные, находящиеся в разных таблицах или в одной таблице на множестве узлов. Число узлов может достигать десятков тысяч.
YDB использует детерминированные транзакции в качестве этапов выполнения пользовательских транзакций с дополнительной оркестрацией и блокировками.
Партиционирование
Строковая таблица в БД может быть шардирована по диапазонам значений первичного ключа. Каждый шард таблицы отвечает за свой диапазон первичных ключей. Диапазоны ключей, обслуживаемых разными шардами, не пересекаются. Различные шарды таблицы могут обслуживаться разными серверами распределённой БД (в том числе расположенными в разных локациях), а также могут независимо друг от друга перемещаться между серверами для перебалансировки или поддержания работоспособности шарда при отказах серверов или сетевого оборудования.
Первичные и вторичные индексы
В YDB автоматически создаётся индекс по первичному ключу, поэтому выборки с условием по первичному ключу всегда выполняются эффективно, затрагивая только требуемые строки. Выборка с условием, наложенным на одну или несколько неключевых колонок, как правило, приводит к полному сканированию таблицы. Для того чтобы такие выборки были эффективными, нужно использовать вторичные индексы. В текущей версии YDB реализованы синхронные и асинхронные глобальные вторичные индексы.
Векторный поиск
Поиск k ближайших соседей (k-NN) — это задача оптимизации, которая заключается в нахождении k ближайших точек к точке запроса. Это может быть полезно в различных приложениях, таких как классификация изображений, рекомендательные системы и многое другое.
Решение задачи k-NN разбивается на два крупных подкласса методов: точные и приближённые.
Полнотекстовый поиск
Полнотекстовые индексы — это экспериментальный тип вторичных индексов, которые предоставляют возможности быстрого текстового поиска. Основная идея полнотекстового индекса заключается в сохранении сопоставления терминов со строками, которые содержат эти термины.
Мы ждем, что вы
- Разрабатывали на С++ не меньше трёх лет
- Знаете всё, что обычно спрашивают на собеседованиях: классические алгоритмы, структуры данных и прочее
- Понимаете ключевые аспекты построения отказоустойчивых распределённых систем
- Прочитали классические книги Дейта и Клеппмана :)
Ваше резюме увидят первым!
Автоматическое поднятие на HeadHunter каждые 4 часа. Увеличьте свои шансы на успех в 10 раз!
Подключить автоподнятие