Как мы научили PostgreSQL автоматически создавать партиции
#почитать
Задача: Один наш крупный телеком-клиент уже несколько лет активно занимается проектами импортозамещения. Его основной фокус — перевод биллинговых систем (ключевого цифрового инструмента для управления бизнесом и взаимодействием с клиентами) с Oracle на PostgreSQL, а в качестве импортонезависимой системы управления базами данных (СУБД) выбрана платформа Nexign Nord на базе PostgreSQL от Nexign.
Вызов: Партиционирование и субпартиционирование — это неотъемлемая часть работы с большими объемами информации в продуктах Nexign. Такой подход позволяет разбивать огромные таблицы на более управляемые части, упрощая обслуживание баз данных (БД). В Oracle для этого используется встроенный автоматический механизм создания новых партиций, но в процессе подготовки к миграции на PostgreSQL перед нами встал вопрос сохранения того же уровня удобства и автоматизации.
Решение: Вместе с клиентом мы выстроили поэтапный процесс миграции продуктов: от простых решений к более сложным. Начинали с баз данных объемом в несколько десятков гигабайт, а к концу 2024 года успешно перенесли одну из крупнейших баз в нашем биллинговом решении — 5 ТБ данных с нагрузкой около 20 000 транзакций в секунду (TPS). Всё это удалось благодаря разработке собственного расширения для автоматизации партиционирования в PostgreSQL с поддержкой партиционирования по хэшу.
⏱ Читать статью
#почитать
Задача: Один наш крупный телеком-клиент уже несколько лет активно занимается проектами импортозамещения. Его основной фокус — перевод биллинговых систем (ключевого цифрового инструмента для управления бизнесом и взаимодействием с клиентами) с Oracle на PostgreSQL, а в качестве импортонезависимой системы управления базами данных (СУБД) выбрана платформа Nexign Nord на базе PostgreSQL от Nexign.
Вызов: Партиционирование и субпартиционирование — это неотъемлемая часть работы с большими объемами информации в продуктах Nexign. Такой подход позволяет разбивать огромные таблицы на более управляемые части, упрощая обслуживание баз данных (БД). В Oracle для этого используется встроенный автоматический механизм создания новых партиций, но в процессе подготовки к миграции на PostgreSQL перед нами встал вопрос сохранения того же уровня удобства и автоматизации.
Решение: Вместе с клиентом мы выстроили поэтапный процесс миграции продуктов: от простых решений к более сложным. Начинали с баз данных объемом в несколько десятков гигабайт, а к концу 2024 года успешно перенесли одну из крупнейших баз в нашем биллинговом решении — 5 ТБ данных с нагрузкой около 20 000 транзакций в секунду (TPS). Всё это удалось благодаря разработке собственного расширения для автоматизации партиционирования в PostgreSQL с поддержкой партиционирования по хэшу.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
Forwarded from QA Live 🚩 тестирование ПО
This media is not supported in your browser
VIEW IN TELEGRAM
О том, как не попасть в ловушки теории вероятностей и почему онбординг в финтехе похож на курс молодого бойца, запуск GTA 5 на Пентиуме, также исповедь человека, получившего ДЕВЯТЬ сертификатов ISTQB.
▫️Минимально жизнеспособная тестовая документация
▫️Это как купить Феррари и ездить на первой передаче
▫️Микросервисы: где заканчивается юнит-тестирование и начинается интеграционное
▫️Стратегический гайд для CTO по интеграционному тестированию для крупных проектов
▫️Как выстроить автоматизацию тестирования API, которая выдержит масштабирование продукта
▫️Тестирование юзабилити для начинающих: 10 советов для прокачки навыков в UX
▫️Четыре фрейма тестирования, часть 7: критическая дистанция
▫️Есть ли что-то в вашем «Я», кроме искусственного интеллекта?
▫️9 ISTQB сертификатов спустя: что бы я реально посоветовал тем, кто собирается сдавать
▫️Как проходит онбординг тестировщика в финтехе
▫️Как мы превратили скучное тестирование в захватывающее развлечение
▫️Лего-стенд. История сборки универсальной тестовой лаборатории из 30+ устройств
▫️Почему токсичные эксперты больше никому не нужны
▫️Как выглядит Wi-Fi взлом изнутри (схемы, примеры, анализ)
▫️5 ловушек теории вероятностей в IT
▫️Превращаем сайт в мобильное приложение за пару шагов. Часть 1 + Часть 2
▫️Ответ на «безумный эксперимент» по запуску GTA 5 на Pentium 4
▫️Воспроизводим тот самый баг на $475 000 000
▫️Как преобразовать огромный монорепозиторий с автотестами в микросервисы
Please open Telegram to view this post
VIEW IN TELEGRAM
💯1
У вас есть таблица scores (player, score). Как вывести список игроков, где у игроков с одинаковым счетом одинаковый ранг, а следующий ранг не пропускает номер?
Anonymous Quiz
35%
A) SELECT player, DENSE_RANK() OVER (ORDER BY score DESC) AS rank FROM scores;
35%
B) SELECT player, RANK() OVER (ORDER BY score DESC) AS rank FROM scores;
20%
C) SELECT player, ROW_NUMBER() OVER (ORDER BY score DESC) AS rank FROM scores;
10%
D) SELECT player, NTILE(4) OVER (ORDER BY score DESC) AS rank FROM scores;