Метка: postgresql
-
Первичный и внешний ключи PostgreSQL
Статья основана на третьем видео из 30 тем курса SQL c 0 от Аристова Евгения. Ссылки на видео на платформах RUTUBE и VK видео. В данной статье разберем первичные и внешние ключи в PostgreSQL. Первичный ключ Для чего он нужен? Если говорить про искусственный ключ (1, 2, 3 и т.д.), то по номеру примерно понятно,…
-
Нормальные формы. Проектирование
Статья основана на втором видео из 30 тем курса SQL c 0 от Аристова Евгения. Ссылки на видео на платформах RUTUBE и VK видео. В данной статье подробно разбираются нормальные формы, уровни и правила проектирования баз данных. В прошлой статье про реляционную модель не раз упоминался термин нормализация. Пришло время разобрать, что такое нормальные формы.…
-
Реляционная модель
Статья основана на первом видео из 30 тем курса SQL c 0 от Аристова Евгения. Ссылки на видео на платформах RUTUBE и VK видео. В данной статье разбирается история возникновения языка SQL, причины использования PostgreSQL для обучения на данном курсе и его краткая история. Реляционная модель Откуда все началось? А началось всё в 1970 году…
-
Курс SQL c 0
За 30 тем мы освоили установку и работу с Linux и PostgreSQL, научились создавать свои базы данных, таблицы, нормализировать структуру проекта, наполнять/изменять/удалять данные, соединять таблицы, создавать индексы и многое многое другое. Все занятия и материалы доступны в записи на канале в YouTube, RuTube и VK. Обучение происходило на базе PostgreSQL 16 + Ubuntu 22.04. Ссылка…
-
JSONB && TOAST in PostgreSQL
В предыдущей статье мы разобрали как устроен TOAST. Следующий эксперимент – убедиться, что JSONB в TOAST довольно медленный и подвержен bloating. Сгенерируем таблицу 10 тысяч строк из JSONB объектов размером по 10 тысяч элементов: \timing CREATE TABLE t AS SELECT i AS id, (SELECT jsonb_object_agg(j, j) FROM generate_series(1, 1000) j) js FROM generate_series(1, 10000) i;…
-
TOAST in PostgreSQL
Вспомним как хранятся наши строки. Версия строки должна помещаться на одну страницу 8кб (размер по умолчанию, влияние этого размера на производительность будет рассмотрено далее в книге). Если данные в строке превышают этот размер, то: Давайте разбираться, что это такое. Особенности TOAST-таблицы (The Oversized Attribute Storage Technique): Для тестов создадим табличку и посмотрим OID TOAST сегмента…