PostgreSQL в «Тензоре» — публикации за год (#5)

476192f9edf42353fb78f4c1388a3679.png

Под занавес уходящего года предлагаю традиционно вспомнить, про какие интересные возможности и особенности работы с PostgreSQL мы рассказали в нашем блоге.

Если не видели дайджест за прошлый год — время наверстать упущенное!

Курс «PostgreSQL для начинающих»

Продолжаем публикацию лекций курса для тех, кто только-только начинает изучать PostgreSQL.

11.09 — #4 — Анализ запросов (ч.2 — узлы получения данных) (+23, *160)

02.04 — #4 — Анализ запросов (ч.1 — как и зачем читать планы) (+37, *324)

10.01 — #3 — Сложные SELECT (+34, *247)

Анализ запросов в PostgreSQL

Как мы анализируем планы запросов, чтобы сделать их максимально быстрыми.

23.04 — Неожиданные последствия запуска PostgreSQL в Docker: замедление запросов в 100 раз (+93, *292)

Почему быстрый запрос стал медленным на сервере клиента.

11.03 — Бьемся с индексацией парных неравенств в PostgreSQL (+18, *46)

Как можно переписать запрос и какой индекс стоит использовать, если у вас задача отобрать данные сразу по двум диапазонам (x > ca) AND (y > cb).

Серия статей по разработке IDE-плагинов для анализа запросов

25.03 — Плагин для анализа планов PostgreSQL в Sublime Text и его разработка (+9, *20)

20.03 — Плагин для анализа планов PostgreSQL в VS Code и его разработка (+11, *48)

06.02 — Плагин для анализа планов PostgreSQL в Eclipse и DBeaver и его разработка (+10, *29)

15.01 — Плагин для анализа планов PostgreSQL в IDE JetBrains и его разработка (+17, *61)

SQL Antipatterns и оптимизация SQL

Как поправить наиболее частые ошибки разработчиков при работе с базой.

14.10 — «вращаем» JSON (+26, *35)

Избавляемся от копипасты при решении задачи поиска подходящей локализации строки.

07.10 — валим «слона» — highload на ровном месте (+28, *106)

Классические ситуации, когда разработчики начинают жаловаться на производительность БД -, а виновата-то и не она!

30.09 — устраняем вложенные интервалы (+36, *77)

Как можно в 40 раз ускорить поиск вложенных интервалов на одной таблице.

14.05 — Бэкэнд для начинающих или типовые ошибки бэкэндера (+61, *192)

Разберем типовые ошибки, которые допускаются при работе с SQL‑базами данных в рамках сервиса с высокой нагрузкой и конкурентными запросами.

SQL HowTo

Учимся писать нетривиальные SQL-запросы для решения прикладных задач.

27.12 — рекурсивные циклы и их контроль (Advent of Code 2024, Day 6: Guard Gallivant) (+5, *11)

Тратим 40 минут на выполнение запроса, чтобы понять, как зациклить охранника.

25.12 — поиск в словаре и массивах, сортировка «пузырьком» (Advent of Code 2024, Day 5: Print Queue) (+10, *6)

Сортируем массивы, используя пользовательские правила упорядочивания.

23.12 — работа с массивами (Advent of Code 2024, Day 4: Ceres Search) (+7, *13)

Ищем слово в матрице во всех возможных вариантах написания.

23.12 — «чистые» регулярки (Advent of Code 2024, Day 3: Mull It Over) (+8, *3)

Иногда для решения задачи не нужно ничего, кроме пары регулярок…

23.12 — логические агрегаты (Advent of Code 2024, Day 2: Red-Nosed Reports) (+8, *8)

Учимся анализировать и «переклеивать» массивы.

23.12 — регулярные выражения и условная агрегация (Advent of Code 2024, Day 1: Historian Hysteria) (+9, *13)

Анализируем сходство пары списков.

12.12 — агрегация внутри рекурсии (Advent of Code 2024, Day 11: Plutonian Pebbles) (+19, *20)

Считаем камни с помощью «ветвящейся» рекурсии.

23.09 — Black and White (Puzzle Hunt 2010) (+25, *26)

Используем регулярные выражения, GROUPING SETS, массивы и рекурсию, чтобы разместить плитки на поле.

12.09 — загадка Эйнштейна, или снова Джиндош (+25, *25)

Решаем классическую головоломку «в общем виде» с помощью поисков в массивах и логических агрегатов.

15.03 — один индекс на два диапазона (+21, *49)

Как можно эффективно отбирать данные для решения задачи вроде «найди мне все продажи за декабрь на сумму 10–20K».

Микропостинг

13.08 — Пустой параметр-массив и расширенный navbar (+4, *7)

02.02 — Бесполезный CASE #2 (+7, *4)

25.01 — Бесполезный CASE (+8, *11)

© Habrahabr.ru