Тёмный

Hовости о PostgreSQL 12 / Олег Бартунов (Postgres Professional) 

HighLoad Channel
Подписаться 83 тыс.
Просмотров 8 тыс.
50% 1

Приглашаем на конференцию Saint HighLoad++ 2024, которая пройдет 24 и 25 июня в Санкт-Петербурге!
Программа, подробности и билеты по ссылке: vk.cc/cuyIqx
--------
--------
При поддержке AvitoTech мы впервые публикуем все видео с HighLoad++ 2019 в открытый доступ. Учитесь, вдохновляйтесь и перенимайте лучшие практики у спикеров, не выходя из дома.
--------
Календарь конференций - ontico.ru
--------
HighLoad++ 2019
Тезисы и презентация:
www.highload.ru/moscow/2019/a...
Я расскажу о том, что появилось нового в PostgreSQL 12 с упором на понимание некоторых важных фич.
--------
Нашли ошибку в видео? Пишите нам на support@ontico.ru

Опубликовано:

 

25 фев 2020

Поделиться:

Ссылка:

Скачать:

Готовим ссылку...

Добавить в:

Мой плейлист
Посмотреть позже
Комментарии : 17   
@mikesomebody5404
@mikesomebody5404 4 года назад
Большое спасибо!
@dmitryd1572
@dmitryd1572 4 года назад
Отличный доклад и нововведения, большое спасибо !
@AnticoO
@AnticoO 4 года назад
Как всегда великолепный доклад от Олега!
@1Miha
@1Miha 4 года назад
Отличный доклад! Впрочем, как всегда.
@victorl3879
@victorl3879 4 года назад
После просмотра сменил btree индекс на spgist. Скорость запроса выросла в 5 раз
@solarscorcher1566
@solarscorcher1566 4 года назад
А размер индекса? GIST-индексы при постоянных обновлениях индексируемых полей имеют свойства сильно разрастаться в размерах, что требует регулярного их пересоздания или реиндексации. Если размер ОЗУ на сервере БД ограничен, то это может быть проблемой.
@v-dubcurrency6212
@v-dubcurrency6212 4 года назад
А для какого случая?
@valeriikuzivanov6832
@valeriikuzivanov6832 4 года назад
Спасибо большое за колосальную работу. Уже работал с JSONB, пока синтаксис не очень понятен после MongoDB, но по сравнению с Aggregation framework гораздо кратче. Скорее бы ORM научились поддерживать новые фичи постгреса, писать raw запросы конечно можно, но читабельность кода страдает.
@eugeneus77
@eugeneus77 4 года назад
Я с о стороны Postgres, Mongo тоже смотрится необычно ;) P.S. 3 года назад дописал проект с JsonB, с функциональными индексами ;) Крайне удобно менять логику приложения, не используя DDL для базы ;)
@solarscorcher1566
@solarscorcher1566 4 года назад
ORM - для мелких проектов и презентаций. Серьёзные проекты не используют ORM, потому что его дорого и больно кастомизировть. Читабельность кода - дело вкуса. Мне, например, намного проще прочитать запрос, чем понимать, что там ORM делает, рыскать в логах в поисках сгенерированного запроса. Поддержка этих фич если и будет, то года через 3.
@MrPavelFrolov
@MrPavelFrolov 4 года назад
а ведутся разработки по memory storage?
@user-tv4kh4pc7s
@user-tv4kh4pc7s 4 года назад
Ольга, какие еще новости?
@Zurbagan001
@Zurbagan001 4 года назад
Положительно кармический продукт, ахах, действительно.
@anydasa108
@anydasa108 4 года назад
Человек конечно авторитетный, но кто то может предметно объяснить почему FK + highload = неправильно? ru-vid.com/video/%D0%B2%D0%B8%D0%B4%D0%B5%D0%BE-oxsuwxwJldE.html
@vovik0134
@vovik0134 4 года назад
В официальной документации есть рекомендация по удалению внешних ключей при загрузке большого количества данных www.postgresql.org/docs/current/populate.html#POPULATE-RM-FKEYS Это справедливо и для highload систем, где обычно тоже обрабатывается большое количество данных (но в коротких параллельных транзакциях). Внешние ключи и другие ограничения целостности не бесплатны и влекут за собой некоторые накладные расходы (увеличение latency, например), которые могут быть просто неприемлемы в highload системах Не стоит воспринимать этот совет как истину в последней инстанции. Это компромисс между производительностью системы и целостностью данных
@solarscorcher1566
@solarscorcher1566 4 года назад
FK - это контроль целостности. Реализован он так, что при изменении значения PK в материнской таблице у тебя идут проверки во всех таблицах, связанных с ней при помощи FK. Иногда у тебя на PK какой-то одной таблицы типа "юзер" может быть навешано столько FK, что удаление строки в "юзерах" или смена в ней PK приводит к проверкам, длящимся несколько десятков секунд для каждой записи. Зачастую, в угоду скорости (и меньшему потреблению вычислительной мощности на сервере БД) проще удалить/изменить запись в "юзерах", а потом подчистить остальные таблицы уже асинхронно.
@anydasa108
@anydasa108 4 года назад
@@solarscorcher1566 FK в 99% это или autoincrement или uuid или тп. Смысл делать update этому полю = 0. Десятки секунд на удаление??? фантастика честно говоря. Если все так плохо, то не проще сделать soft_delete и уже асинхронно удалить пачку? Но остается проверка на целостность. Я бы согласился, если бы утверждение звучало так: "В некоторых случаях FK лучше не использовать" вместо "FK + highload = неправильно"
Далее
Кто Первый Получит Миллион ?
27:44
Олег Тиньков в МИФИ (20.03.2017)
59:18
Просмотров 166 тыс.