title

text

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

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

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

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

Слайды

Видео

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

  • Иван Муратов
    Иван Муратов ООО "Первая Мониторинговая Компания" Технический директор
    22 мин

    PostgreSQL + PostGIS + TimescaleDB - хранилище для систем мониторинга транспорта

    PostgreSQL + PostGIS + TimescaleDB - это готовый к эксплуатации симбиоз из надежной РСУБД, мощного набора географических объектов и вычислений и работа с time-series данными. Данная связка прекрасно решает проблему хранения телеметрии, при этом оставляя в ваших руках всю экосистему PostgreSQL.

  • Сергей Андреев
    Сергей Андреев ООО "Ортикон-Групп" Архитектор
    22 мин

    Что останавливает переход на PostgreSQL и как это побороть

    Несколько реальных кейсов от тех кто остановил переход на PostgreSQL.

  • Дмитрий Юхтимовский
    Дмитрий Юхтимовский Gilev.ru технический лидер
    22 мин

    Магические фокусы с последующим разоблачением (1С+PG)

    Магические фокусы с последующим разоблачением (1С+PG):

    • Фокус первый. Как убедить бухгалтерию купить новый сервер.
    • Фокус второй. Как показать, что MS SQL быстрее PostgreSQL.
    • Фокус третий. Как показать, что PostgreSQL быстрее MS SQL Server.

  • Алексей Фадеев
    Алексей Фадеев Sibedge Старший разработчик .NET, евангелист Postgres.
    45 мин

    ORM: как писать запросы и не сводить с ума СУБД

    Многие специалисты, обслуживающие СУБД не любят эти три буквы - ORM, потому что не раз видели сгенерированные многоэтажные запросы для простейших операций. Однако, практика показывает, что источник проблемы - не ORM, а разработчики, не умеющие ими пользоваться. В этом докладе я расскажу основные принципы, как писать код для ORM, генерирующий «хорошие» запросы, а также покажу «плохие» примеры кода, и что из них получается на выходе. Основные идеи – при написании кода мыслить в SQL, научиться заранее видеть, какой запрос будет сгенерирован. Но даже обретя такой навык нужно всегда проверять выходной SQL для сложных запросов. Приведу конкретный пример, когда незначительное изменение в ORM-логике меняет объём выходного SQL в десятки(!) раз. Расскажу о дополнительных инструментах и хитростях. А именно – отключение трекинга, конструкция Include, разный синтаксис для JOIN, как получить больше данных за меньшее число запросов, как эффективно писать запросы с группировкой, и зачем нужны проекции. Не обойду стороной и случаи, когда эффективно решить задачу средствами ORM не получается (например, запросы с рекурсией). Кроме SELECT-запросов немного расскажу о средствах Batch-Update/Delete, позволяющих обновлять и удалять данные средствами ORM без загрузки на клиент. Несколько слов будет и о вставке – как заставить ORM быстро вставлять большие объёмы данных через Multi-Insert и COPY. Будет упомянуто и о поддержке в ORM специфичных для PostgreSQL типов данных – массивов, hstore и jsonb. Может возникнуть вопрос – а есть ли вообще смысл использовать ORM, раз нужно столькому научиться. Преимущества их использования есть, и об этом тоже будет сказано. Все примеры будут на технологии Entity Framework для платформ .Net Core и .Net Framework на языке C#. Для Hibernate/NHibernate могут быть отличия в некоторых тонкостях, но основные принципы те же, поэтому доклад будет полезен разработчикам, использующим различные технологии.