Способ синхронизации анонимных идентификаторов
METHOD FOR SYNCHRONISATION OF ANONYMOUS IDENTIFIERS

Область техники
Изобретение относится к способам анонимизации и системам защиты конфиденциальности пользовательских данных и обеспечения приватности.
Уровень техники
Индивидуальный подход всегда был лучшим способом донести информацию до потребителя. Такой подход давно стал решающим фактором самых успешных маркетинговых кампаний, а прямой маркетинг приобрел широкую популярность в конце XX века, потому что появлялось все больше и больше возможностей для индивидуального подхода к клиенту. Рост цифровых технологий предоставляет все новые и новые инструменты для этого. На данный момент многие опросы маркетологов за последние месяцы показывают, что улучшение персонализации - первоочередная задача на ближайшие годы.
Поведенческая персонализация идентифицирует поведение человека благодаря сигналам, полученным через различные точки сбора данных, такие как посещение веб-сайта, переписка по электронной почте, поиски и потребление определенного контента или даже посещение определенных отделов магазина. Все эти сведения можно включить в предиктивную модель, позволяющую принимать решения в режиме реального времени. Но, развивая эти механизмы, рекламные сети постоянно сталкиваются с проблемой конфиденциальности. Количество сведений о клиентах, которые собирают компании, просто необъятно, и возникает немало вопросов в связи с хранением собранной персональной информации и гарантией анонимности.
Для сбора пользовательских данных могут использоваться различные аналитические утилиты и трекеры (от англ. tracker), которые представляют собой html- и js-код, внедренный на страницу сетевого ресурса. Каждый трекер имеет свой домен, поэтому идентификатором пользователя в рамках одного трекера является произвольный идентификатор, сохраняемый в куки (от англ cookie) на клиенте. В зависимости от функциональности трекера могут собираться данные различной полноты. Например, для зарегистрированного через электронную почту пользователя можно к идентификатору привязать почтовый адрес, а в случае поисковых запросов собрать набор интересов пользователя. Для увеличения полноты пользовательского профиля данные из различных трекеров собираются в общей базе данных - системе хранения и управления данными, например платформе управления данными (англ. Data Management Platform, далее DMP). Для связывания данных по различным идентификаторам из cookie от одного пользователя используется механизм синхронизации cookie файлов. В общем случаев синхронизация cookie осуществляется в обе стороны и в ней может участвовать множество систем управления данными. Системы управления данными выставляют переадресацию (жарг. редирект от англ. redirect) в другие системы, передавая содержимое своего cookie-файла в качестве параметра сетевого адреса. Это позволяет сопоставить два идентификатора, один - переданный в cookie-файле и второй - в параметре сетевого адреса в системе, в которую сделана переадресация. В результате процесса синхронизации в DMP оказывается профиль пользователя, собранный из нескольких источников и содержащий также идентификаторы пользователя из cookie в различных системах. Участвующие в синхронизации системы также могут получить идентификатор пользователя из DMP. Особенно актуальна синхронизация между системами управления данными типа Supply Side platform (далее SSP) и типа DMP, так как SSP на торги выставляет свой идентификатор, а данные в участвующих в аукционе Demand Side Platform (далее DSP) привязаны к идентификаторам DMP.
Ввиду принятия новых законов в сфере персональных данных (например, Общий регламент защиты персональных данных, англ. General Data Protection Regulation, GDPR) возникает необходимость обеспечить конфиденциальность и сохранить описанные рекламные механизмы. Из анализа уровня техники следует, что уже известны некоторые механизмы, которые позволяют скрывать действительные идентификаторы, например:
- US 20122866 описывает способ хранения данных в облачных хранилищах, в котором любой файл от устройства пользователя поступает на прокси-сервер, на котором шифруется и передается в облачное хранилище;
- US 8739265 описывает способ обфускации и извлечения данных, где данные, содержащие конфиденциальные данные, отправляемые с устройства, перехватываются, изменяются и передаются далее в облачное хранилище. При этом изменяются не все данные, а определенные в соответствии с правилами, установленными в сети, и эти данные могут не передаваться в облако, а извлекаться и сохраняться локально, а передаваться будут поп sensitive data и токен вместо извлеченных данных.
На основании анализа существующего уровня техники становится ясно, что описанные средства требуют установки на устройстве пользователя дополнительного агента, что затрудняет работу пользователя с удаленным сервером и делает взаимодействие непрозрачным.
Краткое описание чертежей
Сопровождающие чертежи включены для обеспечения дополнительного понимания изобретения и составляют часть этого описания, показывают варианты осуществления изобретения и совместно с описанием служат для объяснения принципов изобретения.
Заявленное изобретение поясняется следующими чертежами, на которых:
Фиг. 1 - изображают систему для анонимного обмена данными.
Фиг. 2 - изображают способ получения данных приемником от источника.
Фиг. 3 - изображают пример осуществления способа получения данных приемником от источника.
Фиг. 4 - изображают систему для синхронизации анонимных идентификаторов.
Фиг. 5 - изображают способ синхронизации анонимных идентификаторов.
Фиг. 6 - изображают пример осуществления способа синхронизации анонимных идентификаторов.
Фиг. 7 - изображают систему для получения анонимных данных.
Фиг. 8 - изображают способ получения анонимных данных.
Фиг. 9 - изображают пример компьютерной системы общего назначения.
Раскрытие изобретение
Настоящее изобретение предназначено для синхронизации анонимных идентификаторов при обмене данными в системах управления данными. Технический результат настоящего изобретения заключается в обеспечении объединения анонимных идентификаторов в результате обеспечения способа, в котором получают идентификаторы одного пользователя по меньшей мере в двух системах управления данными. Системами управления данными могут быть SSP, DSP, DMP. Далее формируют средством преобразования анонимный идентификатор для каждого полученного идентификатора пользователя. Далее формируют средством преобразования случайный токен для каждой связки идентификатор пользователя-анонимный идентификатор. Токен формируют на основании данных от источника, в качестве данных могут использоваться идентификационные данные, например: идентификаторы, данные для создания уникальных отпечатков, уникальные отпечатки, идентификатор в платформе для управления данными, идентификатор от средства синхронизации. На основании данных от источника дополнительно формируют анонимный идентификатор, где сформированный случайный токен может однозначно, в частном случае, отображаться на анонимный идентификатор. Токены возвращают источнику и отправляют с источника полученные токены на приемник; средством преобразования по запросу приемник отображают каждый случайный токен на анонимный идентификатор и возвращают анонимные идентификаторы приемнику. Объединяют анонимные идентификаторы на приемнике, которые соответствуют токенам, полученным от одного источника.
Приемником и/или источником могут быть платформы для управления данными, где источник - отправитель данных, а приемник - получатель данных. Также источником в клиент-серверной архитектуре является клиент, а приемником - сервер. Средство преобразования располагается на узле сети, отличной от сети приемника и/или источника. В частном случае формирование токена инициируется источником.
Описание вариантов осуществления изобретений
Объекты и признаки настоящего изобретения, способы для достижения этих объектов и признаков станут очевидными посредством отсылки к примерным вариантам осуществления. Однако настоящее изобретение не ограничивается примерными вариантами осуществления, раскрытыми ниже, оно может воплощаться в различных видах. Приведенное описание предназначено для помощи специалисту в области техники для исчерпывающего понимания изобретения, которое определяется в объеме приложенной формулы. Ниже дается раскрытие ключевых понятий, используемых в заявке.
Заявленное изобретение позволяет управлять собираемыми данными и разорвать связь между пользователем и системами управления данными, а также отказаться от традиционных механизмов установки cookie-файла и получения согласия пользователя на каждую установку. За пользователем законодательно закреплено право отозвать разрешение на обработку данных, настоящее изобретение обеспечивает техническую реализацию такого права "в один клик" для неограниченного числа трекеров. И заявленное изобретение может быть встроено в существующие механизмы RTB (real time bidding).
На Фиг. 1 изображена система для анонимного обмена данными. Система включает в себя источник данных 110, приемник данных 120 и средство преобразования данных 130. На источнике 110 располагаются данные, которые по запросу предоставляются приемнику 120. Средство преобразования данных 130 предназначено для создания связок:
- идентификатор пользователя ↔ анонимный идентификатор,
- критические данные ↔ анонимные данные.
Средство преобразования 130 также формирует случайные токены для указанных связок. Средство преобразования может преобразовывать в обе стороны идентификационные данные и критические данные, где результатом преобразования являются анонимные идентификаторы или анонимные данные. В частном случае способами преобразования данных являются:
- квантование;
- сортировка;
- слияние (склеивание);
- группировка;
- настройка набора данных;
- табличная подстановка значений;
- вычисляемые значения;
- кодирование данных;
- шифрование;
- нормализация (масштабирование);
- свертка.
1
1
2
2
При этом преобразование в частном случае осуществляется без возможности обратного преобразования ( под обратным преобразованием понимается преобразование, позволяющее восстановить исходную форму объекта преобразования (данных, подструктуры) до преобразования) любыми средствами кроме средства анонимизации узла. Под преобразованием в общем случае понимается отображение (функция) множества в себя, или, другими словами, преобразованиями называют отображения, переводящие некоторое множество в другое множество ( Математический энциклопедический словарь. - М., 1988. - С. 487).
3
3
4
4
5
5
В частном случае средство преобразования 130 располагается на узле сети отличной от сети приемника и/или источника. В частном случае узел со средством преобразования расположен в региональной сети ( Географически рассредоточенная сеть, коммуникационными средствами объединяющая в единое целое компьютеры в разных пунктах, совокупность региональных сетей образует глобальную сеть), отличной от региональной сети, в которой расположен приемник ( Это позволяет располагать элементы системы в независимых юрисдикциях), и/или не находится в одном Интранете ( ГОСТ Р ИСО 9241-151-2014) с приемником или источником. При этом в рамках данного изобретения разные региональные сети не только географически разнесены, но и находятся в разных юрисдикциях, поэтому, очевидно, в рамках данного изобретения разными региональными сетями могут быть в том числе сети, объединяющие узлы стран (национальные сети). В терминологии GDPR, например, региональная сеть РФ, в которой расположен сервер, будет считаться региональной сетью третьей страны. В частном случае региональная сеть узла со средством преобразования отлична также и от региональной сети клиента.
Источниками данных 110 могут быть клиенты, различные пользовательские устройства, IoT-устройства или системы управления данными, такие как банк данных пользователей, который агрегирует и хранит все данные о пользователе и которым пользователь управляет через интерфейс. В качестве приемников могу выступать серверы, системы управления данными, в том числе CDP, DMP, SSP, DSP и т.д. В частном случае возможна обратная ситуация, когда источники становятся приемниками, а приемники источниками. Например, в технологии RTB, когда устройство пользователя получает от SSP рекламный блок. В данном примере SSP -источник, а устройство пользователя - приемник.
На Фиг. 1 изображен пример модели взаимодействия между источником данных 110 и приемником данных 120, где:
- приемник запрашивает данные от источника (210);
- источник отправляет идентификатор средству преобразования (220);
- средство преобразования возвращает случайный токен источнику (230);
- источник отправляет приемнику запрошенные данные, объединенные с токеном (240);
- приемник отправляет случайный токен средству преобразования (250);
- средство преобразования возвращает анонимный идентификатор приемнику (260);
На Фиг. 2 изображен способ 200 получения данных приемником от источника, который использует описанную модель. На этапе 210 источник 110 получает запрос от приемника 120 на отправку данных. В частном случае запрос на отправку может быть инициирован не приемником 120, а инициироваться внутри самого источника 110. Например, когда на устройстве пользователя выполняется скрипт, который инициирует отправку данных вебсерверу или DMP. Получив запрос, источник готовит данные к отправке, для этого идентификатор пользователя или любые другие идентификационные данные (вместе с которым данные должны отправляться приемнику 120) не связываются с данными для отправки, а если связывание уже произошло, идентификационные данные отделяются средством модификации 140 (подробно ниже), и на этапе 220 отправляются средству преобразования 130. В частном случае, если идентификатор пользователя отсутствует (проверка осуществляется на этапе 211), например cookie не установлен или отсутствует, то данный идентификатор формируют на этапе 212. Формирование идентификатора пользователя может осуществляться как источником 110, так и третьей стороной (например: DMP, SSP, веб-сервером, банком данных и т.д.), и отправляться источнику на этапе 2126. Средством преобразования 130 на этапе 221 проверяют, связан ли с полученными идентификационными данными существующий анонимный идентификатор. В случае если связь отсутствует, на этапе 222 формируют анонимный идентификатор и создают пару идентификатор пользователя-анонимный идентификатор. В частном случае идентификационные данные пользователя однозначно связываются с анонимным идентификатором (связь один к одному - инъекция). В другом частном случае связь неоднозначная (один ко многим):
- с одним анонимным идентификатором связано несколько идентификаторов одного пользователя (например, когда один пользователь имеет идентификаторы в нескольких системах);
- с одним анонимным идентификатором связаны идентификаторы нескольких пользователей (например, когда анонимный идентификатор характеризует некоторую группу людей - семью/коллег или идентификатор характеризует потребительский сегмент);
- с одним идентификатором пользователя связано несколько анонимных идентификаторов (например, когда необходимо обеспечить управляемую коллизию идентификаторов для деперсонализации и невозможности обратного преобразования).
На этапе 223 формируют случайный токен для пары идентификатор пользователя - анонимный идентификатор. И на этапе 230 источнику 110 возвращается этот случайный токен. Случайный токен объединяется с данными, предназначенными для приемника (этап 231), и данные с токеном на этапе 240 передаются приемнику 120. Токен от приемника 120 на этапе 250 передают средству преобразования 130, где токен отображается на анонимный идентификатор из пары идентификатор полъзователя-анонимный идентификатор, для которой токен был сформирован (этап 255). Данные объединяются с возвращенным (на этапе 260) анонимным идентификатором на этапе 265. В частном случае, если возвращенный анонимный идентификатор уже был известен приемнику, данные, полученные от источника 110, сохраняются в структуре, ранее созданной под этот анонимный идентификатор, иначе создается новая структура хранения для данных, связанных с анонимным идентификатором. Несколько анонимных идентификаторов под один пользовательский идентификатор создают, когда необходимо гарантировано обеспечить анонимность пользователя. В этом случае один пользовательский идентификатор отображен на несколько анонимных идентификаторов, что не позволяет на стороне приемника объединить данные под одним идентификатором и деанонимизировать пользователя.
На Фиг. 3 изображен вариант осуществления способа отправки данных на примере сбора данных DMP. На этапе 210а браузер получает html-страницу со скриптами от веб-сервера 310. По меньшей мере один из скриптов предназначен для сбора данных с устройства пользователя 150, на котором установлен браузер 110а, и отправку данных в DMP 120а. Для отправки данных нужно сформировать уникальный идентификатор пользователя, для этого на этапе 212а передается запрос DMP Middleware 320а DMP Middleware на этапе 212 формирует идентификатор пользователя dmpUserID и возвращает его браузеру на этапе 2126. На этапе 220 идентификатор dmpUserID отправляют средству преобразования 130. Средством преобразования 130 проверяют, связан ли с полученным идентификатором существующий анонимный идентификатор. Если связь отсутствует, формируют средством преобразования 130 анонимный идентификатор anonymUserID, иначе используют существующий. Далее формируют случайный токен dmpUserIDToken для пары dmpUserID-anonymUserID. И на этапе 230 возвращают сформированный токен dmpUserIDToken на устройство пользователя. Случайный токен dmpUserIDToken объединяется с данными DATA, предназначенными для DMP. Данные DATA с токеном dmpUserIDToken на этапе 240 передают DMP. Токен dmpUserIDToken от DMP на этапе 250 передают средству преобразования 130, где токен отображается на анонимный идентификатор anonymUserID из пары dmpUserID-anonymUserID, для которой токен был сформирован. И идентификатор anonymUserID на этапе 260 возвращается DMP. Данные DATA на DMP 120а объединяются с возвращенным анонимным идентификатором anonymUserID В частном случае, если возвращенный анонимный идентификатор уже был известен DMP, данные, полученные от веб-сервера, сохраняются в структуре, ранее созданной под этот анонимный идентификатор, иначе создается новая структура хранения для данных, связанных с анонимным идентификатором.
На Фиг. 4 изображена система синхронизации идентификаторов 400. Средства системы 400 аналогичны средствам системы 100. Дополнительно система 400 содержит системы управления данными 320, которых для осуществления синхронизации по меньшей мере две. На Фиг. 4 изображен пример модели взаимодействия между источником данных и приемником данных, где:
- источник 110 отправляет запрос на получение идентификатора к системе управления 320 (212а);
- система 320 возвращает идентификатор источнику 110 (2126);
- источник отправляет идентификатор средству преобразования (220);
- средство преобразования возвращает случайный токен источнику (230);
- источник отправляет приемнику токены (241);
- приемник отправляет токен средству преобразования (250);
- средство преобразования возвращает анонимный идентификатор приемнику (260).
На Фиг. 5 изображен способ отправки данных, который использует описанную модель взаимодействия. Если у источника 110 нет идентификаторов для синхронизации, то источник 110 отправляет запрос 212а на получение идентификатора к системе управления 320, система 320 формирует идентификатор на этапе 212 и возвращает его источнику 110 (2126). Источник 110 передает идентификаторы средству преобразования 130 на этапе 220. Средством преобразования на этапе 221 проверяют, связан ли с полученными идентификационными данными существующий анонимный идентификатор. В случае если связь отсутствует, на этапе 222 формируют анонимный идентификатор и связывают его с идентификационными данными, как в способе 200. На этапе 223 формируют случайный токен для каждой пары идентификатор пользователя - анонимный идентификатор. И на этапе 230 источнику 110 возвращают этот случайный токен. Все токены источника 110 объединяют на этапе 231а и передают приемнику на этапе 241. Токены от приемника на этапе 250 передают средству преобразования 130, где токены отображаются (жарг. резолвятся от англ. resolve) на анонимные идентификаторы из пар идентификатор полъзователя-анонимный идентификатор, для которых токены были сформированы (этап 255). Анонимные идентификаторы возвращают приемнику 120 на этапе 260, а на этапе 266 связывают анонимные идентификаторы, соответствующие токенам, полученным от одного источника.
На Фиг. 6 изображен вариант осуществления изобретения на примере синхронизации идентификаторов от SSP и от DMP. Браузером 110а отправляются запросы 212а на получение идентификатора к SSP Middleware 3206 и DMP Middleware 320а. Система 320а формирует идентификатор dmpUserID, а система 3206 формирует идентификатор sspUserID. Сформированные идентификаторы на этапе 2126 возвращают устройству пользователя 150, браузером 110а которого был отправлен запрос. Идентификаторы отправляют средству преобразования 130 на этапе 220. Средством преобразования 130 формируют анонимные идентификаторы. Для dmpUserID формируют anonymDmpUserID, а для sspUserID формируют anonymSspUserID. Для каждой пары формируют случайный токен:
- dmpUserID-anonymDmpUserID ↔ dmpUserIDToken;
- sspUserID- anonymSspUserID ↔ sspUserIDToken.
И на этапе 230 на устройство 150 возвращают токены sspUserIDToken и dmpUserIDToken. Полученные токены на устройстве объединяются и передаются DMP 120а на этапе 241. Токены от DMP на этапе 250 передают средству преобразования 130, где токены отображаются на анонимные идентификаторы. Анонимные идентификаторы anonymDmpUserID и anonymSspUserID возвращают DMP на этапе 260, а в DMP идентификаторы связываются (синхронизируются) как идентифицирующие один источник в разных системах 320.
6
6
На Фиг. 7 изображена система отправки анонимных данных 700. Средства системы 700 аналогичны средствам системы 100. Система 700 содержит средство модификации 140, предназначенное для разделения структур данных (которые формируются для отправки от источника 110 приемнику 120). Критерии разделения структуры данных на подструктуры могут быть различными, одним из таких критериев является наличие в отправляемых данных персональных данных (англ. Personal Identification Information) или их специальных категорий (по терминологии GDPR), при котором структура данных разделяется таким образом, что одна подструктура содержит персональные данные (далее ПДн, англ. PII) или их специальные категории, другая подструктура включает данные, не являющиеся персональными. Отношение данных к персональным определяется, например, законодательством страны, в юрисдикции которой находится пользователь, использующий устройство, являющееся в описываемой системе клиентом. Другими словами, по местоположению источника данных. Другим более общим критерием является наличие критических данных. К критическим данным (англ. critical data) относят данные, в отношении которых закон или уполномоченный субъект накладывает ограничения на сбор, хранение, доступ, распространение и обработку. Эти данные, как правило, чувствительны к разглашению, распространению, утечке, так как возникновение этих событий приводит к нарушению прав и охраняемых законом интересов субъектов и предусматривает ответственность для субъектов, допустивших нарушения правил сбора, хранения, доступа, обработки, предъявляемым к таким данным. Частным случаем критических данных являются конфиденциальные данные ( или конфиденциальная информация, в рамках данной заявки конфиденциальные данные и конфиденциальная информация синонимы) (англ. sensitive data). Под конфиденциальными данными понимаются данные, которые охраняются в соответствии с законодательством страны, в юрисдикции которой находится пользователь, использующий устройство, являющееся в описываемой системе клиентом. К конфиденциальным данным в частном случае относятся персональные данные (ПДн) и данные содержащие:
- коммерческую тайну;
- налоговую тайну;
- банковскую тайну;
- врачебную тайну;
- нотариальную тайну;
- адвокатскую тайну;
- аудиторскую тайну;
- тайну связи;
- тайну страхования;
- тайну завещания;
- тайну усыновления;
- тайну исповеди;
- тайну следствия;
- тайну судопроизводства;
- сведения о защищаемых лицах;
- государственную тайну.
На Фиг. 7 изображен пример модели отправки анонимных данных, где:
- приемник запрашивает данные от источника (210)
- источник 110 отправляет запрос на получение идентификатора к системе управления 320 (212а)
- система 320 возвращает идентификатор источнику 110 (2126).
- источник отправляет идентификатор средству преобразования (220)
- источник отправляет критические данные (220а)
- средство преобразования возвращает случайный токен для идентификатора источнику (230)
- средство преобразования возвращает случайный токен для данных источнику (230
- источник отправляет приемнику токены и данные, не являющиеся критическими данными (242)
- приемник отправляет токены средству преобразования (250)
- средство преобразования возвращает анонимный идентификатор приемнику (260)
- средство преобразования возвращает анонимные данные приемнику (261)
На Фиг. 8 изображен способ отправки анонимных данных 200, который использует описанную модель отправки. На этапе 210 источник 110 получает запрос от приемника 120 на отправку данных. В частном случае, если идентификатор пользователя отсутствует (проверка осуществляется на этапе 211), например cookie файл не установлен, то данный идентификатор формируют на этапе 212. Формирование идентификатора пользователя может осуществляться как источником 110, так и третьей стороной (например: DMP, SSP, веб-сервером, банком данных и т.д.), и отправляться источнику 110. Идентификатор от источника на этапе 220 отправляется средству преобразования 130. Данные, предназначенные для отправки, на этапе 213 проверяются на наличие критических данных. Если критические данные обнаружены, то на этапе 220а критические данные отправляют средству преобразования 130. Этапы 220 и 220а могут выполнятся как синхронно, так и асинхронно.
Средством преобразования 130 на этапе 221 проверяют, связан ли с полученными идентификационными данными существующий анонимный идентификатор. В случае если связь отсутствует, на этапе 222 формируют анонимный идентификатор и создают пару идентификатор пользователя-анонимный идентификатор, аналогично способу 200. Средством преобразования на этапе 222а полученные критические данные анонимизируются и создается другая пара критические данные-анонимные данные. На этапе 223 формируют случайные токены для пары идентификатор пользователя - анонимный идентификатор и пары критические данные-анонимные данные.
На этапе 230 источнику 110 возвращают случайный токен для пары идентификатор пользователя - анонимный идентификатор, а на этапе 230а возвращают случайный токен для пары критические данные-анонимные данные. Все токены источника 110 и в частном случае не критические данные передают приемнику на этапе 241. Токены от приемника на этапе 250 передают средству преобразования 130, где токен от пары идентификатор пользователя - анонимный идентификатор отображается на анонимный идентификатор (этап 255), а токен от пары критические данные-анонимные данные отображается на анонимные данные (этап 256). Анонимный идентификатор возвращают приемнику 120 на этапе 260, а анонимные данные возвращают приемнику 120 на этапе 261. На этапе 267 объединяют анонимный идентификатор, анонимные данные и, если передавались, не критические данные. В частном случае, если возвращенный анонимный идентификатор уже был известен приемнику, данные, полученные от источника 110, и анонимные данные, полученные от средства преобразования по токену, сохраняются в структуре, ранее созданной под этот анонимный идентификатор, иначе создается новая структура хранения для данных, связанных с анонимным идентификатором. Этапы 260 и 261 могут выполнятся как синхронно, так и асинхронно.
Под средствами системы 100, 400 и 700 понимаются реальные устройства, системы, компоненты, группа компонентов, реализованные с использованием аппаратных средств, таких как интегральные микросхемы (англ. application-specific integrated circuit, ASIC) или программируемой вентильной матрицы (англ. field-programmable gate array, FPGA) или, например, в виде комбинации программных и аппаратных средств, таких как микропроцессорная система и набор программных инструкций, а также на нейроморфных чипах (англ. neurosynaptic chips), функциональность указанных модулей может быть реализована исключительно аппаратными средствами, а также в виде комбинации, где часть функциональности реализована программными средствами, а часть - аппаратными. В некоторых вариантах реализации средства могут быть исполнены на процессоре компьютера общего назначения (например, который изображен на Фиг. 9). Базы данных могут быть реализованы всеми возможными способами и содержаться как на одном физическом носителе, так и на разных, располагаться как локально, так и удаленно.
Фиг. 9 представляет пример компьютерной системы общего назначения, персональный компьютер или сервер 20, содержащий центральный процессор 21, системную память 22 и системную шину 23, которая содержит разные системные компоненты, в том числе память, связанную с центральным процессором 21. Системная шина 23 реализована, как любая известная из уровня техники шинная структура, содержащая в свою очередь память шины или контроллер памяти шины, периферийную шину и локальную шину, которая способна взаимодействовать с любой другой шинной архитектурой. Системная память содержит постоянное запоминающее устройство (ПЗУ) 24, память с произвольным доступом (ОЗУ) 25. Основная система ввода/вывода (BIOS) 26, содержит основные процедуры, которые обеспечивают передачу информации между элементами персонального компьютера 20, например, в момент загрузки операционной системы с использованием ПЗУ 24.
Персональный компьютер 20 в свою очередь содержит жесткий диск 27 для чтения и записи данных, привод магнитных дисков 28 для чтения и записи на сменные магнитные диски 29 и оптический привод 30 для чтения и записи на сменные оптические диски 31, такие как CD-ROM, DVD-ROM и иные оптические носители информации. Жесткий диск 27, привод магнитных дисков 28, оптический привод 30 соединены с системной шиной 23 через интерфейс жесткого диска 32, интерфейс магнитных дисков 33 и интерфейс оптического привода 34 соответственно. Приводы и соответствующие компьютерные носители информации представляют собой энергонезависимые средства хранения компьютерных инструкций, структур данных, программных модулей и прочих данных персонального компьютера 20.
Настоящее описание раскрывает реализацию системы, которая использует жесткий диск 27, сменный магнитный диск 29 и сменный оптический диск 31, но следует понимать, что возможно применение иных типов компьютерных носителей информации 56, которые способны хранить данные в доступной для чтения компьютером форме (твердотельные накопители, флеш карты памяти, цифровые диски, память с произвольным доступом (ОЗУ) и т.п.), которые подключены к системной шине 23 через контроллер 55.
Компьютер 20 имеет файловую систему 36, где хранится записанная операционная система 35, а также дополнительные программные приложения 37, другие программные модули 38 и данные программ 39. Пользователь имеет возможность вводить команды и информацию в персональный компьютер 20 посредством устройств ввода (клавиатуры 40, манипулятора «мышь» 42). Могут использоваться другие устройства ввода (не отображены): микрофон, джойстик, игровая консоль, сканнер и т.п. Подобные устройства ввода по своему обычаю подключают к компьютерной системе 20 через последовательный порт 46, который в свою очередь подсоединен к системной шине, но могут быть подключены иным способом, например, при помощи параллельного порта, игрового порта или универсальной последовательной шины (USB). Монитор 47 или иной тип устройства отображения также подсоединен к системной шине 23 через интерфейс, такой как видеоадаптер 48. В дополнение к монитору 47, персональный компьютер может быть оснащен другими периферийными устройствами вывода (не отображены), например, колонками, принтером и т.п.
Персональный компьютер 20 способен работать в сетевом окружении, при этом используется сетевое соединение с другим или несколькими удаленными компьютерами 49. Удаленный компьютер (или компьютеры) 49 являются такими же персональными компьютерами или серверами, которые имеют большинство или все упомянутые элементы, отмеченные ранее при описании существа персонального компьютера 20, представленного на Фиг. 9. В вычислительной сети могут присутствовать также и другие устройства, например, маршрутизаторы, сетевые станции, пиринговые устройства или иные сетевые узлы.
Сетевые соединения могут образовывать локальную вычислительную сеть (LAN) 50 и глобальную вычислительную сеть (WAN). Такие сети применяются в корпоративных компьютерных сетях, внутренних сетях компаний и, как правило, имеют доступ к сети Интернет. В LAN- или WAN-сетях персональный компьютер 20 подключен к локальной сети 50 через сетевой адаптер или сетевой интерфейс 51. При использовании сетей персональный компьютер 20 может использовать модем 54 или иные средства обеспечения связи с глобальной вычислительной сетью, такой как Интернет. Модем 54, который является внутренним или внешним устройством, подключен к системной шине 23 посредством последовательного порта 46. Следует уточнить, что сетевые соединения являются лишь примерными и не обязаны отображать точную конфигурацию сети, т.е. в действительности существуют иные способы установления соединения техническими средствами связи одного компьютера с другим.
В заключение следует отметить, что приведенные в описании сведения являются примерами, которые не ограничивают объем настоящего изобретения, определенного формулой. Специалисту в данной области становится понятным, что могут существовать и другие варианты осуществления настоящего изобретения, согласующиеся с сущностью и объемом настоящего изобретения.