СПОСОБ СОХРАНЕНИЯ И ИЗМЕНЕНИЯ ЭТАЛОННОЙ И ИСХОДНОЙ ЗАПИСЕЙ В ИНФОРМАЦИОННОЙ СИСТЕМЕ УПРАВЛЕНИЯ ДАННЫМИ
METHOD OF PRESERVING AND CHANGING REFERENCE AND INITIAL RECORDS IN AN INFORMATION DATA MANAGEMENT SYSTEM

Область техники:
[0001] Изобретение относится к области вычислительной техники, а именно к информационным системам управления основными данными предприятия.
Уровень техники:
[0002] Из уровня техники известна система управления основными данными на основе правил, заданных для записей и атрибутов, описанная в US 8341131 В2, кл. G06F 17/30. Известная система включают в себя сервер для управления основными данными, выполненный с возможностью: приема множества записей от множества источников, обнаружение связи между принятым множеством записей, выбор одной из записи в качестве основной, изменения поля основной записи в соответствии с правилом и сохранение измененной записи.
[0003] Однако, известной системе присущи ряд недостатков, в числе которых: в случае изменения правил построения эталонных записей, сохраненные эталонные записи становятся не актуальными и требуется перерасчет эталонных записей на основе сохраненных исходных записей и новых правил построения эталонных записей. Данная операция является асинхронной по своей природе, то есть выполняется параллельно и независимо от других операций в системе. Также данная операция может занимать продолжительное время, в течении которого система будет возвращать на запросы пользователей неактуальные данные, либо не возвращать их вовсе о тех пор, пока не будет рассчитана новая эталонная запись.
Раскрытие изобретения:
[0004] Задачей изобретения является устранение указанных выше недостатков.
[0005] Техническим результатом при этом является повышение эффективности сохранения и изменения исходных и эталонных записей данных предприятия за счет снижения нагрузки на вычислительную систему, сокращения времени обработки исходных записей и изменения или создания эталонных записей, минимизация количества сбоев или ошибок при изменении и сохранении эталонных и исходных записей в информационной системе управления данными.
[0006] Указанный технический результат достигается за счет способа сохранения и изменения эталонной и исходной записей в информационной системе (ИС) управления данными, включающего этапы, на которых выполняют:
(a) прием и сохранение в сервере информационной системы новой или обновленной исходной записи, и в случае сохранения новой исходной записи, присваивают ей идентификационный номер (ID) исходной записи, где исходная запись представляет собой данные, включающие атрибут и значение атрибута, а в случае получения обновленной исходной записи, сервер заменяет ранее сохраненную исходную запись на обновленную исходную запись, в случае, если версия обновленной исходной записи выше версии ранее сохраненной исходной записи;
(b) поиск исходных записей, схожих с сохраненной исходной записью, при этом каждой исходной записи соответствует эталонная запись, где эталонная запись представляет собой объединение двух и более исходных записей или является исходной записью, при этом у каждой эталонной записи есть идентификационный номер (ID);
(c) получение упомянутым сервером запроса на поиск в базе данных упомянутого сервера эталонной записи, по меньшей мере, от одного удаленного вычислительного устройства;
- в случае указания в упомянутом запросе ID эталонной записи, извлечение из базы данных всех исходных записей, связанных с ID эталонной записи и вывод, по меньшей мере одному удаленному вычислительному устройству извлеченных исходных записей,
- в случае указания в упомянутом запросе ID исходной записи, поиск ID эталонной записи, связанной с ID исходной записи, указанным в запросе, извлечение из базы данных всех исходных записей, связанных с найденным ID эталонной записи, и вывод, по меньшей мере одному удаленному вычислительному устройству извлеченных исходных записей;
(d) изменение эталонной записи на основании всех извлеченных исходных записей и на основании правил изменения эталонной записи, где правила изменения эталонной записи определяют, какое значение атрибута эталонной записи должно быть изменено в упомянутой эталонной записи;
(e) сохранение в базе данных сервера хранения и обработки данных измененной эталонной записи.
[0007] Дополнительно этап поиска исходных записей включает:
- создание новой эталонной записи, соответствующей сохраненной исходной записи, если не найдена исходная запись, схожая с сохраненной исходной записью; и
- если найдена исходная запись, схожая с сохраненной исходной записью, определение ID эталонной записи, соответствующей найденной исходной записи и сохранение ассоциации определенного ID эталонной записи с сохраненной исходной записью.
[0008] Очевидно, что как предыдущее общее описание, так и последующее подробное описание даны лишь для примера и пояснения и не являются ограничениями данного изобретения.
Краткое описание чертежей:
[0009] На фиг. 1 показана обобщенная схема системы сохранения и изменения эталонной и исходной записей в информационной системе (ИС) управления данными предприятия.
[0010] На фиг. 2 представлена блок-схема процесса сохранения ассоциации определенного идентификационного номера (ID) эталонной записи с сохраненной исходной записью.
[0011] На фиг. 3 представлена блок-схема процесса изменения и сохранения измененной эталонной записи на основании всех извлеченных исходных записей и на основании правил изменения эталонной записи.
Осуществление изобретения:
[0012] Далее со ссылкой на фиг. 1 будет описана работа системы сохранения и изменения эталонной и исходной записей в информационной системе (ИС) управления данными предприятия на аппаратном уровне. Упомянутая система содержит сервер ИС 101 для хранения и обработки данных, сеть передачи данных 102, по меньшей мере, одно удаленное вычислительное устройство 103, содержащее базу данных (не показано на фиг.).
[0013] Сервер 101 выполнен с возможностью приема и передачи различных данных от и к, по меньшей мере, одному вычислительному устройству 103. Например, сервер 101 может импортировать входные записи из удаленного вычислительного устройства 103 или экспортировать записи в удаленное вычислительное устройство 103 посредством обмена данными протокола HyperText («HTTP») или любого другого типа обмена данными. Сервер 101 содержит базу данных, которая может быть выполнена в виде реляционной базы данных, такой как SAP MaxDB, Oracle, Microsoft SQL Server, IBM DB2, Teradata и т.д. Сервер 101 посредством, по меньшей мере, одной упомянутой базы данных обеспечивает управление основными данными предприятия, которая хранятся в базе данных в виде таблиц. Упомянутые таблицы могут быть распределены между несколькими реляционными базами данных, размерными базами данных и/или другими источниками данных. В качестве другого примера упомянутая база данных может быть многомерной базой данных, документом eXtendable Markup Language («XML») или любой другой структурированной системой хранения данных.
[0014] Сеть передачи данных 102 обеспечивает прием и/или передачу данных между сервером 101 и, по меньшей мере, одним удаленным вычислительным устройством 103. Сеть 102 может быть локальной и/или глобальной (Интернет) и/или публичной и/или частной или любой другой сетью, обеспечивающей прием и/или передачу данных.
[0015] Удаленное вычислительное устройство 103 выполнено в виде стационарного персонального компьютера (ПК), мобильного вычислительного устройства, сервером или любым другим вычислительным устройством, обеспечивающим хранение данных. Удаленным вычислительным устройством 103 также может быть устройство пользователя, отправляющее запрос на импорт/экспорт данных, хранящихся в упомянутом сервере 101.
[0016] Далее со ссылкой на фиг. 2 будет описан процесс сохранения ассоциации определенного идентификационного номера (ID) эталонной записи с сохраненной исходной записью. Данный процесс выполняется на сервере 101 посредством обмена данными между сервером 101 и удаленными вычислительными устройствами 103.
[0017] Процесс работы сервера 101 обеспечивает сохранения исходных данных предприятия в соответствии со следующими действиями. На этапе 201 сервер 101 принимает входную исходную запись. Под исходной записью подразумеваются данные, полученные от удаленной информационной системы-источника данных. Каждая исходная запись состоит из данных и идентификационного номера (ID) этой исходной записи. Данные представляют собой атрибуты и значения атрибутов. Например, в качестве атрибута может использоваться поле «Имя» или «Номер паспорта» или «Дата рождения» и т.д. В качестве значения упомянутого поля может использоваться «Иван» или «1234 567890» или «01.01.2000» соответственно. Данная исходная запись может быть новой или обновленной. Определение того, новая исходная запись или обновленная производит сервер 101 путем поиска в своей базе данных сохраненных ID исходных записей, совпадающих с ID принятой исходной записи. В случае, если в результате упомянутого поиска не обнаруживается сохраненный ID исходной записи, совпадающий с принятым ID исходной записи, то принятая исходная запись распознается сервером 101 как новая исходная запись. В случае, если в результате упомянутого поиска обнаруживается сохраненный ID исходной записи, совпадающий с принятым ID исходной записи, то принятая исходная запись распознается сервером 101 как обновленная исходная запись. Далее процесс переходит на этап 202.
[0018] На этапе 202 принятая новая исходная запись сохраняется в базе данных сервера 101, в том числе, сохраняется ID упомянутой исходной записи. В случае, если на предыдущем шаге исходная запись была определена как обновленная исходная запись, то сервер заменяет ранее сохраненную исходную запись, в случае, если версия обновленной исходной записи выше ранее сохраненной исходной записи.  Далее процесс переходит на этап 203.
[0019] На этапе 203, в случае, если исходная запись определена как новая исходная запись, сервер 101 проводит поиск ранее сохраненных исходных записей, схожих по упомянутым значениям атрибутов со значениями атрибутов сохраненной на предыдущем шаге исходной записью. В случае, если найдены ранее сохраненные исходные записи, схожие по значениям атрибутов со значениями атрибутов сохраненной на предыдущем шаге исходной записью, то определяется уникальный идентификатор (ID) эталонной записи, связанный с найденными исходными записями (или с одной найденной исходной записью) и процесс переходит на этап 204. Под эталонной записью подразумевается запись, полученная путем объединения двух и более исходных записей или эталонная запись может соответствовать одной (единственной) исходной записи. Каждой эталонной записи присвоен уникальный идентификатор (ID) эталонной записи. В случае, если не найдены ранее сохраненные исходные записи, схожие по значениям атрибутов со значениями атрибутов сохраненной на предыдущем шаге исходной записью, то создается эталонная запись, соответствующая данной исходной записи, и процесс также переходит на этап 204.
[0020] На этапе 203, в случае, если исходная запись определена как обновленная исходная запись, сервер 101 определяет ID эталонной записи, связанной с ID обновленной исходной записи, и процесс также переходит на этап 204.
[0021] На этапе 204 сохраняется ассоциация (связь или соответствие) определенного ID эталонной записи с сохраненным на этапе 202 ID исходной записи. Таким образом, в соответствии с вышеизложенными этапами, каждому ID эталонной записи соответствует ID, по меньшей мере, одной исходной записи. И наоборот – каждому ID исходной записи всегда соответствует ID эталонной записи.
[0022] Далее со ссылкой на фиг. 3 будет описан процесс изменения и сохранения измененной эталонной записи на основании всех извлеченных исходных записей и на основании правил изменения эталонной записи. Данный процесс также выполняется на сервере 101 посредством обмена данными между сервером 101 и удаленными вычислительными устройствами 103.
[0023] На этапе 301 сервер 101 получает запроса на поиск эталонной записи, по меньшей мере, от одного удаленного вычислительного устройства 103. Под вычислительным устройством подразумевается вычислительное устройство пользователя или внешняя вычислительная система потребитель информации, которая хранится на сервере 101. Запрос включает в себя указание на ID эталонной записи или на ID исходной записи. В случае, если запрос включает в себя указание на ID эталонной записи, то процесс переходит на этап 302. В случае, если запрос включает в себя указание на ID исходной записи, то сервер 101 выполняет поиск ID эталонной записи, связанного с ID исходной записи, и только после нахождения ID эталонной записи процесс переходит на этап 302.
[0024] На этапе 302 сервер 101 извлекает все исходные записи, связанные с найденным на этапе 301 ID эталонной записи. Далее процесс переходит на этап 303.
[0025] На этапе 303 сервер 101 изменяет упомянутую эталонную запись на основании всех извлеченных на предыдущем шаге исходных записей и на основании правил изменения эталонной записи определяющих, какое значение атрибута эталонной записи должно использоваться в упомянутой эталонной записи. Правила изменения эталонной записи определяются присвоением каждому источнику исходных данных персонального коэффициента доверия. Например, первый источник исходных данных определен как «Клиентский портал» с коэффициентом доверия 60. Второй источник исходных данных определен как «Логистическая система» с коэффициентом доверия 30. Присвоение того или иного коэффициента тому или иному источнику исходных данных обеспечивается пользователем системы. Под изменениями эталонной записи подразумевается замена значения атрибута или запись значения атрибута. Например, от «Клиентского портала» с коэффициентом доверия 60 поступили исходные данные с атрибутами «ФИО», «Дата рождения» и «Документ», имеющие значения атрибутов «Иванов Иван Иванович», «-», «паспорт 1234 567890», а от «Логистической системы» с коэффициентом доверия 30 поступили данные с атрибутами «ФИО», «Дата рождения» и «Документ», имеющие значения атрибутов «Иванов Петр Иванович», «паспорт 1234 567890», «дата рождения 01.01.2000». В данном случае значения атрибутов «ФИО» в двух исходных записях разные. Однако коэффициент доверия у «Клиентского портала» выше, чем у «Логистической системы», поэтому в соответствии с правилами изменения эталонной записи, в эталонной записи значение атрибута «ФИО» будет заменено на значение «Иванов Иван Иванович». При этом, в исходных данных, поступивших от «Клиентского портала» значение атрибута «Дата рождения» является пустым, в то время как у исходной записи, поступившей от «Логистической системы» значением атрибута «Дата рождения» является «дата рождения 01.01.2000». В соответствии с этим, в эталонной записи в атрибут «Дата рождение» записывается значение атрибута «дата рождения 01.01.2000». Таким образом, значения атрибутов «ФИО», «Дата рождения» и «Документ» эталонной записи будут выглядеть в следующем виде: «Иванов Иван Иванович», «дата рождения 01.01.2000» и «паспорт 1234 567890» соответственно. После изменения эталонной записи, процесс переходит на этап 304.
[0026] На этапе 304 сервер 101 сохраняет в базе данных сервера хранения и обработки данных измененную эталонную запись, и передает удаленному вычислительному устройству измененную эталонную запись.
[0027] Все описанные здесь процессы могут быть воплощены в машиночитаемых инструкциях или командах, хранящихся на одном или более машиночитаемых носителях и побуждающих процессор вычислительного устройства их выполнять. Такие носители могут включать в себя, например, гибкий диск, CD-ROM, DVD-ROM, диск Zip, магнитную ленту и твердотельные запоминающие устройства с произвольным доступом (RAM) или постоянным запоминающим устройством (ROM). Следовательно, варианты осуществления не ограничиваются какой-либо конкретной комбинацией аппаратного и программного обеспечения.
[0028] Хотя данное изобретение было показано и описано со ссылкой на определенные варианты ее осуществления, специалистам в данной области техники будет понятно, что различные изменения и модификации могут быть сделаны в нем, не покидая фактический объем изобретения.