powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Первичный ключ VARCHAR
25 сообщений из 63, страница 2 из 3
Первичный ключ VARCHAR
    #35051464
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Вам уже пять человек дали свои вразумительные ответы

На Вашем месте я бы просто признался, что лоханулся и невнимательно прочел вопрос.
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35051870
Фотография Роман Дынник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621На Вашем месте я бы просто признался, что лоханулся и невнимательно прочел вопрос.
Были б вы на моем месте, не сделали бы лопухнутых высказываний типа:
guest_20040621
> Первичный ключ VARCHAR
Очень старался, но ничего тупее придумать не смог. :(
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35052049
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да нет, все правильно, по-прежнему ничего тупее придумать не могу.

Домашнее задание:
- найти десять отличий UUID от varchar;
- найти и описать различия при использовании ключей int, UUID и varchar.
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35052402
Фотография Роман Дынник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2 guest_20040621
еще раз:
вы понимаете в каких случаях стоит сделать выбор в сторону GUID для PK?
вы понимаете разницу между типами varchar и uniqueidentifier в mssql?
вы понимаете разницу между rowid (oracle) и GUID-ом?
вы знаете что в oracle и многих других СУБД нет встроенного типа GUID?
вы понимаете что при построенном индексе, в промышленных СУБД на производительности практически никак не сказывается выбор типа для PK int, uniqueidentifier или varchar?
вы когда-нибудь пробовали проводить тесты для того чтобы подтвердить свои предположения?
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35052533
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> вы понимаете в каких случаях стоит сделать выбор в сторону GUID для PK?

UUID, а не GUID. Мелкомягкие поделия с мелкомягкими реализациями меня не интересуют.

> вы понимаете разницу между типами varchar и uniqueidentifier в mssql?

Разницу между UUID и varchar - да, конечно. А вот Вы, похоже, не очень. Настойчиво предлагаю избавиться от мелкомягкой терминологии и перейти к стандартной.

> вы понимаете разницу между rowid (oracle) и GUID-ом?

Конечно. И как это связано с текущим обсуждением?

> вы знаете что в oracle и многих других СУБД нет встроенного типа GUID?

Конечно. Тот же вопрос: как это связано с текущим обсуждением?

> вы понимаете что при построенном индексе, в промышленных СУБД на производительности
> практически никак не сказывается выбор типа для PK int, uniqueidentifier или varchar?

Да ну? Кто ж Вам, дружище, сказал такую чушь?

> вы когда-нибудь пробовали проводить тесты для того чтобы подтвердить свои предположения?

Конечно. Причем, в качестве ключа выступал URN. Так что это не предположения, это абсолютная уверенность.

Результаты Ваших тестов - в студию. Вместе посмеемся.
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35052562
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Тьфу, блин, записался. URI, а не URN.
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35053096
Фотография LR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621Результаты Ваших тестов - в студию. Вместе посмеемся.
Например .

Имхо, более принципиальна альтернатива между "естественным" и "суррогатным". После этого выбора (ЕК или СК) выбор типа либо сужается (интересно, есть ли СУБД поддерживающие "суррогатный" ключ символьного типа?) либо исчезает (ЕК)...

Кстати, тема автора уже давно исчерпана:)
Олег ГапонВопрос был в другом.

Какие подводные камни при миграции с CHAR на VARCHAR.
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35053124
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Например

Ссылаться на заборы - дурной тон. Еще варианты?

> альтернатива между "естественным" и "суррогатным"

Естественных ключей не бывает. Если не понимаете - запомните. Если плохо с памятью - запишите на большом листе бумаги красного цвета.
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35053294
Фотография LR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621> Например

Ссылаться на заборы - дурной тон. Еще варианты?

Там есть исходные скрипты. Дурной тон - делать голословные заявления.

guest_20040621> альтернатива между "естественным" и "суррогатным"

Естественных ключей не бывает. Если не понимаете - запомните. Если плохо с памятью - запишите на большом листе бумаги красного цвета.
Суррогатных тоже не бывает. Бывают "естественные" и "суррогатные". Советовать запомнить то что не понимаешь - также дурной тон.
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35053319
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Дурной тон - делать голословные заявления.

Юноша, у Вас, как Вы говорите, есть "исходные скрипты". Замените в этих "исходных скриптах" ключи на URI, внимательно посмотрите на получившиеся результаты и прекратите е%^&ть мне мозги.

В сторону: ну почему, если у юзера в профиле M$ SQL - все, голова не работает. :( Просто эпидемия какая-то.

> Суррогатных тоже не бывает. Бывают "естественные" и "суррогатные"

К психиатру. А потом - в сад.
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35053337
Фотография LR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621> Дурной тон - делать голословные заявления.

Юноша, у Вас, как Вы говорите, есть "исходные скрипты". Замените в этих "исходных скриптах" ключи на URI, внимательно посмотрите на получившиеся результаты и прекратите е%^&ть мне мозги.

В сторону: ну почему, если у юзера в профиле M$ SQL - все, голова не работает. :( Просто эпидемия какая-то.

> Суррогатных тоже не бывает. Бывают "естественные" и "суррогатные"

К психиатру. А потом - в сад.
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35053416
Фотография shelsoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621

Будте так любезны Вашу аргументацию против (за) GUID в качестве PK
1) Против ...
2) За ..

И результаты Ваших тестов - в студию. Вместе посмеемся


______________________________________________________
Ох ! БолятЪ мои крылья ...
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35053482
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Будте так любезны

Не буду, дружище. Если интересно - пользуйтесь поиском, обсасывалось миллион раз. А если непременно хотите моих аргументов - фигней я занимаюсь по тарифной ставке $700 в час. Минимальный контракт - рабочая неделя. Надумаете - приходите, обхохочетесь.
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35053700
Фотография shelsoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621

Дружище, вы мне напоминаете врача, который все знает и умеет, не не может найти пациентов потому что постоянно к ним опаздывает ... да ладно не будем об этом.

ALL

В 2004 г. выполнил контракт по переводу PK базы системы на GUID, потому что программный комплекс стал "бесконтрольно" тиражироваться.

Код: plaintext
(центральная база)<->(известное количество источников)<->(неизвестное количество источников)

и обеспечить уникальность иным способом (в две строны) стало достаточно накладным мероприятием (об online там и сейчас не мечтают)

Я тогда пессимистически оценивал потерю в быстродействии (где-то до %15) при построении достаточно сложных выборок - хотя чисто по человечески объясните мне разницу между 22 и 25 миллисекундами
- запрос документа из базы)

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




______________________________________________________
Ох ! БолятЪ мои крылья ... (болят очень дорого) :o)
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35053751
Фотография LR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
shelsoftпо переводу PK базы системы на GUID
Надо понимать mssql? Тогда любопытно узнать, кластеризованный или нет? И проводилось какое-нить исследование/тестирование на тему clustered vs nonclustered?
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35053783
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> против GUID для таких систем у меня нет возражений

Дружище, бесспорный лидер по тупым заявлениям - ЧАЛ. На втором месте - Шуклин. Вы боретесь за почетное третье место? Ну тогда активнее нужно это делать, активнее. Иначе так и останетесь во второй десятке.

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

P.S. А если бы Вы, уважаемый, умели читать по-русски, то легко заметили бы, что в этом обсуждении UUID и int ключи не сравнивались.
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35053893
Фотография shelsoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621
Дмитрий, а вы и так в первой пятерке по идио(то)матическим заявлениям и хто вам сказал, что там были int ключи. Эта была прекрасная столь любимая вами поделка пьяного китайского школьника выполненная сначала с int ключами, замененными затем char-овскими якобы гарантирующими уникальность общим центральным весом около 20Гбайт.

P.S. В песочницу извините не могу, она уже внутри


LR
Не кластерный. Не проводилось. Не до этого
Около 8 месяцев убилось только на восстановление непротиворечивости данных и убой дубликатов.




______________________________________________________
Ох ! Болят мои крылья ...
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35053923
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
А если бы Вы чуть-чуть подумали _до_ того, то легко бы заметили, что для децентрализованных систем идентификатор ноды существенно важен; если бы при этом у Вас был бы еще и калькулятор, то так же легко бы заметили, что int8 + int4 (int4 - количество нод; такого количества филиалов, полагаю, даже у Coca-Cola нет) обеспечили бы функционирование системы на ближайшие двести лет.
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35053969
Фотография shelsoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А если бы Вы чуть-чуть внимательно прочитали первый пост то своим мудрым выпуклым глазом заметили почему реализация этого подхода была бы весьма проблематичным.
Софт из "филиалов" стал уходить "клиентам", какие в ж... калькуляторы с нодами, и хто их там будет устанавливать Пушкин или guest_20040621 ? И то что к тому времени в базе уже были GUID позволило не встретится с "маааленькой такой полярной лисичкой"



______________________________________________________
Ох ! БолятЪ мои крылья ...
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35054055
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Сначала создали проблему, потом криво ее разрулили, а потом подумали, все ли сделано правильно. Очень по-русски. В такой интерпретации Ваш опыт использования UUID выглядит более правдоподобно. И что, полагаете, этим нужно хвастать?
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35054313
Фотография LR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
shelsoftНе кластерный. Не проводилось. Не до этого
Понятно. Еще, в таком случае, интересно узнать как определились с кластерными индексами - "индивидуально" для каждой таблицы исходя из ...(каких соображений?) или оставили в "куче"?
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35055313
Фотография shelsoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621

Зачем хвастать, была реальная проблема. Она реально решена. Софт к базе оказался настолько удачным, что "ушел" к клиентам.
Т.е. отметая все лиш(ч)ное и т.д. как-бы приходит мыФль, что решение любой проблемы (в т.ч. и выбора типа PK) в том числе зависит от организационных условий в которых будет эксплуатироваться СУБД и не всегда подчиняется законам ДИМОкратии:

Что такое типа ...

1) ключи типа int - для централизованных систем cо службой централизованной поддержки в т.ч. online
2) ключи типа int8 + int4 для распределенных offline систем, но c организованной службой централизованной поддержки
3) ключи типа UUID для распределенных систем, где централизованная поддержка проблематична или не возможна



LR
Когда мы закончили проект в конце 2004 г. кластерные индексы не использовались, быстродействие было вполне приличным. Фактически заказчик получил новую базу (в смысле организации связей и логики работы) и новый софт для работы с ней.



______________________________________________________
Кстати "guest_20040621", заявленные Вами 700$/час трактуются по-русски очень неоднозначно ...
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35055734
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Она реально решена

Если бы Вашим заказчиком был я, то считал бы, что она решена криво. Если Вашего заказчика решение устраивает - мне это никаких проблем не создает. Заказчик заплатил деньги и получил то, что хотел за эти деньги.

> в том числе зависит от организационных условий

Архитектура - в том числе и выбор ключей - полностью и целиком определяется техническим заданием и ничем другим. А в том, что техническое задание обычно представляет собой кусок дерьма, а не документ, виновата тупость и жадность заказчика. Впрочем, это лирика.
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35055862
Фотография shelsoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621Если бы Вашим заказчиком был я
".. то я бы повесился" (к/ф "ИВМП")
Аналогично наоборот


______________________________________________________
Ох ! Болят мои крылья ...
...
Рейтинг: 0 / 0
Первичный ключ VARCHAR
    #35055884
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> ".. то я бы повесился"

Вы бы получили подробное техническое задание, с которым было бы удобно работать, сервер с софтом для контроля версий, багтракером и пр. фигней, четкий график этапов, отсутствие геморроя и своевременную оплату.
...
Рейтинг: 0 / 0
25 сообщений из 63, страница 2 из 3
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Первичный ключ VARCHAR
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]