Статьи про YDB публиковались на Хабре ещё до выхода в open source, а отдельным блогом мы обзавелись всего несколько недель назад. В связи с этим проведём небольшую ретроспективу — что пишут про YDB в других хабах.
Обзорные
Яндекс выложил YDB в open source. Самая основательная обзорная статья про YDB. Если вы готовы прочитать только одну статью из этого дайджеста — читайте эту.
Бессерверная альтернатива традиционным базам данных. Как YDB встраивается в Serverless экосистему Яндекс Облака.
Мультиарендный подход к инфраструктуре работы с данными. Почему мультиарендность (она же multitenancy, возможность многим пользователям независимо работать в одной системе) важна в современных системах обработки данных, в том числе на примере YDB.
История появления YQL, используемого в YDB диалекта SQL. Если вам интересно почему до сих пор появляются новые реализации SQL стандарта.
Кейсы миграций и проектов с нуля
Яндекс Облако. Архитектура платформы. YDB с первых дней запуска Яндекс Облака является ключевой платформой хранения данных, на которой оно построено.
Переезд c PostgreSQL на YDB. Кейс сервиса Яндекс Игры. Если ваш инстанс PostgreSQL тоже потихоньку перестаёт справляться с нагрузкой, то опыт коллег из Яндекс Игр может вам пригодиться.
Мой диплом, или Как собрать вещи и переехать на YDB. Используете две отдельные системы хранения и обработки данных для «горячих» и «холодных» данных? C YDB сопоставимого результата можно добиться с одной и не заниматься синхронизацией.
Архитектура сервиса распределённых очередей сообщений в Яндекс.Облаке. Более глубокое погружение в один из сервисов, построенных на YDB — реализации AWS Simple Queue Service API под названием Yandex Message Queue.
Пошаговые инструкции
Свежие статьи
В заключение хочется пригласить подписаться на новый хаб YDB на Хабре и подсветить несколько последних опубликованных там статей:
Комментарии (8)
DBalashov
10.08.2023 07:22+1А есть планы по завозу в YDB коррелированных подзапросов?
m11 Автор
10.08.2023 07:22Есть. Они являются лишь альтернативным синтаксисом для JOIN, так что исторически пользователи как правило спокойно обходились без них.
igor_suhorukov
10.08.2023 07:22Недавно была статья Correlated Subqueries in SQL как их реализовали в DuckDB. Так что можете пойти навстречу жаждущим пользователям.
igor_suhorukov
Подскажи пожалуйста про поддержку инструментария. Какие open source системы миграций схем данных поддерживают YDB, есть ли способ сгенерировать html/markdown документацию по схеме БД и ER диаграммы?
m11 Автор
Работа в этом направлении ведётся, но её впереди ещё много, будем рассказывать по мере поступления.
Схемы данных проще всего смотреть через встроенный веб-интерфейс (вебинар про него), а о более сложных ER-диаграммах будет иметь смысл задуматься после появления поддержки foreign key, которой пока нет.
Также, как можно увидеть по roadmap YDB, сейчас идёт активная работа над режимом Postgres совместимости — благодаря нему ожидаем качественного скачка в поддержке существующими инструментами.
igor_suhorukov
Спасибо! Гляну на досуге.
Для поддержки SchamaSpy как в случае ClickHouse, было достаточно правильно написанного JDBC драйвера для базы данных, который возвращает валидные метаданные. Подсказка команде YDB о том что дополнение SchemaSpy для ClickHouse было очень простым)
igor_suhorukov
PostgreSQL wire протокол это только начало на пути к совместимости, потом прийдется эмулировать многие конструкции в SQL(например case), потом функции и Information schema. Можете посмотреть на подвиги команды QuestDB, CrateDB - очень трудозатратный путь, для поддержки биндингов в языках программирования и SQL клиентах. Issue в проекте посыпяться как снег. Хотя многие идут по нему кто-то из за поддержки существующий клиентов и BI, а Apache Spark по большей части из-за SQL тестпака PostgreSQL.
igor_suhorukov
Мне понравился подход в AWS Redshift, хоть реально foreign key у них нет(not enforced), но на уровне метаданных Redshift позволяет их хранить и выдает тулам. В итоге для огромной аналитической базы на неколько сотен таблиц с множеством схем получалось генерировать для пользователей документацию в SchemaSpy, что снимало большинство вопросов с моей команды и не надо было вручную синхронизировать документацию по БД в confluence, и документация всегда "первой свежести".