powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Идентификатор человека
25 сообщений из 79, страница 2 из 4
Идентификатор человека
    #34145237
Dik76
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
> Автор: SchwanЕсть список людей, есть список их посещений.
> Нужен идентификатор человека для связи этих списков пожизненный..
> Документы (паспорта и т.п.) не подходят, т.к.
> Универсального решения к сожалению сейчас нет...
Паспорт меняется, ИНН просто не у всех, СНИЛС - хоть и должен быть у
всех (это не всегда верно), но к сожалению, по своему опыту могу
сказать, что у разных людей может быть один и тот же... в ПФ тоже люди
работают... в общем стоит думать об механизмах выявления дублей

Posted via ActualForum NNTP Server 1.3
...
Рейтинг: 0 / 0
Идентификатор человека
    #34145729
Schwan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123ГУИД человека не несёт никакой смысловой нагрузки - заменить на счётчик.
______________________________________________
Вы имеете право хранить молчание! Всё что Вы скажете может быть использовано против Вас в суде!

А как объединять базы тогда?
Вообще и в талице состояния идентификатор нужно делать тоже ГУИД, но тогда нужна еще отметка "Текущее"..
...
Рейтинг: 0 / 0
Идентификатор человека
    #34145746
Schwan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Должна быть возможность объединять все данные на уровне учреждения и всех учреждений..

Как поведет себя база с большим объемом данных (милионы) при использовании ГУИД в качестве идентификатора во всех трех таблицах ?
...
Рейтинг: 0 / 0
Идентификатор человека
    #34146002
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SchwanДолжна быть возможность объединять все данные на уровне учреждения и всех учреждений..

Как поведет себя база с большим объемом данных (милионы) при использовании ГУИД в качестве идентификатора во всех трех таблицах ?
Не изобретай велосипед.
Вопрос объединения БД (репликация) при совпадении кодов товара обмусолен в форуме MS SQL Server тысячу и один раз.

ГУИД здесь не поможет и СУБД с ним работает медленнее.
С таким-же успехом (если боятся совпадения счётчика) можно добавлять БД№1 в БД№2 не заполняя счётчик в целевой БД (он сам заполнится).

А вот как ты будешь искать 2-х Ивановых в БД№1 и в БД№2 если базы заполнялись разрозненно это твои проблемы (проектирования).
...
Рейтинг: 0 / 0
Идентификатор человека
    #34146082
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Должна быть возможность объединять все данные на уровне учреждения и всех учреждений..

Очередной национальный проект? Не занимайтесь фигней, заплатите денег тем, кто умеет решать такие задачи.
...
Рейтинг: 0 / 0
Идентификатор человека
    #34146183
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
guest_20040621> Должна быть возможность объединять все данные на уровне учреждения и всех учреждений..

Очередной национальный проект? Не занимайтесь фигней, заплатите денег тем, кто умеет решать такие задачи.вышел закон "О персональных данных" федерального уровня . До 2010 года надо запустить федеральную БД.

Чел наверно оттуда ))))
...
Рейтинг: 0 / 0
Идентификатор человека
    #34146267
Сергей Сергеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Нормализации данных нет вообще имхо.... структуру БД надо перестраивать...
...
Рейтинг: 0 / 0
Идентификатор человека
    #34146454
Schwan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сергей СергеевичНормализации данных нет вообще имхо.... структуру БД надо перестраивать...

А конкретно?
...
Рейтинг: 0 / 0
Идентификатор человека
    #34146478
Schwan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123 SchwanДолжна быть возможность объединять все данные на уровне учреждения и всех учреждений..

Как поведет себя база с большим объемом данных (милионы) при использовании ГУИД в качестве идентификатора во всех трех таблицах ?
Не изобретай велосипед.
Вопрос объединения БД (репликация) при совпадении кодов товара обмусолен в форуме MS SQL Server тысячу и один раз.

ГУИД здесь не поможет и СУБД с ним работает медленнее.
С таким-же успехом (если боятся совпадения счётчика) можно добавлять БД№1 в БД№2 не заполняя счётчик в целевой БД (он сам заполнится).

А вот как ты будешь искать 2-х Ивановых в БД№1 и в БД№2 если базы заполнялись разрозненно это твои проблемы (проектирования).

Есть БД1, есть БД2 - производиться выгрузка данных в какой либо формат, затем данные загружаются в БД3.. (Никакой сети нет!). Если получилось 2 Ивановых, то (если это один и тот же человек), то приводим его к одному (ХП например).. Это если есть ГУИД.. А если нет? Тогда мне непонятно как сохранять связь между данными.. Просветите.. :)
...
Рейтинг: 0 / 0
Идентификатор человека
    #34146486
Фотография adv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Schwan Сергей СергеевичНормализации данных нет вообще имхо.... структуру БД надо перестраивать...

А конкретно?например1: человек сменил фамилию (ИО).

например2: одно посещение по нескольким причинам; по одной причине несколько результатов.

например3: у человека несколько статусов.
...
Рейтинг: 0 / 0
Идентификатор человека
    #34146546
Schwan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
adv Schwan Сергей СергеевичНормализации данных нет вообще имхо.... структуру БД надо перестраивать...

А конкретно?например1: человек сменил фамилию (ИО).

например2: одно посещение по нескольким причинам; по одной причине несколько результатов.

например3: у человека несколько статусов.

1) Да если человек сменил фамилию, то мы теряем информацию о том какая фамилия у него раньше была.. но нам это не важно, гораздо важнее, что мы знаем, что это тот же самый человек..

2) Таблицу посещений давайте трогать не будем пока - поля которые я прописал в ней условные, я лишь пытался показать связь между таблицами..

3) ДА учеловека несколько статусов: эта таблица используется для того чтобы хранить информацию о них - т.е. знать какой статус был у человека при каждом конкретном посещении. Но мы должны естественно знать текущий (последний) статус (либо максимальный код, либо если код ГУИД, то тогда нужна отметка что статус текущий (логическое поле)..
...
Рейтинг: 0 / 0
Идентификатор человека
    #34146557
Schwan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне важно принципиальное построение БД для такой задачи: т.к. объемы данных будут довольно большие и использоваться будет много лет..
...
Рейтинг: 0 / 0
Идентификатор человека
    #34146569
Фотография adv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1. весело будет искать по фамилии, например, посещения товарища. Или вы по ид искать будете:)?

2. не трогаем по просьбе трудящихся.

3.
>т.е. знать какой статус был у человека при каждом конкретном посещении
при конкретном посещении, например, два статуса - что делаем?
...
Рейтинг: 0 / 0
Идентификатор человека
    #34146592
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Аффтар! У вас репликация? Или вы это слово не знаете? Если знаете то по какому типу?
______________________________________________
Вы имеете право хранить молчание! Всё что Вы скажете может быть использовано против Вас в суде!
...
Рейтинг: 0 / 0
Идентификатор человека
    #34146785
Schwan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
adv1. весело будет искать по фамилии, например, посещения товарища. Или вы по ид искать будете:)?

2. не трогаем по просьбе трудящихся.

3.
>т.е. знать какой статус был у человека при каждом конкретном посещении
при конкретном посещении, например, два статуса - что делаем?

1) Запрос типа:
SELECT ПОСЕЩЕНИЯ.*
FROM (ПОСЕЩЕНИЯ LEFT JOIN СОСТОЯНИЯ ON ИД_ПОСЕЩЕНИЯ.ИД_СОСТОЯНИЯ=СОСТОЯНИЯ.ИД_СОСТОЯНИЯ) LEFT JOIN ЛЮДИ ON (СОСТОЯНИЯ.ИД_ЧЕЛОВЕКА=ЛЮДИ.ИД_ЧЕЛОВЕКА)
WHERE ЛЮДИ.ФАМИЛИЯ LIKE "ПЕТРОВ%"

Должен вывести посещения всех Петровых и Петровских.. Или Вы имеете ввиду что эти запросы будут "тяжелые"?

2) Как может быть два статуса при одном посещении: в таблице ПОСЕЩЕНИЯ только один код статуса.. Т.е. связь один ко многим (Один статус - много посещений). Если статус изменился создаем новый на основе данных предыдущего.. Не может же быть у человека два паспорта одновременно?
...
Рейтинг: 0 / 0
Идентификатор человека
    #34147303
aag
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проблема идентификации физлиц уже обсуждались, можете поискать.
Конкретно, Dik76 к сожалению прав - универсального 100%-го решения нет.
Есть решения с большей или меньшей надежностью - сравнение по ФИО + дата рождения + ИНН + паспорт. Дополнительно - здесь уже кто-то предложил интересный вариант - сравнений цифр в адресе (кроме индекса). Для сравнения ФИО можно попробовать нечеткий поиск - дабы ловить ФИО, набитые с ошибками.
Полной гарантии эти способы не дадут, но... приблизят.


Nobody faults but mine... (LZ)
...
Рейтинг: 0 / 0
Идентификатор человека
    #34147314
Schwan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Petro123Аффтар! У вас репликация? Или вы это слово не знаете? Если знаете то по какому типу?
______________________________________________
Вы имеете право хранить молчание! Всё что Вы скажете может быть использовано против Вас в суде!

Да с репликациями не фонтан.. :)
Подскажите тогда как реплицировать БД на двух компьютерах с MSDE и без сети?
...
Рейтинг: 0 / 0
Идентификатор человека
    #34147330
Schwan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
aagПроблема идентификации физлиц уже обсуждались, можете поискать.
Конкретно, Dik76 к сожалению прав - универсального 100%-го решения нет.
Есть решения с большей или меньшей надежностью - сравнение по ФИО + дата рождения + ИНН + паспорт. Дополнительно - здесь уже кто-то предложил интересный вариант - сравнений цифр в адресе (кроме индекса). Для сравнения ФИО можно попробовать нечеткий поиск - дабы ловить ФИО, набитые с ошибками.
Полной гарантии эти способы не дадут, но... приблизят.


Nobody faults but mine... (LZ)

Для набивки имен и отчеств используются справочники.. Для идентификации человека несколько параметров Ф.И.О.+Дата рождения+место рождения, можно использовать СНИЛС и т.д.
Весь вопрос теперь в другом: какую структуру БД создать чтобы была возможность объединения данных?
...
Рейтинг: 0 / 0
Идентификатор человека
    #34147469
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
SchwanВесь вопрос теперь в другом: какую структуру БД создать чтобы была возможность объединения данных?
репликация, либо административными мерами (ты не трогаешь моих, я не трогаю твоих) :))
...
Рейтинг: 0 / 0
Идентификатор человека
    #34147947
Фотография adv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Schwan1) Запрос типа:
SELECT ПОСЕЩЕНИЯ.*
FROM (ПОСЕЩЕНИЯ LEFT JOIN СОСТОЯНИЯ ON ИД_ПОСЕЩЕНИЯ.ИД_СОСТОЯНИЯ=СОСТОЯНИЯ.ИД_СОСТОЯНИЯ) LEFT JOIN ЛЮДИ ON (СОСТОЯНИЯ.ИД_ЧЕЛОВЕКА=ЛЮДИ.ИД_ЧЕЛОВЕКА)
WHERE ЛЮДИ.ФАМИЛИЯ LIKE "ПЕТРОВ%"

Должен вывести посещения всех Петровых и Петровских.. Или Вы имеете ввиду что эти запросы будут "тяжелые"?
Я имел ввиду, что если петров поменял фамилию на сидоров, то вашим запросом вы не найдёте его посещения.

автор
2) Как может быть два статуса при одном посещении: в таблице ПОСЕЩЕНИЯ только один код статуса.. Т.е. связь один ко многим (Один статус - много посещений). Если статус изменился создаем новый на основе данных предыдущего.. Не может же быть у человека два паспорта одновременно? автор7) СТАТУС (ПЕНСИОНЕР,СТРУДЕНТ И Т.П.)не раскрывая итп товарисчь может быть и пенсионером (ex. военным) и студентом (ex. заочником).
...
Рейтинг: 0 / 0
Идентификатор человека
    #34147998
laleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вчера попытался ответить, подготовил текст, что-то не сложилось. Пробую.
...
Рейтинг: 0 / 0
Идентификатор человека
    #34148046
laleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть опыт анализа БД на 400 000 человек.
Данные взяты по миллионному городу (6 городских районов). Анализировались два городских района. Данные реальные по избирательным участкам.
Сколько ошибок данных пришлось обработать!
Разработаны справочники мужских и женских имен, мужских и женских отчеств.
Фамилии являются достаточно уникальными - в справочник не встали!
Ключ: Фамилия +КодИмени+КодОтчества+годрождения+место рождения.
Вероятность повтора 1 на 5 000 000.
Попутно были найдены двойники в избирательных списках. Немного, около 100 человек.
Неправильно провели границу между участками!
Вместо года рождения лучше взять дату рождения.
За место рождения в крупном городе - считать адрес прописки родителей на момент рождения.
Идеальным, наверное является свидетельство о рождении.
Пока все. Но материала много.
С уважением.
...
Рейтинг: 0 / 0
Идентификатор человека
    #34148086
laleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Одним из важных вопросов является реализация алгоритма сравнения введенной ошибочной информации и эталонной (находящейся в справочнике.)
Структура БД (MSSQL 2000) не представляет сложностей.
Одна из трудностей - работа в реальном времени. Когда у окошка регистрации очередь более 30 человек в течение 3-4 часов. Пропускная способность 2 мин на человека. Около 100-150 человек в пиковом режиме. Документы не у всех. Документы разные.
С уважением.
...
Рейтинг: 0 / 0
Идентификатор человека
    #34148134
laleks
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Уважаемые модераторы!
Почему отправленные сегодня (22.11.2006 18:35-18:40 мск) сообщения задвигаются на 2-ю страницу. Нет среди актуальных ответов?
С уважением.
22.11.2006 19:10 мск
...
Рейтинг: 0 / 0
Идентификатор человека
    #34148332
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
> Фамилии являются достаточно уникальными - в справочник не встали!

Это ошибка.

> Ключ: Фамилия +КодИмени+КодОтчества+годрождения+место рождения.

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


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