Удивительное и невероятное о первичных ключах PostgreSQL: serial, bigserial, UUID v4, ULID, UUID v6 HD

Удивительное и невероятное о первичных ключах PostgreSQL: serial, bigserial, UUID v4, ULID, UUID v6
00:51:10
Обнаружено блокирование рекламы на сайте

Для существования нашего сайта необходим показ рекламы. Просим отнестись с пониманием и добавить сайт в список исключений вашей программы для блокировки рекламы (AdBlock и другие).

12n.ru 19130 роликов

serial, bigserial, UUID v4, ULID, UUID v6.

Всё о первичных ключах в PostgreSQL. Простые и составные, естественные и искусственные, искусственные числовые, UUID v4, ULID, UUID v6 — в чём разница и когда что выбирать.

Книжный клуб:
t.me/t0digital/528
botanim.to.digital/
botanim_to_digital_bot.t.me/

ULID для PostgreSQL:
github.com/geckoboard/pgulid/blob/master/pgulid.sql (но возвращает text)

UUID v6 для PostgreSQL:
gist.github.com/fabiolimace/515a0440e3e40efeb234e12644a6a346

00:00:00 План
00:00:45 Что такое первичный ключ
00:00:44 Простые и составные ключи
00:02:53 Естественные и искусственные ключи
00:07:04 Что лучше — естественные или искусственные ключи?
00:14:21 UUID, GUID
00:17:08 Преимущества UUID в качестве первичного ключа
00:19:55 Недостатки UUID в качестве первичного ключа
00:26:26 CLUSTER
00:27:55 ULID
00:31:24 UUID v6
00:32:31 Префиксы первичных ключей
00:35:55 Реализация естественного ключа
00:36:36 Реализация ключа числовой последовательности
00:40:02 Реализация IDENTITY COLUMN
00:41:50 Реализация UUID v4
00:43:25 Реализация UUID v6
00:45:17 Размер данных
00:47:22 Резюме
00:49:50 Благодарность

/****************** about ******************/

Меня зовут Алексей Голобурдин, я программирую с 2004 года и на этом канале делюсь своим опытом. Я основатель и руководитель компаний:

— Диджитализируй digitalize.team, разрабатываем сложные IT системы для бизнеса;
— Salesbeat salesbeat.pro, комплексный модуль доставки для интернет магазинов.

Telegram канал — t.me/t0digital
ВК — vk.com/digitalize.team
RuTube — rutube.ru/channel/24802975/about/
Дзен — dzen.ru/id/6235d32cb64df01e6e78c883

RSS
Владимир Барков
15:20
Главный недостаток естественного ключа заключается в том что как только на запись с таким ключом появляется ссылка из другой таблицы, то менять этот ключ придётся как в самой таблице, так и во всех таблицах где на запись есть ссылки. Причём делать это придётся в одной транзакции с отложеной проверкой целостности. А ошибиться пользователь может очень легко и ошибочно вбитый номер телефона или паспорта который оказался ключом может вылиться в ряд неприятностей. Поэтому если у вас на таблицу есть ссылки, то очень хорошо подумайте прежде чем делать в этой таблице естественный ключ.
vlad promzelev
18:32
еще есть snowflake ID.
Александр Кучук
14:42
Мысль про ключи естественные ок, но пример с номером телефона плох(опасен). Клиент может захотеть сменить номер телефона и вот тут придётся менять ваш PK, что выльется в проблемы и боль миграций.
Michael
08:04
Слишком много словесного мусора: повторений, рассуждений о пользе мыслительного процесса и т.д. Поэтому видео на 50 минут. Ну, вы же не Дудь!
Dilmurod
14:58
Просто для заметки:
Если x = «Иногда» и y = «Всегда» то
y = K * x, при условии К — частота случае «Иногда» и она стремиться к бесконечности )))))
Сергей Родин
10:53
05:57 а зачем использовать для этого именно композитный первичный ключ-то?
Первичный ключ — он для идентификации. Для избежания дублирования просто создаёшь индекс уникальности по нужным колонкам. Это то, что делает первичный ключ, кстати.
Ya Dev
19:33
А что случилось с терминалом, почему он криво показывает?
Pepil
17:21
Спасибо, много нового узнал.
Георгий Гаврилов
18:35
Случайно наткнулся на видео, не лишним было бы упомянуть про вставку батчем и генерацию айдишников на стороне бэка.
Vladimir Eliseev
14:18
Спасибо за видео!
У меня тоже была как проблема с инкрементом sequence, когда я прям на горячем проде с 150k rpc в секунду добавил строку вручную с явным указанием id.
И как посыпались ошибки! Ух… Хорошо быстро поправил sequence номер.

Новости

ITKey получила сертификат ФСТЭК на облачную платформу KeyStack RedLab приняла участие в реализации проекта по обеспечению стабильного и прозрачного обмена данными между 1С и интернет-магазином ​В Рег.облаке появилась защищенная операционная система РЕД ОС для регламентированных ИТ-сред Вебинар: Чего требовать от DLP в 2026-м: взгляд от практика и аналитика Международный FMCG-холдинг в России развивает интегрированное планирование на базе Optimacros

ITKey получила сертификат ФСТЭК на облачную платформу KeyStack


17 часов назад
ITKey получила сертификат ФСТЭК на облачную платформу KeyStack
ITKey получила сертификат ФСТЭК на облачную платформу KeyStack
RedLab приняла участие в реализации проекта по обеспечению стабильного и прозрачного обмена данными между 1С и интернет-магазином
RedLab приняла участие в реализации проекта по обеспечению стабильного и прозрачного обмена данными между 1С и интернет-магазином
​В Рег.облаке появилась защищенная операционная система РЕД ОС для регламентированных ИТ-сред
​В Рег.облаке появилась защищенная операционная система РЕД ОС для регламентированных ИТ-сред
Вебинар: Чего требовать от DLP в 2026-м: взгляд от практика и аналитика
Вебинар: Чего требовать от DLP в 2026-м: взгляд от практика и аналитика
Международный FMCG-холдинг в России развивает интегрированное планирование на базе Optimacros
Международный FMCG-холдинг в России развивает интегрированное планирование на базе Optimacros