SQL и Анализ данных
12.4K subscribers
752 photos
91 videos
4 files
765 links
Базы данных и всё, что с ними связано!

Сотрудничество: @haarrp

РКН № 6766085482
Download Telegram
💻 Почему DELETE в PostgreSQL не освобождает место?

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

Вы узнаете, что происходит с таблицей после DELETE, почему она может раздуваться со временем и почему простого удаления строк недостаточно для освобождения памяти.

100❤️ — выпускаем следующую часть

➡️ SQL Community | #обучение
Please open Telegram to view this post
VIEW IN TELEGRAM
❤132👍11🔥6
Please open Telegram to view this post
VIEW IN TELEGRAM
😁31😭14💯6
Под какой буквой правильный ответ?
Anonymous Quiz
9%
A
29%
B
30%
C
32%
D
🔥5💊1
💻 Выжимаем максимум из PostgreSQL

В статье разбираются реальные тесты производительности PostgreSQL на разных серверных конфигурациях и их влияние на скорость работы базы данных.

Автор показывает, как меняются результаты в зависимости от процессора, дисковой системы и настроек, и какие параметры дают максимальный прирост.

⛓ Читать статью

➡️ SQL Community | #статья
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤5
Please open Telegram to view this post
VIEW IN TELEGRAM
😁70❤5💯2😢1
❔ Вопрос с собеседования

Почему PostgreSQL не изменяет строки «на месте»?

Ответ: PostgreSQL использует MVCC, для создания новой версии строки при каждом изменении. Это позволяет избежать блокировок и изолировать транзакции друг от друга. Старые версии строк остаются в таблице, пока не будут удалены командой VACUUM.

➡️ SQL Community | #собеседование
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥19🤯5👏3🤔2
💻 Как работает VACUUM в PostgreSQL и почему он необходим?

В прошлой части мы выяснили, что DELETE не удаляет данные полностью — они продолжают занимать место в таблице. Если не очищать «мёртвые» строки, база начнёт раздуваться без причины.

Сегодня разберём, как VACUUM решает эту проблему, почему он не уменьшает размер файла на диске и когда может понадобиться его ручной запуск.

100❤️ — выпускаем следующую часть

➡️ SQL Community | #обучение
Please open Telegram to view this post
VIEW IN TELEGRAM
❤81🔥10👍4💊1
❔ Вопрос с собеседования

Что делает VACUUM в PostgreSQL?

Ответ: VACUUM помечает мёртвые строки как доступные для перезаписи, позволяя базе использовать освободившееся пространство. Однако он не уменьшает размер файла таблицы на диске, а только предотвращает её разрастание.

➡️ SQL Community | #собеседование
Please open Telegram to view this post
VIEW IN TELEGRAM
👍30❤7🔥6
💻 SQL HowTo: агрегация внутри рекурсии

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

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

⛓ Читать статью

➡️ SQL Community | #статья
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9❤3🔥3
Please open Telegram to view this post
VIEW IN TELEGRAM
😁74❤‍🔥13❤2👍1
❔ Вопрос с собеседования

Удаляются ли строки при DELETE в PostgreSQL?

Ответ: Нет, DELETE только помечает строки как «мёртвые». Они остаются в таблице и продолжают занимать место, пока VACUUM не сделает их доступными для перезаписи. Без очистки таблица будет разрастаться.

➡️ SQL Community | #собеседование
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥22👍13❤6
💻 Учебный курс по оптимизации запросов

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

Разбираются механизмы планирования и выполнения запросов, настройка параметров оптимизации, работа с EXPLAIN ANALYZE и подходы к выявлению узких мест.

▶️ Оптимизация запросов

➡️ SQL Community | #полезное
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11❤5
❔ Вопрос с собеседования

Что такое табличные пространства и зачем они нужны?

Ответ:
Табличные пространства позволяют управлять расположением данных на диске. Например, можно разместить часто используемые таблицы на быстром SSD, а архивные данные — на медленном HDD. Это полезно для оптимизации производительности и управления дисковым пространством.

➡️ SQL Community | #собеседование
Please open Telegram to view this post
VIEW IN TELEGRAM
👍26❤7🔥7