@kiru
Аналитик

Проблема при сливании данных из разных источников. Какой из атрибутов сделать ключевым в БД?

Добрый день!

Описание проблемы:
Система для крупных фирм занимающихся маркетингом и анализом данных о конкурентах
Одна из функций учет данных о фирмах и их структуре (дочьки, филиалы и т.д.) и передача данных в Центральный офис
Т.е. клиентские машины с сервером установлены в разных городах (представительствах).

Атрибуты. Например:
Короткое наименование: Рул
Полное наименование: ООО "НК Рул"
ИНН: 546456456
Организаонная форма: Общество с ограниченной ответственностью
Страна: Россия
Адрес: Сыктывкар, ул. Марка, 7
Деятельность: Продажа и добыча драг металлов
Вышестоящая фирма: ОАО "Рарус"
Нижестоящие фирмы: ООО "КХТ", ООО "БРАК"
Владелец: Сидоров ИП

Аналитик каждые сутки передает информацию о в Центральный офис аналитиков.
Система многосерверная. Т.е. БД данных не централизованная. Для того чтобы информация об объетах и их структуре была идентична информация о структуре передается в центральный офис. Скажем так, для выравнивания структуры.

Логичнее предположить что ключевой атрибут это "полное наименование" или ИНН. Но есть одно но,
в процессе анализа выявляются фирмы (дочьки) данные о которых не полные. Например:
"Появилась информация о некой фирмы зарегистрированную в г. Башма, владелец Майкол. Имеется информация о том что эта фирма связана с ОАО "Рузатана". Прошу учесть и проверить"

Т.е. на одном из клиентских машин будет зафиксирована инфа об объете без его наименование. И нужно будет эту инфу отправить.

Подскажите пожалуйста, какой атрибут (или чтото "другое") сделать ключевым и почему?

с уважением
  • Вопрос задан
  • 323 просмотра
Пригласить эксперта
Ответы на вопрос 4
Rou1997
@Rou1997
или чтото "другое"

Создать отдельное поле id и сделать ключевым.
Ответ написан
Konstantin18ko
@Konstantin18ko
Стоматолог
id_company (int) и все. Больше ничего не надо.
Ответ написан
@zuzuzu
Профессиональный бездельник
Ребята правильно пишут про айдишник. Раз у тебя полнота данных не определена, то единственным постоянно присутствующим элементом записи будет дополнительное поле айдишника.
Ответ написан
jaxtr
@jaxtr
JavaEE/Spring-разработчик
Генерируемый ID в данном случае будет единственным правильным решением, int/long или UUID - в зависимости от взглядов/пожеланий. В своё время пробовал различные идентификаторы вроде ИНН, КПП и т.д. делать ключами, но ничего хорошего не вышло из этого - полноценность вводимых данных конечным пользователем, как правило, не гарантирована, ровно как и их достоверность.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы