Tantor Labs
498 subscribers
164 photos
4 videos
128 links
Целостный российский инфраструктурный стек: хранение и обработка корп. данных

СУБД Tantor на основе PostgreSQL, платформа управления, машина БД Tantor XData и др.

СУБД: Разработчик года (TA)
XData: Решение года (CNews)

Сайт – https://tantorlabs.ru
加入频道
Сегодня мы запустили корпоративный блог Tantor 🌚 на Habr!


Первой публикацией стала статья: «Как избежать ошибок памяти при работе с большими данными в PostgreSQL.

Если вы администрируете PostgreSQL-кластеры или работаете с объёмными данными (XML-документы, конфигурации 1С и др.), вы могли столкнуться с ошибкой ERROR: out of memory при выгрузке таблиц через pg_dump или команду COPY. В дебютном материале мы разбираем причины этой проблемы и предлагаем решения, включая особый параметр из арсенала СУБД Tantor Postgres — enable_large_allocations.

О чем мы рассказываем в статье:
➡️ Почему даже данные меньше 1 ГБ могут вызвать сбой при выгрузке.
➡️ Как экранирование символов «раздувает» размер строк и приводит к ошибкам.
➡️ Решение Tantor Postgres — увеличение лимита буфера до 2 ГБ и оптимизация процессов.

Статья будет полезна администраторам БД, разработчикам и всем, кто работает с PostgreSQL в высоконагруженных средах.

↗️ Читайте первый материал нашего блога на Habr по ссылке.

#PostgreSQL #TantorPostgres #Tantor #Администрирование #Habr
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👏6👍31
Настройка OAuth-авторизации в Tantor Postgres 17.5 и PostgreSQL 18: практическое руководство на примере Keycloak

Мы продолжаем цикл статей, в которых описываем нововведения СУБД Tantor Postgres 17.5.0. В прошлый раз мы писали об оптимизации нагрузки на систему за счет сэмплирования сбора статистики с pg_stat_statements. Сегодня хотим спросить — знаете ли вы, что Tantor Postgres 17.5.0 поддерживает авторизацию по OAuth 2.0 Device Authorization Flow (эта же возможность ожидается в PostgreSQL 18)? Это позволяет отказаться от паролей на клиенте и централизовать управление доступом через провайдеров.

В новой статье в нашем блоге на Habr — детальное руководство по реализации авторизации OAuth 2.0 на примере Keycloak:
➡️Настройка Keycloak как провайдера идентификации (Realm, Users, Client scopes, Clients)
➡️Подготовка PostgreSQL (настройка pg_hba.conf, pg_ident.conf, параметра oauth_validator_libraries)
➡️Реализация валидатора токенов на C с обработкой JWT и проверкой scope
➡️Процесс авторизации через psql с использованием Device Flow

Материал предназначен для широкого круга разработчиков, в частности, администраторов БД и ИБ-инженеров, внедряющих современные механизмы аутентификации.

↗️Читать статью

#Tantor #TantorPostgres #PostgreSQL #OAuth #Habr
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍3👏3
Почему PostgreSQL иногда делает «неправильный» выбор индекса — и как это исправить?

Бывает так, что после миграции «1С» на Postgres часть запросов внезапно начинает работать в разы медленнее из-за того, что когда есть несколько индексов с одинаковыми ведущими столбцами, планировщик выбирает не самый подходящий. Типичная ситуация: есть «широкий» индекс, покрывающий все условия запроса, и «узкий», обслуживающий другие запросы, и планировщик выбирает узкий, потому что его стоимость представляется более низкой. Это приводит к избыточному чтению данных и многократному увеличению времени выполнения.

В свежей статье на Хабре подробно разбираем, как PostgreSQL оценивает стоимость индексного доступа, в каких формулах кроется подвох, почему селективность может быть «запредельной». Показываем, как можно использовать расширенную статистику и что даёт наш патч, который исправляет выбор индекса в Tantor Postgres 17.5.

Если вам интересна работа планировщика и технические детали работы индексов — читайте статью. Она поможет понять, почему "всё медленно", когда всё вроде бы правильно.

↗️Читать статью

#TantorPostgres #PostgreSQL #1C #Производительность #Habr
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👏5👍1