RU2744566C1 - Method and system for integrating enterprise information resources - Google Patents
Method and system for integrating enterprise information resources Download PDFInfo
- Publication number
- RU2744566C1 RU2744566C1 RU2019145009A RU2019145009A RU2744566C1 RU 2744566 C1 RU2744566 C1 RU 2744566C1 RU 2019145009 A RU2019145009 A RU 2019145009A RU 2019145009 A RU2019145009 A RU 2019145009A RU 2744566 C1 RU2744566 C1 RU 2744566C1
- Authority
- RU
- Russia
- Prior art keywords
- data
- enterprise
- information
- routes
- information resources
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Operations Research (AREA)
- Quality & Reliability (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Description
ОБЛАСТЬ ТЕХНИКИFIELD OF TECHNOLOGY
Техническое решение относится к области устройств или методов цифровых вычислений или обработки данных, специально предназначенных для специфических функций, а также к области информационных технологий и вычислительной техники, в частности, к средствам сбора, обработки и распределения данных и информации, и может быть использовано для интеграции информационных ресурсов предприятия.The technical solution relates to the field of devices or methods of digital computing or data processing, specially designed for specific functions, as well as to the field of information technology and computer technology, in particular, to the means of collecting, processing and distributing data and information, and can be used for integration information resources of the enterprise.
УРОВЕНЬ ТЕХНИКИLEVEL OF TECHNOLOGY
Интеграция приложений - вопрос, который рано или поздно встает перед ИТ-подразделением любой организации, в которой этих приложений больше одного. Вот далеко не полный перечень задач, укладывающихся в понятие «интеграция»:Application integration is a question that sooner or later confronts the IT department of any organization in which there are more than one of these applications. Here is a far from complete list of tasks that fit into the concept of "integration":
• необходимость ведения общих справочников (например, справочников клиентов или сотрудников);• the need to maintain general directories (for example, customer or employee directories);
• запуск активностей в одной информационной системе при наступлении событий в другой;• launching activities in one information system when events occur in another;
• бизнес-процесс (организованная последовательность действий, выполняемых как людьми, так и информационными системами), протекающий в нескольких приложениях;• a business process (an organized sequence of actions performed by both people and information systems), proceeding in several applications;
• информационное взаимодействие с бизнес-партнерами (например, автоматический запрос цен на комплектующие у поставщика);• information interaction with business partners (for example, automatic request for prices for components from a supplier);
• унификация информационных обменов и бизнес-процессов в филиалах компании.• unification of information exchanges and business processes in the branches of the company.
Если выполнение подобного рода действий происходит на предприятии редко (например, раз в день), то организовать эти действия можно кустарным путем - например с помощью ручной выгрузки данных из одного приложения в формате Excel и загрузки их в другое приложение или вообще с помощью дублированного ввода информации сразу в две системы. Однако если потребность в информационном взаимодействии приложений возникает много раз в день, то встает вопрос о неэффективном использовании человеческих ресурсов и, как следствие, возникает необходимость автоматизации этой процедуры.If such actions are rarely performed at the enterprise (for example, once a day), then these actions can be organized in a handicraft way - for example, by manually unloading data from one application in Excel format and uploading them to another application, or in general using duplicated information input into two systems at once. However, if the need for information interaction of applications arises many times a day, then the question arises about the ineffective use of human resources and, as a consequence, the need to automate this procedure arises.
Пережив несколько поколений различных подходов к интеграции приложений, мировая индустрия программного обеспечения пришла к концепции единой сервисной шины предприятия (Enterprise Service Bus, ESB). С точки зрения архитектуры, ESB - это программное решение, обеспечивающее взаимодействие всех интегрируемых приложений через единую точку, единообразно, предоставляя разработчикам и администраторам унифицированные и централизованные средства разработки, тестирования и контроля протекания всех интеграционных сценариев, (с) «Подходы к интеграции приложений Enterprise Service Bus» Олег Бейлезон, КомпьютерПресс 6'2010.After going through several generations of different approaches to integrating applications, the global software industry has come to the concept of the Enterprise Service Bus (ESB). From an architectural point of view, ESB is a software solution that ensures the interaction of all integrated applications through a single point, in a uniform way, providing developers and administrators with unified and centralized tools for developing, testing and monitoring the flow of all integration scenarios, (c) "Approaches to Enterprise Service Application Integration Bus »Oleg Beylezon, ComputerPress 6'2010.
Из уровня техники известно техническое решение, описанное в US 8364745 В2 «Service oriented architecture enterprise service bus with universal ports», опубликовано: 26.05.2011, патентообладатель: International Business Machines Corp.(US). В документе описаны способ для обеспечения связи между приложениями, подключенными к служебной шине предприятия через множество портов, причем в данном решении вводится и используется универсальный порт ESB для подключения приложений к сервисной шине предприятия (ESB); универсальный порт ESB получает сообщение от приложения, запрашивающего услугу; определяется из сообщения протокол связи исходного приложения; сообщение обрабатывается и проверяется для определения формата обмена сообщениями исходного приложения; затем сообщение преобразуется из формата обмена сообщениями исходного приложения в общий формат обмена сообщениями, используемый корпоративной служебной шиной.From the prior art, a technical solution is known, described in US 8364745 B2 "Service oriented architecture enterprise service bus with universal ports", published: 05/26/2011, patentee: International Business Machines Corp. (US). The document describes a method for providing communication between applications connected to an enterprise service bus through multiple ports, the solution introducing and using a universal ESB port to connect applications to an enterprise service bus (ESB); a generic ESB port receives a message from an application requesting a service; the communication protocol of the original application is determined from the message; the message is processed and checked to determine the messaging format of the source application; the message is then converted from the original application messaging format to the generic messaging format used by the corporate Service Bus.
Из уровня техники известно техническое решение, описанное в RU 2656841 «Способ построения единого информационного пространства и система для его осуществления», опубликовано: 06.06.2018, патентообладатель: Федеральное государственное автономное образовательное учреждение высшего образования "Санкт-Петербургский государственный университет аэрокосмического приборостроения" (RU). В заявленном изобретении единое информационное пространство разбивают на фрагменты по числу информационных сред предприятий, при этом по крайней мере два фрагмента единого информационного пространства формируют как управляющие центры, обеспечивающие синхронизацию, виртуальную и материальную интеграцию и доступность разнородных информационных ресурсов, а оставшиеся фрагменты единого информационного пространства формируют как локальные центры для сбора и хранения информации только от локальных источников информации. Система содержит информационные среды предприятий, соединенные сетью передачи данных, при этом при формировании единого информационного пространства к каждой из информационных сред предприятий дополнительно подсоединены блок аккомодации, модуль электронного архива, модуль информационной модели изделия и модуль коммуникационного интерфейса, все вместе составляющие фрагмент единого информационного пространства.The technical solution described in RU 2656841 "A method for constructing a single information space and a system for its implementation" is known from the prior art, published: 06.06.2018, patentee: Federal State Autonomous Educational Institution of Higher Education "St. Petersburg State University of Aerospace Instrumentation" (RU ). In the claimed invention, a single information space is divided into fragments according to the number of information environments of enterprises, while at least two fragments of a single information space are formed as control centers that ensure synchronization, virtual and material integration and availability of heterogeneous information resources, and the remaining fragments of a single information space are formed as local centers for collecting and storing information only from local information sources. The system contains the information environments of enterprises connected by a data transmission network, while in the formation of a single information space, an accommodation unit, an electronic archive module, a product information model module and a communication interface module are additionally connected to each of the enterprise information environments, all together constituting a fragment of a single information space.
Также из уровня техники известны следующие системы: «MuleESB», «Microsoft BizTalk Server», «Talend ESB», «Red Hat JBoss Fuse».The following systems are also known from the prior art: "MuleESB", "Microsoft BizTalk Server", "Talend ESB", "Red Hat JBoss Fuse".
Существенными недостатками вышеприведенных технических решений являются: отсутствие механизмов для масштабирования и отказоустойчивости с возможностью досылки сообщений; отсутствие или незначительная степень возможности визуального конфигурирования и мониторинга.Significant disadvantages of the above technical solutions are: lack of mechanisms for scaling and fault tolerance with the ability to send messages; lack or negligible degree of visually configurable and monitoring capabilities.
СУЩНОСТЬ ТЕХНИЧЕСКОГО РЕШЕНИЯESSENCE OF THE TECHNICAL SOLUTION
Задачей заявленного технического решения является устранение недостатков, присущих существующим аналогам.The task of the claimed technical solution is to eliminate the disadvantages inherent in existing analogues.
Технический результат от использования данного технического решения заключается в повышении скорости обмена данными, а также в обеспечении надежности и отказоустойчивости в процессе обмена данными между разнородными информационными системами внутри одного предприятия или организации.The technical result from the use of this technical solution is to increase the speed of data exchange, as well as to ensure reliability and fault tolerance in the process of data exchange between heterogeneous information systems within one enterprise or organization.
Данный технический результат достигается за счет создания, настройки и объединения узлов маршрутов передачи данных в процессе интеграции информационных ресурсов предприятия в кластер для балансировки в кластерной конфигурации.This technical result is achieved by creating, configuring and combining nodes of data transmission routes in the process of integrating information resources of an enterprise into a cluster for balancing in a cluster configuration.
В одном из предпочтительных вариантов реализации предложен способ интеграции информационных ресурсов предприятия, характеризующийся тем, что: получают исходные данные, содержащие список конечных точек интегрируемых информационных систем предприятия для последующей маршрутизации данных, наименование и адрес каждой из конечных точек, типы обрабатываемых сообщений, обрабатываемые сообщения; осуществляют настройку, построение и последующее управление маршрутами передачи данных; осуществляют настройку процесса преобразования данных; осуществляют создание, настройку и объединение узлов маршрутов передачи данных в кластер для балансировки в кластерной конфигурации; производят развертывание сформированных маршрутов передачи данных с настроенными процессами преобразования данных с возможностью производить обмен данными интегрируемых информационных систем.In one of the preferred embodiments, a method for integrating information resources of an enterprise is proposed, characterized in that: initial data is obtained containing a list of end points of the integrated information systems of the enterprise for subsequent routing of data, the name and address of each of the end points, types of messages processed, messages processed; carry out configuration, construction and subsequent management of data transmission routes; adjusting the data conversion process; create, configure and combine nodes of data transmission routes to a cluster for balancing in a cluster configuration; deploy the formed data transmission routes with customized data conversion processes with the ability to exchange data from the integrated information systems.
Может производиться управление DSL-маршрутами передачи информации между информационными системами предприятия.DSL routes of information transfer between enterprise information systems can be controlled.
Может производиться управление XML-маршрутами передачи информации между информационными системами предприятия.Management of XML routes of information transfer between enterprise information systems can be performed.
Может производиться управление UDR -маршрутами передачи информации между информационными системами предприятия.Management of UDR-routes of information transfer between enterprise information systems can be carried out.
Настройка, построение и последующее управление маршрутами передачи данных, настройка процесса преобразования данных, создание, настройка и объединение узлов маршрутов передачи данных в кластер для балансировки в кластерной конфигурации и развертывание сформированных маршрутов передачи данных с настроенными процессами преобразования данных может производиться посредством инструментов визуального проектирования.Configuring, building and subsequent management of data transmission routes, configuring the data transformation process, creating, configuring and combining nodes of data transmission routes to a cluster for balancing in a cluster configuration and deploying the generated data transmission routes with customized data transformation processes can be done using visual design tools.
Настройка процесса преобразования данных может включать в себя ETL-преобразования.Customizing the data transformation process can include ETL transformations.
Данное техническое решение может быть выполнено в виде системы интеграции информационных ресурсов предприятия, содержащей: по крайней мере, одно устройство обработки команд; по крайней мере, одно устройство хранения данных; одну или более компьютерных программ, загружаемых в, по крайней мере, одно вышеупомянутое устройство хранения данных и выполняемых на, по крайне мере, одном из вышеупомянутых устройств обработки команд, при этом одна или более компьютерных программ содержат следующие инструкции: получают исходные данные, содержащие список конечных точек интегрируемых информационных систем предприятия для последующей маршрутизации данных, наименование и адрес каждой из конечных точек, типы обрабатываемых сообщений, обрабатываемые сообщения; осуществляют настройку, построение и последующее управление маршрутами передачи данных; осуществляют настройку процесса преобразования данных; осуществляют создание, настройку и объединение узлов маршрутов передачи данных в кластер для балансировки в кластерной конфигурации; производят развертывание сформированных маршрутов передачи данных с настроенными процессами преобразования данных с возможностью производить обмен данными интегрируемых информационных систем.This technical solution can be implemented in the form of a system for integrating information resources of an enterprise, containing: at least one command processing device; at least one storage device; one or more computer programs loaded into at least one aforementioned storage device and executed on at least one of the aforementioned command processing devices, wherein the one or more computer programs comprise the following instructions: end points of integrated information systems of the enterprise for subsequent routing of data, name and address of each of the end points, types of processed messages, processed messages; carry out configuration, construction and subsequent management of data transmission routes; adjusting the data conversion process; create, configure and combine nodes of data transmission routes to a cluster for balancing in a cluster configuration; deploy the formed data transmission routes with customized data conversion processes with the ability to exchange data from the integrated information systems.
Может производиться управление DSL-маршрутами передачи информации между информационными системами предприятия.DSL routes of information transfer between enterprise information systems can be controlled.
Может производиться управление XML-маршрутами передачи информации между информационными системами предприятия.Management of XML routes of information transfer between enterprise information systems can be performed.
Может производиться управление UDR -маршрутами передачи информации между информационными системами предприятия.Management of UDR-routes of information transfer between enterprise information systems can be carried out.
Настройка, построение и последующее управление маршрутами передачи данных, настройка процесса преобразования данных, создание, настройка и объединение узлов маршрутов передачи данных в кластер для балансировки в кластерной конфигурации и развертывание сформированных маршрутов передачи данных с настроенными процессами преобразования данных может производиться посредством инструментов визуального проектирования.Configuring, building and subsequent management of data transmission routes, configuring the data transformation process, creating, configuring and combining nodes of data transmission routes to a cluster for balancing in a cluster configuration and deploying the generated data transmission routes with customized data transformation processes can be done using visual design tools.
Настройка процесса преобразования данных может включать в себя ETL-преобразования.Customizing the data transformation process can include ETL transformations.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙBRIEF DESCRIPTION OF DRAWINGS
Фиг. 1 - блок-схема способа интеграции информационных ресурсов предприятия;FIG. 1 is a block diagram of a method for integrating information resources of an enterprise;
Фиг. 2 - редактор XML-маршрутов;FIG. 2 - XML routes editor;
Фиг. 3 - графический конструктор маршрутов;FIG. 3 - graphical route designer;
Фиг. 4 - пример конструирования UDR-маршрута;FIG. 4 is an example of constructing a UDR route;
Фиг. 5 - пример графического отображения построенного маршрута с заданными условиями и параметрами;FIG. 5 - an example of a graphical display of the constructed route with the specified conditions and parameters;
Фиг. 6 - графический интерфейс управления маршрутами данных;FIG. 6 - graphical interface for managing data routes;
Фиг. 7 - схема системы для реализации способа интеграции информационных ресурсов предприятия.FIG. 7 is a diagram of a system for implementing a method for integrating information resources of an enterprise.
ПОДРОБНОЕ ОПИСАНИЕ ТЕХНИЧЕСКОГО РЕШЕНИЯDETAILED DESCRIPTION OF THE TECHNICAL SOLUTION
В данном техническом решении под системой подразумевается компьютерная система, ЭВМ (электронно-вычислительная машина), ЧПУ (числовое программное управление), ПЛК (программируемый логический контроллер), компьютеризированные системы управления и любые другие устройства, способные выполнять заданную, четко определенную последовательность операций (действий, инструкций).In this technical solution, the system means a computer system, a computer (electronic computer), CNC (numerical control), PLC (programmable logic controller), computerized control systems and any other devices capable of performing a given, clearly defined sequence of operations (actions , instructions).
Под устройством обработки команд подразумевается электронный блок либо интегральная схема (микропроцессор), исполняющая машинные инструкции (программы).A command processing device means an electronic unit or an integrated circuit (microprocessor) that executes machine instructions (programs).
Устройство обработки команд считывает и выполняет машинные инструкции (программы) с одного или более устройства хранения данных. В роли устройства хранения данных могут выступать, но, не ограничиваясь, жесткие диски (HDD), флеш-память, ПЗУ (постоянное запоминающее устройство), твердотельные накопители (SSD), оптические приводы.A command processor reads and executes machine instructions (programs) from one or more storage devices. The role of data storage devices can be, but are not limited to, hard disks (HDD), flash memory, ROM (read only memory), solid state drives (SSD), optical drives.
Программа - последовательность инструкций, предназначенных для исполнения устройством управления вычислительной машины или устройством обработки команд.A program is a sequence of instructions intended for execution by a computer control device or a command processing device.
Ниже будут рассмотрены некоторые термины, которые в дальнейшем будут использоваться при описании технического решения.Below we will consider some terms that will be used in the future when describing a technical solution.
Конечная точка - клиент системы обмена сообщениями, позволяющий приложению отправлять и принимать сообщения.An endpoint is a messaging client that allows an application to send and receive messages.
Маршрут - логический путь, объединяющий программы и использующийся для транспортировки сообщений.A route is a logical path that connects programs and is used to transport messages.
Сообщение - пакет данных, передающийся по маршруту.Message is a data packet transmitted along a route.
Кластер - группа компьютеров, объединенных высокоскоростными каналами связи, представляющая с точки зрения пользователя единый аппаратный ресурс. Кластер - слабо связанная совокупность нескольких вычислительных систем, работающих совместно для выполнения общих приложений, и представляющихся пользователю единой системой. Кластер - это разновидность параллельной или распределенной системы, которая:Cluster is a group of computers united by high-speed communication channels, representing from the user's point of view a single hardware resource. A cluster is a loosely coupled collection of several computing systems that work together to run common applications and appear to the user as a single system. A cluster is a kind of parallel or distributed system that:
• состоит из нескольких связанных между собой компьютеров;• consists of several interconnected computers;
• используется как единый, унифицированный компьютерный ресурс.• is used as a single, unified computer resource.
Обычно различают следующие основные виды кластеров:The following main types of clusters are usually distinguished:
• отказоустойчивые кластеры (High-availability clusters, НА, кластеры высокой доступности);• failover clusters (High-availability clusters, HA, high availability clusters);
• кластеры с балансировкой нагрузки (Load balancing clusters);• Load balancing clusters;
• вычислительные кластеры (High performance computing clusters, HPC);• computing clusters (High performance computing clusters, HPC);
• системы распределенных вычислений.• distributed computing systems.
Репликация - механизм синхронизации содержимого нескольких копий объекта (например, содержимого базы данных). Репликация - это процесс, под которым понимается копирование данных из одного источника на другой (или на множество других) и наоборот. При репликации изменения, сделанные в одной копии объекта, могут быть распространены в другие копии.Replication is a mechanism for synchronizing the contents of multiple copies of an object (for example, the contents of a database). Replication is a process by which we mean copying data from one source to another (or to many others) and vice versa. During replication, changes made to one copy of an object can be propagated to other copies.
DSL (Domain Specific Language) маршруты - маршруты, реализованные на Java DSL языке, использующие синтаксис данного языка и специфику функциональности маршрута.DSL (Domain Specific Language) routes are routes implemented in the Java DSL language, using the syntax of this language and the specifics of the route functionality.
UDR (User Defined Routing) - определяемые, т.е. настраиваемые пользователем маршруты.UDR (User Defined Routing) - defined, i.e. user-configurable routes.
XML (Extensible Markup Language) - производный язык разметки документов, позволяющий структурировать информацию разного типа, используя для этого произвольный набор инструкций.XML (Extensible Markup Language) is a derived document markup language that allows you to structure information of different types using an arbitrary set of instructions.
ETL (от англ. Extract, Transform, Load - дословно «извлечение, преобразование, загрузка») - один из основных процессов в управлении хранилищами данных, который включает в себя: извлечение данных из внешних источников; их трансформация и очистка, чтобы они соответствовали потребностям бизнес-модели; и загрузка их в хранилище данных.ETL (from the English Extract, Transform, Load - literally "extraction, transformation, loading") is one of the main processes in data warehouse management, which includes: extracting data from external sources; transforming and refining them to fit the needs of the business model; and loading them into the data warehouse.
Данное техническое решение обеспечивает повышение скорости обмена данными, а также надежность и отказоустойчивость в процессе обмена данными между разнородными информационными системами внутри одного предприятия или организации за счет создания, настройки и объединения узлов маршрутов передачи данных в процессе интеграции информационных ресурсов предприятия в кластер для балансировки в кластерной конфигурации.This technical solution provides an increase in the speed of data exchange, as well as reliability and fault tolerance in the process of exchanging data between heterogeneous information systems within one enterprise or organization by creating, configuring and combining nodes of data transmission routes in the process of integrating information resources of an enterprise into a cluster for balancing in a cluster. configuration.
Согласно предлагаемому техническому решению, способ интеграции информационных ресурсов предприятия заключается в выполнении следующих этапов (блок-схема изображена на Фиг. 1).According to the proposed technical solution, the method of integrating information resources of an enterprise consists in performing the following steps (a block diagram is shown in Fig. 1).
Получают исходные данные, содержащие список конечных точек интегрируемых информационных систем предприятия для последующей маршрутизации данных, наименование и адрес каждой из конечных точек, типы обрабатываемых сообщений, обрабатываемые сообщения.Initial data is received containing a list of endpoints of the integrated information systems of the enterprise for subsequent routing of data, the name and address of each of the endpoints, the types of messages being processed, and the messages being processed.
Каждая точка интегрируемых информационных систем предприятия в частном варианте реализации описываемого технического решения характеризуется:Each point of the integrated information systems of the enterprise in a particular implementation of the described technical solution is characterized by:
1. адресом в формате URL (uniform resource locator);1.Address in the URL format (uniform resource locator);
2. типом обрабатываемого сообщения (класс, подключение к СУБД, подключение к файлу и т.д.);2. the type of message being processed (class, connection to the DBMS, connection to the file, etc.);
3. обрабатываемым сообщением, состоящим из:3.processed message, consisting of:
3.1. идентификатора сообщения (messageID);3.1. message identifier (messageID);
3.2. перечня именованных заголовков сообщения, содержащих разнообразную служебную информацию для его обработки (messageHeaders);3.2. a list of named message headers containing various service information for its processing (messageHeaders);
3.3. перечня именованных вложений, хранящих порядок обработки сообщения (messageAttachments);3.3. a list of named attachments storing the order of message processing (messageAttachments);
3.4. тела сообщения (messageBody).3.4. message body (messageBody).
Осуществляют настройку, построение и последующее управление маршрутами передачи данных.Carry out configuration, construction and subsequent management of data transmission routes.
Маршруты предназначены для взаимодействия между двумя отдельными приложениями через обмен сообщениями. Настройка маршрута передачи данных представляет собой указание точки приема информации и точки (точек) выдачи информации.Routes are for communication between two separate applications through messaging. Setting up a data transmission route is an indication of the point of receiving information and the point (s) of issuing information.
В частном варианте реализации описываемого технического решения реализована возможность управлять тремя типами маршрутов:In a private embodiment of the described technical solution, the ability to manage three types of routes is implemented:
• XML - маршруты, написанные на языке XML.• XML - routes written in XML.
• UDR - User Defined Route (маршруты, построенные в конструкторе маршрутов).• UDR - User Defined Route (routes built in the route constructor).
• DSL - Domain Specific Language (маршруты, реализованные на Java DSL языке, использующие синтаксис данного языка и специфику функциональности маршрута).• DSL - Domain Specific Language (routes implemented in Java DSL language, using the syntax of this language and the specifics of the functionality of the route).
XML-маршруты - это маршруты, написанные на языке XML, во встроенном (изображен на Фиг. 2) или внешнем текстовом редакторе. Редактор маршрутов открывается при нажатии на кнопку «Добавить маршрут» или «Редактировать».XML routes are routes written in XML in an embedded (shown in Figure 2) or external text editor. The route editor opens when you click on the "Add route" or "Edit" button.
Маршрут складывается из набора шагов, шаги в маршруте выполняются последовательно, например:The route consists of a set of steps, the steps in the route are performed sequentially, for example:
<route<route
xmlns="http://camel. apache.org/schema/spring">xmlns = "http: // camel. apache.org/schema/spring">
<from uri="smb2://username:password@hostname/share/dir1/"/><from uri = "smb2: // username: password @ hostname / share / dir1 /" />
<to uri="smb2://username:password@hostname/share/dir2/7><to uri = "smb2: // username: password @ hostname / share / dir2 / 7>
</route>,</route>,
гдеWhere
• from, to - направление потока данных,• from, to - direction of data flow,
• uri - тип конечной точки,• uri - endpoint type,
• smb2 - тип используемого протокола,• smb2 - the type of protocol used,
• username:password@hostname - параметры аутентификации и адрес сервера,• username: password @ hostname - authentication parameters and server address,
• /share/dir1/, /share/dir2/ - расположение целевого каталога.• / share / dir1 /, / share / dir2 / - location of the target directory.
UDR-маршруты - это маршруты, созданные во встроенном графическом конструкторе маршрутов (изображен на Фиг. 3).UDR routes are routes created in the built-in graphical route designer (shown in Figure 3).
Создание маршрутов осуществляется выбором элемента (компонента или элемента маршрутизации) и перетаскиванием в рабочую область (методом point-and-click). При дальнейшем добавлении элементов конструктор предложит места связи с элементами, уже находящимися в рабочей области. Пример конструирования UDR-маршрута изображен на Фиг. 4. При перетаскивании элемента в предложенную область автоматически установится связь между двумя элементами.Routes are created by selecting an element (component or routing element) and dragging it into the workspace (using the point-and-click method). As you add items further, the designer will suggest links to items that are already on the workspace. An example of constructing a UDR route is shown in FIG. 4. When you drag an item to the suggested area, a link is automatically established between the two items.
Для построения UDR-маршрута с элементами выбора имеется возможность применять элементы маршрутизации Choice/When/Otherwise (пример графического отображения построенного маршрута с заданными условиями и параметрами изображен на Фиг. 5).To build a UDR route with selection elements, it is possible to use Choice / When / Otherwise routing elements (an example of a graphical display of a constructed route with specified conditions and parameters is shown in Fig. 5).
DSL-маршруты - маршруты, реализованные на Java DSL (Domain Specific Language) языке, использующие синтаксис этого языка и специфику функциональности маршрута.DSL routes are routes implemented in the Java DSL (Domain Specific Language) language, using the syntax of this language and the specifics of the route functionality.
Вне зависимости от типа маршрутов в частном варианте реализации описываемого технического решения существует возможность управлять ими посредством графического интерфейса (на Фиг. 6 изображен пример).Regardless of the type of routes in a particular embodiment of the described technical solution, it is possible to control them by means of a graphical interface (Fig. 6 shows an example).
При этом каждый маршрут имеет уникальное наименование, детальное описание, текущий статус и ряд действий, доступных для его статуса.Moreover, each route has a unique name, detailed description, current status and a number of actions available for its status.
Возможные статусы маршрута:Possible route statuses:
• «Запущен» - маршрут, работающий в системе.• "Started" - a route that is running in the system.
• «Остановлен» - маршрут, не работающий в системе.• "Stopped" - a route that does not work in the system.
Возможные действия с маршрутом:Possible actions with the route:
Запустить - запускает остановленный маршрут (на Фиг. 6 позиция 1). Остановить - останавливает запущенные маршрут (на Фиг. 6 позиция 2). Показать подробности - показывает детальную информацию о маршруте (на Фиг. 6 позиция 3). Свойства - открывает окно просмотра параметров маршрута (на Фиг. 6 позиция 4). Логи - открывает к просмотру и редактированию логи маршрута (на Фиг. 6 позиция 5). Восстановить -восстанавливает удаленный маршрут (на Фиг. 6 позиция 6). Удалить -удаляет активный (не удаленный) маршрут (на Фиг. 6 позиция 7).Start - starts a stopped route (in Fig. 6, position 1). Stop - stops running routes (in Fig. 6, position 2). Show details - shows detailed information about the route (in Fig. 6, position 3). Properties - opens a window for viewing route parameters (in Fig. 6, position 4). Logs - opens the route logs for viewing and editing (in Fig. 6, position 5). Restore - restores a deleted route (in Fig. 6, position 6). Delete - deletes the active (not deleted) route (in Fig. 6, position 7).
Маршруты сортируются по наименованию, описанию и статусу.Routes are sorted by name, description and status.
Осуществляют настройку процесса преобразования данных.Configure the data conversion process.
В частном варианте реализации описываемого технического решения настройка процесса преобразования (нормализации) данных представляет собой реализацию программного кода (класса, или набора классов) на языке Java. Для унификации и стандартизации рассматриваемого процесса, в основе программного кода нормализации информации, используется программный продукт осуществления трансформаций ETL (extract, transform, load), например, Pentaho Data Integration (PDI). Подобный подход позволяет использовать ETL-преобразования внутри модулей, написанных на языке Java. Описание процесса проведения любой ETL-трансформации хранится в файле формата XML и формируется посредством графического интерфейса, что свободно позволяет хранить и обрабатывать (загрузка трансформации ETL, удаление трансформаций ETL, привязка трансформации ETL к маршруту передачи информации, и т.д.) произвольные трансформации ETL. Обработка преобразований ETL также реализуется посредством графического интерфейса пользователя.In a particular implementation of the described technical solution, setting up the data transformation (normalization) process is an implementation of the program code (class, or set of classes) in the Java language. To unify and standardize the process under consideration, the information normalization software code is based on the ETL (extract, transform, load) transformation software, for example, Pentaho Data Integration (PDI). This approach allows ETL transformations to be used within modules written in the Java language. A description of the process of carrying out any ETL transformation is stored in an XML file and is formed through a graphical interface, which allows you to freely store and process (loading an ETL transformation, deleting ETL transformations, linking an ETL transformation to an information transfer route, etc.) arbitrary ETL transformations ... ETL transformation processing is also done through a graphical user interface.
Осуществляют создание, настройку и объединение узлов маршрутов передачи данных в кластер для балансировки в кластерной конфигурации.They create, configure and combine nodes of data transmission routes into a cluster for balancing in a cluster configuration.
Для реализации вышеуказанного подхода предлагается использовать класс программного обеспечения, известного как брокеры сообщений, например, ActiveMQ. Система обмена сообщениями (или промежуточное ПО, ориентированное на сообщения, как ее иногда называют), состоит из следующих компонентов: брокера - центральной части промежуточного программного обеспечения, распределяющей сообщения; клиента - части программного обеспечения, которая перебрасывает сообщения с помощью брокера.To implement the above approach, it is proposed to use a class of software known as message brokers, for example ActiveMQ. A messaging system (or message-centric middleware, as it is sometimes called) consists of the following components: a broker — the central piece of middleware that distributes messages; client - a piece of software that forwards messages using a broker.
В частной реализации описываемого технического решения, используется брокер сообщений с возможностями персистентного хранилища (персистентное хранилище является репозиторием, в котором могут храниться управляемые объекты) и служба для распределенных систем (централизованная служба для поддержки информации о конфигурации, именования, обеспечения распределенной синхронизации и предоставления групповых служб), предлагающая иерархическое хранилище значений ключей для решения задач отказоустойчивости систем, например, ZooKeeper.In a private implementation of the described technical solution, a message broker with persistent storage capabilities is used (persistent storage is a repository in which managed objects can be stored) and a service for distributed systems (a centralized service for maintaining configuration information, naming, providing distributed synchronization and providing group services ), offering a hierarchical storage of key values for solving system fault tolerance problems, for example, ZooKeeper.
Таким образом, реализуется кластеризация брокера сообщений путем создания кластера из нескольких равноправных серверов с балансировкой нагрузки (Load balancing clusters), также обеспечивается репликация сообщений между всеми узлами кластера, что в свою очередь гарантирует отсутствие потери данных.Thus, the clustering of the message broker is implemented by creating a cluster of several peer servers with load balancing (Load balancing clusters), and replication of messages between all cluster nodes is ensured, which in turn guarantees no data loss.
Данный подход обеспечивает надежную доставку данных и не допускает потери полученных данных/сообщений, в том числе в случаях:This approach ensures reliable data delivery and prevents the loss of received data / messages, including in the following cases:
- сбоя, отказа или отключения одного, нескольких или всех серверов, на которых развернута система;- failure, failure or shutdown of one, several or all servers on which the system is deployed;
- недоступности получателя.- unavailability of the recipient.
Любое сообщение, полученное системой источника, доставляется получателю по определенному маршруту. Сообщения доставляются строго однократно. Если сообщение не удалось доставить за установленное время, оно помещается в список недоставленных сообщений, при этом имеется возможность настраивать доставку данных: таймаут и количество попыток.Any message received by the source system is delivered to the recipient along a specific route. Messages are delivered strictly once. If the message could not be delivered within the specified time, it is placed in the list of undelivered messages, while it is possible to configure data delivery: timeout and number of attempts.
Если у маршрута есть недоставленные сообщения, то в режиме редактирования данного маршрута отображается уведомление о наличии недоставленных сообщений по маршруту: «У данного маршрута есть недоставленные сообщения. Если изменить параметры конечных точек назначения, то сообщение будет доставлено по новому адресу при возобновлении процедуры доставки».If the route has undelivered messages, then in edit mode of this route, a notification about the presence of undelivered messages along the route is displayed: “This route has undelivered messages. If you change the parameters of the destination endpoints, the message will be delivered to the new address when the delivery procedure is resumed. "
Если у маршрута есть недоставленные сообщения, то данный маршрут невозможно удалить. При попытке удаления отображается уведомление о наличии недоставленных сообщений по маршруту.If a route has undelivered messages, then the route cannot be deleted. When attempting to delete, a notification is displayed that there are undeliverable messages on the route.
При запуске маршрута производится попытка доставки недоставленных сообщений. В случае успеха маршрут остается запущенным в штатном режиме. В случае неудачи маршрут останавливается и не предпринимает попыток отправить новые сообщения.When the route starts, it tries to deliver undeliverable messages. If successful, the route remains running normally. If it fails, the route stops and does not attempt to send new messages.
Производят развертывание сформированных маршрутов передачи данных с настроенными процессами преобразования данных с возможностью производить обмен данными интегрируемых информационных систем.The formed data transmission routes are deployed with customized data conversion processes with the ability to exchange data from the integrated information systems.
Развертывание маршрута преобразования данных и связанного с ним процесса преобразования данных в частном варианте реализации описываемого технического решения осуществляется при помощи графического интерфейса пользователя. По завершении указанной операции можно производить передачу информации от системы, выступающей в качестве источника данных, к системе (системам), выступающей (их) в качестве приемника информации.The deployment of the data conversion route and the associated data conversion process in a particular embodiment of the described technical solution is carried out using a graphical user interface. Upon completion of this operation, it is possible to transfer information from the system serving as a data source to the system (systems) acting as a receiver of information.
Согласно Фиг. 7, примерная система для реализации технического решения включает в себя устройство обработки данных 0. Устройство обработки данных 0 может быть сконфигурировано как клиент, сервер, мобильное устройство или любое другое вычислительное устройство, которое взаимодействует с данными в системе совместной работы, основанной на сети. В самой базовой конфигурации устройство обработки данных 0, как правило, включает в себя, по меньшей мере, один процессор 1 и устройство хранения данных 2. В зависимости от точной конфигурации и типа вычислительного устройства системная память 2 может быть энергозависимой (например, оперативное запоминающее устройство (ОЗУ, RAM)), энергонезависимой (например, постоянное запоминающее устройство (ПЗУ, ROM)) или некоторой их комбинацией. Устройство хранения данных 2, как правило, включает в себя одну или более прикладных программ 3 и может включать в себя данные 4 программ. Настоящее техническое решение как способ, описанное в деталях выше, реализовано в прикладных программах 3.Referring to FIG. 7, an exemplary system for implementing the technical solution includes
Устройство обработки данных 0 может иметь дополнительные особенности или функциональные возможности. Например, устройство обработки данных О может также включать в себя дополнительные устройства хранения данных (съемные и несъемные), такие как, например, магнитные диски, оптические диски или лента. Такие дополнительные хранилища проиллюстрированы на Фиг. 7 посредством несъемного хранилища 7 и съемного хранилища 8. Компьютерные носители данных могут включать в себя энергозависимые и энергонезависимые, съемные и несъемные носители, реализованные любым способом или при помощи любой технологии для хранения информации. Устройство хранения данных 2, несъемное хранилище 7 и съемное хранилище 8 являются примерами компьютерных носителей данных. Компьютерные носители данных включают в себя, но не в ограничительном смысле, оперативное запоминающее устройство (ОЗУ), постоянное запоминающее устройство (ПЗУ), электрически стираемое программируемое ПЗУ (EEPROM), флэш-память или память, выполненную по другой технологии, ПЗУ на компакт-диске (CD-ROM), универсальные цифровые диски (DVD) или другие оптические запоминающие устройства, магнитные кассеты, магнитные ленты, хранилища на магнитных дисках или другие магнитные запоминающие устройства, или любую другую среду, которая может быть использована для хранения желаемой информации и к которой может получить доступ устройство обработки данных 0. Любой такой компьютерный носитель данных может быть частью устройства 0. Устройство обработки данных 0 может также включать в себя устройство(а) 5 ввода, такие как клавиатура, мышь, перо, устройство с речевым вводом, устройство сенсорного ввода, и так далее. Устройство (а) 6 вывода, такие как дисплей, динамики, принтер и тому подобное, также могут быть включены в состав устройства.
Устройство обработки данных 0 содержит коммуникационные соединения, которые позволяют устройству связываться с другими вычислительными устройствами, например по сети. Сети включают в себя локальные сети и глобальные сети наряду с другими большими масштабируемыми сетями, включая, но не в ограничительном смысле, корпоративные сети и экстрасети. Коммуникационное соединение является примером коммуникационной среды. Как правило, коммуникационная среда может быть реализована при помощи машиночитаемых инструкций, структур данных, программных модулей или других данных в модулированном информационном сигнале, таком как несущая волна, или в другом транспортном механизме, и включает в себя любую среду доставки информации. Термин «модулированный информационный сигнал» означает сигнал, одна или более из его характеристик изменены или установлены таким образом, чтобы закодировать информацию в этом сигнале. Для примера, но без ограничения, коммуникационные среды включают в себя проводные среды, такие как проводная сеть или прямое проводное соединение, и беспроводные среды, такие как акустические, радиочастотные, инфракрасные и другие беспроводные среды. Термин «машиночитаемый носитель», как употребляется в этом документе, включает в себя как носители данных, так и коммуникационные среды.
В частной реализации описываемого технического решения система интеграции информационных ресурсов предприятия создана по принципу модульности, т.е. обладает возможностью гибко конфигурироваться под требования каждого конкретного проекта. Таким образом, система позволяет активировать или деактивировать часть функциональности в зависимости от предъявленных конкретным проектом условий.In the private implementation of the described technical solution, the system for integrating information resources of an enterprise is created on the principle of modularity, i.e. has the ability to flexibly configure for the requirements of each specific project. Thus, the system allows you to activate or deactivate part of the functionality, depending on the conditions presented by a specific project.
Созданная система интеграции информационных ресурсов предприятия состоит из следующих основных компонентов:The created system for integrating information resources of an enterprise consists of the following main components:
1. Блок обмена сообщениями между информационными системами и маршрутами передачи информации;1. Block of message exchange between information systems and information transfer routes;
2. Блок управления маршрутами передачи информации между информационными системами;2. Block for managing information transfer routes between information systems;
3. Блок управления процедурами преобразования данных (ETL-процедуры);3. Block for managing data transformation procedures (ETL procedures);
4. Блок справочников;4. Block of reference books;
5. Блок управления безопасностью;5. Security control unit;
6. Блок аудита;6. Audit unit;
7. Блок мониторинга функционирования маршрутов передачи информации;7. Block for monitoring the functioning of information transmission routes;
8. Блок предоставления справочной информации.8. Block for providing reference information.
В качестве средства обмена информацией между блоками в данном техническом решении может выступать компьютерная шина обмена данными.In this technical solution, a computer data exchange bus can act as a means of information exchange between units.
Блоки, используемые в данном техническом решении, могут быть реализованы с помощью электронных компонент, используемых для создания цифровых интегральных схем. Не ограничиваюсь, могут быть использоваться микросхемы, логика работы которых определяется при изготовлении, или программируемые логические интегральные схемы (ПЛИС), логика работы которых задается посредством программирования. Для программирования используются программаторы и отладочные среды, позволяющие задать желаемую структуру цифрового устройства в виде принципиальной электрической схемы или программы на специальных языках описания аппаратуры: Verilog, VHDL, AHDL и др. Альтернативой ПЛИС являются: программируемые логические контроллеры (ПЛК), базовые матричные кристаллы (БМК), требующие заводского производственного процесса для программирования; ASIC - специализированные заказные большие интегральные схемы (БИС), которые при мелкосерийном и единичном производстве существенно дороже.The blocks used in this technical solution can be implemented using electronic components used to create digital integrated circuits. Not limited to, microcircuits, the logic of which is determined during manufacture, or programmable logic integrated circuits (FPGA), the logic of which is set through programming, can be used. For programming, programmers and debugging environments are used that allow you to set the desired structure of a digital device in the form of a circuit diagram or a program in special hardware description languages: Verilog, VHDL, AHDL, etc. An alternative to FPGAs are: programmable logic controllers (PLCs), basic matrix crystals ( BMK) requiring a factory production process for programming; ASICs are specialized custom large integrated circuits (LSIs), which are significantly more expensive for small-scale and single-piece production.
Также блоки могут быть реализованы с помощью постоянных запоминающих устройств (см. Лебедев О.Н. Микросхемы памяти и их применение. - М.: Радио и связь, 1990. - 160 с.; Большие интегральные схемы запоминающих устройств: Справочник / А.Ю. Горденов и др. - М.: Радио и связь, 1990. - 288 с.).Also, the blocks can be implemented using read-only memory devices (see Lebedev O.N. Memory microcircuits and their application. - M .: Radio and communication, 1990. - 160 p.; Large integrated circuits of memory devices: Handbook / A.Yu. Gordenov et al. - M .: Radio and communication, 1990. - 288 p.).
Таким образом, реализация всех используемых блоков достигается стандартными средствами, базирующимися на классических принципах реализации основ вычислительной техники.Thus, the implementation of all the blocks used is achieved by standard means based on the classical principles of the implementation of the foundations of computer technology.
Специалисту в данной области очевидно, что конкретные варианты осуществления способа и системы интеграции информационных ресурсов предприятия были описаны здесь в целях иллюстрации, допустимы различные модификации, не выходящие за рамки и сущности объема технического решения.It is obvious to a person skilled in the art that specific embodiments of the method and system for integrating information resources of an enterprise have been described here for purposes of illustration, various modifications are possible without going beyond the scope and essence of the scope of the technical solution.
Claims (16)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2019145009A RU2744566C1 (en) | 2019-12-30 | 2019-12-30 | Method and system for integrating enterprise information resources |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
RU2019145009A RU2744566C1 (en) | 2019-12-30 | 2019-12-30 | Method and system for integrating enterprise information resources |
Publications (1)
Publication Number | Publication Date |
---|---|
RU2744566C1 true RU2744566C1 (en) | 2021-03-11 |
Family
ID=74874329
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
RU2019145009A RU2744566C1 (en) | 2019-12-30 | 2019-12-30 | Method and system for integrating enterprise information resources |
Country Status (1)
Country | Link |
---|---|
RU (1) | RU2744566C1 (en) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050267908A1 (en) * | 2004-05-28 | 2005-12-01 | Letourneau Jack J | Method and/or system for simplifying tree expressions, such as for pattern matching |
US20060123029A1 (en) * | 2004-11-30 | 2006-06-08 | Letourneau Jack J | Method and/or system for transmitting and/or receiving data |
RU2359319C2 (en) * | 2007-05-11 | 2009-06-20 | Закрытое акционерное общество "Информационная внедренческая компания" (ЗАО "ИВК") | Method of integrating information resources of heterogeneous computer network |
RU2009134689A (en) * | 2009-09-17 | 2011-03-27 | Санкт-Петербургское государственное унитарное предприятие "Санкт-Петербургский информационно-аналитический центр" (RU) | INTEGRATED INFORMATION AND ANALYTICAL SYSTEM SYSTEM, METHOD FOR MONITORING, ANALYSIS AND FORECASTING OF LIFE ACTIVITIES OF THE REGION OF THE RUSSIAN FEDERATION USING AN INTEGRATED INFORMATION ANALYSIS ANALYSIS INSTITUTE |
-
2019
- 2019-12-30 RU RU2019145009A patent/RU2744566C1/en active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050267908A1 (en) * | 2004-05-28 | 2005-12-01 | Letourneau Jack J | Method and/or system for simplifying tree expressions, such as for pattern matching |
US20060123029A1 (en) * | 2004-11-30 | 2006-06-08 | Letourneau Jack J | Method and/or system for transmitting and/or receiving data |
RU2359319C2 (en) * | 2007-05-11 | 2009-06-20 | Закрытое акционерное общество "Информационная внедренческая компания" (ЗАО "ИВК") | Method of integrating information resources of heterogeneous computer network |
RU2009134689A (en) * | 2009-09-17 | 2011-03-27 | Санкт-Петербургское государственное унитарное предприятие "Санкт-Петербургский информационно-аналитический центр" (RU) | INTEGRATED INFORMATION AND ANALYTICAL SYSTEM SYSTEM, METHOD FOR MONITORING, ANALYSIS AND FORECASTING OF LIFE ACTIVITIES OF THE REGION OF THE RUSSIAN FEDERATION USING AN INTEGRATED INFORMATION ANALYSIS ANALYSIS INSTITUTE |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8788565B2 (en) | Dynamic and distributed queueing and processing system | |
US8069139B2 (en) | Transitioning of database service responsibility responsive to server failure in a partially clustered computing environment | |
Tsaregorodtsev et al. | DIRAC: a community grid solution | |
Gheith et al. | Ibm bluemix mobile cloud services | |
US8930425B2 (en) | Data integration in service oriented architectures | |
RU2379755C2 (en) | System and method for sharing objects between computers over network | |
US9483289B2 (en) | Operating system in a commodity-based computing system | |
US20090157872A1 (en) | Model-based composite application platform | |
US10491698B2 (en) | Dynamic distribution of persistent data | |
US20120324069A1 (en) | Middleware Services Framework for On-Premises and Cloud Deployment | |
US20090165021A1 (en) | Model-Based Composite Application Platform | |
EP3915022A1 (en) | Transformation configuration in instance data replication with bi-directional replication support | |
US20120042003A1 (en) | Command and control task manager | |
Fehling et al. | A collection of patterns for cloud types, cloud service models, and cloud-based application architectures | |
US11880557B2 (en) | Distributed editing and versioning for graphical service maps of a managed network | |
CN114730305A (en) | Controlling transaction requests between an application and a server | |
RU2744566C1 (en) | Method and system for integrating enterprise information resources | |
US20200244755A1 (en) | Distributed federation of endpoints with proxy synchronization | |
Kjerrumgaard | Apache Pulsar in action | |
US11301434B2 (en) | System and method for managing a data store | |
Moßgraber et al. | The seven main challenges of an early warning system architecture. | |
Redkar et al. | Pro MSMQ: Microsoft Message Queue Programming | |
Sharma et al. | Introduction to apache pulsar | |
Michalski et al. | Implementing Azure Cloud Design Patterns: Implement efficient design patterns for data management, high availability, monitoring and other popular patterns on your Azure Cloud | |
Shkuta et al. | Comparative analysis of tools for the integration of IT systems: Narzędzia do integracji systemów informatycznych-analiza porównawcza |