Просто улет: новая версия демобазы
Вместо искусственных таблиц у нас уже девять лет есть свой общий мир данных — учебная авиакомпания, на которой разбирали SQL, индексы и планы запросов в книгах, курсах и демках Postgres Pro.
За это время выросли задачи: понадобились глобальные маршруты, большие объемы, реалистичные сценарии и возможность крутить нагрузку, а не просто смотреть на статичный дамп.
И мы выпустили вторую версию.
Это глобальная авиакомпания с задержками, стыковками и историей перелетов. В комплекте с имитационным генератором нагрузки. Развернули один раз — и у вас живая среда, где можно учить SQL, разбираться в работе планировщика и безопасно пробовать тюнинг.
🔹 Объемы и данные
Есть варианты дампов за 3, 6, 12 месяцев и 2 года объемом от 1 до 11 ГБ.
Небольшие варианты подходят для обучения и простых примеров. Крупные дают до 10 млн бронирований и 21 млн билетов — на таких данных уже есть смысл показывать секционирование и шардирование, работу индексов, статистики и планировщика.
Структура данных повзрослела: отдельно описаны маршруты, рейсы, сегменты перелетов, места и посадочные талоны, учтены стыковки, задержки и опоздания.
Справочники аэропортов, городов, стран и самолетов организованы так, что названия можно показывать на разных языках. Нужный язык выбирается настройкой.
🔹 Имитационная модель вместо дампа
Главное отличие от старой версии — под капотом не статичный дамп, а имитационная модель. Генератор ведет себя как информационная система авиакомпании: поток бронирований, вылеты, посадки, задержки, сорванные стыковки.
Выбираете период, интенсивность полетов, долю задержек, состав флота — и получаете живую нагрузку, близкую по поведению к реальной системе.
Исходники генератора открыты на GitHub.
🔹 Кому пригодится
✔️ Админам — тренировать настройки, мониторинг, резервные копии и сценарии отказов.
✔️ Разработчикам — писать нетривиальные запросы, играть с индексами и статистикой, смотреть на планы выполнения.
✔️ Преподавателям — строить практику на той же базе, что используется в книгах и курсах Postgres Pro.
Postgres должен объединять людей, поэтому демобаза и генератор распространяются по лицензии MIT.
Используйте демобазу 2.0 в своих курсах, тренажерах и статьях, адаптируйте под свои сценарии и делитесь результатами.
Полную версию статьи читайте на Хабре.
Post #1214
1.59K

- 👍 39
- 🎉 10
- ❤ 8
- 🔥 7