История про уникальные ID заиграла новыми красками:
kouzdra — 22.11.2016 Мой пост собственно был навеян постом bowhill посвященным пропаганде нехитрой идеи, что в БД нехорошо закладываться на "хорошие" свойства данных из внешенго мира ибо:внешние данные не контролируются системой, а значит, не контролируется и схема, её качество. Ну и что? Помимо прочего, написал для себя несколько кратких утвержденийЧто собственно и иллюстрировалось примером с башкирскими паспортами
1. Данные создаются вне ограничений и контроля.
2. Любые внешние данные могут содержать неустранимые ошибки, это вопрос вероятности.
3. Что означает, для внешних данных нельзя говорить об уникальности и других ограничениях.
4. Использование внешних данных в отображениях схемы означает создание некорректных отображений схемы.
В ответ на что Вопа Патрышев в комментах заметил:
А вот с SSN туго. Мы просто, не думая, объединяли информацию. Потому что это в этой стране однозначно идентифицирует человека. У нас, правда, это было связано только с аккаунтом. Ну и, главное, Фиделити идентифицирует человека по ССН. Смешно другое, что показывать ССН нигде нельзяНу я несколько усомнился, а Витус немедленно подогнал ссылку на исследование, где говорится:
– 6.1 percent of Americans have at least two SSNs associated with their name. More than 100,000 Americans have five or more SSNs associated with their name.Вове можно пожелать пожаловать в реальный мир :)
– More than 15 percent of SSNs are associated with two or more people. More than 140,000 SSNs are associated with five or more people. Significantly, more than 27,000 SSNs are associated with 10 or more people.
PS: Само по себе это неудивительно - SSN - штука старая, времен когда никаких возможностей технически гарантировать защиту от ошибок и дублирования не было (да вероятно и не очень нужно)