Интерфейс синхронизации данных

Иллюстрации

Показать все

Системы и способы в соответствии с настоящим изобретением обеспечивают интерфейс, облегчающий связь между системами. Исходная система (310) преобразует данные в формат расширяемого языка разметки (РЯР) и передает данные на инструментальное средство интерфейса синхронизатора (305). Инструментальное средство синхронизатора хранит данные в постоянной промежуточной памяти, такой как очередь (325), позволяя исходной системе перейти в автономный режим или выполнять другие задачи, в то время как данные передаются в целевую систему. Инструментальное средство синхронизатора инициирует передачу данных в целевую систему (300). Если целевая система указывает, что она приняла данные, то тогда инструментальное средство синхронизатора посылает подтверждение приема в исходную систему, указывая, что данные были приняты. Если целевая система не принимает передачу, то инструментальное средство синхронизатора сохраняет данные в существующей промежуточной памяти и повторно инициирует передачу данных в целевую систему (300). 4 н. и 6 з.п. ф-лы, 4 ил.

Реферат

Область техники, к которой

относится изобретение

Настоящее изобретение относится, в основном, к связи между системами. В частности, изобретение относится к интерфейсу связи, способствующему передаче данных и информации между системами и/или базами данных.

Уровень техники

Беспроводные устройства, такие как сотовые телефоны, персональные цифровые помощники (карманные компьютеры) (ПЦП, PDA), пейджеры, портативные компьютеры с возможностью беспроводного соединения и т. д., передают пакеты, включающие в себя речь и данные, по беспроводной сети. В эти беспроводные устройства установлены интерфейсы прикладного программирования (ИПП, API) на их локальные компьютерные платформы, которые позволяют разработчикам программного обеспечения создавать приложения программного обеспечения, которые работают в беспроводных устройствах. ИПП находится между системным программным обеспечением беспроводного устройства и приложением программного обеспечения, делая беспроводное устройство функционально доступным для приложения, не требуя того, чтобы разработчик программного обеспечения имел системный исходный код конкретного беспроводного устройства.

Этим беспроводным устройствам обычно необходимо организовать связь с другими системами и базами данных в других системах. К сожалению, беспроводное устройство может потерять сигнал во время связи или иным образом быть недоступным при передаче информации в другие системы. Это может вызвать ошибки при попытке получения доступа к базе данных, когда сигнал потерян. Беспроводному устройству может потребоваться повторное инициирование доступа к базе данных и повторное представление запроса к базе данных при повторном обнаружении сигнала.

Распространяя рассмотрение за пределы беспроводных устройств, часто проводным системам необходимо организовать связь друг с другом, но они не используют совместно одинаковый "язык" для связи. Например, как в случае с беспроводными устройствами, одной системе может потребоваться организовать связь с базой данных в другой системе для приема или внесения данных. Для организации связи с базой данных система должна знать язык базы данных, структуры и форматы записей и полей, для того чтобы получить доступ и хранить информацию в базе данных. Хотя существующие технологии предусматривают такую возможность, что интерфейс между системой и базой данных включает в себя язык, структуру и формат базы данных, это становится более сложным, когда требуется получить доступ к многочисленным базам данных, возможно, требуя многочисленные уникальные языки баз данных и т.д.

Кроме того, когда данные должны быть посланы в многочисленные системы или, наоборот, приняты от многочисленных систем, то не существует стандартного интерфейса для интегрирования многочисленных систем, чтобы упростить передачу данных. Это проблематично для систем, организующих связь с несколькими другими системами.

Поэтому в данной области техники необходим интерфейс, который упрощает организацию связи между одной или многочисленными базами данных и обеспечивает надежную и безопасную пересылку информации между многочисленными системами.

Существующие способы в данной области техники не касаются этой потребности. Услуги тиражирования баз данных и интерфейсы заказных баз данных могут стать очень сложными и громоздкими, если необходимо обращение к многочисленным базам данных. Кроме того, все системы, которые обращаются к заказной базе данных, должны иметь такой интерфейс. Также необходимо, чтобы заказные базы данных оставались в оперативном режиме для происходящих транзакций.

Электронный обмен данными (ЭОД, EDI) касается только необходимости заданных типов сообщений и содержания, характерных для электронной торговли. Форматы сообщений ЭОД не касаются потребностей обмена данными, так как они относятся к беспроводным услугам, анализу системной интеграции и специфичности составления счетов.

Сущность изобретения

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

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

Другие задачи, преимущества и признаки настоящего изобретения станут очевидны после анализа нижеследующего описания, изложенного в разделах краткое описание чертежей, подробное описание изобретения и формула изобретения.

Краткое описание чертежей

Сопровождающие чертежи, которые включены в описание изобретения и составляют его часть, иллюстрируют предпочтительные в настоящее время варианты выполнения изобретения и вместе с общим описанием, приведенным выше, и подробным описанием предпочтительных вариантов выполнения, приведенным ниже, служат для объяснения принципов изобретения.

На чертежах:

на фиг.1 представлена характерная схема беспроводной сети и аппаратные средства компьютеров и беспроводные устройства, которые могут быть использованы в примерном варианте выполнения настоящего изобретения;

на фиг.2 представлена блок-схема аппаратных компонентов беспроводной сети, обеспечивающих организацию связи между различными беспроводными устройствами, сервером загрузки приложений и базой данных в примерном варианте выполнения настоящего изобретения;

на фиг.3 представлена блок-схема, раскрывающая архитектуру интерфейса инструментального средства синхронизатора в примерном варианте выполнения настоящего изобретения; и

на фиг.4 представлена схема последовательности операций, описывающая работу интерфейса инструментального средства синхронизатора в примерном варианте выполнения настоящего изобретения.

Подробное описание изобретения

Теперь делается подробная ссылка на примерные и предпочтительные в настоящее время варианты выполнения изобретения, изображенные на прилагаемых чертежах, на которых одинаковые позиции обозначают одинаковые или соответствующие части на нескольких чертежах. Сущность, задачи и преимущества настоящего изобретения станут более очевидны для специалиста в этой области техники после рассмотрения следующего подробного описания в связи с прилагаемыми чертежами.

На фиг.1 изображена архитектура, в которой один вариант выполнения настоящего изобретения может быть осуществлен, используя одно или несколько беспроводных устройств, таких как сотовый телефон 12, при организации связи по беспроводной сети 14 по меньшей мере с одним сетевым сервером, таким как сервер 16 загрузки приложений, который селективно загружает или предоставляет доступ к приложениям программного обеспечения или другим данным для беспроводных устройств через портал беспроводной связи или другой доступ к данным в беспроводной сети 14. Как здесь показано, беспроводным устройством может быть сотовый телефон 12 с графическим дисплеем 13, персональный цифровой помощник 18 с экраном 19 ПЦП, пейджер 20 с графическим дисплеем 21, который показан, в данном случае, как двусторонний текстовой пейджер, или даже отдельная компьютерная платформа 22, которая имеет портал беспроводной связи и дисплей 23 и может, иным образом, иметь проводное соединение 24 с сетью или Интернетом. Система 10 может включать в себя удаленный компьютерный модуль в любом виде, включающий в себя портал беспроводной связи, включающий в себя без ограничения беспроводные модемы, карты Международной ассоциации производителей плат памяти для персональных компьютеров (PCMCIA), терминалы доступа, персональные компьютеры, терминалы доступа, телефоны без дисплея или клавиатуры, или любую их комбинацию или субкомбинацию.

Сервер 16 загрузки приложений показан, в данном случае, в локальной на стороне сервера сети 26, при этом другие компьютерные элементы организуют связь с беспроводной сетью 14, такой как база 28 данных с хранимыми приложениями и данными, которая содержит приложения программного обеспечения и данные, которые являются доступными и загружаемыми на беспроводные устройства 12, 18, 20, 22.

На фиг.2 представлена блок-схема аппаратных компонентов беспроводной сети, обеспечивающих организацию связи между различными беспроводными устройствами, сервером загрузки приложений и базой данных в примерном варианте выполнения настоящего изобретения. Беспроводная сеть 14 является просто примерной и может включать в себя любую систему, посредством которой удаленные модули, такие как беспроводные устройства 12, 18, 20, 22, организуют связь по эфиру между собой и друг с другом и/или между компонентами беспроводной сети 14, включающей в себя без ограничения поставщики услуг и/или серверы беспроводной сети. Сервер 16 загрузки приложений (СЗП, ADS) и база 28 данных хранимых приложений присутствуют в сотовой сети передачи данных с любыми другими компонентами, которые необходимы для предоставления сотовых телекоммуникационных услуг. Сервер 32 может обеспечивать другие функции, используемые одними или другими компонентами, такие как функции управления приложениями для сервера загрузки приложений. Сервер 32 и СЗП могут использовать инструментальное средство интерфейса синхронизатора (не показано) для организации связи между системами. Сервер или другие компоненты системы могут сопрягаться с другими системами, которые не показаны, для передачи или приема данных. Инструментальное средство синхронизатора может быть использовано также для поддержки организации связи с этими другими системами.

Сервер 16 загрузки приложений и/или другие серверы организуют связь с сетью 40 поставщика услуг по каналу передачи данных, такому как Интернет, защищенной локальной вычислительной сети (ЛВС, LAN), глобальной сети (ГС, WAN) или другой сети. Сеть 40 поставщика услуг управляет сообщениями (которые обычно представляют собой пакеты данных), посылаемыми на контроллер 42 услуги передачи сообщений (КУПС, MSC). Сеть 40 поставщика услуг организует связь с КУПС 42 посредством сети, Интернета и/или простой обычной телефонной системы (ПОТС, POTS). Обычно подключение к сети или Интернету между сетью 40 поставщика услуг и КУПС 42 передает данные, а ПОТС передает речевую информацию. КУПС 42 подсоединен к многочисленным базовым станциям (базовым приемо-передающим станциям (БППС)) 44. Аналогичным образом для сети поставщика услуг КУПС 42 обычно подсоединен к БППС 44 посредством как сети, так и Интернета для передачи данных и посредством ПОТС для речевой информации. БППС 44, в конечном счете, широковещательно передает сообщения беспроводным образом на беспроводные устройства, такие как сотовый телефон, посредством услуги передачи коротких сообщений (УПКС, SMS) или другими способами передачи по эфиру, известными в данной области техники.

Беспроводное устройство, такое как сотовый телефон 12, имеет компьютерную платформу 50, которая может принимать и выполнять приложения программного обеспечения и данные дисплея, передаваемые от сервера 16 загрузки приложений. Компьютерная платформа 50 также позволяет беспроводному устройству взаимодействовать с данными и приложениями, находящимися резидентно на сетевых серверах. Компьютерная платформа 50 включает в себя среди других компонентов драйвер 52 дисплея, который управляет графическим дисплеем 13 и воспроизводит изображения на графическом дисплее 13, на основе графических данных, принимаемых компьютерной платформой 50. Компьютерная платформа 50 также включает в себя специализированную интегральную схему (СИС, ASIC) 54, или другой процессор, микропроцессор, логическую схему или другое устройство обработки данных. Специализированная ИС 52 устанавливается в момент производства беспроводного устройства и обычно без возможности модернизации. Специализированная ИС 52 или другой процессор выполняет уровень 56 интерфейса прикладного программирования (ИПП, API), который согласует с любыми резидентными программами в памяти 58 беспроводного устройства. Память может состоять из постоянного запоминающего устройства или оперативного запоминающего устройства (ОЗУ и ПЗУ, RAM или ROM), стираемого программируемого ПЗУ (СППЗУ, EPROM), электрически стираемого программируемого ПЗУ (ЭСППЗУ, EEPROM), флэш-карт или другой памяти, стандартной для компьютерных платформ. Компьютерная платформа 50 также включает в себя локальную базу 60 данных, которая может хранить приложения программного обеспечения, не используемые активно в памяти 58, такие как приложения программного обеспечения, загруженные с сервера 16 загрузки приложений. Локальная база 60 данных обычно состоит из одной или нескольких ячеек флэш-памяти, но может быть любым вторичным или третичным запоминающим устройством, известным в данной области техники, таким как магнитный носитель, СППЗУ, ЭСППЗУ, оптический носитель, лента или "мягкий" или жесткий диск.

Беспроводное устройство, такое как сотовый телефон 12, может получить доступ и загрузить приложения многих видов, такие как игры, мониторы курса акций или просто данные, такие как новости и спортивная информация. Загруженные данные могут быть немедленно воспроизведены на дисплее или сохранены в локальной базе 60 данных, когда они не используются. Приложения программного обеспечения могут рассматриваться как обыкновенное приложение программного обеспечения, находящееся резидентно в беспроводном устройстве 12, 18, 20, 22, и абонент беспроводного устройства может селективно сгрузить хранимые резидентные приложения с локальной базы 60 данных в память 58 для выполнения на ИПП 56. Конечный пользователь беспроводного устройства 12, 18, 20, 22 также может селективно удалить приложение программного обеспечения из локальной базы 60 данных.

На фиг.3 представлена блок-схема, изображающая архитектуру интерфейса инструментального средства синхронизатора в примерном варианте выполнения настоящего изобретения. В одном варианте выполнения инструментальное средство 305 синхронизатора позволяет таблицам в одной системе управления реляционной базой данных (СУРБД, RDBMS) синхронизироваться с системой назначения через стандартный интерфейс расширяемого языка разметки (РЯР, XML). Специалистам в данной области техники понятно, что язык РЯР представляет собой вариант осуществления, и могут быть использованы другие языки. Кроме того, также понятно, что инструментальное средство синхронизатора может быть использовано для синхронизации или передачи другой информации, не только информации из таблиц СУРБД между компьютерными системами или подсистемами. Кроме того, соединения между интерфейсом и целевой и исходной системами могут быть выполнены посредством любых доступных средств связи, таких как беспроводная, включая радиочастотную, спутниковая и инфракрасная связь и проводные способы связи. В одном варианте выполнения средства связи основаны на протоколе Интернета (ПИ).

Данные, принимаемые от СУРБД 320 в исходной системе 310, хранятся в очереди 325 инструментального средства 305 синхронизатора. Эти данные преобразуются в стандартный файловый формат, такой как РЯР. В результате механизма хранения, такого как очередь, инструментальное средство синхронизатора может сохранять данные для СУРБД 315, даже если исходная система 310 находится в автономном режиме. Инструментальное средство 305 синхронизатора также может быть осуществлено для предоставления подтверждения приема в исходную систему 310, когда данные, посланные в целевую систему 315, тиражируются в СУРБД 315 (целевая система может предоставить подтверждение приема в инструментальное средство 305 синхронизатора, указывая, что произошло это тиражирование, было выполнено подтверждение приема данных или подтверждение другой обработки).

Исходная система 310 подсоединена к инструментальному средству 305 синхронизатора. Это соединение может быть выполнено посредством любого механизма связи, включая в себя беспроводное и/или проводное соединение (или их комбинацию). Инструментальное средство 305 синхронизатора может быть локальным по отношению к исходной системе 310, или оно может быть удаленным по отношению к ней. Исходная система передает информацию в синхронизатор по этому соединению. Этой информацией могут быть данные для тиражирования в удаленную базу данных, или может быть информация любого типа, предназначенная для другой системы, такая как запрос сообщения, запрос данных или другая передача данных. В одном варианте выполнения исходная система 310 посылает эту информацию в инструментальное средство 305 синхронизатора, используя формат РЯР.

Целевая система принимает информацию от инструментального средства 305 синхронизатора и может отвечать подтверждением приема для инструментального средства 305 синхронизатора. Альтернативно, инструментальное средство синхронизатора может взаимодействовать непосредственно с подсистемой в целевой системе 300 (такой как СУРБД 315) для выполнения задачи, такой как тиражирование данных.

Отметим, что определение целевой системы 300 и исходной системы 310 в некоторой степени произвольное. В одном случае система может быть исходной системой, посылающей данные в целевую систему, тогда как в другом случае эта же система действует в качестве целевой системы, принимая данные от другой системы.

На фиг.4 представлена схема последовательности операций, изображающая работу интерфейса инструментального средства синхронизатора в примерном варианте выполнения настоящего изобретения. Способ начинается с того, что исходная система преобразует данные в формат РЯР (этап 400) или в некоторый другой стандартный формат. Эти данные могут быть в виде скалярных данных для целевой системы, запроса информации у целевой системы или другой информации, подлежащей передаче для обработки целевой системой. Затем данные передаются и принимаются инструментальным средством синхронизатора (этап 405).

Данные хранятся в постоянной промежуточной памяти (этап 405), такой как очередь, в инструментальном средстве синхронизатора. Это предоставляет некоторую независимость между исходной и целевой системами. Исходная система может выполнить запрос, запомнить его в очереди и может перейти в автономный режим, в то время как запрос передается в целевую систему и/или обрабатывается ею. Кроме того, инструментальное средство синхронизатора может послать подтверждение приема в исходную систему, что оно приняло данные.

Данные в формате РЯР затем передаются от инструментального средства синхронизатора в целевую систему (этап 415). Отметим, что "данными" может быть любая порция информации, которую необходимо послать в целевую систему. Они могут быть данными, используемыми для тиражирования в СУРБД целевой системы. Альтернативно, они могут быть командой любого вида или информацией, посылаемой в целевую систему для возможной обработки целевой системой. Кроме того, могут быть многочисленные целевые системы, принимающие эти данные. Инструментальное средство синхронизации может поставить в очередь многочисленные запросы на передачу данных для многочисленных пунктов назначения, включая в себя запросы пунктов назначения многочисленных целевых систем.

Способ продолжается инициированием преобразованной команды на СУРБД (этап 415). После преобразования команды в соответствующий язык для СУРБД он инициирует эту команду непосредственным доступом к СУРБД целевой системы или посредством посылки команды процессору, такому как процессор в целевой системе, для выполнения.

Если данные приняты целевым объектом (этап 420), то способ продолжается по ветви "Да", и подтверждение приема посылается в исходную систему (этап 425). Исходная система форматирует это подтверждение приема в формат, считываемый исходной системой, такой как формат РЯР. Если исходная система не находится в оперативном (неавтономном) режиме, то подтверждение приема может быть помещено в очередь, и дополнительные попытки могут быть сделаны в исходную систему, чтобы информировать ее, что данные были переданы в целевую систему. Инструментальное средство синхронизатора может определить, что данные были приняты, посредством приема подтверждения приема от целевой системы.

Если данные приняты в целевом объекте, как определено на этапе 420, что может произойти, когда целевая система или СУРБД находится в автономном режиме, то тогда способ продолжается по ветви "Нет", и данные остаются в очереди, и будет произведена повторная попытка (этап 430) инициировать передачу данных в целевую систему, как описано на этапе 415. Существует много алгоритмов формирования очередей и временных параметров, возможных для определения, когда инициировать другую передачу в целевую систему. Предпочтительный алгоритм и момент времени основаны на возможностях обработки, эффективности, доступных ресурсах (таких как доступная память для формирования очередей), а также других факторах осуществления рассматриваемых систем.

Вышеприведенное описание осуществления изобретения было представлено для целей иллюстрации и описания. Оно не является исчерпывающим и не ограничивает изобретение описанным определенным видом. Возможны модификации и изменения в свете вышеприведенных идей, и они могут быть получены из практики осуществления изобретения. Например, описанное осуществление включает в себя программное обеспечение, но этот же вариант выполнения настоящего изобретения может быть осуществлен в виде комбинации аппаратных средств и программного обеспечения или только аппаратными средствами. Изобретение может быть осуществлено как объектно-ориентированными, так и необъектно-ориентированными системами программирования. Кроме того, хотя аспекты настоящего изобретения описаны как хранящиеся в памяти, специалистам в данной области техники понятно, что эти аспекты также могут храниться на считываемых компьютером носителях информации других видов, таких как вторичные запоминающие устройства, как, например, жесткие диски, дискеты или компакт-диски; несущая волна из Интернета или другая среда распространения; или другие виды ОЗУ или ПЗУ.

Кроме того, необходимо отметить, что в этом описании могут быть сделаны различные изменения и модификации в пределах объема изобретения, определенного прилагаемой формулой изобретения и ее эквивалентами. Более того, хотя элементы изобретения могут быть описаны или заявлены в единственном числе, предполагается множественное число, если явно не указано ограничение единственным числом.

1. Способ обработки информации, заключающийся в том, что преобразуют посредством исходной системы информацию из начального формата в стандартный формат, принимают информацию от исходной системы в стандартном формате, сохраняют информацию в стандартном формате, инициируют передачу информации в стандартном формате в целевую систему, в то же самое время сохраняя информацию, принимают подтверждение приема целевой системы, указывающее, что целевая система приняла информацию, и посылают подтверждение приема в исходную систему при приеме подтверждения приема целевой системы.

2. Способ по п.1, отличающийся тем, что стандартным форматом является формат расширяемого языка разметки (РЯР).

3. Способ по п.1, отличающийся тем, что целевой системой является база данных, и информация включает в себя данные для тиражирования базы данных.

4. Способ по п.1, отличающийся тем, что информацией является команда, направляемая в целевую систему, и посылка подтверждения приема целевой системы указывает, что команда была обработана.

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

6. Способ по п.5, отличающийся тем, что дополнительно сохраняют информацию, принятую от многочисленных исходных систем, связанных с многочисленными целевыми системами, и инициируют передачу данных от многочисленных исходных систем в связанные многочисленные целевые системы.

7. Способ по п.5, отличающийся тем, что дополнительно принимают подтверждение приема исходной системы, указывающее, что подтверждение приема было принято, и удаляют информацию из постоянной промежуточной памяти.

8. Интерфейс, содержащий соединение с исходной системой и целевой системой, память для хранения данных от исходной системы, причем исходная система преобразует данные из начального формата в стандартный формат, процессор, сконфигурированный с возможностью приема данных от исходной системы в стандартном формате, хранения данных в стандартном формате в памяти, инициирования передачи данных в стандартном формате в целевую систему, приема подтверждения приема целевой системы от целевой системы и посылки подтверждения приема в исходную систему.

9. Интерфейс по п.8, отличающийся тем, что процессор дополнительно сконфигурирован с возможностью повторного инициирования передачи данных в целевую систему.

10. Считываемый компьютером носитель информации, содержащий выполняемые компьютером команды для предоставления доступа к ресурсу устройства, которые при их выполнении осуществляют способ, содержащий преобразование посредством исходной системы информации из начального формата в стандартный формат, прием информации от исходной системы в стандартном формате, хранение информации в стандартном формате, инициирование передачи информации в стандартном формате в целевую систему при сохранении информации в то же самое время, прием подтверждения приема целевой системы, указывающего, что целевая система приняла информацию, и посылку подтверждения приема в исходную систему при приеме подтверждения приема целевой системы.