title

text

Александр Павлов
Александр Павлов Modulbank .NET разработчик
: декабря
45 мин

Как получить нагрузку в БД на пустом месте?

Мы - обычные разработчики, которые думали о том, как разработать систему, способную выдерживать неплохие нагрузки, и это даже получилось.

На уровне архитектуры всё было OK, но объём данных возрастал, и начали вылезать не самые приятные моменты, о которых ранее никто не думал и не понимал. Иногда это приводило нас к самым потрясающим запросам, которые мы не понимали, как можно было написать. Мой небольшой рассказ будет о том, как получить нагрузку в БД на пустом месте и как потом от неё избавиться.

Слайды

Видео

Другие доклады

  • Камиль Исламов
    Камиль Исламов Stickeroid Ai CTO
    22 мин

    CTE запросы как основа бизнес-логики

    Рассмотрены особенности разработки и некоторые варианты реализации бизнес-логики высоконагруженных web-приложений на базе хранимых процедур в парадигме широкого применения Common Table Expression запросов.

  • Мирослав Шедиви
    Мирослав Шедиви solute GmbH Senior Software Developer
    90 мин

    Python и PostgreSQL с использованием psycopg2

    Python, может быть, не самый быстрый язык программирования на CPU, но быстрая и простая разработка на нем экономит массу усилий того, кто находится между креслом и клавиатурой. В ходе мастер-класса мы разберем "psycopg2" - наиболее популярную библиотеку для доступа к серверу PostgreSQL, а также напишем небольшое приложение, используя некоторые его полезные свойства.

  • Федор Сигаев
    Федор Сигаев Postgres Professional технический директор, ведущий разработчик PostgreSQL
    Дмитрий Белявский
    Дмитрий Белявский ТЦИ Ведущий специалист
    22 мин

    LTREE: расширяем синтаксис

    В конце прошлого года мне поступил заказ на доработку расширения ltree с более полным набором символов. Доклад рассказывает о

    • изначальном состоянии расширения
    • расширенном синтаксисе
    • процессе доработки и тестирования расширения.

  • Мирослав Шедиви
    Мирослав Шедиви solute GmbH Senior Software Developer
    45 мин

    Битемпоральность: отслеживание воспроизводимых изменений в PostgreSQL с помощью типа данных RANGE

    Итак, вы наконец создали модель базы данных для вашего приложения и наполнили ее текущими данными. Каким образом обеспечить их актуальность? Хотя команда INSERT может быть все еще прозрачной, команды UPDATE и DELETE перезапишут ваши предыдущие данные, так что вы не сможете их воспроизвести. Клонирование целиком огромного контента при каждом небольшом обновлении - не вариант. Для богатых и сложных данных о сотнях тысяч электрогенераторов в Германии и по всему миру я построил базу данных, используя тип данных range, недавно появившийся в PostgreSQL. Это позволило мне добавлять, обновлять и удалять данные, при том обладая полным доступом к состоянию базы данных в любой исторический момент. Во время выступления я представлю очень упрощенную версию базы данных, чтобы аудитория смогла тут же применить знания на практике. Также я покожу несколько хитрых приемов в работе с Python и Psycopg2, которые позволят всей команде подготавливать, просматривать и развертывать все изменения в базе данных без конфликтов слияния. И подкину несколько идей о том, как можно эти данные эффективно извлекать.