CN101076793A - System structure for enterprise data integrated system - Google Patents

System structure for enterprise data integrated system Download PDF

Info

Publication number
CN101076793A
CN101076793A CNA2005800290075A CN200580029007A CN101076793A CN 101076793 A CN101076793 A CN 101076793A CN A2005800290075 A CNA2005800290075 A CN A2005800290075A CN 200580029007 A CN200580029007 A CN 200580029007A CN 101076793 A CN101076793 A CN 101076793A
Authority
CN
China
Prior art keywords
data
service
services
rti
user interface
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CNA2005800290075A
Other languages
Chinese (zh)
Inventor
迈克尔·詹姆斯·贝克尔勒
让-克劳德·马姆
戴维·托马斯·米克斯
马文·门德尔森
李·J.·舍夫勒
查里斯·K.·尚克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of CN101076793A publication Critical patent/CN101076793A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION 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/00Administration; Management
    • G06Q10/10Office automation; Time management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Systems (AREA)

Abstract

Disclosed herein is an architecture for building and managing data integration processes. The architecture may provide modularity and extensibility to many aspects of the integration design process, including user interfaces, programmatic interfaces, services, components, runtime engines, and external connectors. The architecture may also employ a common integrated metadata sharing approach throughout the design process to enable seamless transitions between various phases of the design and implementation of a data integration process.

Description

The architecture of enterprise data integrated system
Related application
The application requires the title that proposes in August, 2,004 60/606,237 the U.S. Provisional Application No. of being numbered for " Architecture forEnterprise Data Integration Systems ".
Technical field
The present invention relates to areas of information technology, specifically, relate to the data integrated system field.
Background technology
Computer applied algorithm makes many business process faster, more efficient.Yet, use the popularization of the different computer applied algorithm of different data structure, communication protocol, language and platform to cause the becoming increasingly complex of infotech architecture of typical commercial enterprise.Different business process in the typical enterprise can use diverse computer applied algorithm, and each computer applied algorithm all is specific business processes exploitation and optimization, rather than at enterprise's whole development.For example, an enterprise can have a computer applied algorithm that is used to follow the tracks of account payable, and the Another application program that is used to follow the tracks of customer contact.Even same business process also can use more than one computer applied algorithm, and as having safeguarded the customer contact database of concentrating when enterprise, but the employee has safeguarded themselves contact details, as in personal information manager.
The inefficient payment that the advantage of the computer applied algorithm of specialization is brought by them, as the input that repeats, redundant data processing, or this enterprise fails to recognize the interconnection of its business data collection and utilizes this data when enterprise carries out another and may benefit from data with a process context.For example, if the account payable process is separated with the order process with supply chain, enterprise may accept and satisfy from its credit history as well as to cause enterprise to refuse the client's of order order.Can provide many other enterprises will benefit from example to the consistent access of all data of striding various computing machine application program.
Many companies have had realized that and have solved the demand of striding the different application program shared data in the commercial enterprise.So, the integrated or EAI of enterprise application occurs from the message based strategy of the data of separate sources as being used to seek.The increase of complicacy and increasing of quantity along with computer applied algorithm, EAI work has run into many challenges, handle different agreements from needs, need to handle more and more data and many affairs, and the more and more stronger hope that quickly data is integrated.Take the whole bag of tricks of EAI, comprised lowest common denominator method, atom method, and the bridge type method.Yet EAI is based on the communication between the single application program.As an important disadvantages, the complicacy of EAI solution is along with the linearity of platform and application program increases and several where the increase.
Although data integrated system provides the useful tool that satisfies requirement of enterprise,, such system normally disposes as self-defined solution.They have the tediously long construction cycle, and may need the complicated technology training could adapt to the variation of business structure and information requirement.In the service environment that changes, still need to allow to use, reuse, and the data integrated system instrument of modify feature, also need to support the architecture of the improvement of design and use data integrated system.
Summary of the invention
Disclosed herein is the architecture that is used to make up with the integrated process of management data.This architecture can provide modularity and extendability for many aspects of integrated design process, engine when comprising user interface, DLL (dynamic link library), service, assembly, operation, and aerial lug.This architecture can also be used general integrated metadata sharing method in whole design process, carry out seamless transitions with permission between each stage of design, and the integrated process of implementation data.
In one aspect, data integrated system according to the present invention comprises: be used to carry out the user interface of a plurality of data integration tasks, described user interface comprises a plurality of menus corresponding to a plurality of stages of the workflow of a project; The task matrix that selected data integration task is associated with selected menu; The service-oriented architecture that comprises the registration table of service, one or more described services are associated with each data integration task of described user interface; With the knowledge base of one or more described service associations in the service of described user interface and service-oriented architecture, this knowledge base is stored the common element data model in an above stage of the workflow of described project; Engine when being used for the one or more operation of project implementation; And be used for described one or more when operation engine be connected to one or more connectors of one or more external resources, described connector uses modular assembly and complex to carry out data throughput.
In yet another aspect, the method that is used for the integrated process of management data can comprise:
Be provided for carrying out the user interface of a plurality of data integration tasks, described user interface comprises a plurality of menus corresponding to a plurality of stages of the workflow of a project; Selected data integration task is associated with selected menu; The service-oriented architecture of the registration table that comprises service is provided; One or more described services are associated with each data integration task of described user interface; One or more described service in the service of knowledge base and described user interface and service-oriented architecture is associated; The common element data model in an above stage of the workflow of the described project of storage in knowledge base; Engine uses modular assembly and complex to carry out the data processing of described project when engine project implementation when using one or more operation, described operation; And engine is connected to one or more external resources during with described one or more operation.
Data integrated system or method can be further comprise the intelligent automation layer between user interface and service-oriented architecture, the user of the described user interface of described intelligent automation course provides specific to contextual content.Data integrated system or method may further include the run-time optimizing layer of engine when being used to move, this run-time optimizing layer distribution process independently between the engine when each moves.
In yet another aspect, provide the method for user interface to comprise to data integrated system: a plurality of data integration services are provided in service-oriented architecture; The modularization control is provided for serious user interface of separating; Control is associated with the one or more described service of service-oriented architecture; And present one or more described services as the task in the control of user interface.The user interface system of data integration process can comprise: a plurality of data integration services in the service-oriented architecture; User interface with serious separation of modularization control, described user interface are configured to present one or more data integration services as the task in the control of user interface; And with the task matrix of one or more described service associations of the control of user interface and service-oriented architecture.
Service can comprise the real-time relation with the metadata of sharing.To the change of the metadata shared can be immediately to other users of the metadata shared as seen.User interface can comprise context-sensitive help.Service can comprise the connector with the external source code control system.Service can comprise at least one in abundant of mapping, data purification and data.User interface can be an oriented mission.User interface can be technical ability rank sensitivity or role's sensitivity.The role can comprise supervision, dispose, and/or operation control.User interface can comprise the integrated conversation history of having included by addressable all services of user interface.User interface can be that the user is definable.User interface can be by reorganization to use on mobile device.The modularization control can be provided in the storehouse of low-level control.Method or system can comprise the storehouse that reusable dialog box is provided.
Be used for providing the service-oriented architecture of service to comprise: location and the instantiation service catalogue of serving dynamically at data integrated system, described service comprises the reusable and sharable service of a plurality of separation of the instrument of synthesizing, as the Component service of service exposure external resource connector, and the one or more knowledge base services that are used for visiting the metadata schema that is stored in knowledge base; And the user interface of separation of user's design that is used to use the data integration process of service.Be used for providing service-oriented service method to comprise: a plurality of services of registration in service catalogue at data integrated system, described service comprises the reusable and sharable service of a plurality of separation of the instrument of synthesizing, as the Component service of service exposure external resource connector, and the one or more knowledge base services that are used for visiting the metadata schema that is stored in knowledge base; Dynamically locate a service in a plurality of services in the registration table; The service that is positioned described in a plurality of services of instantiation; And the user interface of separation of user's design that is provided for using the data integration process of the service that is positioned described in a plurality of services.
One or more described services can be interior business and/or external service.Service can be used different technology.One or more described services can be synchronous and/or asynchronous.Service can comprise the one or more a plurality of functions of control in following: audit, log record, monitor, management, safety, user profile, session management, and report, affairs, operation flow, User Catalog, Component service, configuration, system management, source control, importing/the derivation of source and target metadata, metadata query, visit, analyze, report, and subscribe sample data, the data analysis, process editing, the process compiling, data verification, design is disposed, design is carried out, installation and upgrade, demonstration is installed, dispose, version management, synchronously, the data analysis, data purification, investigation and adjustment, the application of template, test, and problem report.
In yet another aspect, the method for the metadata schema in the shared knowledge base can comprise: metadata schema is stored in the knowledge base; The one or more knowledge base services that are arranged to Kinematic Positioning and the service of instantiation knowledge base of registration in service catalogue; In service-oriented architecture, dispose service catalogue and one or more knowledge base service; And by at least one the accesses meta-data model in one or more knowledge base services.The system that is used for shared metadata schema knowledge base can comprise: the knowledge base of having stored at least one metadata schema; Be configured to the service catalogue of the one or more knowledge base services in the service-oriented architecture of Kinematic Positioning and instantiation; And at least one metadata schema is carried out the interface of share and access by in the service of one or more knowledge bases at least one.
One or more knowledge base services can comprise one or more model registrations, importing/derivation, version management, navigation visit, search/query visit, persistence, and log on/sign-out service.Knowledge base can comprise one or more personal knowledges storehouse, team's knowledge base, project knowledge storehouse, the knowledge base based on department, enterprise's knowledge base, concentrate the knowledge base of knowledge base and dispersion.
In yet another aspect, the method that is used for data integrated system is connected to external resource can comprise: with data integrated system as a plurality of service arrangements in service-oriented architecture; With one or more connector assemblies as service registry in the service catalogue of data integrated system, each connector assembly is configured to be connected to external resource; And in data integrated system, use the connection that is established to external resource as a connector assembly of service.The system that is used for data integrated system is connected to external resource can comprise: the service-oriented architecture that comprises service catalogue and a plurality of services; As one or more connector assemblies of the service registry in the service catalogue, each connector assembly is configured to be connected to external resource; And engine when using a connector assembly as service to come in data integrated system, to be established at least one operation of connection of external resource.
Connector assembly can provide the all-access to outside resource file.At least one connector assembly can comprise conversion process.Connector assembly can be used in the design process and/or when operation process of data integration process.Connector assembly can be included in the interface of specific external resource.Can comprise action listener and resource access with being connected of external resource.With being connected of external resource can be nonvolatil.
In yet another aspect, the method that is used for data integrated system is connected to external resource as described herein comprises: with data integrated system as a plurality of service arrangements in service-oriented architecture; With one or more connector assemblies as service registry in the service catalogue of data integrated system, each connector assembly is configured to be connected to external resource; And in data integrated system, use the connection that is established to external resource as a connector assembly of service.
Connector assembly can provide the all-access to outside resource file.At least one connector assembly can comprise conversion process.Connector assembly can be used for the design process of data integration process.Connector assembly is available in the process when operation.Connector assembly can be included in the interface of specific external resource.Can comprise action listener and resource access with being connected of external resource.With being connected of external resource can be nonvolatil.External resource can comprise a data source or at least one datum target at least.Connector assembly can provide the visit to the metadata of external resource.Connector assembly can provide the visit to the data of external resource.
In yet another aspect, system described herein comprises: the service-oriented architecture that comprises service catalogue; A plurality of functions of related computer program product external member, each function is registered in service catalogue as service; And the interface that is used to call one or more examples of one or more described services, thereby relevant computer product external member is deployed in the service-oriented architecture.
The related computer program product external member can comprise the data integration external member.Function can comprise one or more in following: audit, log record, monitor, management, safety, user profile, session management, and report, affairs, operation flow, User Catalog, Component service, configuration, system management, source control, importing/the derivation of source and target metadata, metadata query, visit, analyze, report, and subscribe sample data, the data analysis, process editing, the process compiling, data verification, design is disposed, design is carried out, installation and upgrade, demonstration is installed, dispose, version management, synchronously, the data analysis, data purification, investigation and adjustment, the application of template, test, and problem report.One or more parameters are passed to one or more examples of one or more described services.One or more described services can comprise a generic service that all related computer program products are common at least.
In other respects, but computer program can comprise the computing machine working medium that wherein comprises computer readable program code, wherein, when on one or more computing machines, carrying out described computer readable program code make one or more computing machines carry out in the said methods any one or a plurality of.
Here employed " International Business Machines " or " IBM " should be meant the International Business MachinesCorporation (IBM Corporation) that is positioned at New York Armonk.
As used herein, " data source " or " datum target " has the most widely possible implication consistent with these terms, and should comprise a database, a plurality of databases, the knowledge base information manager, formation, messenger service, knowledge base, data facility, data storage facility, data provider, the website, server, computing machine, the Computer Storage facility, CD, DVD, the mobile storage facility, the centralized storage facility, hard disk, a plurality of coordination data storage facilities, RAM, ROM, flash memory, memory card, interim storage facility, the permanent storage facility, tape, locally-attached calculating facility, the calculating facility of long-range connection, wireless facilities, wired facility, MOVING STRUCTURE, central facilities, Web browser, client, kneetop computer, personal digital assistant (" PDA "), phone, cell phone, mobile phone, information platform, analyze facility, treatment facility, system of commercial enterprise or wherein data are handled other facilities, or other facilities that are used to store data or other information that provide, and any file or the file type that are used for safeguarding employed structuring in any system of said system or unstructured data, or any streaming, messageization, event driven, or the data that otherwise provide, and any combination of the mode of front, unless specialize specific meanings or context needs other mode.Memory mechanism is any physics or logical device, and resource maybe can be served as data source or datum target, or otherwise stores the facility of data with recoverable form.
" Enterprise Java Bean (EJB) " should comprise the server-side component architecture at the J2EE platform.That EJB supports is distributed, businesslike, safety and portable java application rapidly and the exploitation of simplifying.EJB support to allow the containment system structure of the parallel consumption of message, and for distributed transaction provides support, so that database update, Message Processing, can participate in the identical transaction context with the connection of the business system of use J2EE architecture.
" JMS " should mean Java Message Service (Java messenger service), and this is for the enterprise message service based on the J2EE enterprise architecture of Java.The J2EE connector architecture of the J2EE platform of more specifically describing below " JCA " should mean.Should be appreciated that, although EJB, JMS, and JCA uses in the Software tool in the distributed transaction environment in the present age usually,, provide any platform, system or the architecture of similar functions to use with data integrated system as described herein.
As used herein, " in real time " should comprise the time period of the duration of approximate business transaction or business, and should be included in process or the service that takes place in professional operation or the business process process, rather than the off-line generation, as in the night in the batch operation.The duration of depending on business process, can comprise in real time second, the mark in second, minute, hour even sky.
As used herein, " business process ", " service logic " and " business transaction ", should comprise can be by any method of enterprise's execution, service, operation, process or transaction, comprise, but be not limited only to, sell, the marketing, honour an agreement, stock control, price, product design, professional service, financial service, administration, finance, signature, analyze, contract, information technology service, data storage, data mining, delivery information, selected freightways, scheduling, communication, investment, transaction, favorable sale, sales promotion, advertisement, quotation, engineering, make, supply chain management, human resource management, data processing, data integration, Workflow Management, Software Production, hardware is produced, new product development, research, exploitation, policing feature, quality control and assurance, packing, logistics, Customer Relationship Management, handle the discount and the return of goods, customer support, product maintenance, telemarketing, the communication of company, Investor Relations, and many other items.
" service-oriented architecture (SOA) " as used herein should comprise the service of the part of the architecture that constitutes commercial enterprise.In SOA, service can become the member of application development and deployment, thereby can carry out application development fast, has avoided redundant code.Each service can realize one group of service logic or business rule, and these rules can be tied to surrounding environment, as the target of the output data of the source of the data input of service or service.The different example of SOA is provided in the following description.
As used herein, " metadata " should comprise to just in the processed contextual data of bringing, the data of relevant data, the contextual information of relevant relevant information, the information of the origin of relevant data, the information of the position of relevant data, the information of the implication of relevant data, the information at the age of relevant data, the information of the title of relevant data, the information of the unit of relevant data, the information of the field of relevant data, the relevant information that relates to contextual any other information of data.
" WSDL " as used herein or " Web Services Description Language (WSDL) " comprise the XML form, are used for network service (usually being Web service) is described as comprising towards the destination node group of the message operation of the message of document or processor-oriented information operation.Described operation and message abstractively, be tied to concrete procotol and message format then, with the definition of terminal point.Relevant concrete destination node is integrated into abstract destination node (service).WSDL is extendible, allows to describe destination node and their message, no matter use what message format or procotol to communicate.
Description of drawings
Fig. 1 is the synoptic diagram with commercial enterprise of a plurality of business process, and each business process can comprise a plurality of different computer applied algorithms and data source.
Fig. 2 is the synoptic diagram that has shown the data integration of a plurality of business process of striding commercial enterprise.
Fig. 3 has shown that a plurality of data sources that are used to commercial enterprise provide the synoptic diagram of the architecture of data integration.
Fig. 4 is the synoptic diagram of details that has shown the discovery facility of data integration operation.
Fig. 5 is the process flow diagram that has shown the step of the discovery step that is used to realize the data integration process.
Fig. 6 is the synoptic diagram that has shown the purification facility of data integration process.
Fig. 7 is the process flow diagram of step that has shown the purification process of data integration process.
Fig. 8 is the synoptic diagram that has shown the conversion facility of data integration process.
Fig. 9 is the process flow diagram that has shown as the step of the translation data of the part of data integration process.
Figure 10 has described the example of using the conversion process of the modeled mortgage data of graphic user interface.
Figure 11 A has shown the synoptic diagram of a plurality of connection facilities that is used for the data integration process is connected to other processes of commercial enterprise.
Figure 11 B has shown a plurality of connection facilities that use the bridge model.
Figure 12 has shown the process flow diagram of step that the data integration process is connected to other processes of commercial enterprise.
Figure 13 has shown the enterprise computing system that comprises data integrated system.
Figure 14 A has shown the management of the metadata in the data integration operation.
Figure 14 B has shown the Aspect Oriented Programming environment that can use in the data integration operation.
Figure 15 has shown the process flow diagram that uses the other step of metadata facility with the data integration operation.
Figure 16 has shown the process flow diagram that uses the other step of metadata facility with the data integration operation.
Figure 16 A has shown the process flow diagram that uses the other step of metadata facility with the data integration operation.
Figure 17 is the synoptic diagram of facility of executed in parallel that has shown a plurality of processes of data integration process.
Figure 18 is the process flow diagram of step of executed in parallel that has shown a plurality of processes of data integration process.
Figure 19 is the synoptic diagram that has shown the data integration operation, comprises from the input of a plurality of data sources and the output of arriving a plurality of datum targets.
Figure 20 is the synoptic diagram that has shown the data integration operation, comprises from the input of a plurality of data sources and the output of arriving a plurality of datum targets.
Figure 21 has shown the graphic user interface that the data administrator of commercial enterprise wherein can design data integrated operation.
Figure 22 has shown another embodiment of the graphic user interface that data administrator wherein can the integrated operation of design data.
Figure 23 is the synoptic diagram of architecture that the integrated service facility of real time data and data integration process is integrated.
Figure 24 is the synoptic diagram that has shown the service-oriented architecture of commercial enterprise.
Figure 25 is the synoptic diagram that has shown the soap message form.
Figure 26 is the synoptic diagram of the element that shown that the WSDL of Web service describes.
Figure 27 is the synoptic diagram that has shown the element of the integrated process of real time data of enabling enterprise.
Figure 28 is the embodiment that enables the server of real-time integrated service.
Figure 29 has shown the architecture and the function of typical J2EE server.
Figure 30 representative RTI control desk that service manages to RTI.
Figure 31 has shown the further details of the architecture of enabling the RTI service.
Figure 32 is the synoptic diagram of the internal architecture of RTI service.
Figure 33 has shown RTI server and RTI agency's a mutual aspect.
Figure 34 has shown the RTI service of using in financial service enterprise.
Figure 35 has shown how an enterprise uses the RTI service to upgrade user logging.
Figure 36 has shown the data integrated system that comprises host and guest's user data storehouse.
Figure 37 has shown the RTI service that can realize one group of data-switching, checking and standardization routine.
Figure 38 has shown the application program of visiting real-time integrated service.
Figure 39 has shown the signature process that does not have the data integration service.
Figure 40 has shown the signature process of having used the RTI service.
Figure 41 has shown the enterprise that uses a plurality of RTI services.
Figure 42 has shown the Freight Transport agency shop that uses real-time integrated service.
Figure 43 has shown that the driver can be such as becoming the service support application program by a group data set that uses mobile device to visit as Web service.
Figure 44 has shown the data integrated system that is used for financial statement.
Figure 45 has shown the data integrated system that is used for safeguarding in retail trade authoritative customer database.
Figure 46 has shown the data integrated system that uses in pharmaceutical industry.
Figure 47 has shown the data integrated system that uses in manufacturing industry.
Figure 48 has shown and has been used for data integrated system that the clinical experimental study result is analyzed.
Figure 49 has shown the data integrated system of assessing that is used for the scientific research data.
Figure 50 has shown the data integrated system that is used to manage the customer data of striding a plurality of business systems.
Figure 51 has shown the data integrated system that mates automatically as required that is used to provide the inbound customer data with existing user logging.
Figure 52 has shown the high-level synoptic diagram of the architecture of data integration service.
Figure 52 A has shown the task matrix as several task definition user interfaces.
Figure 53 has shown the more detailed synoptic diagram of graphic user interface GUI.
Figure 54 has shown the SOA role in the architecture and the uml diagram table of relation.
Figure 55 has shown the synoptic diagram of the SOA environment of architecture.
Figure 56 has shown the synoptic diagram of the model in the knowledge base service.
Figure 57 has shown the synoptic diagram of knowledge base service system structure.
Figure 58 has shown the high-level uml class chart of assembly and complex model.
Figure 59 has shown the EIL example of complex model.
Figure 60 has shown client, service, and the uml class chart of the relation of assembly.
Figure 61 has shown the synoptic diagram of data representation from a component passes to another assembly.
Figure 62 has shown the general transfer framework of architecture.
Figure 63 has shown the connection of architecture.
Embodiment
In whole following discussion, unless specifically stated otherwise, identical element numbering is used to represent identical element.
It is hardware fully that the present invention described herein can present, be software or the form that comprises the embodiment of hardware and software both elements fully.In a preferred embodiment, the present invention realizes with software, includes but are not limited to firmware, resident software, microcode or the like.
In addition, the present invention can also present the form of computer program, this product can conduct interviews from the spendable or computer-readable medium of computing machine, and medium provides program code, uses or uses with them for computing machine or any instruction execution system.For this instructions, computing machine medium spendable or embodied on computer readable can be any equipment that can comprise, store, transmit, propagate or transmit the program of the program of using together or using with them for instruction execution system, equipment.
Medium can be electronics, magnetic, optics, electromagnetism, ultrared or semiconductor system (or equipment) or propagation medium.The example of computer-readable medium comprises semiconductor or solid-state memory, tape, removable computer diskette, random-access memory (ram), ROM (read-only memory) (ROM), hard disc and CD.The current example of CD comprises Compact Disc-Read Only Memory (CD-ROM), CD read/write (CD-R/W) and DVD.
Be applicable to that the storage and/or the data handling system of executive routine code will comprise at least that one is connected to the memory component processor directly or indirectly by system bus.Memory component can be included in the local storage that uses in the practical implementation of program code, mass storage, and cache memory, this cache memory provides the temporary storage of some program code at least, in the process of implementation must be from the number of times of mass storage retrieval coding so that reduce.
I/O or I/O equipment (include but are not limited to, keyboard, display, indicating equipment, or the like) can directly or by the I/O controller be connected to system.
Network adapter also can be connected to system, so that data handling system is connected to other data handling systems or remote printer or memory device by privately owned or public network.Modulator-demodular unit, cable modem and Ethernet card are several current available types of network adapters.
Fig. 1 has represented the integrated platform 100 of the various data that are used to promote commercial enterprise.This platform comprises a plurality of business process, and each business process can comprise a plurality of different computer applied algorithms and data source.This platform can comprise such as those several data sources 102 as described above.These data sources can comprise the numerous types of data from multiple physical location.For example, data source can comprise from the system that program is provided such as Sybase, Microsoft, Informix, Oracle, Inlomover, EMC, Trillium, First Logic, Siebel, PeopleSoft, IBM, Apache or Netscape.Data source 102 can comprise use such as IMS, DB2, ADABAS, VSAM, MD Series, UDB, XML, the flat file of complexity or the system of database product the ftp file or standard.Data source 102 comprises the file of creating or using by such as Microsoft Outlook, Microsoft Word, MicrosoftExcel, Microsoft Access, and the file of the standard format such as ASCII, CSV, GIF, TIF, PNG, PDF or the like.Data source 102 can also can be placed their concentrated areas from all places.The data that provide from data source 102 can be various forms, and can have different forms, and form can be compatible each other, also can be incompatible.
In this manual datum target has been discussed after a while.Generally speaking, these datum targets can be any in the data source 102 referred to above.This species diversity ordinary representation data system of term is that data or reception data are provided in the data integration process.Yet, should be appreciated that this difference does not mean that there is any difference (unless specifically stated otherwise) also that because in the routine data integrated system, data source can receive data on the function between data source and the datum target, datum target can provide data.
Platform shown among Fig. 1 also comprises data integrated system 104.For example, data integrated system can be used as the inquiry that data integrated system 104 receives or the result of retrieval command, promotes to collect data from data source 102.Data integrated system 104 can send order to one or more data sources 102, so that data source provides data to data integrated system 104.Because the data that receive can be multiple forms, comprise different metadata, therefore, data integrated system can reconfigure the data that receive, so that it can combine after a while, so that carry out integrated processing.Below will be than describing the function that to carry out by data integrated system 104 in greater detail.
Platform 100 also comprises multiple searching system 108.Searching system 108 can comprise database or processing platform, is used for further handling the data of transmitting from data integrated system 104.For example, data integrated system 104 can purify, make up, and conversion or otherwise handle the data that it receives from data source 102 is so that searching system 108 can be used data processed, to produce the report 110 useful to enterprise.Report 110 can be used for the report data association, answer complicated query, answer simple inquiry, or form enterprise or other useful reports of user, and can comprise raw data, table, chart, figure, and from the method for expressing of any other data of searching system 108.
Platform 100 also can comprise database or data base management system (DBMS) 112.Database 112 can be used for interim canned data or carry out permanent or long-term storage.For example, data integrated system 104 can be collected data from one or more data sources 102, and data are converted to compatible each other form or compatibility so that the form that combination with one another is got up.In case changed data, data integrated system 104 just can with decomposed form, array configuration or other forms with data storage in database 112, be provided with back retrieval.
Fig. 2 is the synoptic diagram that has shown the data integration of a plurality of entities of striding commercial enterprise and business process.In shown embodiment, data integrated system 104 has promoted the information flow between user interface system 202 and the data source 102.Data integrated system 104 can be from interface system 202 reception inquiries, and there, inquiry needs to extract and/or change the data that reside in one or more data sources 102.Interface system 202 can comprise any equipment or the program that communicates with data integrated system 104, as the Web browser of on kneetop computer or desk-top computer, operating, cell phone, personal digital assistant (" PDA "), the platform of networking and the equipment that is connected to platform, or any other equipment or the system that can be connected with data integrated system 104.
For example, the user can operate PDA, and sends information request by WiFi or wireless access protocol/WAP Markup Language (" WAP/WML ") interface to data integrated system 104.Data integrated system 104 can receive request, generates any required inquiry, with from the website such as the ftp file website or other data sources 102 visit informations.Can extract data, and convert thereof into and send the compatible form of interface system 202 (being PDA in this example) of request, be delivered to interface system 202 then, check and handle for the user from data source 102.In another embodiment, can extract data in advance from data source, and be stored in the independent database 112, this database can be data warehouse or other data facility of being used by data integrated system 104.Data can also can be stored in the database 112 with its virgin state with the state after the conversion.For example, data can be with the state storage of conversion, so that can combine in another conversion process from the data of many data sources 102.For example, can be transferred to data integrated system 104 from the inquiry of PDA, data integrated system 104 can be from database 112 information extractions.After extracting, before the PDA transmission, data integrated system 104 can be converted to data the packed format with the PDA compatibility.
Fig. 3 has shown that a plurality of data sources 102 that are used to commercial enterprise provide the synoptic diagram of the architecture of data integration.The embodiment of data integrated system 104 can comprise the discovery data level 302 that may carry out with other processes, the train value and the list structure that extract data and analyze source data from data source.Find that data level 302 also can generate the suggestion of the key of relevant list structure, relation and datum target.The die mould of more complicated and audit function can comprise date range checking, the precision of calculating, precision of hypothesis evaluation or the like.Find that data level 302 can be by coming the normalized number certificate such as eliminating in redundant dependence and the source data other unusually.Find that data level 302 can provide additional function, as be deep into unusual in the data source 102, or allow the large scale computer data are carried out direct die mould so that further analyze.A non-limiting example finding the commercial embodiment of data level 302 can find in the ProfileStage of Ascential product.
Data integrated system 104 can also comprise that data prepare level 304, prepares data there, with their standardization, coupling or otherwise they are handled, with the qualitative data of changing the generation after.Data are prepared level 304 can carry out general quality of data function, as the correct coupling in mediation inconsistency or the inspection data (comprise man-to-man coupling, the coupling of one-to-many and removal repeat).Data are prepared level 304 also can provide the particular data enhancement function.For example, data are prepared level 304 can guarantee that the address meets multinational postal reference, so that guarantee the international communication that improves.Data are prepared level 304 can make position data meet multinational geocoding standard, so that carry out the spatial information management.Data are prepared level and can be revised or add in the address, give a discount according to GovernmentCertified U.S.Address Correction to guarantee the address information that meets the United States Post Office mail rate.Can provide similar analysis and data revision for Canadian and Australian mail system (they are the mail discount offered of address right).The non-limiting example that data are prepared the commercial embodiment of level 304 can find in the QualityStage of Ascential product.
Data integrated system can also comprise data-switching level 308, to change, to enrich and to provide data converted.Data-switching level 308 can be carried out the service of transition, as reorganization and reformatting data, and calculates based on the business rule and the algorithm of system user.Data-switching level 308 can also be organized as target data the subclass that is called as " data market " or " cube ", is used in some analysis context data being carried out the processing of hight coordinate.Data-switching level 308 can be used bridge, converter or other interfaces (discussing prevailingly as following), with across the various data sources of being used by data integrated system 104 and the various software and hardware architectures of datum target.Data-switching level 308 can comprise certain combination at graphic user interface, Command Line Interface or these interfaces, with the integrated operation of cross-platform 100 ground design datas.A non-limiting example of the commercial embodiment of data-switching level 308 can find in the DataStage of Ascential product.
Can use executed in parallel system 310 or carry out the level 302,304,308 of data integrated system 104, with the performance of optimization system 104 with serial or array mode.
Data integrated system 104 can also comprise metadata management system 312, is used to manage the metadata related with data source 102.Generally speaking, metadata management system 312 all instrument ground that can be used for striding the data integration environment exchange, integrated, management and analysis of metadata.For example, metadata management system 312 can be in different sources, as Ascential ' s ODBCMetaBroker, CA ERwin, Ascential PrifileStage, Ascential DataStage, Ascential QualityStage, IBM DB2 Cube Views, and among the CognosImpromptu, provide general addressable at large Data View.Metadata management system 312 can also provide analysis tool, is used for data pedigree and impact analysis to the change of data structure.Metadata management system 312 can be further used for preparing data definition, algorithm into the data in the data integrated system 104, and the business datum vocabulary of business contexts, and this vocabulary can be issued, to use in whole enterprise.A non-limiting example of the commercial embodiment of metadata management system 312 can find in the MegaStage of Ascential product.
Fig. 4 is the synoptic diagram of details that has shown the facility of the discovery data level 302 of realizing the data integration operation.In this embodiment, find data level 302 Query Databases 402 (can be in the data source 102 as described above any), with the content and structure of the data in the specified data storehouse 402.Database 402 is provided to the result and finds data level 302, and finds that data level 302 arrives the data transfer of extracting other parts of data integrated system 104 subsequently.In one embodiment, find that data level 302 can inquire about many data sources 102,, and data are merged into central database or knowledge base information manager so that data integrated system 104 can purify data.
Fig. 5 is the process flow diagram that has shown the step of the discovery step that is used to realize data integration process 500.Although the integrated process 500 of particular data is described below,, employed here data integration process 500 can be meant uses data source 102 and datum target, database 112, data integrated system 104, and any process of other assemblies as described herein.In one embodiment, example finds that the treatment step of step can comprise first step 502: the discovery facility such as discovery data level 302 as described above receives the order of extracting data from one or more data sources 102.Receive extract order after, find the suitable data source 102 of the data that facility can identify wherein resident will to be extracted, shown in step 504.Can in order, identify data source 102, also can not identify.If identified data source 102, find that then facility can inquire about the data source 102 of sign.In order, do not have under the situation in identification data source 102, find that facility can be according to the data type of data extract command request or according to another information segment in the order, specified data source 102, or in related data sources 102 afterwards definite and needed other data.For example, inquiry can be the address at the client, and the first of customer address data can reside in first data source 102, and second portion resides in second data source 102.The discovery facility can be handled and extract order, and its extraction activity is directed to two data sources 102, need not the further instruction in the order.In case identified data source 102, data facility can be carried out the process of extracting data, shown in step 508.In case the data of extraction find that facility just can be with data transfer another part to data integrated system.
Fig. 6 is the synoptic diagram that has shown the purification facility of data integration process 500, and purification facility can be that data as described above are prepared level 304.Generally speaking, may exist from the data in several data source 102 inaccurate, and if these inaccuracies are not examined, be not corrected yet, may in the explanation of the data that finally produce, produce mistake by data integrated system 104.Other of company amalgamation, purchase, reorganization or data source 102 merge, and can further make data quality problem complicated by bringing new data markers, abb., module, Calculation Method or the like.As described in Figure 6, purification facility can receive data 602 from data source 102.Data 602 may be from one or more data sources 102, and may exist inconsistent or inaccurate.It is robotization, semi-automatic that purification facility can provide, or artificial facility, is used to shield, proofread and correct, purify or otherwise improves the quality of data 602.In case data 602 have been passed purification facility, then it can be delivered to another part of data integrated system 104.
Fig. 7 is the process flow diagram of step that has shown the purification process 700 of data integration process 500.In one embodiment, the purification process can comprise the step 702 that receives data from one or more data sources 102 (for example, by finding facility).Purification process 700 can comprise one or more methods of purification data.For example, this process can comprise the step 704 of the data of automatically purifying.This process can comprise the step 708 of half manual purification data.This process can comprise the step 710 of manual purification data.Automatically the step 704 of the part of correction or purification data or data can comprise the application multiple technologies, as automated spelling check and correction, comparing data, the timeliness of comparing data, the state of data, or be used to improve the quality of data and conforming other technologies.The step 708 that semi-automatically purifies data can comprise that wherein user and some treatment step carry out the facility that mutual and system automatically carries out the purification task of distribution.Semi-automatic system can comprise graphic user interface treatment step 712, and user and graphic user interface carry out alternately in this step, to promote to be used to purify the process 700 of data.Process 700 also can comprise the step 710 of manual correction data.This step also can comprise manual correction, merging and/or the purification data of using user interface to promote data.The data that process purification process 700 purifies can be transferred to another facility in the data integrated system 104, as data switching stage 308.
Fig. 8 is the synoptic diagram that has shown the conversion facility of data integration process 500, and conversion facility can be a data-switching level 308 as described above.Conversion facility can receive the data 802 that purify from purification facility, and execution conversion process, enrich data, and data are provided to another process in the data integrated system 104, or the outside of data integrated system 104, there, can check, use integrated data, further conversion, or manipulation data otherwise.For example, the user can come enquiry data by data mining, or generates user or professional useful report.
Fig. 9 is the process flow diagram that has shown as the step of the transform data of the part of data integration process 500.Conversion process 900 can comprise the data (for example, preparing level 308 from data as described above) that receive purification, shown in step 902.Shown in step 904, process 900 can judge the type of needed conversion.After the step 904 of determining conversion process, can carry out conversion process, shown in step 908.Then, can be transferred to another facility through data converted, shown in step 910.
Generally speaking, can control, and use graphic user interface to be applied to the specific enterprise data data integrated system 104.The interface can comprise the visual tool that is used for modelling data source, datum target, and level or process that data are operated, and is used for determining the relation between these data entities, so that the instrument of the needed data integration task of modelling.To describe graphic user interface in detail below.Provide below and described generic instance how in this context, to use user interface.
Figure 10 has described the example of using the conversion process 1000 of graphic user interface 1018 modeled mortgage data.For this example, commercial enterprise wishes to generate the report about some mortgage.The mortgage balance information can reside in the mortgage database, this database can be one of data source 102 as described above, personal information such as the address of proprietary can reside in the property database, and this database one of also can data source 102 as described above.Can provide graphic user interface 1018 to organize conversion process.For example, the user can select to mortgage the diagrammatic representation of database 1002 and the diagrammatic representation of property database 1012, uses conventional drag-and-drop operation that these representations 1002,1012 are put in the interface 1018.Then, the user can select the diagrammatic representation of row conversion process 1004, to prepare the row of combination.The user can drag and drop process flow direction, generally is expressed as arrow in Figure 10, so that flow into the row conversion process from data of database.In this model, the user can select to delete any unmatched file, and they are sent in the storage facility.For accomplishing this point, the user can be placed on the diagrammatic representation of storage facility 6114 in the interface 1018.If the user wishes further to handle the file of remaining coupling, the user can add combination from another conversion of two data of database and the diagrammatic representation of polymerisation run 1008.At last, the user can determine by the diagrammatic representation of adding data warehouse 1010 aggregated data to be sent to the storage facility.In case the user uses graphic user interface that this process is set, the user just can move conversion process.
Figure 11 A has shown the synoptic diagram of a plurality of connection facilities that is used for data integration process 500 is connected to other processes of commercial enterprise.In one embodiment, data integrated system 104 can be related with integrated storage facility 1102, and the latter can be one of data source 102 as described above.Integrated storage facility 1102 can comprise that extract and by data integrated system 104 data processed from a plurality of other data sources 102.Integrated data can be to allow the form storage of one or more computer platform 1108A and 1108B retrieve data from integrated data storage facility 1102. Computing platform 1108A and 1108B can be by transform engine 1104A and 1104B from integrated data facility 1102 request msgs.For example, each computing platform 1108A can be related with independent transform engine 1104A and 1104B with 1108B.Transform engine 1104A and 1104B can be used for integrated data are converted to form with related computing platform 1108A and 1108B compatibility from storage facility 1102.In an embodiment, transform engine 1104A can also be related with data integrated system 104 with 1104B.This association can be used for required information updating transform engine 1104A and 1104B.This process can also relate to the processing of the metadata that below will further define.
Although as Figure 11 A the cover joint model of the data integration described prevailingly be a model that is used to be connected to different computing platform 1108A, 1108B and other data sources 102, but, also can use other models, as with reference to the described bridge model of figure 11B.Should be appreciated that, although described the connection of data source 102 here,, can use in these models or other models any one, unless specify or context is otherwise pointed out.
Figure 11 B has shown a plurality of connection facilities that use the bridge model.In this system, a plurality of data sources 102, as inventory system, customer relation system, and accounting system, can or connect the data integrated system 104 that facility is connected to enterprise computing system 1300 by a plurality of bridges 1120.Each bridge 1120 can be the specific transform engine of supplier, and this engine provides metadata schema for external data source 102, and allows the transmitted in both directions of the information of carrying out between data integrated system 104 and data source 102.The integrated supplier's of enterprise data source 102 may have proprietary form, therefore, for each different external model, may need different bridge 1120.Each bridge 1120 can provide the connection facility for all or some data in the data source 102, can safeguard independent mapping or model for the connection of travelling to and fro between each data source 102.In addition, each bridge 1120 can provide bug check, coordinate other services, with maintaining data integrity between data source 102.Under the situation that data source 102 so interconnects, can between system, share or reconciled data, and the data in the data source 102 are carried out various data integration tasks, formed single data source 102 or warehouse as data source 102.
Figure 12 has shown the process flow diagram of step that data integration process 500 is connected to other processes of commercial enterprise.In an embodiment, connection process can comprise step 1202, in this step, data integrated system 104 with the data storage of treated with same in the centralized storage facility.Data integrated system 104 can also upgrade one or more transform engines in step 1204.Illustration among Figure 12 has shown these processes that take place serially, but they can also take place concurrently, or carries out with certain array mode of serial or parallel.Process may relate to step 1208, and wherein, computing platform generates request of data, and request of data is sent to related transform engine.Step may relate to transform engine and extract data from the storage facility.Transform engine can also be in step 1212 be converted to data the form with the computing platform compatibility, then, can be in step 1214 with data transfer to computing platform.
Figure 13 has shown the enterprise computing system 1300 that comprises data integrated system 104.Enterprise computing system 1300 can comprise computing machine, large scale computer, movably equipment, data source, and any combination of other equipment, they couple together by one or more LAN (Local Area Network) this locality, and/or use VPN (virtual private network) on the Internet by one or more wide area networks or public network is long-range couples together.Equipment in the enterprise computing system 1300 can be interconnected in the single enterprise, with shared data, resource, communication, and information technology management.Usually, the resource in the enterprise computing system 1300 is used by the general entity such as enterprise, association or government entity or university.Yet in some business model, the resource of enterprise computing system 1300 can be had (renting) and used by many different entities, provides program that visit as required to long-range executive utility is provided as application program service.
Enterprise computing system 1300 can comprise a plurality of instruments 1302, these instruments are called as the common data structure of " knowledge base information manager (" RIM ") " 1304 (below be also referred to as " cover joint ") here by corresponding conversion engine 1308 (in the system based on bridge, can be bridge 1120 as described above) visit.RIM 1304 can comprise any data source 102 as described above.Should be appreciated that, although described three transform engines 1308 and three instruments 1302,, in enterprise computing system 1300, can use the transform engine 1308 and the instrument 1302 of any amount, comprise less than three quantity with than three much bigger quantity.Instrument 1302 generally comprises, for example, and the data of different types base management system, and other visits are stored in the application program of the data of sharing among the RIM 1304.Can on single computer system, handle and maintenance tool 1302, RIM 1304, and transform engine 1308, also can and safeguard them with processing on many computer systems, these computer systems can interconnect by the network (not shown), network transmits data access request, data converted request of access between different assembly 1302,1304,1308, and response.
When instrument 1302 was carried out, they can generate data access request, with the log-on data accessing operation, that is, and retrieve data or therein from RIM 1304 with data storage.Data can be below to be stored in atomic data model and the form of describing among the RIM 1304.Usually, instrument 1302 will be checked with various feature-based data model and form and be stored in data among the RIM 1304, as hereinafter described, each transform engine 1308 is when receiving data access request, with translation data between the atomic model form of the characteristic model of corresponding instrument and form and RIM 1304 as required.For example, in accessing operation (will from the RIM 1304 retrieve data project) process of retrieval type, transform engine 1308 will identify the one or more atomic data projects (comprising the data items of waiting to respond request of access and being retrieved jointly) among the RIM 1304, and will allow RIM 1304 to provide the atomic data project to one of them transform engine 1308.Transform engine 1308 receives it again from RIM 1304 atomic data project is polymerized to the characteristic model and the needed one or more data items of form of instrument, or " view " of data, and the data items of polymerization is provided to the instrument 1302 that has sent request of access.In the process of data storage, the data among the RIM 304 will be updated that transform engine 1308 can receive will be with the data of the characteristic model of an instrument 1302 and form storage.Transform engine 1308 can be converted to data atomic model and the form of RIM 1304, and will be provided to RIM 1304 through data converted and store.If the data storage request of access allows data to be updated, then RIM 1304 can substitute current data with the data that newly provide from transform engine 1308.On the other hand, if the new data of data storage request of access representative, then RIM 1308 can the data of the atomic format that provided by transform engine 1308 be provided in the current data among the RIM 1308.
Enterprise computing system 1300 further comprises data integrated system 104, this system maintenance and upgrade the atomic format of RIM 1304, and add transform engine 1308 to system 1300 as new instrument 1302.Should be appreciated that, can automatically carry out or under manually operated situation, carry out by some operation that data integrated system 104 is carried out.In simple terms, when setting up system 1300 at first maybe when one or more instruments 1302 being added to its data model and form and are different from the system 1300 of current data model and form, data integrated system 104 can be determined any difference, and the data model and the form of the data among the modification RIM 1304, with data model and the form that adapts to new tool 1302.In this operation, data integrated system 104 can be determined for the data model of current any instrument 1302 in system 1300 and the atomic data model that the new tool that is added 1302 is common, and allow the data model of RIM 1304 to be updated to new atomic data model.In addition, data integrated system 104 can be based on the atomic data model of the renewal of RIM 1304, upgrade and the related transform engine 1308 of current any instrument 1302 in system 1300, and also can be new tool 1302 generation transform engines 1308.Correspondingly, data integrated system 104 guaranteed all instruments 1302 (comprise current in system any instrument 1302 and with the transform engine 1308 of the instrument 1302 that is added) meet atomic data model and the form of RIM 1304.
Before continue, having furnished an explanation to be helpful for the useful feature-based data model of various tool 1302 and form and for the useful atomic data model of RIM 1304 and the specific example of form.Should be appreciated that the specific feature data model of instrument 1302 and form will depend on the particular tool 1302 that exists in the specific enterprise computing system 1300.In addition, should also be appreciated that, the specific atoms data model of RIM 1304 and form can also depend on atomic data model and the form that is used for instrument 1302, and the polymerization or the associating of the element of the fine particle size of the data model of all instruments 1304 in can representative system 1300 and form.
Figure 14 A provides the example of database of the design of other vessel that relate to the cup such as water glass or be used for contain fluid.This database can be used for design and make cup.In this used, instrument 1302 can be used for adding the cup design element in RIM 1304, as design drawing, dimension, outside surface processing, color, material, and handle (or not having), cost data or the like.Instrument 1302 can also be used for revising the cup design element that is stored in RIM 1304, and reuses the specific cup design element among the RIM 1304 and design related with many different cups they.RIM 1304 and transform engine 1308 can provide a mechanism, and by this mechanism, many different instruments 1302 can be shared the element that is stored among the RIM1304, need not to arrange generic structure or the model and the format configuration of element.
In this example, RIM 1304 can be with entity-relational format storing data item order, and each entity all is data items and the relation that has reflected the relation between the data items, as following illustrated.Entity is the form of object, and object can be again the class in the OO environment and the member or the example of subclass.Should be appreciated that other models and form also can be used for RIM1304.
Figure 14 A has described the declarative metadata structure of cup design database.Class formation can comprise main classes 1402, from the sagging container of main classes 1402 and two subclasses 1404 of handle, and two lower rank subclasses 1408 of both sides and pedestal, the two is all sagging from container subclass 1404.Each data items in the class 1402 (" entity " that be called as entity-relational format), can represent the specific cup in the inventory or the cup of particular type, attribute with association of the various features that defined cup, each attribute is all identified by the data value of particular community identifier and attribute.
Each data items in handle and the container subclass 1404 (also being the entity of entity-relational format) can be represented the specific cup in the inventory or the container and the handle feature of cup type.Specifically, each data items in the container subclass 1404 can be represented the container feature by the cup of the representative of the data items in the cup class 1402, as color, and sidewall features, pedestal feature or the like.In addition, each data items in the handle subclass 1404 can be represented the handle feature by the representative of the data items in the cup class 1402 of cup, as bending, texture, color, position or the like.In addition, being also to be understood that between the data items in handle subclass 1404 and container subclass 1404 to have one or more relations, is used to link the data items between the subclass 1404.
For example, can there be the expression container whether to have the relation of handle.In addition, or opposite, can there be the expression container to have the relation of how many handles.The position relation that the position of explanation handle on container can also be arranged in addition.Quantity and position relation can be regarded as the attribute of first relation (vessel jug), are regarded as independent relation.Two more low-level subclasses 1408 can be related with container subclass 1404, can represent the various elements of container.In the described illustration in Figure 14 A, subclass 1408 can comprise sidewall type subclass 1408 and pedestal type subclass 1408, and each subclass has all illustrated the element of cup class 1402.Should be appreciated that the attribute of cup and cup as container and handle, can use any needed Level of Detail to define in OO mode.
Though do not describe clearly at Figure 14 A,, should be appreciated that one or more transform engines 1308 can be coordinated instrument 1302 (needing a data view), and can be with the communication between the RIM 1304 of different format memory datas.Generally speaking, described each instrument 1302 among Figure 14 A can have somewhat different or diverse feature-based data model and form, checks the cup data that are stored among the RIM 1304.That is, be under the situation of cup at data items, the feature of cup can be used as the attribute and the property value of the cup design related with data items, is stored among the RIM 1304.
In the retrieval request of access, instrument 1302 provides the sign of the cup data items in the cup class 1402 to be retrieved can for the transform engine 1308 of their association, and in response, hope is received the attribute data of some data items (can identify) at least in request.Similarly, the request of access of response storage class, such instrument will provide to be updated will for the transform engine 1308 of their association or the attribute information of the sign of the cup data items created and association to be updated or that use when the new data items of establishment.
Other instruments 1302 can have such feature-based data model and form: cup is considered as container and handle entity in the subclass 1404 individually, rather than has the main cup class 1402 of the attribute of container and handle.In this view, two data projects can be arranged, that is, " container " related and " handle " with each cup, each all has the attribute of having described cell therefor and handle.In this case, each data items can be can retrieve independently with renewable, can create new data items individually for each class in two classes.For such view, in the request of access of retrieval type, instrument 1302 will provide the sign of container or handle to be retrieved to their transform engine 1308 of association, and in response, wish receiving data item purpose attribute data.Similarly, the request of access of response storage class, such instrument 1302 will provide to be updated will for the transform engine 1308 of their association or the sign of " container " or " handle " data items of creating and the attribute data of association.Correspondingly, these instruments 1302 are checked container and handle data individually, and can retrieve individually, renewal and storage container and handle attribute data.
As another example of using the identical atomic data structure among the RIM 1304, instrument 1302 can have the feature form that cup is considered as individually sidewall, pedestal and handle entity among the class 1402-1408.In such view, three data projects can be arranged, that is, the sidewall related, pedestal, and handle with each cup, each all has the attribute of corresponding sidewall, pedestal and the handle of having described cup.In this case, can create, retrieve or upgrade each data items independently.For such view, instrument 1302 provides the sign of its data items with the operated sidewall of data items, pedestal or handle can for the transform engine 1308 of their association, and can operate (as creating, retrieve, storing) for each data items individually.
As mentioned above, RIM 1304 can be with " atom " data model and form storage cup subdata.Promptly, for as the described class formation of Figure 14 A, RIM 1304 can be corresponding to each class in the data structure of unanimity and the data items of subclass with data storage, as has reflected the data structure of the most detailed form of the class formation that general utility tool 1302 uses.
Relation between the view of the data that transform engine 1308 can use based on the atomic data structure among the RIM 1304 with by instrument 1302 is changed between view of being safeguarded by each instrument 1302 and the atomic data structure safeguarded by RIM 1304.When changing between instrument 1302 views and RIM 1304 data structures, transform engine 1308 can be carried out many functions.As combination or separation class or subclass, converting attribute title or identifier, generation or delete property value or the like.In many contexts, may produce required conversion, as creating data items, retrieve data project, deleted data project or revising data items.When adding new instrument 1302 in data integrated system 104, system 104 can upgrade the data structure among the RIM 1304, and new tool 1302 transform engine 1308 that may need.The Data Structures that uses in RIM 1304 has been changed with under the situation of admitting new tool 1302, or under situation about having been reorganized owing to other reason data structures, existing transform engine 1308 also may need to upgrade.
Generally speaking, along with data integrated system 104 adapts to new demand, or the new consideration of relevant existing demand, system 104 can upgrade and regenerate the foundation class structure of RIM 1304, thinks the atomic model that data creation is new.Simultaneously, transform engine 1308 also can be modified, instrument 1302 is remapped to the new data structure of RIM 1304.After this a function may only relate to those transform engines 1308 that relates to new data structure of synthesizing specially, and other function can continue to use, and need not to revise.The operator can use data integrated system 104, determine and specific data model and the form that uses by corresponding instrument 1308 between, mapping relations between the form that data model and RIM 1304 use, and can be according to mapping relations maintenance regulation database, this database can be with generating and upgrading corresponding conversion engine 1308.
Upgrade in order to ensure propagation exactly by RIM 1304, it is related that data integrated system 104 can the data items that each instrument 1302 is related with it will be regarded as the class of " primary physical project ", and, be associated with other data items with particular kind of relationship (if any).For example, data integrated system 104 can be chosen as the primary physical project with the certain kinds from the object of the data model that semantically is equivalent to most instrument.Other data items (if any) with the primary physical item association can be regarded as the auxiliary physical item in the figure.For example, the cup class can comprise the primary physical project that design is worked to whole cup of instrument 1302.The arrow that is expressed as " relation " among Figure 14 A has shown the possible relation between primary physical project and the auxiliary physical item.When carrying out the renewal operation, can be from the primary physical project traversal digraph related with data items to be updated, suitable attribute and value are updated.During digraph, can use conventional figure ergodic algorithm to guarantee that each data items in the figure can be used as graphical nodes in traversal, suitably be visited and upgrade, thereby guarantee that data items is updated.
Above-mentioned example has been described the metadata management in the Object oriented programming environment prevailingly.Yet, should be appreciated that the various software examples usefully data in enterprise computing system 1300 use.For example, described the Aspect Oriented Programming system with reference to figure 14B, this system can usefully use with enterprise computing system 1300 as described above.An example that has shown instrument 1302 among the figure with function 1410.Each function 1410 can be written as with a plurality of external service such as ID log record 1412 and metadata updates 1414 carries out alternately.In typical OO environment, external service 1412-1418 must usually be " shortcut ", calls their function 1410 with response, that is, and and by recompile, with calling corresponding to the function 1410 of the renewal of instrument 1302.
As example, in skeletal code, the Object oriented programming (" OOP ") of carrying out the function 1410 of login and checking looks like:
DataValidation(…)
//Login?user?code
//Validate?access?code
//Lock?data?objects?against?another?functions?use?code
//=====Data?Validation?Code=====
//Log?out?user?code
//Unlock?data?object?code
//Update?metadata?with?latest?access?code
//More?operations?the?same?as?above
In the above example, the code of function 1410 utilizes external service 1410-1414 call operation.So-called shortcut occurs in the generation Anywhere of the necessary recompile external service 1410-1414 of application program author, for suitable may the needing alternately of code.This may enlarge markedly the complicacy of redesign, and incorporation time and wrong possibility.
In Aspect Oriented Programming (AOP), the code that is produced of function 1410 may be similar to OOP code (in fact, AOP can use the OOP platform such as C++ to dispose).But in the AOP environment, application program author incites somebody to action a function certain logic to function 1410, and uses one group of weaver rule, defines logic and how to visit external service 1412-1418.The weaver rule description function 1402 should when and how carry out alternately with other services, therefore, the core code and the external service 1412-1418 of instrument 1302 is woven together.When the code of compilation facility 1410, weaver combines core code and support code, to call suitable independently service, creates last function 1410.In skeletal code, function 1410 typical A OP codes may look like:
DataValidation(…)
//Data?Validation?Logic
Deletion shortcut code from the code of function 1410.Then, the application program author can create the weaver rule to be applied to the AOP code.In skeletal code, the weaver rule of function 1410 can comprise:
1)ID?log?at?each?operation?start
2)ID?log?out?at?each?operation?end
3)Update?metadata?after?final?operation
The AOP skeletal code that is produced of function 1410 can look like:
DataValidation(…)
-ID?Logger,in
//Data?Validation?Logic
-ID?Logger.out
-Metadata,update
The code of the simplification of being created by the application program author can allow the establishment instrument 1302 of concentrating one's energy fully, need not to be concerned about required shortcut code.Similarly, the change to a service among the service 1412-1418 may not need any change to the function 1410 of instrument 1302.So structured code can significantly reduce the possibility of the code error when establishment or modifiers 1302, and has simplified the service renewal of external service 1412-1418.
Be also to be understood that transform engine 1308 just handles the data in the enterprise computing system 1300 and a kind of possible method of metadata.Transform engine 1308 can comprise aforesaid bridge 1120, maybe can use minimum common factor method, wherein flows through the data of transform engine 1308 and two computing system compatibilities that are connected by transform engine 1308.In another embodiment, can on standardized facility, carry out conversion, so that standard compliant all computing platforms can and be extracted data by standardized facility transmission.Have many other deal with data with and the method for related metadata, and can usefully use with enterprise computing system 1300 as described herein.
Utilize this background, now will be than the specific operation that describes in greater detail by data integrated system 104 and instrument 1302 and transform engine 1304 execution.
Figure 15 is the process flow diagram that uses the process 1500 of metadata management system 312 or metadata facility with data integrated system 104.At first, described in step 1502, new tool 1302 can be added in the data integrated system.As shown in the figure, data integrated system 104 can at first receive about the data model of the current atomic data model of RIM 1304 (if any) and form and the instrument 1302 that will add and the information of form.Then, shown in step 1503, can whether be to judge to first instrument 1302 that data integrated system 104 adds with regard to new tool 1302.If new tool 1302 is first instruments 1302, so, process 1500 can enter step 1504, in this step, the view that tool using 1302 is required, perhaps any other more fine-grained data model and form of being selected by the user selected atomic data model.
If new tool 1302 is not first instrument 1302, so, process 1500 can enter step 1508, in this step, current atomic data model and the class of form and the corresponding relation between the attribute structure of the data model of new tool and form (comprising the association between the class of new tool and attribute structure and such and the attribute structure) and RIM will be determined.Can be from wherein generating RIM 1304 and transform engine 1308 update rule databases.Shown in step 1510, as mentioned above, data integrated system 104 can the service regeulations database upgrades atomic data model and form and the existing transform engine 1308 of RIM.Data integrated system 104 can also be set up transform engine 1308 for the instrument 1302 that will add.
As describing prevailingly in Figure 16, in case for instrument 1302 generates or upgraded transform engine 1308, transform engine 1308 just can use with the various operations of instrument 1302.
Shown in step 1602, instrument 1302 can generate this request of access of request of access can be transferred to related transform engine 1308.After receiving request of access, transform engine 1308 can be determined request type, is retrieval request or storage request as request, shown in step 1604.Shown in step 1608, if request is a retrieval request, then transform engine 1308 can use related between the data model of the data model of its instrument and form and RIM and the form, and request is converted to one or more requests to RIM 1304.When receiving responsive data items from RIM1304, transform engine 1308 can be required model and form of instrument 1302 with the model that receives from RIM 1304 of data items and format conversion, and can data items be provided to instrument 1302 with appropriate format.
Shown in step 1614, if it is the storage request that transform engine 1308 is judged request, comprise the stored data items purpose request in advance of upgrading, then transform engine 1308 can utilize RIM 1304 to generate the digraph of corresponding class and subclass from the primary physical project related with instrument 1302.If operation is to upgrade operation, then digraph will comprise existing data items in corresponding class and the subclass as graphical nodes.If operation is the new data of storage, then digraph will comprise empty data items as graphical nodes, and they can be used for the new data that comprise in the request of storing.After setting up digraph, transform engine 1308 and RIM 1304 will travel through figure, and the content of needed data items in foundation or the update request is shown in step 1618.After the figure traversing operation was finished, transform engine 1308 can notification tool 1302, and storage operation is finished, shown in step 1620.
Aforesaid data integrated system 104 can provide significant advantage.For example, system 104 can guarantee to be shared efficiently and lastest imformation by the many instruments 1302 in the enterprise computing system 1300, need not instrument 1302 is tied to particular data model, and need not the information exchange routine of exchange message between different instrument 1302.Data integrated system 104 can provide RIM 1304, this RIM 1304 is with atomic data model and form service data, this form can be used for any instrument 1302 of system 104, when upgrading like a cork and develop form in mode easily when system 104 adding new tools 1302.In addition, by clearly that each instrument 1302 is related with the primary physical item class, can set up digraph between the data items in RIM1304.As a result, can use conventional digraph ergodic process, realize the renewal of the information among the RIM 1304 effectively.
Figure 17 is the synoptic diagram of executed in parallel facility 1700 of executed in parallel that has shown a plurality of processes of data integration process.In an embodiment, process 1700 may relate to process initiation facility 1702.Process initiation facility 1702 can need the scope of the operation that moves, and judges that first and second processes can move (for example, because they do not interdepend) simultaneously.In case made judgement, two treatment facilities 1704 and 1708 can move first process and second process respectively.After carrying out these two operations, on another treatment facility 1712, can carry out the 3rd process.In case finished the 3rd process, corresponding treatment facility 1712 can be to conversion facility 1714 transmission information.In an embodiment, conversion facility 1714 can not begin conversion process, has received information 1718 up to it from one or more other concurrent processes (as first and second treatment facilities 1704,1708).In case presented all information, conversion facility 1714 just can be carried out and change.This concurrent process stream is by (for example moving a plurality of processes simultaneously, the process that relies on each other not), then the information of two or more executed in parallel is provided to public utility (for example, depending in public utility under result's the situation of two parallel facilities), has minimized working time.In this embodiment, for ease of explanation, described a plurality of treatment facilities are the facilities that separate.Yet, should be appreciated that two or more in these facilities can be identical physical facility.Be also to be understood that two or more treatment facilities can be different physical facility, and can reside in various physical locations (for example, facility 1704 can reside in a physical location, and facility 1708 can reside in another physical location).
Figure 18 is the process flow diagram of step of executed in parallel that has shown a plurality of processes of data integration process.In an embodiment, concurrent process stream can relate to step 1802, in this step, determines job sequence.In case determined job sequence, just operation can have been sent to two or more treatment facilities, shown in step 1804.In step 1808, first treatment facility can receive and carry out some routine and program, and the information that will handle passes to the 3rd treatment facility.In step 1810, second treatment facility can receive and carry out some routine and program, in case finish, just the information that will handle passes to the 3rd treatment facility.Before its own routine on two information sources of operation, the 3rd treatment facility can be waited for the information of handling from the reception of first treatment facility.Emphasize again that should be appreciated that, treatment facility can be identical facility one time, or reside in identical position that treatment facility also can be different, and/or resides in different positions.
Generally speaking, use the extendible architecture of parallel processing can comprise SMP, troop, MPP platform, and grid computing solution.Can dispose these solutions, not need to revise the integrated process of basic data.Can comprise IBM DB2 UDB, Oracle with the current commercially available parallel database that system as described herein uses, and the Teradata database.The notion that relates to concurrency is the notion of channelization, and wherein, directly a series of processing capacities that define by the data stream by operation are come moving recording.Channelization provides a lot of processing advantages, as has removed the requirement of ephemeral data storage, and has removed the incoming/outgoing management between the treatment step.Channelization can use in data integrated system, to improve the efficient of handling.
Figure 19 is the synoptic diagram that has shown data integration operation 1900, comprises from the input of a plurality of data sources and the output of arriving a plurality of datum targets.Hope is collected data from a plurality of data source 1902A, 1902B and 1902C (they can be any data sources 102 as described above), and uses the combination of data in commercial enterprise.In an embodiment, data integrated system 104 can be used for collecting, purify, change or otherwise handle the data from a plurality of data source 1902A, 1902B and 1902C, and with data storage in conventional data warehouse or database 1908, this database 1908 can be any in the database 112 as described above, so as can from various tool, target or other computing system accesses it.This can comprise data integration process 500 as described above.Data integrated system 104 can be with the data storage of collecting in storage facility 1908, so that can directly visit it from various tool 1910A and 1910B (can be instrument 1302 as described above), perhaps, instrument can be by data converter 1904A and 1904B (can be transform engine 1308 as described above) visit data, no matter is as described hereinly automatically, manually or semi-automatically to generate.Illustrated data converter 1904A, 1904B is the facility that separates; Yet, should be appreciated that they can be integrated in the data integrated system 104, in the instrument 1302, or otherwise place, to realize needed task.
Figure 20 is the synoptic diagram that has shown another data integration operation 2000, comprises from the input of a plurality of data sources and the output of arriving a plurality of datum targets.Hope is collected data from a plurality of data source 1902A, 1902B and 1902C (they can be any data sources 102 as described above), and uses the combination of data in commercial enterprise.In an embodiment, the data from a plurality of data source 1902A, 1902B and 1902C can be collected, purify, change or otherwise be handled to data integrated system 104, and the information of collecting is delivered to a plurality of target 1910A and 1910B (also can be in the data source 102 as described above any) in the mode of combination.This can realize in real time or with batch mode.Not that the information stores of all collections is visited for certain time point in future in central database, data integrated system 104 can or should be collected and deal with data from data source 1902A, 1902B and 1902C near the time when having sent requests for data by target 1910A and 1910B.Should be appreciated that data integrated system 104 still can comprise storer in an embodiment.In an embodiment, when finishing dealing with, storer can be used for the interim data for the treatment of to the target transmission of storing.
Embodiment with reference to Figure 19 and the described data integration operation 1900 of Figure 20 is general.Should be appreciated that such data integration operation 1900 can reach in other environment and use, and may relate to many data of different types source 102, data integrated system 104, datum target a lot of commercial, education, government, and/or database 112.
Figure 21 has shown the graphic user interface 2102 that the data administrator of commercial enterprise wherein can design data integrated operation 1900.In an embodiment, graphic user interface 2102 can be presented to the user, for it data integration operation is set.User interface can comprise the plate of instrument 2106, comprises database, crossover tool, and target, path identifier reach other instruments that used by the user.The user can use drag-and-drop operation, drop-down menu, order line, and any other control, instrument, tool box or other user interface components, with graphics mode will from tool palette instrument become work space 2104.Work space 2104 can be used for planning database, the path of data stream, switch process or the like, the integrated operation of configuration data, data integration operation 1900 as described above.In an embodiment, in case disposed operation, just user interface or another user interface operation from then on.Can generate user interface 2102 by application program or other programmed environments, or the Web page that uses Web browser to visit as the user generates.
Figure 22 has shown that the data administrator can be used for another embodiment of graphic user interface 2102 of the integrated operation 1900 of design data.In an embodiment, the user can use graphic user interface 2102 to select the icon of representative data target/data source, and these icons are associated with function or other relations.In this environment, the user can create association or imperative structures between a plurality of icons, to create data integration operation 2202, can be any one in the data integration operation 1900 as described above.
User interface 2102 can provide a lot of resources in platform 100 and the data integrated system 104 and the visit of design tool.For example, user interface 2102 can type design device data object modelization.The type design device can be used for creating and the management type tree, and the type tree has defined the attribute of data structure, has defined the container of data, has created data verification rule or the like.The type design device can comprise input unit, be used to the described data of the form such as XML, COBOL, Copybooks and automatically generate the type tree (promptly, the data object definition), and such as SAP R/3, BEA, Tuxedo, and the specific structure of application program of PeopleSoftEnterpriseOne and so on.
User interface 2102 can comprise the mapping designer, is used for formulating conversion and business rule.The mapping designer can use the definition of the data object that the use pattern designer creates as input and output, and can be used for the rule of designated conversion and route data, and the environment of analysis, the compile and test mapping of developing.
Can provide the database design interface as the modelling assembly, to import about inquiring about, show and be stored in the metadata of the storing process of the data in the relational database.The database design interface can identify the feature such as updating key and database trigger of various objects, to meet mapping and to carry out requirement.Integrated stream designer can be used for defining and the integrated process of management data.Integrated stream designer can more ad hoc be used to define mutual between the system of mapping and mapping, with the logical consistency of checking workflow, the system of the mapping that preparation will move.Can provide the command server assembly, so that in graphic user interface, finish the execution of command driven.This can be used to shine upon the test of the mapping in the designer environment.The resource registering table can provide resource another name knowledge base, is used to use the another name that resolves to the specific resources in the enterprise in the execution time to come the extracting parameter setting.
User interface 2102 can also provide the visit to various management tools.For example, can provide the event server management tool, the user can specify from this instrument and dispose catalogue, configure user and access privilege, appointment listening port, and is Java remote method invocation (RMI) (" RMI ") defined attribute.Supervisor console can provide management and monitors for event server, and the user can start from this control desk, stops, time-out and recovery system, and checks the information about the state of the event server that moving and mapping.The event server monitor can provide the single dynamic detailed view that is mapped in when moving, and creates the snapshot of the activity of special time.
Figure 23 has represented the integrated platform 2300 of the various data that are used to promote commercial enterprise.Platform can be a platform 100 as described above, and can comprise integrated suite, this external member can provide known enterprise application integrated (EAI) service, as extracting data from each provenance, data are converted to needed form, data load in all types of target, is called as ETL (extract, change, load) sometimes.Service 2704 that platform 2300 can comprise integrated in real time (" RTI "), be used for exposing routine data integrated platform 2702 as service, this service can be comprised by the Web service agreement 2302 such as EnterpriseJava Beans (" EJB ") and Java messenger service (" IMS ") conducting interviews by the visit of the computer applied algorithm of enterprise.Although product suite can be data integration or enterprise application integrated suite, as described in detail in the following example, but, should be appreciated that, can use principle as described herein, as the service in the service-oriented architecture, dispose and manage any external member of the program of being mutually related or function.So, product suite can comprise office automation efficient external member, comprises the instrument document assembly such as robotization, word processing, electrical form or the like.Product suite also can be a computer automation design external member, and the software program package of separation or function be as various services, for example, design, visually present, cost accounting, simulation, or the like various services dispose.As another example, such as record keeping, accounts, the tax, and so on financial product, and the integrated suite of electronic tax product can be used as other service of product level, or, use service-oriented architecture as the set of the specific service of each product, dispose.Similarly, economic model chemical industry tool, financial analysis instrument (for example, being used for finance, the stock exchange pattern of single company, market trade pattern or the like), and the service that the electronic transaction instrument can be used as in the integrated stock exchange external member is disposed.
Figure 24 has shown the synoptic diagram of service-oriented architecture (" SOA ") 2400.SOA can be the part of architecture of the enterprise computing system 1300 of commercial enterprise.In SOA 2400, service has become the member of application development and deployment, thereby can carry out application development fast, and avoids redundant code.Each service has all realized one group of service logic or business rule, and these rules can be ignored surrounding environment, as the target of the output data of the source of the data input of service or service.As a result, service can be reused with various application programs, supposes to have set up between services and applications suitable input and output.Service-oriented architecture 2400 allows to serve the variation that conforms, even computer environment changes on every side, architecture also can run well.As a result, service may not need along with the variation of architecture recompile, thereby saved time and efforts.The embodiment of Figure 24 is the embodiment of the SOA 2400 of Web service.As used herein, use interchangeably such as " service-oriented architecture ", " SOA " or the like variant, generally be meant the SOA 2400 that describes with reference to Figure 24, as described at whole this instructions.
In the SOA 2400 of Figure 24, three entities are arranged, service provides program 2402, service requester 2404 and web services registry 2408.Registration table 2408 can be public, also can be privately owned.Service requester 2404 can be searched for registration table 2408, to search suitable service.In case found suitable service, service requester 2404 can receive the required code of the service of calling, as Web Services Description Language (WSDL) (" WSDL ") code.WSDL is the programming language that is used to describe Web service traditionally.Then, service requester 2404 can provide program 2402 to be connected with service, as passing through the message for the appropriate format (as Simple Object Access Protocol (" SOAP ") form) of Web service message, with the service of calling.Soap protocol is the preferred protocol that is used in Web service transmission data.Soap protocol has defined the Interchange Format of the message between Web service client and the Web service server.Soap protocol uses extend markup language (" XML ") framework, and XML is a normally used general linguistic norm in Web service, is used for flag data, though also can use other SGMLs.
Figure 25 has shown the example of soap message.Soap message 2502 can comprise transmission big envelope 2504 (as HTTP or JMS big envelope or the like), SOAP big envelope 2508, SOAP header 2510 and SOAP text 2512.Be the example of the response message of the request message of SOAP form and SOAP form below:
Web service can be modular, self-description, self-centered application program can stride the issue of Web ground, locatees and call.For example, in the embodiment of the Web service of Figure 24, service provides program 2402 to registration table 2408 issue Web services, registration table 2408 can be universal description, discovery and integrated (UDDI) registration table, registration table provides the tabulation what Web service can be used, or privately owned registration table or other public registration tablies.Web service can be issued with the WSDL form.Find service, service requester 2404 can be browsed web services registry, and retrieval WSDL document.Registration table 2408 can comprise browses facility and searching facility.Registration table 2408 can be stored WSDL document and their metadata.
Want called Web service, service requester 2404 provides program 2402 to send the soap message 2502 that WSDL describes to service, receives the soap message 2502 of response, and the response message of describing with WSDL is decoded.The complicacy that depends on Web service, they can provide various functions, from the simple operations such as request msg, to complicated business process operation.In case disposed Web service, other application programs (comprising other Web services) just can have been found with called Web service.Defined other Web service standards by Web service interoperability tissue (WS-I), this tissue is intended to promote the open industrial organization of the interoperability of cross-platform Web service.Example comprises WS-Coordination, WS-Security, WS-Transaction, WSIF, BPEL or the like, and Web service as described herein should be understood that to comprise the service that any such standard is expected.
Please referring to Figure 26, WSDL definition 2600 is XML frameworks of the interface, position and the encoding scheme that have defined Web service.Definition 2600 has defined service 2602, and sign can be used for the port 2604 (as the Internet address) of access services 2602, and has defined the binding 2608 (as EnterpriseJava Bean or SOAP binding) that is used for called Web service and communicates with it.WSDL definition 2600 can comprise abstract definition 2610, and this abstract definition 2610 can define port type 2612, the message part that imports into 2616 of Web service and the message part 2618 that spreads out of, and by the performed operation 2614 of service.
Various provide program provide can called Web service various Web service clients.The Web service client (for example comprises .Net application program, java application, JAX-RPC), the application program in the Microsoft SOAP kit (Microsoft Office, Microsoft SQL Server, and other) is from the application program of SeeBeyond, WebMethods, Tibco and BizTalk, and the DataStage of Ascential (WS PACK).Should be appreciated that, also can use other Web service clients here in described business data integrated approach and the system.Similarly, there are various Web services that program is provided, comprise .Net application program, java application, from the application program of Siebel and SAP, 12 application programs, DB2 and SQL Server application program, enterprise application integrated (EAI) application program, business process management (BPM) application program, and integrated in real time (RTI) application program of Ascential Software, all these can use with Web service client as described herein.
RTI service 2704 as described herein can be used the open-standards standard, as WSDL, comes the integrated process service interface of data of description.When data integration service definition when being complete, it can use WSDL Web Service Definition Language (not necessarily Web service specific language), the latter is an abstract definition, the title of service, the operation of service, the signature of each operation have been provided, and the service binding, as mentioned the institute prevailingly the description.In WSDL definition 2600 (XML document), various marks are arranged, have described structure with reference to Figure 26.For each service, a plurality of ports can be arranged, each port all has binding.Abstract definition is the RTI service definition that data integration in question is served.Port type is the entrance of one group of operation, and each operation all has one group of input variable and output variable.
WSDL is the Web service definition, but has only defined a binding (SOAP on the HTTP).WSDL is expanded by industrial community, to comprise the WSDL expansion of various other bindings (as EJB, JMS, or the like).It is that various other agreements establishments are bound that RTI service 2704 can use WSDL to expand.So, single RTI data integration service can be supported a plurality of bindings to single service simultaneously.As a result, enterprise can obtain data integration process 500, exposes its (is unknowable fully for agreement) as one group of abstract process, adds binding then.A service can be supported the binding of any amount.
The user can obtain the integrated operation 1900 of data with existing, adds the suitable RTI input and output stage, and exposes this operation as service, and this service can be used the various application programs of different original agreements.
Please, represented the high level architecture of data integration platform 2700, can step up civilian described platform 100 and dispose, and be applicable to that real time data is integrated referring to Figure 27.The integrated facility 2702 of routine data (can be data integrated system 104 as described above) can be provided for the method and system of the integrated operation of deal with data.Data integration facility 2702 can be served by real-time integrated facility or RTI and is connected to one or more application programs 2704 (comprising the service in the service-oriented architecture).RTI service 2704 can be called the various application programs 2708 of enterprise or be called by them.Data integration facility 2702 can provide coupling, standardization, conversion, purification, discovery, metadata, executed in parallel, and carries out the required similar facility of data integration operation.In an embodiment, RTI service 2704 exposes the data integration operation of data integration facility 2702 as the service that can be called by the application program 2708 of enterprise in real time.RTI service 2704 exposes data integration facility 2702, so that the data integration operation can synchronously or asynchronously be used as service.Can be from enterprise application integrated platform, apps server platform, and Java and .Net application call operation.RTI service 2704 allow same logic striden batch and in real time service ground reuse and use.Can use various bindings 2710,, call RTI service 2704 as Enterprise Java Bean (EJB), Java messenger service (JMS) or Web service binding.
Please referring to Figure 28, in an embodiment, RTI service 2704 moves on RTI server 2802, and RTI server 2802 is as the connection facility of the various elements of the integrated process of real time data.For example, RTI server 2802 can connect a plurality of enterprise application integrating servers, as be positioned at the DataStage server of Ascential Software of the Westborough of Massachusetts, so that can providing between other servers, RTI server 2802 converges and load balance.RTI server 2802 can be included in the independent J2EE application program of moving on the J2EE apps server.In an integrated process of data, can comprise more than one RTI server 2802.
J2EE provides the method for design, exploitation, compilation and deployment enterprise application based on assembly.Wherein, J2EE provides multilayer, and the distributed application program model is reused the ability of assembly, unified security model, and affairs controlling mechanism.The J2EE application program is made of assembly.The J2EE assembly is self-centered functional software unit, and relative class in this unit and document assembly are the J2EE application program, and communicates with other assemblies.
The J2EE normalized definition various J2EE assemblies, comprising: application client and small routine (they are the assemblies that move on client); Java Servlet and the JavaServer page (JSP) technology component (they are the Web assemblies that move on server); And Enterprise Java Bean (EJB) assembly (enterprise beans) (they are enterprise components of moving on server).The J2EE assembly is write with Java, and to compile with the same mode of any program.Whether the difference between J2EE assembly and " standard " java class is, the J2EE assembly is collected is the J2EE application program, be verified to form well and meet the J2EE standard, and be deployed to the production occasion, and at this, they are by the operation of J2EE server and manage.Three kinds of EJB are arranged: session bean, entity bean, and the bean of message-driven.The instantaneous talk of session bean representative and client.When client is finished when carrying out, session bean with and data leave.By contrast, entity bean represents the permanent data in the delegation that is stored in database table.If if client finishes or server closing, then Ji Chu service guarantees that entity bean data are saved.The bean of message-driven has made up the characteristics of session bean and Java messenger service (" JMS ") message audiomonitor, allows enterprise components to receive JMS message asynchronously.
The J2EE standard has also defined container, and container is the interface between the specific function of an assembly and the low-level platform of supporting this assembly.Before can carrying out Web, the bean of enterprise or application client assembly, it must be the J2EE application program by compilation, and is deployed in its container.Assembly process is related to itself the specified containers setting of each assembly in the J2EE application program and J2EE application program.The infrastructural support that container is provided with self-defined to be provided by the J2EE server comprises such as safety, transaction management, Java name and directory interface (JNDI) inquiry, and the service of long-range connection and so on.
Figure 29 has described the architecture 2900 of typical J2EE server 2908 and relevant application program.Aspect when J2EE server 2908 comprises the operation of J2EE architecture.J2EE server 2908 provides EJB and Web container.The execution of the bean of enterprise 2904 of Enterprise Java Bean container 2902 management J2EE application programs.Bean of enterprise 2904 and their container 2902 move on J2EE server 2908.Manage the execution of the servlet assembly 2914 of the JSP pages 2912 and J2EE application program by Web container 2910.The also operation on J2EE server 2908 of Web assembly and their container 2910.Simultaneously, manage the execution of application client assemblies by application client container 2918.Application client 2920 and their container 2918 move on client.Execution by applet Container Management applet.The applet container can comprise Web browser and the java plug-in that moves together on client.
The common separate packages of J2EE assembly, and be bundled in the J2EE application program and dispose.Each assembly, its associated documents such as GIF and html file or the utility routine class of server end, and deployment descriptor is assembled in the module, and add the J2EE application program to.The J2EE application program with and each module all have its oneself deployment descriptor.Deployment descriptor is the XML document with .xml extension name, has described the deployment setting of assembly.Provide J2EE application program with enterprise's file (EAR) file with all its modules.The EAR file is standard Java file (JAR) file with .ear extension name.Each EJB jar file all comprises deployment descriptor, the bean of enterprise file, and relevant file.Each application client jar file all comprises the class file of deployment descriptor, application client, and relevant file.Each file all comprises deployment descriptor, Web component file, and relevant resource.
RTI server 2802 can serve as the trusteeship service of the integrated environment of Real-Time Enterprise application program.RTI server 2802 can be the J2EE server that can carry out function as described herein.RTI server 2802 can provide safe, extendible platform for the integrated service of enterprise application.RTI server 2802 can provide various General Server functions, comprises session management, log record (as Apache Log4J log record), configuration and monitoring (as J2EE JMX), safety (as J2EE JAAS, by J2EE keeper's SSL encryption).RTI server 2802 can serve as local or privately owned Web service registration table, and it can be used for to issuing Web service such as the public Web service registration table of the UDDI registration table that is used for many conventional Web services.RTI server 2802 can be carried out resource and converge and load balance function between other servers (for example those are used for the server of the integrated operation of service data).RTI server 2802 also can serve as the supervisor console that is used to develop and manage the RTI service.RTI server 2802 can use with various environment, as JBOSS 3.0, IBM Websphere 5.0, BEA WebLogic 7.0 and BEA WebLogic8.1.
In case set up, RTI server 2802 can allow data integration operation (as DataStage and the QualityStage operation of being carried out by Ascential Software platform) to be called by Web service, enterprise Java beans, Java message service message or the like.Using the method for service-oriented architecture to allow binding to judge with RTI server 2802 separates with the data integration job design.In addition, can set up a plurality of bindings for same data integration operation.Owing to the data integration operation is not minded environment, and can use, can be more prone to extend across a plurality of application programs and criticize and real-time mode ground repeated use processing logic with striding with a plurality of bindings.
Figure 30 has shown the RTI control desk 3002 that can be used to manage the RTI service.RTI control desk 3002 can be used for creating and dispose RTI and serve.Wherein, the RTI control desk allows the user to determine that what binding will be used to be provided to the interface of given RTI service, and the parameter of using during definite RTI service operation.Graphic user interface is provided can for the RTI control desk, it can move in any suitable environment of supporting such interface, as environment based on Microsoft Windows, or web browser interface.The further details of the use of relevant RTI control desk are provided below.RTI control desk 3002 can teacher of being designed be used for the service of creating, create the operation of service, operation is appended to the operation of service, create the user and utilize variety of protocol to realize the needed binding of service.
Please referring to Figure 27, RTI service 2704 can be between data integration platform 2702 and various application program 2708 once more.RTI service 2704 can allow application program 2708 in real time or with batch mode, synchronously or asynchronously the integrated platform 2702 of visit data.The data integration rule of setting up in data integration platform 2702 can be striden enterprise computing system 1300 ground and be shared.The data integration rule can need not to understand platform 2702 with any language compilation.RTI service 2704 can utilize Web service to define to promote real time data integrated.According to method and system as described herein, the stream of data integration operation can be connected to batch environment or real time environment.Method and system described herein comprises a section business logic that comprises between the exit point of the entrance of notion, the definition in a process of container and definition.By being the service logic in the container with the data integration process configuration, data integration can be used under batch processing and real-time mode.In case service logic is arranged in container, just can simplify moving between batch processing and the real-time mode.Can be used as real-time service and visit the data integration operation, also can visit same data integration operation,, as under, carry out identical conversion at real-time mode so that handle large batch of file with batch mode.
Please referring to Figure 31, the further details of the architecture 3100 of the embodiment that is used to realize RTI service 2704 are provided.RTI server 2802 can comprise various assemblies, comprises being used to examine 3104, authentication 3108, authorizing 3110 and the facility of log record 3112, as those facilities that is provided by the server that typically meets J2EE.RTI server 2802 can also comprise and can process converge facility 3102, and it can be used to converge and Resources allocation, as with the operation-related resource of data integration of operation on data integration platform 2702.Process converge facility 3102 just can stride each server of the integrated operation of service data provide server and operation to select.Selection can be based on the load between a plurality of machines of balance, or which data integration operation can move (or operation most effectively) based on which machine.RTI server 2802 can also comprise binding facility 3114, and as SOAP binding facility 3116, JMS binds facility 3118, and EJB binding facility 3120.Binding facility 3114 allow RTI server 2802 and various application program (as, Web service client 3122, JMS formation 3124 or java application 3128) between have interface.
Still please referring to Figure 31, RTI control desk 3002 can be the supervisor console of RTI server 2802.RTI control desk 3002 can be used for creating and dispose RTI service, the runtime parameter of configuration service, and the binding or the interface that are defined into service for the keeper.
Architecture 3100 can comprise one or more data integration platforms 2702, can comprise server, the DataStage server that provides as the AscentialSoftware by the Westborough that is positioned at the Massachusetts.Data integration platform 2702 can comprise and is used to support the facility mutual with RTI server 2802, comprises RTI agency 3132, and this is the process of operation on data integration platform 2702, is used to seal the request of travelling to and fro between RTI server 2802 of sending.So, select the data integration platform 2702 of particular machine as the integrated operation of real time data in case process converges facility 3102, then it can be given to request the RTI agency 3132 of this data integration platform 2702.On data integration platform 2702, can there be one or more data integration operations 3134 (data integration operation 1900 as described above) to move.Data integration operation 3134 can be in the on state alternatively all the time, rather than must start when calling.For example, data integration operation 3134 can have been set up with database, Web service or the like and has been connected, and waits pending data to arrive, and calls data integration operation 3134, rather than must set up new connection when handling.So, the example that has been in the data integration operation 3134 of on state can be acted on behalf of 3132 by RTI and call, and can use specific input from RTI server 2802 (can be file, data line, one batch data or the like), begin to carry out data integration operation 3134 immediately.
Each data integration operation 3134 can comprise RTI input stage 3138 and RTI output stage 3140.RTI input stage 3138 is from RTI agency 3132 entrances to data integration operation 3134, and RTI output stage 3140 is the output stages of getting back to RTI agency 3132.Utilize RTI input and output level, data integration operation 3134 can be one section section business logic that is independent of platform.RTI server 2802 knows what input is the RTI input stage 3138 for each RTI data integration operation 3134 need.For example, if the service logic of given data integration operation 3134 with client's surname and age as input, so, RTI server 2802 can be delivered to input the RTI input stage 3138 of data integration operation 3134 with the form of character string and integer.The RTI input stage obtains input and suitable form, no matter uses what original application program code to carry out data integration operation 3134.
In an embodiment, method and system as described herein can allow the designer define from the data integration process to the RTI service interface automatically, can self-defining map machines.Specifically, can to allow the designer be the service interface of data integration process creation robotization to RTI control desk 3002.Wherein, it can allow the self-defined generic services interface of user's (or a group rule or program), to be fit to specific purpose.When the data integration operation, utilize transaction flow, as conversion, and utilize RTI input stage 3138 and RTI output stage 3140, the metadata of operation to represent, the form of the data of exchange between the level of assembly or operation.Table definition has been described RTI input stage 3138 and has been wished what receives; For example, the input stage of data integration operation may expect that three are called: a character string and two integers.Simultaneously, when the data integration job stream finished, output stage may return string or the calling of integer form.When the user created the RTI service that will use this operation, the operation of hope definition is reflected in to be expected any data and will return what data when output when importing.Compare with the Object oriented programming method of routine, service is corresponding to class, and operation is corresponding to method, wherein, operational definition based on the signature of the operation of metadata, as the RTI input table 3414 related with RTI input stage 3138 and with the related RTI output table 3418 of RTI output stage 3140.
For instance, the user may define (string, int, int) input variable as the specific RTI operation in the RTI input table 3414.The output that RTI can be exported in the table 3418 is defined as struct:(string; Int).In an embodiment, input and output can be single characters.If other fields (call) are arranged more, the user can self-defined input mapping.Replace using the operation with 15 integers, the user can create STRUCT (complicated type with a plurality of fields, each field is all corresponding to complex operations), as, Opt (stuct (string, int, int)); Struct (string, int).The user can the combinatorial input parameter, so that they combine as the input type of a complexity.As a result, can handle an array, so that affairs are defined as: Optl (array (struct (string, int, int).For example, input structure can be (name, SSN, age), and export structure can be (name, birthday).Array can pass the RTI service.At last, the answer of the correspondence of service output array.By array, a plurality of row can be combined as single affairs.In RTI control desk 3002, check box 5308 can make the user " accept multirow ", so that enable array.Define input, in RTI control desk 3002, can choose or cancel and choose particular row, whether become the part of the signature of operation as input to judge it.The user may not wish specific input row are exposed to operation (for example, because for specific operation, may be identical all the time), and in this case, the user is the quiescent value of input fixedly, only sees the variable that is not quiescent value so that operate.
Similarly process can be used for the output of map operation, ignores some row of output as using the RTI control desk, can be used as the operation that the part of the signature of specific operation is stored.
In an embodiment, the RTI services request from RTI server 2802 passes data integration platform 2702 is provided by the pipeline with single request, rather than in batches or mass file gather and provide.The pipeline method can make single services request by the picking up immediately at the example of operation of data integration operation 3134, produces rapid and real-time data integration, rather than needs finishing of the enterprise wait integrated operation of batch processing.The services request of passing pipeline can be regarded as ripple, each services request can be carried out mark by " beginning of ripple " mark and " end of ripple " mark, so that the startup of the new services request of RTI agency 3132 identifications, and the finishing of the data integration operation 3134 of specific services request.
The End-of-wave mark has been described a series of unit of work, and each unit is all separated by the end-of-wave mark.Use the end-of-wave mark can allow system along with same service execution batch processing and true-time operation.In batch environment, the data integration user wishes to optimize data stream usually, so that in the processing of carrying out maximum for deciding grade and level, large quantities of then next stage that are transferred to reduce the number of times of necessary mobile data, are resource-intensives because data move.By contrast, in handling in real time, the data integration user may wish as quickly as possible by moving each transactions requests of drifting.The end-of-wave mark sends a signal, and this signalisation empties the job instances of specific request by the data integration operation, rather than waits for that more data begins to handle (as system usually the batch mode).The benefit of end-of-wave mark is, given job instances can be handled a plurality of affairs simultaneously, and each affairs is all separated with other affairs by the end-of-wave mark.Be that anything all is affairs between two end-of-wave marks.
Channelization can make a plurality of requests serviced processing simultaneously.The load balancing algorithm that process converges facility 3102 can be filled into its max cap. (fill pipe) with single-instance before a new example of the integrated operation of log-on data.In real-time integrated model, when you have a readjustment that is being processed in real-time (and under batch mode, buffer zone was filled usually by system before processing is criticized), the end-of-wave mark can turn to a plurality of affairs pipelines the stream of data integration operation.For obtaining load balance, may wish whether balance is not only hurried in based on operation, because operation may hurry in, and still have untapped production capacity.
On the other hand, wish before the capacity of pipeline reaches its maximal value, to avoid starting new data integration job instances.This means that load balance need be dynamic, and based on adeditive attribute.In the RTI agent process, RTI agency 3132 understands the example of operation on each data integration platform 2702 of being visited by RTI server 2802.In RTI agency 3132, the user can bufcreate for each job instances of operation on data integration platform 2702.Can various parameters be set in RTI control desk 3002, obtain balancing dynamic load with help.Parameter be buffer zone can be placed on the largest amount (quantity with request is measured) that the wait in the buffer zone is handled by job instances.Under the preferable case, preferably only have single request, produce constant handling capacity, but in practice, handling capacity changes normally, so that usually need all have buffer zone for each job instances.Second parameter is the pipeline threshold value, and this is to show the parameter what suggestion to start new job instances at.In an embodiment, threshold value can generate the warning indication, rather than automatically starts new example, because the unusual increase of communication flows may cause postponing.The 3rd parameter can judge that if threshold value is exceeded the time period more than appointment so new example will start.Generally speaking, such as buffer size, threshold value, and the channelization attribute of example start delay and so on, be the parameter that the user can control.
In an embodiment, all data integration platforms 2702 all are to use the machine from the DataStage server of AscentialSoftware.In in them each, data integration operation 3134 can be arranged, these operations can be the DataStage operations.The existence of RTI input stage 3138 means that operation 3134 is in running status all the time, and waits for request, and is different with batch mode, and under batch mode, job instances starts when batch processing.In operation, data integration operation 3134 is in running status, all its need arrive with monitoring, wait for certain data being connected of database, Web service or the like and RTI input stage 3134.For each affairs, the end-of-wave mark can be advanced along a plurality of levels of data integration operation 3154.RTI input stage 3138 and RTI output stage 3140 are the communication point between the remainder of data integration operation 3134 and RTI service environment.
For example, the computer applied algorithm of commercial enterprise can send the request to affairs.RTI server 2802 can judge that RTI data integration operation 3134 moves on various data integration platforms 2702, in an embodiment, platform 2702 is the DataStage servers from Ascential Software.RTI server 2802 can will need anything just can check the integrated operation 3134 of particular data to RTI input stage 3138 from the data map in the request of computer applied algorithm.RTI agency 3132 can follow the tracks of any just operation on each data integration platform 2702.RTI agency 3132 can utilize shared memory with RTI input stage 3138 and 3140 operations of RTI output stage.RTI agency 3132 can utilize the end-of-wave mark to come the mark affairs, affairs are sent to RTI input stage 3138, then, identification end-of-wave is that data integration operation 3134 has been finished, from RTI output stage 3140, obtain the result, and the result is sent it back the computer applied algorithm that has started affairs.
RTI method and system as described herein can allow the data integration process to expose as one group of abstract service of being managed (can visit by a plurality of access protocals of late binding).By using data integration platform 2702, as the Ascential platform, the user can create data integration process (being represented by the stream in the graphic user interface usually).Then, user's service of can be used as exposes the process by flow definition, this service can be in real time synchronously or asynchronously, call by different application programs.For making full use of RTI service, wish to support different agreements, as JMS formation (wherein, process can be posted to data in the formation, application program can be from formation retrieve data), java class, and Web service.Bind a plurality of access protocals and can make different application access RTI services.Because the requirement of application program certain protocol has been handled in binding, therefore, the RTI service can be defined as abstract service.Abstract service be by service carrying out content-defined, rather than by the definition of specific protocol or environment.Generally speaking, the RTI service can be issued in catalogue, and enjoys together with a lot of users.
A RTI service can have a plurality of operations, and each operation can be realized by an operation.Create service, the user needn't know the information of relevant particular Web service, java class or the like.When design will be served the data integration operation that exposes by RTI, the user needn't know how service will be called.The user can make up the RTI service, and then for given data integration request, system can carry out the RTI service.At some point, the user to one or more agreements, can be any one in Web service, Enterprise JavaBean (EJB), JMS, JMX, C++ many agreements that maybe can realize serving with the RTI service binding.For specific RTI service, a plurality of bindings can be arranged, so that service can be utilized different agreements to conduct interviews by different application programs.
In case defined the RTI service, the user can add a binding, or a plurality of binding, so that use a plurality of application programs of different agreement can call the RTI service simultaneously.In conventional WSDL document, service definition comprises port type, but the service of how calling must be described.The user can define all types of the operation that can append to specific WSDL definition.Example comprises text on SOAP over HTTP, EJB, the Text Over JMS and other.For example, create the EJB binding, RTI server 2802 will generate the Java source code of Enterprise JavaBean.When service arrangement, the user uses RTI control desk 3002 to come defined attribute, compiled code, establishment Java history file, then, offers the user of enterprise application, in user's java application server, to dispose, so that each operation all is a method of java class.As a result, between RTI service name and java class title, and relation one to one can be arranged between RTI action name and Java method name.As a result, the java application method call will be in call operation in the RTI service.As a result, use the Web service of SOAP over HTTP and the java application of use EJB to enter identical data integration operation by the RTI service.Entrance and exit point do not need specific protocol, and same operation like this can be worked on a plurality of agreements.
Although synchronized process is supported in SOAP and EJB binding,, asynchronous process is supported in other bindings.For example, SOAP over JMS and Text over JMS are asynchronous.For example, in one embodiment, message can be appended in the formation.The RTI service can monitor the asynchronous input of input queue, and asynchronously output is posted to another formation.
Figure 32 is the synoptic diagram of the internal architecture 3200 of RTI service.This architecture comprises RTI server 2802, and this is the server that meets J2EE.RTI server 2802 carries out mutual with the RTI agency 3132 of data integration platform 2702.Process converges facility 3102 by selecting to come project is managed to the proper data integrated platform machine 2702 of the wherein integrated operation of Data transmission.RTI server 2802 comprises that the operation that is used for the integrated operation of deal with data converges facility 3202.Operation is converged facility 3202 and is comprised the job list 3204, has listed operation and state, and no matter whether each operation is available.Facility is converged in operation can comprise cache manger and operational facilities, is used to handle the operation that is delivered to RTI server 2802.RTI server 2802 can also comprise Accreditation Facility 3220, is used to manage and suitable public or privately owned registration table, as WSDL being described the registration table that is published to the service that can pass through 2802 visits of RTI server.
RTI server 2802 can also comprise Enterprise Java Bean container 3208, this container comprise according to J2EE at the RTI session bean operation of RTI service the time facility 3210.Enterprise Java Bean container 3208 can comprise message bean 3212, session bean 3214, and entity bean 3218, is used to enable the RTI service.Enterprise Java Bean container 3208 can help different interfaces, comprises JMS interface 3222, and EJB client-side interface 3224 and Axis interface 3228.
Please referring to Figure 33, RTI server 2802 and RTI agency's 3132 a mutual aspect is, RTI acts on behalf of the pipeline of 3132 management service requests, and then, these services request are delivered to the job instances 3302 of data integration operation.Job instances 3302 is moved on data integration platform 2702, and has RTI input stage 3138 and RTI output stage 3140.Depend on demand, can have more than one job instances 3302 on the integrated platform 2702 of particular data, to move.Along with services request passes to RTI agency 3132 from RTI server 2802, the opening and closing of its management operations example.Different with traditional batch-type data integration, each acts on behalf of 3132 along RTI server 2802, RTI to the request of RTI service in the pipeline 3304 of operation, and data integration platform 2702 is advanced.Can be in RTI agency management pipeline 3304, as by the different parameter of pipeline 3304 is set.For example, pipeline 3304 can have buffer zone, and its size can use maximum buffer size parameter 3308 to be provided with by the user.The keeper also can be provided with other parameters, as the duration of RTI agency 3132 delays that will accept before starting new job instances 3302, that is, and example start delay 3310.The keeper also can be provided with the threshold value 3312 of pipeline, and this threshold value has been represented for given job instances 3302, the quantity of pipeline acceptable services request.
The RTI service can be in registration table, managed, this registration table can be searched for.The RTI service may have been added written application program to it, and this application program is used the agreement that is attached in the service.For example, the Customer management operation such as adding client, deletion client or checking client address can be used known Web service agreement, or append in this service agreement.The Customer management application program can be attached in the RTI service, and there, application program is the client of RTI service.In other words, predefined application program can append in the RTI service, there, and application call or use RTI service.The result is, the user can download to service in the particular device as required, and on this equipment bootup window.
For example, the mobile computing device such as pocket PC can have hosted environment.Mobile computing device can have application program, as the application program at the integrated service of mobile data, many application programs of having downloaded and available application program is arranged.Mobile device can viewer applications.When it downloaded the application program that is attached to the RTI service, application program was downloaded in the mobile device by radio, but it calls the RTI service that is attached to it simultaneously.As a result, the user can have mobile applications and dispose, and simultaneously can be from real-time, the integrated data of accessed enterprise.So, the RTI service can provide highly effectively model for the mobile computing application program, and wherein, enterprise benefits from and allows the user have up-to-date data.
Now with its general formal description the different aspect of data integrated system 104 of enterprise computing system 1300, a plurality of examples of data integrated system 104 will be provided now, comprise different commercial and other application programs.
As shown in figure 34, the data integrated system 104 with RTI service 2704 can be used for financial services industry.Real time data is integrated can to allow commercial enterprise in the financial services industry to avoid otherwise with the risk that exists.For example, if branch offices of financial institution 3402 handles consumer 3404 loan application 3410, and another branch offices carries out stock exchange 3408, and mechanism 3402 may bear it and be ready the bigger risk born when loan.The integrated permission of real time data financial institution has consumer 3404 general picture more accurately when carrying out given transaction.So, RTI service 3412 can allow the up-to-date data with the related relevant consumer's 3404 of computer applied algorithm request of loan application stock accounts, and these data can be served 3412 by RTI and be retrieved from the data related with the application program of the financial institution 3402 that handles stock exchange 3408.Certainly, the treasurer's department of not only financial institution, and many enterprises also can make and may benefit from the integrated similar financial decision of real time data.
Commercial enterprise benefits from the integrated service of real time data in environment miscellaneous and for many purposes, RTI service as described herein.An example is the field of operational report and analysis.Wherein, the RTI service can provide the view of the merging of the Real-time Transaction analysis with a large amount of batching datas.Please referring to Figure 35, RTI service 3502 can be such structure: this structure is called to all important data sources 3304 of commercial enterprise in real time, as business data warehouse, Data Mart, database or the like.Then, RTI service 3502 can be used consistent other conversion of data level to the data from data source 3504.By using by this way, the RTI service also can be analyzed by the robotization origin system, and the real time data quality management is provided.There are many operational report or the analysis process that can benefit from such RTI service in commercial enterprise, fraud detection and venture analysis as the financial service field, stock's control of retail domain, prediction and market basket analysis, the adaptive activity of financial field, and the contraction analysis and the personal scheduling of retail domain.Can benefit from any analysis or the Report Tasks of the data in source more than, can benefit from the RTI service similarly, this is served dynamically in real time according to well-defined data integration operation retrieval and integrated data.
The another kind of business process that can benefit from all RTI as described herein service relates to create the business process of the main system of database of record.Please referring to Figure 36, enterprise can have many databases, has comprised the data of relevant particular topic such as client 3604 in the database.For example, client's information can appear in sale database 3608, CRM database 3610, supporting database 3612 and the financial database 3614.In fact, in real commercial enterprise, a plurality of databases that each department in these departments all has themselves are not uncommon.Carry out the energy that data integration is spent, wish that obtain one of them benefit is, data are consistent striding between many databases.For example, for trigger event 3618,, have only an entity of this enterprise can at first receive information, but preferably all different departments can visit change as client's address change.The RTI service provides the possibility of creating the main system of record, need not the change in the raw data base.So, can define the RTI process 3602 that has linked different information warehouses, comprise the RTI process that those use different agreement.By supporting a plurality of bindings, the RTI process can be accepted input, and provides output to the different application program of different forms.Simultaneously, the service logic in the RTI service can be carried out the data integration servers, carries out data normalization as the data of importing into for all, for all data provide first pedigree information, and keeps link between different data sources.The result is real-time, up-to-date master record service, can be used as RTI and serves accessed.
There is the example of many application programs can benefit from master record.In financial service, a mechanism may wish to have client's master record, and the safe master record of striding whole enterprise.In telecommunications, insurance and other industries of handling a large amount of clients, the master record service can be supported to keep accounts, claim is handled or the like.In retailer, master record can supports sales point application program, Web service, client's marketing database, and stock's synchronizing function.Make and logistics operation in, commercial enterprise can set up the master record process for the data of relevant product from different sources, as relevant design, manufacturing, stock, sale, the return of goods, service obligation information, warranty information or the like.In other cases, enterprise can use RTI to serve and support the merging of ERP example.The RTI that has realized master record serves the benefit that data integration can be provided, and need not to encode in original application program just to make different data sources talk each other.
The embodiment of Figure 37 provides the client visitor database 3700.Client visitor database 3700 can comprise integrated client's view of striding many different databases, includes some data of closing client, comprises inside and outside system.Client visitor database will be " best " data that comprise relevant client from all different sources.Set up client visitor database, data integration needs coupling, standardization, merging, changes and enriches data, and all these are all carried out by RTI service 3702.Although some data can be handled with batch mode, but, new data must be handled in real time, to guarantee that fast-changing data are that available accurate data client visitor database can be used in almost any field by business entity, comprise perhaps many other fields of retail, financial service, manufacturing, professional service, medical science and pharmacy, telecommunications, infotech, biotechnology.Association, academic institution, government organs, or any other bigger unit or mechanism all may wish to have the similar data management.
RTI as described herein service also can support many will be such as the service that is exposed to businesslike business process of the data integration task conversion, checking and the standardization routine.So, the RTI service can provide the dynamic quality of data, abundant and conversion.Application program can be by the such service of service-oriented architecture visit, and this architecture has promoted to stride the repeated use of the standard business logic of whole commercial enterprise.Please referring to Figure 38, RTI service 3802 (can be RTI service 2704 as described above), one group of data-switching, checking and standardization routine have been realized, as those routines of 3804 realizations of the data integration platform such as the DataStage platform of Ascential.Application program 3808 can trigger the incident of calling RTI service 3802, dynamically to realize the data integration task.
Many business process can be benefited from real-time conversion, checking and standardization routine.This can comprise call center up-selling and cross-selling in the telemarketing industry, the point of sale accounts are created in the checking of insurance risk again in the financial industry, the retail trade, and the raising of the service quality in the field such as health care and information technology service.
Please referring to Figure 39, the example that can benefit from the business process of the real-time integrated service process 3900 that bears the signature, as: as the signature of the insurance slip of property insurance and so on.May need visit to the process of property signature to the various data source of dissimilar (as text 3902, electrical form 3904, Web data 3908, or the like).Data may be inconsistent, and make mistakes easily.The setup time that is used to obtain supplementary data, the signature that slowed down judged.Main signature database 3910 can comprise some data, but other related datas can comprise in various other databases, as environment data base 3912, occupation rate database 3914 and geographical data bank 3918.As a result, if when judging, when integrated, then can not make signature and judge based on defective hypothesis from the data in different sources and database.
By using real-time integrated service to come integrated visit to various data sources 3902,3904,3908,3912,1914,1918, speed and precision that signature is judged can improve.Please referring to Figure 40, the RTI service can improve the quality of signing and judging.Text, electrical form, and the Web file can be separately such as passing through Web interface 3902, the RTI that be input to operation on RTI server 3904 serves, and this service can be any one in the RTI service 2704 as described above.Environment data base 3912, occupation rate database 3914, and geographical data bank 3918, and signature database 3910, can call by data integration operation 4012 all, data integration operation 4012 can comprise CASS process 4010 and Waves process 4008, as what realized by the QualityStage product of Asccntial Software.The RTI service can comprise the binding of the agreement of each database in those databases.The result is that integrated signature is judged process, and this process is benefited from from all timetables, and the current information of different databases, and all is all enabled by the RTI service.For example, the signature process needs current address information, can the integrated apace thousands of addresses from different sources such as the integrated operation of RTI as described above.
The business data service also can be benefited from data integration as described herein.Specifically, the integrated process of RTI can provide the data access and the Transformation Service of standard, merging.The integrated process of RTI can provide the virtual access to different data sources (inside and outside).The integrated process of RTI can provide the dynamic quality of data abundant and conversion.The integrated process of RTI also can trace flow be crossed all metadata of this process.Please referring to Figure 41, one or more RTI services 4102,4104 can be operated in enterprise, so that data, services to be provided.In them each can be supported data integration operation 4108.Data integration operation 4108 can utilize different native languages and agreement (enterprises and outside) accessing database 4110 (can be different data sources).Enterprise application can be served the integrated operation 4108 of 4102,4104 visit datas by RTI.
Please referring to Figure 42, another commercial enterprise that can benefit from real-time integrated service is a dispensing enterprise, acts on behalf of as Freight Transport.The Freight Transport agency can handle a plurality of trucies 4202 that goods are transported to another position from a position.Truck 4202 can have remote equipment, and remote equipment moves simple application program 4204, as allow the application program of truck 4202 logins when truck 4202 arrives a position.The driver of truck 4202 usually has mobile computing device, and as LandStar satellite system equipment, the driver can be used for importing data, as arrives a checkpoint.Enterprise itself can have a plurality of computer applied algorithms or database, as freight account application program 4208, agent process 4210, and checks calling appl. 4212.Yet these original application program are being handled and can be encoded as on the mobile device of truck 4202 usually and move when the driver provide the process of useful information.For example, the driver may wish to dispatch stroke, but the stroke scheduling application may need not reside in the data (finishing as which other stroke) on the mobile device of truck 4202.
Please referring to Figure 43, by using the RTI service model, can define a group data set and become service 4302, with support application program 4310, the driver can visit these services as Web service by using mobile device.For example, application program 4310 can allow the driver to be used to his timetable of Data Update from the Freight Transport agency shop.RTI server 4304 is served the integrated operation of 4302 distributing datas from data integration, and application program 4310 is as Web service 4308 these data integration operations of visit.Data integration service 4302 can integrated data from enterprise, as relevant which other operation finish, and comprise the data from freight account application program 4208 and agent process 4210.RTI serves (can be any RTI service 2704 as described above), can serve as the intelligent graphic user interface of driver's application program, so that scheduling application is provided.The driver can download to mobile device with application program, with the service of calling.As a result, by using the RTI service model, can be so that the application program of serving for use RTI on mobile device provides architecture.
As another example (not having key diagram), can use data integration to improve supply chain management, as in stock control and perishable goods dispensing.For example, if the Supply Chain Manager has the current picture of the current inventory level of each retail shop position, so, this manager can indicate further to the shop deliver goods or the partial shipment that have lower inventory level or have high demand, thereby provides and delivers goods more efficiently.Similarly, if the marketing manager has the current information of the inventory level of relevant retail shop, or the current information of relevant demand (as in national different regions), then this manager can be according to this information pricing, advertisement or promotion plan, so that the price of the high unexpectedly commodity of not strong commodity of reduction demand or inventory level.Certainly, these are simple example, but in a preferred embodiment, manager can visit the various data sources that the operational decision making of high complexity is made in permission in real time.
The possible application of such system is endless only not.Fat-reducing company can use data integration to prepare customer database, developing new sales opportunnities, and can be used for improving the income of company from existing client.Financial service subsidiary can use data integration to prepare single, effective source, so that be banker, manager and analyst's report and analysis client earning rate.Pharmaceuticals can use data integration to use all old-fashioned data source of different Standards and formats to create data warehouse, comprises free tabular form data in the various text data fields.Can use data integration to manage millions of current transaction between shopper and the online merchants based on the market provider of Web.Bank can use the data integration service to understand the information of more relevant current customer, improve such as savings account, check account, credit card, certificate of deposits, and the product of ATM service and so on is preferential.Telecommunications company can use high-throughput, parallel processing data integrated system to improve the quantity of being engaged in the phone advertising campaign.Carrier can use high-throughput, parallel processing data integrated system to redefine the price of the service between every day, as one day four times.Investment corporation can use high-throughput, parallel processing data integrated system to follow the time requirement of SEC settlement of transactions, reduces required time, cost and the energy of clearing financial transaction prevailingly.Health care provider can use data integrated system, to meet the requirement of " U.S.'s health insurance portability and accountability act ".Education provider based on Web can use data integrated system to come the learning cycle of monitoring students, and improves enrollment work, and student's progress and recoverable amount.
Many other examples of the particular business applications program of data integrated system are provided now.
Figure 44 has described the data integrated system 104 that can be used for financial statement.In this example, system 4400 can comprise sale and order processing system 4402, general ledger 4404, data integrated system 104 and finance and account statement data warehouse 4408.Sale and order processing system 4402, general ledger 4404 and finance and account statement data warehouse 4408 can comprise data source 102, any one in the data source 102 as described above separately.Sale and order processing system 4402 can be stored in the data of collecting in sale and the order processing process, as price, quantity, date, time, order number and order form clause and condition, and other data, and any other data of the explanation any transaction that can be handled and/or write down by system 4400.General ledger 4404 can be stored and can relate to the data of following the tracks of its financial enterprise, as balance sheet, fund flow, profit and loss statement and financial limit data.Finance and account statement data warehouse 4408 can be stored the finance that relates to enterprise and the data of treasurer's department, as from the different finance and the data of accounting system.
System 4400 can comprise one or more data integrated systems 104 (can be any one in the data integrated system 104 as described above), they can be from selling and order processing system 4402 and general ledger 4404 extraction data, and can be as described above, transmit, analyze, handle, change or handle such data.Any such data integrated system 104 can be with such data load to finance and accounting report data warehouse 4408, data knowledge storehouse or other datum targets (can be any data source 102 as described above).Any data integrated system 104 can be configured to receive real-time update or inputs from any data source 102, and/or is configured to be generated to the real-time output of the correspondence of corresponding finance and accounting report data warehouse 4408 or other datum targets.Alternatively, data integrated system 104 can periodically extract, transmits, analysis, processing, conversion, manipulation and/or loading data, as when finish business day or when finish reporting period, or any external event response such as the user request.
So, can create and safeguard the data warehouse 4408 that current finance and accounting information can be provided to company.This system 4400 can allow company in real time its financial position and its financial objectives to be compared, and allows it apace deviation to be responded.This system 4400 can also allow business valuation studies, and it follows any situation legal or management expectancy, or other contracts of private debt or its loan, so allows it to calculate any extra cost or the loss related with its action.
The integrated system 104 of Figure 45 data of description, be used to create and maintenance with the point of sale use authoritative, client's current and tabulation accurately, other application programs and/or the database of Customer Relationship Management and retail or other shops or company.In this example, system 4500 can comprise point of sale application program 4502, point-of-sales (POS) data storehouse 4504, Customer Relationship Management application program 4508, customer relationship management data storehouse 4510, data integrated system 104 and customer database 4512.
Point of sale application program 4502 can be networking or stand-alone computer, handheld device, hand-held device, cell phone, barcode reader, or any combination of the various device of front, or be used to handle or write down any other equipment or equipment combination upward operation or storage computer program, software or the firmware of sale, exchange, the return of goods or other transaction.The point of sale application program can be linked to point-of-sales (POS) data storehouse 4504, and this database can comprise any data source 102 as described above.Point-of-sales (POS) data storehouse 4504 can be included in the data of collecting in sale, exchange, the return of goods and/or other process of exchanges, as price, quantity, date, time, order number data, and explanation can be handled by point of sale application program 4502 and/or any other data of any transaction of record.Customer Relationship Management application program 4508 can be the networking or stand-alone computer, handheld device, hand-held device, cell phone, barcode reader, or any combination of the various device of front, or be used for importing, storage, analyze, handle, check and/or retrieve relevant client, the information of other people and/or entity (as, title, the address, corporate structure, date of birth, order history, credit rating), with explanation or relate to any client, any other equipment of any other data of other people or entity, or the computer program of operation or storage is gone up in the equipment combination, software or firmware.Customer Relationship Management application program 4508 can be linked to customer relationship management data storehouse 4510, and this database comprises any one data source 102 as described above, and can include client, the information of other people and/or entity of closing.
Data integrated system 104 (can be any one data integrated system 104 as described above), can from any one point of sale application program 4502 or database 4504, Customer Relationship Management application program 4508 or database 4510 or customer database 4512, extract data independently, or with data load in them.As described above, such data can also be analyzed, handle, change or be handled to data integrated system 104.For example, at certain purchase of customer after the durable commodity of the family expenses such as refrigerator or washing machine, in the courtesy call process, customer service representative or other employees can use Customer Relationship Management application program 4508 to upgrade clients' address.Then, Customer Relationship Management application program 4508 can be transferred to customer relationship management data storehouse 4510 with the address date that upgrades.Then, data integrated system 104 can extract the address date that upgrades from customer relationship management data storehouse 4510, it is converted to general format, and it is loaded in the customer database 4512.When client does shopping next time, cashier or other employees can use point of sale application program 4502 to finish transaction, point of sale application program 4502 can be by the address date that has upgraded in the data integrated system 104 visit customer databases 4512, so that cashier or other employees only need confirm address information, rather than import it in point of sale application program 4502.In addition, point of sale application program 4502 can also be with new transmission of transaction data to point-of-sales (POS) data storehouse 4504.Then, data integrated system 104 can extract transaction data from point-of-sales (POS) data storehouse 4504, it is converted to general format, and it is loaded in the customer database 4512.As a result, new transaction data can be by point of sale and Customer Relationship Management application program and database, and any other application program or the database access safeguarded by commercial enterprise.
So, can create and safeguard customer database 4512, this database can give retail or other shops or company provide about its each client up-to-date, accurately with complete data.Utilize this information, shop or company can provide service for its client better.For example, enjoy the preferential of discounting when he next time do shopping, use cashier or other employees of point of sale application program 4502 can verify discount, and write down the remarks that a discount has been used if customer service department provides to client.System 4500 can also make shop or company can prevent that client from swindling.For example, customer service representative or other employees of having received Customer Complaint by phone can use Customer Relationship Management application program 4508, the visit point of sale information determine to buy the date of specific products, just makes them judge that product is whether still in the shop or manufacturer in the guarantee period.
Figure 46 has described data integrated system 104, and medicine supply or other information translation that it can be used for generating at retail pharmacy or be stored in retail pharmacy are industrial standard XML or other language, uses for medicine dealer or other parties concerned.In this example, system 4600 can comprise retail pharmacy 4602, medicine supply information, data integrated system 104, and medicine dealer 4604.
Retail pharmacy 4602 can use networking or stand-alone computer, handheld device, hand-held device, cell phone, barcode reader, or any combination of the various device of front, or be used to collect, generate or store any other equipment or equipment combination upward operation or storage application program, computer program, software or the firmware of medicine supply or other information.Such application program, computer program, software or firmware can be linked to one or more databases, can comprise a data source 102 at least, in the data source 102 as described above any one, comprise medicine supply information, as inventory level, excess time (days-on-hand) and the order that will fill in.Such application program, computer program, software or firmware can also be linked to one or more data integrated systems 104, can be in the data integrated system 104 as described above any one.Medicine dealer 4604 can use networking or stand-alone computer, handheld device, hand-held device, cell phone, barcode reader, or any combination of the various device of front, or be used for industrial standard XML or another kind of language or form reception, any other equipment of analyzing, handle or storing medicine supply or other information or equipment combination upward operation or storage application program, computer program, software or firmware.Such application program, computer program, software or firmware can be linked to database, and this database can comprise and any in the data source 102 as described above comprises medicine supply information.
System 4600 can comprise one or more data integrated systems 104, can be in the data integrated system 104 as described above any one.Data integrated system 104 can extract medicine supply information from retail pharmacy 4602, be industrial standard XML with medicine supply information translation or otherwise analyze, handle, change or handle such information, automatically maybe should ask then, such information is loaded or be transferred to medicine dealer 4604.For example, client can buy the bottle second from the bottom of cold medicine X at given retail pharmacy 4602.Follow closely after selling, the system of this retail pharmacy may judge that before a certain date, the stock of its cold medicine X need be improved some bottles in pharmacy 4602, sends medicine supply information to data integrated system 104 then.Then, data integrated system 104 can be industrial standard XML with medicine supply information translation, and uploads to medicine dealer's system.Then, medicine dealer 4604 can guarantee automatically that given pharmacy 4602 received the bottle number of request before fixed date.
So, can create system 4600, this system allows retail pharmacy 4602 and pharmacy dealer 4604 to communicate, and can guarantee minimum supply chain interruption and expense.This system 4600 can make retail pharmacy 4602 automatically their inventory requirements is delivered to medicine dealer 4604, reduced unnecessary stock's storage cost, the waste that causes owing to product obsolescence, and the transaction related and other costs with returning to the medicine dealer.This system 4600 can replenish with other data integrated system 104, evaluates, pays, reaches other financial services with standby credit history, to guarantee good credit risk and to give medicine dealer timely payment.
Figure 47 has described data integrated system 104, this system can be used for providing the visit of analyzing data 4702 to making by the service 4704 that makes up in advance (can call from business application and the integrated technology 4708, message-oriented middleware integrated such as enterprise application and the Web service), uses in operation optimization, decision-making and other functions to allow data.In this example, system 4700 can comprise manufacturing analysis data 4702, as stock, parts, sale, pay sheet, human resources and other data, the service 4704 of Gou Jianing, business application and integrated technology 4708, user 4710, data integrated system 104 in advance, and customer service application program 4712.
User 4710 can use the networking or independently, business application and integrated technology 4708 operation or storage are gone up in any combination of the various device of computing machine, computer system, handheld device, hand-held device, cell phone or front or any other equipment or equipment combination, call the service 4704 that makes up in advance, the visit of analyzing data to making is provided.The service 4704 of Gou Jianing in advance can be that as described above data integrated system 104 maybe can transmit, other architectures of analysis, modification, processing, conversion or manipulation data or other information.The service 4704 of Gou Jianing in advance can be used database, makes analysis data 4702 and can be stored in the database, and database can comprise such as any one data source 102 in the data source 102 as described above.Customer service application program 4712 can be any combination at various device networking or stand-alone computer, handheld device, hand-held device, cell phone or front, or is used to handle or analyze any other equipment or equipment combination upward operation or storage computer program, software or the firmware of making analysis data 4702 or other information.Customer service application program 4712 can be linked to the database that comprises the data source 102 such as any data source 102 as described above.
System 4700 can comprise one or more data integrated systems 104 (can be any one in the data integrated system 104 as described above), what data integrated system 104 can respond the user passes through the user-dependent or external event of input that business application and/or integrated technology 4708 make or other or periodically, extract, analyze, revise, handle, change or handle to make and analyze data 4702 or other data, and the result can be used customer service application program 4712, so that video data, storage or further processing, analysis or manipulation data.
For example, use the manager of existing business application and integrated technology 4708 to analyze data 4702 by some manufacturing of service 4704 visits that makes up in advance.Manager can determine the quantity of a certain group parts among the stock, and with have the related payroll cost of enough employees assembling parts on the scene.Data integrated system 104 can extract from stock, parts, pay sheet and human resource data storehouse, integrated and analysis desired data, and the result is uploaded to manager's business application 4712.Then, business application 4712 can be with multiple text and graphical format display result, and prompting user (manager) makes the request of further analysis.
So, can create the system 4700 that permission manager and other policymakers stride their required data of accessed enterprise.This system 4700 can make the decision maker in the enterprise make more rational resolution based on the integrated view of putting all available data preset time.In addition, this system 4700 can also make enterprise can make faster decision because it can be integrated apace from the data of many different data sources 102, and can obtain the analysis of full enterprise-wide within a short period of time.Generally speaking, this system 4700 can make its business operation of optimization of enterprises, decision-making and other functions.
Figure 48 has described data integrated system 104, and this system can be used for analyzing the clinical experimental study result, according to driven incident, is loaded in the drug effect data warehouse 4802.In this example, system 4800 can comprise clinical experimental study 4804, clinical trial study data storehouse 4808, incident 4810, data integrated system 104 and drug effect data warehouse 4810.
Clinical experimental study 4804 can generate the data that can be stored in one or more clinical trial study data storehouse 4808, and each database can comprise data source 102, any one in the data source 102 as described above.Each clinical trial study data storehouse 4808 can be included in the data of collecting in clinical experimental study 4804 processes, as absorption, distribution and the elimination speed of patient name, address, medical condition, drug therapy and dosage, given medicine, government permission and Ethics Committee's approval in-formation and can any other data related with clinical testing 4804.Drug effect data warehouse 4802 can comprise any in the data source 102 as described above, can comprise the data that relate to clinical experimental study 4804, comprise such as the data that reside in the clinical trial study data storehouse 4808, and the data and information, biological chemistry, chemistry, physics, biology, physiology, medical literature or other relevant informations or the data that relate to drug interaction and attribute.External event 4810 can be that the user imports or the achievement of a certain research or the incident of other results or any other appointment.
System 4800 can comprise one or more data integrated systems 104 as described above, can response external incident 4810 or periodically, as when finish business day or when finish reporting period, extract, revise, change, handle or analysis clinical trial study data 4804 or other data, and the result can be used drug effect data warehouse 4802.For example, external event 4810 can be the requirement that some information of requirement is used with research grant.Subvention evaluation committee pulls out the data that fund may need the drug absorption response in the relevant ongoing clinical testing before carrying out the relevant clinical test at it with transfer transferring.System 4800 can be used for extracting desired data from clinical trial study data database 4808, analyze data, determining average, middle, the minimum and maximum speed of drug absorption, and the result and the similar medicine of these results and other researchs compared.Then, all this information can be offered subvention evaluation committee.
So, can create system 4800, this system will make the researchist and other people fast access is complete and accurate drug effect information comprises the information from that finish and ongoing clinical testing.This system 4800 makes researchist and other people can generate in advance result, and detects harmful effect or trend, becomes serious to prevent them.This system 4800 can also make researchist and other people the ongoing or last results link of given research can be arrived result, the theory of other researchs or the principle of determining.In addition, system 4800 can also help researchist and other people to design recent studies on, test and experiment.
Figure 49 has described data integrated system 104, and it can be used for the tabulation 4904 of available research being provided for scientist 4902 by java application 4908, and allows them that selected research is started extraction, conversion and load to handle 4910.In this example, system 4800 can comprise one group of scientist 4902, the tabulation 4904 of available research, java application 4908, the database 4912 of research, the tabulation 4914 of the research of selection, extraction, conversion and load processing 4910 and data integrated system 104.
Research data base 4912 can comprise any in the data source 102 as described above, wherein can store the title, summary of research, in full, data and result, and other information related with research.Any combination that java application 4908 can be included in the various device of computing machine, handheld device, hand-held device, cell phone or front maybe can generate the complete list of the research in the database or response certain user definition or other features generate any other equipment or the equipment combination of the tabulation of the research in databases and go up one or more small routines operation or storage.Select the subclass of research during from then on scientist, lab assistant or other people can tabulate, and generate the tabulation of the research of selecting 4914.
System 4900 can comprise one or more data integrated systems as described above, and they can extract, revise, change, handle, handle or analyze the tabulation of available research 4904 or from the data of research data base.For example, scientist 4902, lab assistant or other people can use java application 4908, and by Web browser, request relates to the tabulation of all available researchs 4904 of a certain specific drug or medical condition.Then, scientist 4902, lab assistant or other people can select some research from such tabulation, or other researchs are added in such tabulation, to generate the tabulation of the research of selecting 4914.Then, scientist 4902, lab assistant or other people can send to data integrated system 104 with the tabulation of the research selected, so as to extract, conversion and loading processing 4910.Scientist 4902, lab assistant or other people can be used as output, with specific format all metabolic rates of request or other data designated from the research of selecting.
So, can create system 4900, this system will allow scientist 4902, lab assistant or other people that the catalogue of relevant research is conducted interviews, and can be from those researchs extraction or manipulation data and other information.This system 4900 can make scientist 4902, lab assistant or data in advance or other information that other people can obtain to be correlated with, to avoid unwanted experiment to repeat, or select some research that conflicts is arranged with their result or prediction, so that repeat research or the result conformed to.System 4900 can also make scientist 4902, lab assistant or other people can obtain, integrated and analyze before the result of research so that the new experiment of simulation, need not actually in the laboratory, to experimentize.
Figure 50 has described data integrated system 104, this system can be used for creating and safeguarding customer data 5002 cross references, as stride the former state of a plurality of systems input, as point of sale 5004, Customer Relationship Management 5008 and sales force's automated system 5010, so that improve client's understanding and familiarity or be used for other purposes.In this example, system 5000 can comprise point of sale 5004, Customer Relationship Management 5008, sales force's robotization 5010 or other system 5012, data integrated system 104, and customer data cross-reference data storehouse 5002.
Point of sale 5004, Customer Relationship Management 5008 and sales force's automated system 5010 can comprise one or more application programs and/or database separately.Application program can be any combination at various device networking or stand-alone computer, handheld device, hand-held device, cell phone or front, or any other equipment or equipment combination upward operation or storage computer program, software or firmware.Database can comprise any data source 102 as described above.The point of sale application program can be used for handling or record is sold, exchanges, returned goods or other transaction, and the point-of-sales (POS) data storehouse can be included in the data of collecting in sale, exchange, the return of goods and/or other process of exchanges, as price, quantity, date, time, order number data, and any other data of the explanation any transaction that can be handled or write down by system 5000.The Customer Relationship Management application program can be used to import, store, analyze, handle, check and/or retrieve the information of relevant client, other people and/or entity, as, title, address, corporate structure, date of birth, order history, credit rating and explanation or relate to any other data of any client, other people or entity.The customer relationship management data storehouse can include the information of closing client, other people and/or entity.Sales force's automation application program can be used for potential customer's generation, contact person's cross reference, scheduling, performance tracking and other functions, and sales force's automation data storehouse can comprise information or the data relevant with buyer and contact person, sales force's single member's schedule, performance objective and actual result and other data.
System 5000 can comprise one or more data integrated systems 104 as described above, can extract, revise, change, handle, handle or analyze from point of sale 5004, Customer Relationship Management 5008, sales force's robotization 5010 and other systems 5012 data, and the result can be used customer data cross-reference data storehouse 5002.For example, system 5000 can be periodically, as when finish business day or when finish reporting period, or any external event response such as the user request, any one from point of sale 5004, Customer Relationship Management 5008, sales force's robotization 5010 or other system 5012 or all middle data of extracting.Then, system 5000 data can be converted to general format or otherwise transmit, processing or manipulation data so that be loaded in the customer data cross-reference data storehouse 5002, this database can be striden industrially and can be used other application programs.Data integration process 104 can also be configured to receive real-time update or inputs from any data source 102, and/or is configured to be generated to the real-time output of the correspondence in customer data cross-reference data storehouse 5002.
So, can create system 5000, this system strides industrially to the user visit to cross reference customer data 5002 is provided.The customer data that system 5000 can provide purification, consistent, avoid repetition to enterprise for all systems' 5000 uses, causes darker understanding of client and more firm customer relation.
Figure 51 has described data integrated system 104, this system can be used to provide the cross reference and the coupling 5102 of inbound customer files 5104 and the robotization as required of the customer data of striding the built-in system storage, avoiding repetition, and provide the record of interdepartmental system completely of any given client's data.In this example, system 5100 can comprise inbound customer files 5104, data integrated system 104 and internal customer database 5108.
Inbound customer files 5104 can be included in the process of exchange or with client's reciprocal process in the information of collecting, as product, periodic maintenance and other information of title, address, corporate structure, date of birth, purchase.Internal database 5108 can comprise any data source 102 as described above, and can be stored in the process of exchange or with client's reciprocal process in the data of collecting.Internal database 5108 can be linked to internal applications, internal applications can be the networking or independently, any combination of the various device of computing machine, handheld device, hand-held device, cell phone or front, or any other equipment or equipment combination upward operation or storage computer program, software or firmware.
System 5100 can comprise one or more data integrated systems as described above, and they can extract, revise, change, handle, handle or analyze inbound customer files 5104 or from any data of internal customer database 5108.In addition, data integrated system 104 can be quoted 5102 station customer filess 5104 at the data cross in the internal customer database 5108.For example, internal customer database 5108 can be to have the database of information that relates to by the product of purchase of customer, have the database of information that relates to by the service of purchase of customer, the database of information of the size of relevant each client unit is provided, comprise the database of client's credit information.System 5100 can to expose and to proofread and correct repugnancy, guarantee the accuracy and the uniqueness of each client's data recording at the inbound customer files 5104 of product, service, size and credit information cross reference.
So, can create system 5100, this system will provide accurate and complete customer files.This system 5100 can make enterprise deeper understand client, thereby can provide better service for customer service.System 5100 can make the sales force can rely on the data that comprise in the customer database, those products ﹠ services complementations that suggestion has been bought client, and the size product of suitable client's business and service.
Different data integrated systems and professional enterprise have been described, now will be than describing the architecture that is used for providing the data integration service in greater detail in enterprise.
Please referring to Figure 52, the high-level synoptic diagram of architecture has been described how a plurality of Services Combination to be risen and has been used as integrated application program operation, and this application program has been unified exploitation, deployment, operation and the life cycle management of data integration solution.By with the unification of data integration task in single platform, can not need to design independent software product with the different stage of disposing.
Architecture 5200 can comprise GUI/ tool framework 5202, intelligent automation layer 5203, one or more client 5204, API 5208, kernel service 5210, product function service 5212, metadata service 5222, metadata knowledge base 5224, when having assembly operating 5220 and engine 5214 during the one or more operation of connector 5218.Architecture 5200 can be deployed on the service-oriented architecture 5201, on any service-oriented architecture 2400 as described above.
Being stored in metadata schema in the metadata knowledge base 5224 is providing the universal internal of data to represent from each step of the process that is designed into deployment in total system.Model can be registered in can be by the catalogue of other system component accesses.Universal model can provide the generic representation form (all product function services are common) of the project in a lot of external member scopes, comprises metadata (the data description data that comprise the data profile information), data integration process standard, user, machine and software arrangements or the like.These universal models can be realized common user's view of Enterprise Resource and integrated process, and no matter what product function the user is using, and can carry out model conversion between integrated product function.
Service-oriented architecture (SOA) 5201 is shown as and comprises all services, and can be used for by when operation engine 5214 with 5218 coordinate all services to being connected of computing environment from GUI5202.Can be stored in the universal model in the metadata knowledge base 5224, can allow SOA 5201 between a plurality of services, seamlessly to provide mutual.SOA 5201 can serve 5212 by using public kernel service 5210, production function, and metadata service 5222, GUI 5202 is exposed to all aspects that data integration designs and disposes, and can operates by intelligent automation layer 5203.Universal model and service can allow object that the generic representation form is arranged in GUI 5202, so that the different operation of execution in design and deployment process.GUI 5202 can have a plurality of clients 5204 that are connected with the service of SOA 5201 coordinations.Client 5204 can allow the user and have other data integration of a plurality of technical ability levels design and is connected, and the permission user strides structural suitable rank as team and carries out work.SOA 5201 can provide the visit to public kernel service 5210 and product function service 5212, and provides rear end support to API 5208 for the function and the service of data integration in design.Service can be by a plurality of clients 5204 and other service sharing and repeated use.
The users that intelligent automation layer 5203 can use metadata in the architecture 5200 and service to simplify in the GUI 5202 select, as by only showing that a relevant user selects, or general, the frequent and/or conspicuous operation of robotization.Intelligent automation layer 5203 can automatically generate some operation, diagnostic design and design alternative, and coordination performance.Intelligent automation layer 5203 can also be supported the design example of higher level, modelling as Workflow Management or business contexts, and more generally application item or other context identification, quicker and realize the data integration solution effectively with assisting users.
Public kernel service 5210 can provide the general utility functions service, these general utility functions services can be striden all aspects of the design and the deployment of data integration solution usually, directory service as one or more general registration tablies, log record and audit service, supervision, incident management, affairs service, safety, mandate are (as creating and implement delegated strategy and communicating by letter with external authorization service, provide, and management SOA service.It is general GUI 5202 that public kernel service can allow function and object generic representation form.
Other product specific function services can be included in the product function service 5212, and can provide service to specific suitable client 5204 and service.These can comprise, import and browse external metadata, and die mould, analysis and generation report.Other functions can be more towards design, as are used to design, compile, dispose and the service by the integrated service of architecture service data.Product function service 5212 can be visited by GUI 5202 when using appropriate tasks, and the GUI 5202 of oriented mission can be provided.The GUI of oriented mission can only present the function that is applicable to the operation in the data integration design to the user.
Application programming interface (API) 5208 can provide DLL (dynamic link library), is used to visit architecture completely, comprises service, knowledge base, engine, and any or whole in the connector.API 5208 can comprise use by different service and/or from the normally used function storehouse of different service-creations, and can recursively be called.
Metadata and knowledge base service 5222 visits that can control metadata knowledge base 5224.All functions can make the metadata by the specific model representative of its oneself function be kept in the general-purpose knowledge bases in the metadata knowledge base 5224.Function can be shared universal model, or uses the metadata mapping semantic dynamically to change between their corresponding model.All internal metadata and the data used in the data integration design can be stored in the metadata knowledge base 5224, visit to external metadata and data can be provided by the cover joint (metadata schema) that is stored in the metadata knowledge base 5224, and is controlled by metadata and knowledge base service 5222.Metadata and metadata schema can be stored in metadata knowledge base 5224, metadata and knowledge base service 5222 can be safeguarded metadata version control, persistence, the logging on and checking out of metadata and metadata schema, the temporary element data of creating by the user with knowledge base space before other metadata are consistent.Metadata and knowledge base service 5222 can provide the visit to metadata knowledge base 5224 to the external client of a plurality of services, GUI 5202, internal client 5204 and use knowledge base cover joint.The visit of other services and 5204 pairs of metadata knowledge bases 5224 of client can allow metadata by other service access, conversion, combination, purification and inquiry in the seamless affairs of being coordinated by SOA 5201.
Engine 5214 during operation (can have a plurality of) can use adapter and be connected 5218 and communicate with external source.Engine 5214 can be exposed to the design of being created by the user, with create compiling based on computing environment with the solution of disposing.Engine 5214 can provide late binding to computer environment during operation, and can provide to the user and be independent of that computer environment is considered and the ability of the integrated solution of design data.Engine 5214 can compile the data integration solution during operation, and when providing the operation of suitable deployment for high-throughput or high concurrency.Service can be used as the J2EE structure and from providing the registration table of the visit of the operating specification of interface and various services is disposed.Service can be supported a plurality of agreements, as HTTP, Corba/RMI, JMS, JCA or the like, can use with isomerization hardware and software environment.With the binding of these agreements can be by operation the time engine 5214 automatically select, or manually select as the part of deployment process from GUI5202 by the user.
Aerial lug 5218 can provide the visit to network or other external resources, and is that many execution engines and other conversion execution environments (as Java or storing process) provide the common access point to external resource.
Should be appreciated that, other functional layer can be provided, help to select and engine 5214 when using various operation.This is particularly useful when the support that high-throughput or high concurrency are disposed is provided.For example, engine 5214 can comprise transaction engine during operation, be used for the bigger affairs of unconfined length potentially, and continuous Real-time Transaction stream is analyzed.Engine 5214 can also comprise the concurrency engine during operation, is used to handle little independently affairs.The concurrency engine can be used to receive be divided into channelization or the pretreated input of the stream of subregion otherwise (and output).As another example, engine 5214 in the time of can optimizing the concurrency operation is with rapid response interaction demand, as a large amount of little independently affairs.Compiling and Optimization Layer can determine how to distribute integrated process at these various engines, as being little piece by the output pre-service that will arrive the concurrency engine.By connector is concentrated in the architecture, can more closely control the distribution of process between various engines, and provide accessibility this control in user interface level.In addition, the general intermediate representation form of the connection in the conversion process allows to dispose any robotization strategy, selects to carry out the different combination of engine, and based on the optimization of metadata or die mould.
Architecture 5200 as described herein to user's working environment provide height dirigibility and can self-defined property.This can be used for around workflow and design process configure user environment existing or plan.The user can create the specific function service, and complex can be used as assembly by making up assembly and they being combined as complex, allows the recurrence of modularity when the design New Parent nested.Assembly and complex can utilize by metadata and knowledge base service 5222 access rights that provide and be stored in the metadata knowledge base 5224.Metadata and knowledge base service 5222 can provide the common interface with a plurality of services to the public data definition, and can provide support for raw data format and industry standard format.The modular nature of architecture as described herein allows any enterprise feature or integrated process are encapsulated in the routine package, wherein have the assembly of from public kernel service 5210 product functions service 5212, selecting, and other assemblies of general architecture.Can be used as public kernel service 5212 provides from the ability of system component production process bag.By this encapsulation function, can make up any function, suppose that it can be as atomic service, assembly, and the combination of the complex in architecture 5200 has been expressed.The encapsulation ability of architecture 5200 can combine with the task oriented phase of user interface, to obtain any workflow of specific adaptation that the user wishes or the user interface of design methodology.
Figure 52 A has shown the task matrix as several task definition user interfaces, and task can be in function as described above, service or the routine package.Under the preferable case, user interface can be separated with basic function, so that keep design flexibility.In such architecture, being determined by workflow of task can be organized in the task matrix 5250, and the task matrix is interpreted as providing interface to the user.Task matrix 5250 can comprise one or more contexts 5252, and each context all comprises many tasks 5254 and many menus 5256 (" post " described in the following interface).
One or more contexts 5252 can relate to the many different presentation mode of the task in the menu.By using many contexts of definition individually, various optional presentation modes can have been designed in the interface, as presenting of technical ability rank sensitivity or presenting of level of security sensitivity.Generally speaking, by many optional contexts are provided, in task matrix 5250, realized other design flexibility.This can use in many aspects.As example, health care provider and insurance company can be responsible for the maintain internal record and carry out issued transaction with ad hoc fashion and other people according to the Managed Solution such as HIPAA.In the case, provider and insurance company can jointly have many tasks, as identification information being encrypted or use the request universal form to payment that is sent to insurance company by provider.The data integration process of insurance company and provider can jointly be shared a large amount of tasks, also needs great difference simultaneously.Two contexts 5252 can be provided merchant and insurance company and be used for basis and more generally meet the interface definition of HIPAA, based on identical common tasks group, define two different workflows.
Each task 5254 can be the user-defined task of any amount or the common tasks that is provided by system, function, service or the like, or relates to the combination of such task, function and/or the service of the single useful task of merging to of workflow.Task 5254 can also be included in dialog box useful in the interface, guide, help window or related with them.The task 5254 of sign in can pre-defined task matrix 5250, for example, their positions in the interface, related with some control area at interface, the control related, input and output or the like with task.So, only the existence of task in task matrix 5250 need be pointed out, the user interface access task can be passed through.Alternatively, the intersection of each task 5254 and menu 5256 can comprise one or more standards of the generation that relates to task 5254.So, task matrix 5250 can be specified visual elements, control, position, input, output, other parameter of technical ability level or the like.
Each menu item 5256 can be corresponding to the stage of workflow.Use task matrix 5250, the inter-related task of workflow can be realized in the suitable position in user environment.
To further help to dispose rapidly INTERFACE DESIGN based on workflow, user interface itself can be defined as visual pattern, control, control panel, work space, instrument, guide, dialog box, or the like set.Simultaneously, task can be defined as the service of service-oriented architecture.So, by using task matrix 5250, the combination in any of menu item 5256 (each all has one or more support tasks 5254) can be expressed as air navigation aid with any data integration or other workflows easily.
Under the preferable case, the public data collection can be operated in the interface, so that in each stage of workflow (that is, menu), and changes between each task in stage and continues.Each task 5254 and each menu 5256 can be represented the different functional perspective on the same data set.So, architecture can provide significant improvement than existing environment based on application program, wherein, for the different stage of workflow, workflow with data from an application passes to the Another application program.As another advantage, can revise task matrix 5250 itself according to individual preference or design problem by the user.The instrument service of can be used as that is used to revise task matrix 5250 exposes, and can be conducted interviews by user interface or other instruments of serving as the client of the service in the service-oriented architecture by the user.
Be used for the ad hoc structure in the workflow although identified with taskings, but, should be appreciated that, can use the data structure of any amount or the definition that user interface was stored, retrieves and revised to other memory mechanisms, will be further understood that, can be in the rank of each feature, according to the needed balance between the situation of dirigibility and design, the architecture of definition of user's interface itself.
Please, shown the more detailed synoptic diagram of GUI 5202, provide the mutual understanding in a plurality of the users ' skills ranks and universal design storehouse 5300 referring to Figure 53.GUI 5202 can separate with the basic function of total system, particularly separates with design with other aspects of architecture and the metadata schema in the metadata knowledge base 5224.In such " separation " design, all functions of architecture can be presented to user interface as service.User interface can provide general low level set of tools again, and user control, is used to visit these services.The method allows the simple relatively extendability for interface or basic system, and seamless working environment can be provided for all grades of data integration process.Under the situation that newly workflow or different users occur, can correspondingly revise the interface, and can not influence existing model and data integration operation or process.Under the situation of having developed new service or model, they can be added in the service-oriented architecture, need not to revise user interface (certainly, unless need different user interfaces).
GUI 5202 architectures can provide the alternative view of system, and as at the relatively low users' interfaces of technical ability, this interface provides control and assembly for the user, to handle designing 5304, need not detail knowledge system architecture or metadata schema.Other user interface of technical ability level that another is higher when the same metadata model is operated, can provide the more detailed control to modelling.GUI than the high professional qualification rank can provide greater functionality and bigger self-defining visit.Similarly, GUI 5202 can provide the view of alternate role sensitivity, and these views can define by action, as monitoring, disposing, and operate control, or define by occupation, as director, officer, senior executive, manager, analyst, accounting, slip-stick artist or the like.The role also can define by different level, as, senior executive can be categorized as president, vice president, or the like, perhaps the analyst is market analyst, business analysis teacher, financial analyst or the like.As another example, GUI 5202 can provide the view of platform sensitivity, as be specially adapted for the user interface of mobile device, or relatively be specially adapted for from the BlackBerry 7730 of Research In Motion Limited or from the Axim X30 of Dell Inc..More particularly, can be at the technician who uses laptop computer, or at the official who uses the cellular company of Motorola, definition task matrix.Each user profile can realize that all operates general, shared metadata schema as the task matrix that separates.
GUI 5202 can provide integrated user environment for all aspects of design proposal, and the beginning deployment to the end from design need not other external tools.GUI 5202 can provide general utility functions to all user classs, as directory management, search, inquiry, navigation, personification, script, persistence, or other other tasks related with the design of data integration solution 5304.The user can use technical ability user interface capabilities specific or that the role is specific to visit data integration design proposal 5304.Complicacy rank at a plurality of designed capacitys can have different User 5302.As example, in many data integration design proposals 5304, the user from various not commensurates with various different technical ability can form a team together, to develop single design proposal 5304.GUI 5202 can be configurable, handles function and the service that is applicable to their professional domain with the user who allows different technical ability.Architecture 5200 can allow such team to cooperate with regard to identical metadata, model and design, because real-time model has all users, when change is made by different Team Members, provides visibility of overall importance.
No matter the users ' skills rank how, User 5302 can be exposed to general utility functions storehouse and design guide 5300, uses for the user miscellaneous who creates design proposal 5304.Storehouse and design guide 5300 functions can provide visit based on User 5302 technical ability ranks, and the function that can use based on the technical ability level limit.User 5302 can allow to utilize the share and access to metadata and model to carry out team collaboration.
Can utilize the oriented mission and the contextual guidance of data integration design proposal 5304 to come User 5302 is organized.Along with the data integration design becomes complicated more, when the user handled design proposal 5304, the option that oriented mission is provided was useful.As example, if the user is developing inquiry, can demonstrate available query task option, with guiding user when suitable design is carried out in inquiry.Different aspect along with adding or revise design can have suitable contextual function and service to become and can use the user, designs healthy and strong design proposal 5304 to help the guiding user.As example, the user can add data source component in design, and the interface can demonstrate any appropriate metadata catalogue, importing, sample data and data analysis function.In addition, available catalogue can only show related with current design data source.Can also demonstrate other data integration designs of having used same data source to the user, so, the user can reuse other design aspects.
When design proposal 5304 was handled, some details that can limited subscriber view 5302 display design were not so that design proposal 5304 visually is so too complicated.The user can hide or expose the many levels of design, allows the user that energy is only concentrated on the design aspect of handling at that time, as other aspects of model, polymerization and related, business process, control flow, data access, fault processing or design.
The aspect of Figure 53 goes for using the corporate environment with a plurality of exploitation websites of a plurality of resources (inside and outside).User can be handled the design proposal with the affairs such as modelling, analysis, exploitation, test, operation from a plurality of geographic position, and the keeper is positioned at different positions.Aforesaid all aspects of Figure 53 can be used at remote location.
Figure 54 has shown the uml diagram table, and this chart has been described role and the relation of SOA.SOA client 5412 can be searched and instantiation service 5414 by service catalogue 5418.Each service 5414 can be used the part of other services 5414 as their embodiment, comprises the public share service such as Component service 5420.Component service 5420 can be used as that operable service exposes any external resource connector in when design, as database, file, application program, formation or the like.
Client 5412 has been represented the programming of the client of serving as service 5414 or the vague generalization of user interface.Process designer 5402 can provide graphic user interface or programmatic access, is used to handle model or process.API 5410 can be for external program provides application programming interface, and with access services 5414, service 5414 can be any service 5414 that is provided by architecture 5200 as described above.Guide 5408 can provide the set of encapsulation in advance of design procedure, and these design procedures can be created metadata schema or carry out the set of the most normal generation of integration servers.The interface of service or other deployment services when compiler 5404 can be provided to compiling and operation.In these specific interfaces each, and other interfaces of any amount or the combination of these interfaces can be served as the client 5412 that is used for the service 5414 of executable operations in architecture 5200 as described above.
Each service 5414 can be a recurrence: first service can be used second service, or another example of itself, and second service can be used the 3rd service or another example of itself, and the like.Using service structure recurrence or nested of other combinations of service generally speaking is transparent to client 5412.Generally speaking, each product function in the architecture 5200, and the combination of serving 5414 can be decomposed into service, use for client 5412.The service 5412 that is exposed to client 5412 can be the part of public kernel service 5210, product function service 5212, metadata and knowledge base service 5222, any other service in service catalogue 5418 of maybe can making a catalogue.
Client 5412 can be searched and instantiation service 5414 by service catalogue 5418.In case instantiation the service 5412, it just can use in design.As can be seen, the relation of the one-to-many of service catalogue 5418 and service 5414 can be arranged in the uml diagram table, service 5414 is from service catalogue 5418 reception information.As example, client 5412 can be asked not by the service 5412 of instantiation.Request can be delivered to service catalogue 5418, and service catalogue 5418 can instantiation service 5414, and will serve 5414 and be exposed to client 5412.This process also can the instantiation assistant service, as by the service of being used by the service 5414 of instantiation.
Component service 5420 can provide the visit to the function of single component, and the service of can be used as 5414 exposes external resource, as database, file, application program, formation, metadata, or other available resources.These exposed exterior resources can use (by process designer 5402) as 5414 couples of users of service in when design, and when operation when moving engine can use.In addition, by Component service 5420 and connector 5218, external resource can conduct interviews to the service in the SOA architecture 5200.
Please referring to Figure 55, the synoptic diagram of SOA 5201 environment has shown how SOA 5201 is connected with service with other architecture 5200 clients.The core of SOA 5201 can be service binding 5512, SOA architecture 5514, and service implements 5518.Service binding 5512 can allow will be such as the client GUI 5508, application program 5504, script layout 5502, the Governance framework 5500, and other clients to be tied to can be SOA 5201 inside or outside service.Bound service can be the part of public kernel service 5520, and service binding 5512 can access services be described registration table 5510, with the instantiation service.Service binding 5512 can make client be used those can be to use the local or outside service of identical or different technology.Can expose external service with the binding of external service, they also can be called in the mode identical with internal services.With communicating by letter of service can be synchronous, also can be asynchronous, can use different communication paths, and state can be arranged, and also can be stateless.Service binding 5512 can for a plurality of agreements (as, HTTP, CORBA/RMI, JMS or JCA) provide support.Service binding 5512 can automatically be determined appropriate protocol for service binding according to computer environment, and the user also can be used as the part of design proposal 5304 and select agreement from GUI 5508.
Governance framework 5500 clients can provide installation, exposure, catalogue, configuration, monitor, and the facility of otherwise managing SOA.Governance framework 5500 can pass through to connect, or the metadata in inside or the external metadata, and the visit to client, internal services, external service is provided.
Layout client 5502 can make the product function and the workflow of a plurality of complexity of design become possibility by a plurality of SOA 5201 services are synthesized a design proposal 5304.Service can be from external service, the internal process 5528 of public kernel service 5520, internal services 5524, or user-defined service 5522 is synthetic.The layout of SOA 5201 is the core of the function of the data integration design that provides unified in corporate environment.Client, kernel service, the service of metadata knowledge base, deployment engine, and the layout between external service and the metadata makes design meet various enterprise demands.The architecture that unified method provides the whole external member with enterprise design to bind together can provide the single GUI 5508 that can seamlessly present whole design process, finishes up to disposing design proposal 5304.
Application client 5504 can call general utility functions as required by allowing service, provides other function with programming mode to the service that SOA 5201 coordinates.The function of application client 5504 can be passed through to allow the service call function, and uses them, is parts of service as them, has improved the ability of the service of SOA 5201.GUI client 5508 passes through to allow SOA 5201 services and resource to be shown and manipulation with graphics mode, and the user interface of these services and resource is provided.In the description of above Figure 53, GUI 5508 has been described more all sidedly.
SOA architecture 5514 can be based on J2EE's, and the facility that allows to be independent of deployed environment exploitation service can be provided.Can the provide support other function of deployed environment of SOA architecture 5514, as resource converge, intercepting, serializing, load balance, action listener, and monitor.SOA architecture 5514 can be visited computing environment, and can influence the service that can use GUI 5508, can support the GUI 5508 of context orientation.
SOA architecture 5512 can use enterprise Java bean (EJB) and integrated in real time (RTI) to provide resource to converge.Resource converges and can allow a plurality of parallel Service Instances to share a spot of resource (inside and outside).
The SOA architecture can provide many useful instruments and characteristics.Intercepting can be used for insert encrypting, compression, follow the tracks of, monitor and other management tools that these management tools can be transparent to service, and with these service reports to client and other services.Serializing can provide the services request and the data transmission support of striding a plurality of invocation protocol and the complexity of striding different technology with non-serializing.Load balance can allow a plurality of Service Instances to stride the distribution of a plurality of servers ground.Load balance can support high concurrency to handle or high-throughput is handled, and visits the one or more processors on a plurality of servers.Action listener and generation can allow to call service based on observed external event.This can allow the function based on first service, and if the condition that has produced appointment, call second service.Action listener can also be supported callback function, and the identical identifier when appointment can be used and call with the front is called certain service.
Service describing registration table 5510 can be the service of having safeguarded the operating specification of total interface and every other service.Service describing registration table 5510 can provide inquiry and select service, with example, the binding of establishment service, and agreement, to use with design proposal 5304.As example, the example of service can be arrived SOA5201 by client or other services request, and there, SOA 5201 will ask inquiry or select invoked service.Then, service describing registration table 5510 can return the example of service, binds for service binding 5512, can use in design proposal 5304 then.
Public kernel service 5520 can comprise a plurality of services, and these services can be called, the solution of disposing during with establishment design proposal 5304 and operation.Public kernel service 5520 can comprise all generic service of design proposal 5304, therefore, makes other services exempt the ability that must safeguard these services itself.Service itself can be called other services of calling as required in the public kernel service 5520, to finish design proposal 5304.A plurality of clients can be visited by service binding 5512, SOA architecture 5514 and the public kernel service 5520 of service describing registration table 5510 visits.Public kernel service can also be conducted interviews by service 5222 of metadata knowledge base and SOA architecture 5514 by external service.
Other external service can be implemented any environment that 5518 visits are supported by SOA architecture 5512 by service.Service is implemented and can be provided visit to external service by using adapter and connector 5218.Implement 5518 by service, the specific products function that service 5524 can be provided by other software products is for development and Design scheme 5304.These services 5524 can provide investigation, design, exploitation, test, deployment, operation, supervision, adjust or other functions.As example, service 5524 can be carried out the data integration operation, and can visit metadata, meta-model or the service of SOA 5201.
Service implements 5518 can be provided utilizing other instruments integrated process that create and be exposed to SOA architecture 5514 as service for process 5528.The user of other instruments may create these integrated processes, and the service of can be used as of these processes is exposed to SOA5201 and client.
5518 visits that can also provide user-defined service 5522 are provided in service, and these services can allow user definition or create themselves self-defined process, and service exposes them as SOA.Allow them to be exposed to all clients and the service of SOA 5201 as the user-defined service 5522 of SOA service exposure.
Figure 56 has described instrument 5604, old-fashioned instrument 5602, and external tool 5600 and knowledge base service 5222 is mutual.Knowledge base service 5222 can provide service, so that in-house tool 5604, old-fashioned instrument 5602, and/or external tool 5600 accesses meta-data models.Each service in these services can be safeguarded metadata or meta-model in the knowledge base space of being safeguarded by knowledge base service 5224.The model mapping (being represented by arrow) that knowledge base service 5224 can pass through to semantic cover joint 5614 provides different instruments to visit the function of other metadata.
In architecture 5200, instrument 5604 uses the different model of their work metadata, can be stored in by in knowledge base service 5222 knowledge bases that provide 5224.Knowledge base 5224 can specific model, the metadata schema of storage tool, and can be by the universal model of a plurality of service sharing of SOA5201.Instrument 5604 can be visited knowledge bases 5224 by SOA 5201, and can provide data and metadata for design proposal 5304.In knowledge base 5224, different functional areas can be arranged, be used for carrying out such as data analysis, data purification, design proposal 5304, or the activity of the relevant operation of other data integrations and so on.
Knowledge base service 5222 can be carried out alternately with old-fashioned instrument 56025602, and can safeguard old-fashioned model knowledge base 5612.Old-fashioned model can be used for metadata coexistence, metadata migration, the parallel version of metadata, or other metadata and the model requirements of design proposal 5304.Old-fashioned model knowledge base 5612 can be served 5222 by knowledge base and be safeguarded, and uses the mapping from old-fashioned model knowledge base 5612 to knowledge base 5224, and the service of can be used as of old-fashioned instrument 5602 is exposed to instrument 5604.The same map of use from knowledge base 5224 to old-fashioned instrument 5612 can be exposed to old-fashioned instrument 5602 as service with instrument.Be exposed in old-fashioned model knowledge base 5612 under the situation of knowledge base 5224 and instrument 5604, from the metadata of old-fashioned model knowledge base 5612, and data can be used as parallel metadata and safeguard, or conciliate with existing knowledge base metadata.
Knowledge base service 5222 can be the main service that is used to import and derive the model of 5608 metadata and external tool 5600.Can import external metadata and model, can serve the 5224 external view models of safeguarding 5610 by knowledge base to create.These external view models can be exposed to SOA 5201, to be used for design proposal 5304 and to dispose.In knowledge base service 5222, model can be quoted other models, and can allow instrument to visit a plurality of models simultaneously.Model between knowledge base and the external knowledge storehouse is quoted the identical metadata or the model that can also allow in the shared knowledge base 5224 of a plurality of instruments.
Knowledge base service 5222 can use semantic cover joint model that the visit to outside view model 5610, old-fashioned model 5612 and the visit of 5224 pairs of external tools 5600 of knowledge base model, old-fashioned instrument 5602 and instrument 5604 are provided.Semantic cover joint model can be a model of having safeguarded the unanimity of the mapping between external view model 5610, old-fashioned model 5612 and the knowledge base model 5224, can only need part mapping, shares metadata with permission instrument 5604.By using semanteme cover joint model 5614 mappings between the other system assembly, instrument 5604 can be visited old-fashioned model 5612 and external view model 5610, to finish user's design proposal 5304.5614 mappings of semantic cover joint model can be carried out real-time metadata analysis to outside view model 5610 for SOA 5201 services.Instrument 5604 can be visited old-fashioned model, and can support the coexistence of old-fashioned metadata and model and knowledge base 5224 and move in the knowledge base 5224.Instrument 5604 can carry out alternately with old-fashioned model 5612, and the other version that can be used as metadata and model is supported them.Old-fashioned model 5612 can be moved in knowledge base 5224 models.By semanteme cover joint model 5614, external tool 5600 and old-fashioned instrument 5602 can visit SOA 5201 services by visit SOA connector 5218.
Figure 57 has described the architecture of the knowledge base service such as knowledge base service 5222 as described above.Architecture can comprise such as arriving the GUI client, non-GUI client, and the interface 5700 of service.Architecture may further include XMI stream 5702, application programming interface 5704, importing/export function 5608, definition and expanded function 5710, navigation feature 5712, query function 5714, inner distribution, locking, and buffer memory service 5708, inner persistence and Version Control service 5718, Object Management group service 5720, and database 5722.Generally speaking, architecture provides the history and the persistent database function that keep model simultaneously for user miscellaneous and user type provide programming or other visits to the model in the database 5722.Knowledge base service 5222 can safeguard and design a model, as meta-model (that is, the model of metadata), and the model instance of in operation, service or other functions, carrying out.
Interface 5700 and XMI stream 5702 can knowledge base serve 5222 and external user between provide communication with any suitable form.Interface 5700 can provide DLL (dynamic link library), message-oriented interface, and/or other are used for from the interface of external reference knowledge base service 5222.For example, XML metadata interchange (XMI) stream 5702 can provide standard, message-oriented and be used to encode and the form of transmission unit model, and instance document preservation-recovery-interchange format.XMI stream 5702 can be directly and knowledge base serve 5222 importing and export function 5608 and communicate.
Application programming interface (" API ") 5704 can receive property value and object ID from the client of visit knowledge base service 5222.API can comprise the reflectivity interface, and this interface has been safeguarded the structure in relevant knowledge storehouse 5222 independently or visited characteristics and the function or both information of the interface 5700 of knowledge base 5222.The user can use direct DLL (dynamic link library) (for example, java class) or use DLL (dynamic link library) 5704 (may need less relevant knowledge storehouse service 5222 structure information and/or may need to obtain less relevant explicit information of visiting the user that knowledge base serves from interface 5700) reflectivity characteristics accessing database 5722 metadata.For example, application programming interface 5704 can comprise definition and expanded function 5710, and these Function detection and/or description are visited the model of knowledge base service 5710 by known interface 5700 usefulness.Application programming interface 5704 can also comprise navigation feature 5712, and these functions can be provided by the structure and the characteristics of the navigation that is provided by known GUI (or non-GUI) client-side interface 5700.Use these functions 5704,5710,5712, knowledge base service 5222 requests that can explain better and respond from various interface 5700 with known configurations.Perhaps, the client of any model of cognition or service can directly be visited from the specific class of any model of model definition compiling.
Query function 5714 can directly be from such as GUI, non-GUI client, and the suitably formative request of the interface 5700 of service and so on exposes knowledge base service 5222.For example, query function 5714 can directly receive inquiry or upgrade expression formula from client and service 5700, and can directly reply with responsive object ID.Except query function 5714, can also comprise other normally used data search and update functions such as search.Query function 5714 can be defined by any commercially available relational database that is used as database 5722, or can be used for any other standard of the data in the stored knowledge storehouse service 5222 or proprietary database defines.
Object Management group service 5720 is the interior data of management database 5722 like this: for example, use object distribution, locking, and buffer memory service 5708 controls the visit to database 5722, uses object persistency and version service 5718 to come Version Control and other relevant feature of the object in the management database 5722.For example, persistence and Version Control service 5718 can utilize a plurality of follow-up branches and robotization or semi-automatic merging, support the Version Control of meta-model and model instance.Persistence and Version Control service 5718 can also utilize the example that holds out against other system revision or upgrading, support self-defined or user-defined model.As another example, persistence and Version Control service 5718 can support a plurality of parallel model version to use.Simultaneously, knowledge base service 5222 can be provided to the interface of external source control and edition management system such as according to the MicrosoftSCCI standard.It can be nonvolatil that the cross-module type is quoted.Generally speaking, metadata is served in any layer that can reside in the knowledge base architecture (top of database and any kernel service), and can check for the metadata item purpose such as the project that imports, analysis such as impact analysis, change propagation, and data pedigree, report and documentation, the catalogue of enterprise-wide and personal directory and classification schemes, cooperation and workflow support provide function, and script function.
Database 5722 can be any in the data source 102 as described above.Be appreciated that, (for example can comprise operation, during operation) the logic knowledge base of knowledge base and design knowledge base (being also referred to as general-purpose knowledge bases or core knowledge storehouse), can be configured to a plurality of neatly and/or distributed knowledge base, comprise individual, team/project, department or enterprise's knowledge base, and centralized or distributing knowledge base.In addition, knowledge base also provides robotization synchronous between different knowledge base examples.Knowledge base service 5222 can comprise with function or service for the configuration in external client and service 5700 transparent way managerial knowledge storehouses.
Please, the figure illustrates and described assembly and the high-level uml diagram table of complex model referring to Figure 58.Assembly can be the trickle element of design proposal 5304, can comprise external resource, as various conversions and integrated.Assembly can be linked as complex, and the service of can be used as of these complexs exposes, and is coordinated by SOA 5201.The design or the description based on assembly of the service in the data integration process have been described so, here.The element of assembly will be described below.
Assembly can have a definition componentdef 5810, and object designtime 5814 when having the design of at least one association is as the level editing machine.Depend on designing requirement, can have a plurality of designtime 5814 objects related with componentdef 5810.Componentdef 5810 can also comprise a plurality of characteristic definition object propertydef5802, and these objects can be specified the title and the type of the characteristic of this assembly.
For supporting solution development flexibly, architecture 5200 is supported two kinds of assemblies of abstract and concrete assembly.Abstract component can be supported incremental development flexibly, and can represent the object that only has the part standard.Abstractcomponentdef 5820 can represent the abstract component of particular type, as database or process, and can the time after a while in design proposal 5304 become concrete assembly.Concrete assembly is the object that defines fully, and is defined by concretecomponentdef 5818.
5814 objective for implementation when concrete assembly can have operation for each deployment engine are as code, high-throughput, debugging, checkpoint or the treatment state persistence that generates.Objective for implementation can supporting assembly example life cycle be operated during operation, as the initialize in the deployment of design proposal 5304, open, run, get, put, end of wave, reset, and abort.Connectordef 5828 objects can define concretecomponetdef5818, and concretecomponetdef 5818 can be connected to external resource, and the exposure to the external resource such as service or metadata can be provided.
Trickle assembly can interconnect, to form complex, to realize the more complicated function.Generally speaking, trickle assembly can use or be synthesized together together, to obtain the very high interface of performance, as in the specific run-time environment.So, the design based on assembly can be independent of service-oriented architecture use as described herein.Yet complex is defined by compositiondef 5822, and complex also can be a recurrence, and can reuse with the service that other SOA S201 coordinate, and the service of can be used as is exposed to other SOA 5201 clients and services.The outmost rank of compositiondef 5822 can be processdef 5830, can be special compositiondef 5822.Can utilize the compositiondef 5822 of each redetermination to create compositioninstance5812, compositioninstance 5824 can comprise the characteristic value of example.
Only all become under the situation of concrete assembly, just can carry out complex at all component.In design process, must define any assembly that begins as abstract component, as process or database, to become concrete assembly.Simultaneously, also can respond the last design of concrete assembly, or other external Design factors, change or rearrange the design of abstract component.So, can realize progressive design, wherein, can each abstraction level in single design or model revise design.Can expose general complex and integrated process model by the GUI 5202 of design proposal 5304.Complex itself can be regarded as assembly, and complex can be linked at together, to produce complicated more complex service, need not the user and has skilled programming skill.Can create assembly and complex in GUI 5202, be not that so too skilled user can access component and the guide of complex design.Architecture 5200 complex models can comprise the attribute that allows them to be coordinated by SOA 5201, as characteristic, input and output, the unit, local variable, scope, control constraint, incident, stateless of work and based on the setting of state, unusual, and recurrence complex.
Please, shown enterprise's integrating language (" EIL ") example of complex model with XML representation 5914 referring to Figure 59.The integrated process of representative can receive a series of activities project message from client or other services by SOA 5201.In this example, each in these work message all may need data base querying 5904, conversion 5908, subrecord is promoted to concern row 5910, and be inserted in the database 5912.Outmost atom 5900 scopes can be specified the sequence of execution.In this example, inquiry 5904, conversion 5908 promote subrecord for to concern row 5910, and are inserted in the database 5912 and must carry out continuously.Independently 5902 scopes are exposed to atoms range 5900 as complete sequence, can move in order, and be inserted in the database 5912.
Inside independently 5902 scopes can be represented, the sequence of sealing, data base querying 5904, conversion 5908 promote subrecord for to concern row 5910, can be independently of one another with pipe method.This can use channelization or parallel processing to promote to carry out.
So, it is how mutual that the EIL model can define the different sequence of complex, and model can give authority, in series carries out some sequence, and carries out other sequences concurrently.
XML representation 5914 can show the script explanation of EIL model.The people who is proficient in present technique can see the related of XML script and EIL model.
Please, shown client, service referring to Figure 60, and the uml diagram table of the relation of assembly, as in the UML of the Figure 54 that has described client and service relation, and described in the UML of the Figure 58 that has described assembly and complex relation.The detailed description of the complete principle of work of relevant these two modules sees also the description of Figure 54 and Figure 58 of front.
Client 5412 can provide user interactions, and the API that utilizes SOA service 5414 to carry out the data integration exploitation.Interface when single component can provide when design and operation, these interfaces and SOA are served 5414 and are connected with client 5412.5808 assemblies can be connected with client 5412 during design, and can utilize available assembly function to coordinate by SOA service 5414 at design proposal 5304.This with when design 5808 assemblies and the coordination of SOA service 5414 context that can use the user can be provided in process designer 5402, and can support the GUI of context-sensitive.
5814 assemblies can be served 5414 with SOA and are connected during operation, to utilize the deployment of available service coordination design proposal 5304.Assembly 5808 and both be connected of assembly 5814 when moving when SOA service 5414 can have with design, SOA is served 5414 requirements when being exposed to the operation of the designing requirement of design proposal 5304 and hardware environment.During operation that then, SOA service 5414 can be by design proposal 5304 when assembly 5814 and design assembly 5808 coordinate to dispose.Can be responsible for to use component instance 5812 communication service is exposed to SOA 5414, therefore, SOA service 5414 is exposed to external resource, so that dispose and design design proposal 5304 with the Component service of communicating by letter 5420 of external resource.External resource can be exposed to external resource and service with SOA 5201 clients and service to the exposure of SOA service 5414 temporarily.
Please, the figure illustrates the mode that schematically illustrates that is delivered to the data of second assembly 6102 from first assembly 6100 referring to Figure 61.Architecture 5200 runtime data representations can use public data to represent form, to allow a plurality of services and to be connected deal with data in general manner.Architecture 5200 knowledge bases service 5222 can be connected with a plurality of data structures, as XML, EDI, COBOL, binary structure, and native language form, original machine form and other industrial data forms.In order to handle a lot of data structures effectively, architecture 5200 can be used the universal internal data structure.
Knowledge base service 5222 can be changed data transfer in storer 6114 with minimal data, to avoid unwanted conversion, therefore, can improve the efficient of data transmission.Data can be delivered to sharable storer 6114, there, have only needed data just can to change and spread-focus in the sharable storer 6114, so that assembly is carried out the data integration operation.Bigger unaccounted data items such as BLOB and CLOB can be delivered to target from the source by reference.Quote by only providing, the bigger data of not interrupting can not need to copy to storer, because asked data, have only the needed part of data just to be converted, and spread then/focus in the storer 6114.
Data have been shown the assembly of visiting diffusion-collection tabulation 6104 from the example that first assembly 6100 is delivered to second assembly 6102.Diffusion-collection tabulation 6104 can be arranged in sharable storer 6114, and pointed source or target data are represented the less part of the data in the form.Data representation format can be that XML text 6108, database obtain buffer zone 6110, COBOL record 6112, or other data layouts.Diffusion-collection tabulation 6104 can allow data representation format to be loaded into sharable storer 6114 once, handles the pointer that points to data representation format, to point to needed data.By handling pointer rather than the mobile real data in diffusion-the collections tabulation, the data that can eliminate most of repetitions are duplicated with storer and are redistributed.In case for assembly has been set up pointer, can automatically carry out the data-switching of needed data, this can be retained in most of data in the shared storage 6114, and can not be converted.Through the data converted value, have the pointer that points to diffusion-collection 6104 tabulations by buffer memory, reuse, can further improve data processing for other assemblies.
By using these technology, data can performance be transmitted on the highland between the assembly of complex very much.
Figure 62 has shown the utility engines of architecture 5200.The utility engines framework can comprise such as programmer 6204, integrated designer 6202, and business analysis's teacher 6200 and so on user, they may use flow scheme design device 6210, guide 6212, such as the model of storage or the example 6214 the former project, template 6216 or the like is connected with the integrated process standard 6220 in general centre.Compiling at runtime and Optimization Layer 6230 can provide robotization or manually control in various degree to the excessive use such as high-throughput engine 6240, high concurrency engine 6242, storing process 6244, computer program code 6246 or the like engine, and these engines or the like can by general purpose module and be connected 6250 and external resource communicate.
Many data integration services and function need reach the conversion of other data conversions and so on such as conversion, derivation, polymerization, route, metadata mapping, quality statement.Architecture 5200 can provide the single conversion standard that GUI 5202 and conversion logic are bound.Transfer framework can provide such as relation, layering, XML, arbitrarily, and the unified method of the conversion of the several data form of other industry standard format and so on.As previously discussed, under the preferable case, the processing such as conversion only is confined to the subclass of data, and the live part of data can need not any conversion ground and transmit.
As discussing in Figure 52, architecture 5200 can provide single GUI5202, and it is based on technical ability, allows the user to work in the environment during being suitable for their ability from various tissue location.Transfer framework is utilized this ability, and a plurality of user interfaces can be provided, as the part of GUI, so that handle data transitions.Transfer framework can be by can be separately the interface of technical ability, for business analysis teacher 6200, integrated designer 6202, programmer 6204 and any other user provide visit.
Flow scheme design device 6210, guide 6212, example 6214 and template 6216 representatives are used to design the non-exhaustive set of the possible user interface tool of integrated process, they can be used by different user 6200,6204,6206, to design and to revise the integrated process standard 6220 in general centre, this standard can comprise metadata, metadata schema, service, assembly, complex, reaches in other process design elements of above being discussed any one.In addition, each in these or the other possible design user interface can allow user couple and user's the consistent design details of technical ability rank, role, technology platform or the like to carry out the visit of different stage.
Business analysis teacher 6200 can be concerned about higher level logic design more, as conditional transfer, event detection, and filtering rule.Business analysis teacher 6200 may tend to use guide 6212, example 6214 or template 6216, use is relatively simplified or integrated function (this function can provide simple design cycle and converting expressing constructing function according to business analysis teacher 6200 programming skill) is developed integrated process standard 6220.
Integrated designer 6202 may be able to possess the statement of establishment quality, data-switching, key expression formula, route, the conversion of field rank of more complicated, and the program capability of data purification.Except using guide 6212, example 6214, and template 6216, and outside other high or low rank gui interfaces, integrated designer can also use flow scheme design device 6210 some part of modelling process clearly, this can allow the function that provides more deep, to use expression language, realize direct, explicit design.Other GUI of this grade still can be for the technical ability level of integrated designer 6202 constraints other, and can visit guide 6212 and make up or other wanting help of tasks to finish expression formula.
Under the preferable case, programmer 6204 can use flow scheme design device 6210 GUI or Command Line Interface, to allow that self-defined translation function and self-defined assembly are had maximum control, though in whole design process, use other interfaces 6212,6214,6216 interchangeably.Programmer 6204 can visit the trickleest other details of level of integrated process design, comprises the ability of record rank and data set level logic.The programmer can be allowed to the more fine-grained function of visit, include but not limited to, write or self-defined general purpose module and the element that is connected 6250, create and use the user-defined service of visiting, provide detailed suggestion to compiling and optimizing process level 6230 by SOA 5201.
By using different interface 6210-6216, such as business analysis teacher 6200, integrated designer 6202, and programmer's 6204 and so on user can design the integrated process of using the integrated process standard 6220 in general centre, and this standard 6220 is also to be independent of the final engine and assembly and the representation that is connected that is used to carry out integrated process.Integrated process standard 6220 can be expressed with the integrated process specification normative language in general centre (as EIL 5900) or any equivalent representation in the middle of this.
Compiling and optimization process level 6230 can be converted to the integrated process standard 6230 in general centre the specific execution standard of one or more execution engine context, include but are not limited to, high-throughput engine 6240, high concurrency engine 6242, one or more database store processes 6244, and/or one or more snippets is with the computer program code 6246 of any conventional programming language generation, include but are not limited to, C, C++, C#, COBOL and Java, comprise JavaBeans and Enterprise JavaBeans, or any other can be changed, explain and/or move the execution environment of the general-purpose computations algorithm that is suitable for system as described herein.How compiling and optimize process level 6230 and can use the knowledge of metadata of the relevant data source 102 that is stored in the metadata knowledge base 5214 and datum target 102 and the information of relevant calculation machine system environments configuration, decision are converted to integrated process standard 6230 suitable the and efficient combination at the instruction of different engines and execution environment.Compiling and optimization process level 6230 can also be used any one in a plurality of services 5414 that can use by SOA 5201, derive other metadata (as the data profile information), so that determine how to compile best and optimize integrated process standard 6220 reasoningly.
Different integrated processes is carried out engine and can be used predefined and/or user-defined general purpose module to be connected 6250 with the external data source and target with environment 6240,6242,6244,6246 or the like, comprises assembly enforcement 5814 and connector 6310.
The transition components and the Connection Element of the self-definition design that can create by the client such as business analysis teacher 6200, integrated designer 6202 and programmer 6204, the independent sharable element that can be used as in the knowledge base catalogue is stored in the knowledge base 5224, therefrom, they can be generated executable integrated process by compiling and Optimization Layer 6230 usefulness.
Please referring to Figure 63, shown the linked system structure, this architecture can allow architecture 5200 services 6300, assembly 6302 and engine 6304 by connector assembly 6310 visit external resources.Pre-defined these services in the superincumbent figure.
The effect of connector assembly 6310 is interfaces of package outside resource, and these external resources of standardization, so that use with assembly 6308 and service.The effect of connector can be to arrive other assemblies 6308 (as transition components) with less conversion ground data transfer, there, can finish conversion more effectively.As previously discussed, conversion can be only at the limited amount data in the external data of transmission.Utilize connector 6310, only need the minimally translation data, just can make connector 6310 effectively with data moving assembly and service.Connector can be by Component service 6302 provide when design interface or the special assembly of interface during to the operation of deployment engine 6304.
As the part of connector 6310, adapter 6312 can provide the subclass of assembly of the component interface of specific external resource.In connector 6310, a plurality of connections 6314 can be arranged, as the low level assembly, this assembly can be managed the life cycle of single external resource.Connect 6314 and can have related action listener and resource access, can read, write, send, receive, inquire about or upgrade external resource.
Connection management interface 6312 can provide aggregation feature, to support connecting 6314.Converge and mainly can be used for high concurrency execution environment, and can be used to carry out the transmission stably of parallel data.For the high-throughput execution environment, identical connection management interface 6312 can be used, but lasting connection can be safeguarded, can allow the heavy duty cycle to reuse, so that consistent connection to be provided.Connector 6310 can provide a plurality of external resource life cycle functions, as install, interface, metadata interface, compiling, checking, debugging, supervision, instantiation, condition managing during design, converge, buffer memory, affairs, abnormality processing, data access, event detection, persistence, rent, BOM produces, data sampling, and sample data generates.Can describe connector 6310 by model, they can be stored in the knowledge base 5224, and can visit semantic cover joint model 5614, so that the visit external resource.Connector 6310 can be packaged into the interface of external resource, as ODBC/JDBC, JCA, EJB, and the Web interface.
Though be to describe of the present inventionly with reference to some preferred embodiment, should be appreciated that those ordinary persons that are proficient in present technique will understand, other embodiment also are fine, they also in the scope of the present invention.

Claims (42)

1. data integrated system comprises:
Be used to carry out the user interface of a plurality of data integration tasks, described user interface comprises a plurality of menus corresponding to a plurality of stages of the workflow of a project;
The service-oriented architecture that comprises the registration table of service, one or more described services are associated with each data integration task of described user interface;
With the knowledge base of one or more described service associations in the service of described user interface and service-oriented architecture, described knowledge base is stored the common element data model in an above stage of the workflow of described project;
Engine when being used to carry out the one or more operation of described project; And
Be used for described one or more when operation engine be connected to one or more connectors of one or more external resources, described connector uses modular assembly and complex to carry out data throughput.
2. data integrated system according to claim 1 further comprises the task matrix that selected data integration task is associated with selected menu.
3. data integrated system according to claim 1 further is included in the intelligent automation layer between user interface and the service-oriented architecture, and the user of the described user interface of described intelligent automation course provides specific to contextual content.
4. data integrated system according to claim 1 further comprises the run-time optimizing layer of engine when being used to move, described run-time optimizing layer distribution process independently between the engine when each moves.
5. the method for the integrated process of management data comprises:
Be provided for carrying out the user interface of a plurality of data integration tasks, described user interface comprises a plurality of menus corresponding to a plurality of stages of the workflow of a project;
The service-oriented architecture of the registration table that comprises service is provided;
One or more described services are associated with each data integration task of described user interface;
One or more described service in the service of knowledge base and described user interface and service-oriented architecture is associated;
The common element data model in an above stage of the workflow of the described project of storage in knowledge base;
Engine is carried out described project when using one or more operation, and engine uses modular assembly and complex to carry out the data processing of described project during described operation; And
Engine is connected to one or more external resources during with described one or more operation.
6. method according to claim 5 further is included between user interface and the service-oriented architecture intelligent automation layer is provided, and the user of the described user interface of described intelligent automation course provides specific to contextual content.
7. method according to claim 5 further comprises the run-time optimizing layer of engine when being provided for moving, described run-time optimizing layer distribution process independently between the engine when each moves.
8. method according to claim 5 comprises that further use task matrix is associated selected data integration task with selected menu.
9. computer program, but comprise the computing machine working medium that wherein comprises computer readable program code, wherein, described computer readable program code makes one or more computing machines carry out following operation when carrying out on one or more computing machines:
Be provided for carrying out the user interface of a plurality of data integration tasks, described user interface comprises a plurality of menus corresponding to a plurality of stages of the workflow of a project;
The service-oriented architecture of the registration table that comprises service is provided;
One or more described services are associated with each data integration task of described user interface;
One or more described service in the service of knowledge base and described user interface and service-oriented architecture is associated;
The common element data model in an above stage of the workflow of the described project of storage in knowledge base;
Engine is carried out described project when using one or more operation, and engine uses modular assembly and complex to carry out the data processing of described project during described operation; And
Engine is connected to one or more external resources during with described one or more operation.
10. computer program according to claim 9, wherein, described computer readable program code makes one or more computing machines provide the intelligent automation layer between user interface and service-oriented architecture when carrying out on one or more computing machines, and the user of the described user interface of described intelligent automation course provides specific to contextual content.
11. computer program according to claim 9, wherein, when on one or more computing machines, carrying out, the run-time optimizing layer of engine when described computer readable program code makes one or more computing machines be provided for moving, described run-time optimizing layer distribution process independently between the engine when each moves.
12. computer program according to claim 9, wherein, when carrying out on one or more computing machines, described computer readable program code makes one or more computing machines utilize the task matrix that selected data integration task is associated with selected menu.
13. a service-oriented architecture that is used for providing at data integrated system service, described architecture comprises:
Location and the instantiation service catalogue of serving dynamically, described service comprises the reusable and sharable service of a plurality of separation of the instrument of synthesizing, as the Component service of service exposure external resource connector, and the one or more knowledge base services that are used for visiting the metadata schema that is stored in knowledge base; And
Be used to use the user interface of separation of user's design of the data integration process of service.
14. architecture according to claim 13, wherein, one or more described services are internal services.
15. architecture according to claim 13, wherein, one or more described services are external service.
16. architecture according to claim 13, wherein, different technology is used in described service.
17. architecture according to claim 13, wherein, one or more described services are synchronous.
18. architecture according to claim 13, wherein, one or more described services are asynchronous.
19. architecture according to claim 13, wherein, described service comprises the one or more a plurality of functions of control in following: audit, log record, monitor, management, safety, user profile, session management, and report, affairs, operation flow, User Catalog, Component service, configuration, system management, source control, importing/the derivation of source and target metadata, metadata query, visit, analyze, report, and subscribe sample data, the data analysis, process editing, the process compiling, data verification, design is disposed, design is carried out, installation and upgrade, demonstration is installed, dispose, version management, synchronously, the data analysis, data purification, investigation and adjustment, the application of template, test, and problem report.
20. one kind is used for providing service-oriented service method at data integrated system, described method comprises:
The a plurality of services of registration in service catalogue, described service comprises the reusable and sharable service of a plurality of separation of the instrument of synthesizing, as the Component service of service exposure external resource connector, and the one or more knowledge base services that are used for visiting the metadata schema that is stored in knowledge base;
Dynamically locate a service in a plurality of services in the registration table;
The service that is positioned described in a plurality of services of instantiation; And
Be provided for using the user interface of separation of user's design of the data integration process of the service that is positioned described in a plurality of services.
21. method according to claim 20, wherein, one or more described services are internal services.
22. method according to claim 20, wherein, one or more described services are external service.
23. method according to claim 20, wherein, different technology is used in described service.
24. method according to claim 20, wherein, one or more described services are synchronous.
25. method according to claim 20, wherein, one or more described services are asynchronous.
26. method according to claim 20, wherein, described service comprises the one or more a plurality of functions of control in following: audit, log record, monitor, management, safety, user profile, session management, and report, affairs, operation flow, User Catalog, Component service, configuration, system management, source control, importing/the derivation of source and target metadata, metadata query, visit, analyze, report, and subscribe sample data, the data analysis, process editing, the process compiling, data verification, design is disposed, design is carried out, installation and upgrade, demonstration is installed, dispose, version management, synchronously, the data analysis, data purification, investigation and adjustment, the application of template, test, and problem report.
27. a method that is used for data integrated system is connected to external resource comprises:
With data integrated system as a plurality of service arrangements in service-oriented architecture;
With one or more connector assemblies as service registry in the service catalogue of data integrated system, each connector assembly is configured to be connected to external resource; And
In data integrated system, use the connection that is established to external resource as a connector assembly of service.
28. method according to claim 27, wherein, described connector assembly provides the all-access to outside resource file.
29. method according to claim 27, wherein, at least one connector assembly comprises conversion process.
30. method according to claim 27, wherein, described connector assembly is available in the design process of data integration process.
31. method according to claim 27, wherein, described connector assembly is available in the process when operation.
32. method according to claim 27, wherein, described connector assembly is included in the interface of specific external resource.
33. method according to claim 27 wherein, comprises action listener and resource access to the connection of external resource.
34. method according to claim 27 is nonvolatil to the connection of external resource.
35. method according to claim 27, wherein, external resource comprises at least one data source or at least one datum target.
36. method according to claim 35, wherein, described connector assembly provides the visit to the metadata of external resource.
37. method according to claim 35, wherein, described connector assembly provides the visit to the data of external resource.
38. a system comprises:
The service-oriented architecture that comprises service catalogue;
A plurality of functions of related computer program product external member, each function is registered in service catalogue as service; And
Be used to call the interface of one or more examples of one or more described services, thereby relevant computer product external member is deployed in the service-oriented architecture.
39. according to the described system of claim 38, wherein, the related computer program product external member comprises the data integration external member.
40. according to the described system of claim 39, wherein, function comprises one or more in following: audit, log record, monitor, management, safety, user profile, session management, and report, affairs, operation flow, User Catalog, Component service, configuration, system management, source control, importing/the derivation of source and target metadata, metadata query, visit, analyze, report, and subscribe sample data, the data analysis, process editing, the process compiling, data verification, design is disposed, design is carried out, installation and upgrade, demonstration is installed, dispose, version management, synchronously, the data analysis, data purification, investigation and adjustment, the application of template, test, and problem report.
41. according to the described system of claim 38, wherein, one or more parameters are passed to one or more examples of one or more described services.
42. according to the described system of claim 38, wherein, one or more described services comprise a generic service that all related computer program products are common at least.
CNA2005800290075A 2004-08-31 2005-08-31 System structure for enterprise data integrated system Pending CN101076793A (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US60623704P 2004-08-31 2004-08-31
US60/606,237 2004-08-31

Publications (1)

Publication Number Publication Date
CN101076793A true CN101076793A (en) 2007-11-21

Family

ID=36000709

Family Applications (1)

Application Number Title Priority Date Filing Date
CNA2005800290075A Pending CN101076793A (en) 2004-08-31 2005-08-31 System structure for enterprise data integrated system

Country Status (5)

Country Link
EP (1) EP1800217A4 (en)
JP (1) JP2008511934A (en)
KR (1) KR20070057806A (en)
CN (1) CN101076793A (en)
WO (1) WO2006026673A2 (en)

Cited By (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101763428A (en) * 2010-01-04 2010-06-30 山东浪潮齐鲁软件产业股份有限公司 Registering, storing, managing and applying system of SOA for web services
CN101853160A (en) * 2010-05-18 2010-10-06 上海动量软件技术有限公司 Platform system and method for realizing framework configuration based on cloud components in computer software system
CN102236672A (en) * 2010-05-06 2011-11-09 深圳市腾讯计算机系统有限公司 Method and device for importing data
CN102346685A (en) * 2010-07-29 2012-02-08 甲骨文国际公司 Integrated adapter management system and method
CN104471557A (en) * 2012-06-18 2015-03-25 谷歌公司 Optimized execution of dynamic languages
CN104794000A (en) * 2014-01-22 2015-07-22 深圳市沃信科技有限公司 Work scheduling method and system
CN104793071A (en) * 2015-03-28 2015-07-22 合肥天海电气技术有限公司 Power grid fault diagnosis system based on J2EE distributed type technology
CN105630475A (en) * 2014-11-06 2016-06-01 阿里巴巴集团控股有限公司 Data label organization system and organization method
CN105956087A (en) * 2016-04-29 2016-09-21 清华大学 Data and code version management system and method
CN106484778A (en) * 2016-09-14 2017-03-08 深圳中兴网信科技有限公司 Material distribution method and material dispensing device based on SOA
CN106599195A (en) * 2016-12-14 2017-04-26 北京邮电大学 Method and system for synchronizing metadata under mass network data environment
CN107111713A (en) * 2014-10-02 2017-08-29 微软技术许可有限责任公司 The automatic checking of software systems
CN108027825A (en) * 2015-09-04 2018-05-11 微软技术许可有限责任公司 The exposure exterior content in enterprise
CN108351940A (en) * 2015-09-03 2018-07-31 策安保安有限公司 High frequency heuristic data for information security events obtains the system and method with analysis
CN109101217A (en) * 2013-03-15 2018-12-28 先进元素科技公司 Method and system for purposefully calculating
CN109254992A (en) * 2018-10-12 2019-01-22 北京京东金融科技控股有限公司 Project generation method and system, computer system and computer readable storage medium storing program for executing
CN109491998A (en) * 2018-10-08 2019-03-19 杭州数梦工场科技有限公司 Analyze the method, apparatus and electronic equipment of business datum
CN109726192A (en) * 2018-12-24 2019-05-07 普元信息技术股份有限公司 The system and method for master data model version and field separate management function is realized based on big data environment
CN109783069A (en) * 2019-01-08 2019-05-21 上海因致信息科技有限公司 A kind of data conversion system and method for EDI data source
CN110187869A (en) * 2019-05-14 2019-08-30 上海直真君智科技有限公司 Unified inter-operation system and method between a kind of big data isomery storage computation model
CN110532269A (en) * 2019-08-30 2019-12-03 深圳市原点参数科技有限公司 One kind being based on the transnational accounting standard conversion method of machine learning financial statement
CN110531967A (en) * 2019-08-16 2019-12-03 北京三快在线科技有限公司 Code generating method and code generating unit
US20200126013A1 (en) * 2018-10-23 2020-04-23 Enosix, Inc. Microcomponents for data integration and methods thereof
CN111651507A (en) * 2020-04-16 2020-09-11 杭州半云科技有限公司 Big data processing method and system
CN112307153A (en) * 2020-09-30 2021-02-02 杭州量知数据科技有限公司 Automatic construction method and device of industrial knowledge base and storage medium
CN112882803A (en) * 2021-03-08 2021-06-01 万维云网(北京)数据科技有限公司 Data processing method and system
RU2773429C1 (en) * 2021-10-07 2022-06-03 Дмитрий Алексеевич Данков Automation system for the exchange of marking codes
US11822662B2 (en) 2013-03-15 2023-11-21 Advanced Elemental Technologies, Inc. Methods and systems for secure and reliable identity-based computing

Families Citing this family (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8533746B2 (en) * 2006-11-01 2013-09-10 Microsoft Corporation Health integration platform API
US8417537B2 (en) 2006-11-01 2013-04-09 Microsoft Corporation Extensible and localizable health-related dictionary
US8316227B2 (en) 2006-11-01 2012-11-20 Microsoft Corporation Health integration platform protocol
JP2008198094A (en) * 2007-02-15 2008-08-28 Nec Fielding Ltd Electronic approval system and electronic approval method using same system
JP5234720B2 (en) * 2007-04-26 2013-07-10 日本電信電話株式会社 Process model creation apparatus, method and program thereof
CN101216910B (en) * 2008-01-04 2010-11-10 清华大学 Isomorphic model merging method in the modeling of distributed enterprises
US20090234860A1 (en) * 2008-03-13 2009-09-17 Rolta International, Inc. Service-Oriented Architecture System and Method
JP4401425B1 (en) 2008-09-18 2010-01-20 株式会社三菱東京Ufj銀行 Service processing apparatus, system, program, and recording medium
US8543590B2 (en) * 2009-06-05 2013-09-24 Tsx Inc. Investor relations systems and methods
AU2010336334A1 (en) * 2009-12-24 2012-07-12 Clearspire Service Company, Llc A system and method for total resource management
US8275375B2 (en) * 2010-03-25 2012-09-25 Jong Hyup Lee Data integration for wireless network systems
MA33308B1 (en) * 2010-11-02 2012-06-01 Moulay El Hadi Hijane General information system and transactions secured by mobile equipment on distributed and heterogeneous data sources.
US8775218B2 (en) * 2011-05-18 2014-07-08 Rga Reinsurance Company Transforming data for rendering an insurability decision
US9721237B2 (en) * 2011-06-24 2017-08-01 Paypal, Inc. Animated two-dimensional barcode checks
US8666919B2 (en) * 2011-07-29 2014-03-04 Accenture Global Services Limited Data quality management for profiling, linking, cleansing and migrating data
US9740513B2 (en) 2014-06-05 2017-08-22 Futurewei Technologies, Inc. System and method for real time virtualization
EP3015984A1 (en) 2014-10-29 2016-05-04 Hewlett-Packard Development Company, L.P. Providing data from data sources
KR101643650B1 (en) * 2014-11-04 2016-07-28 동서대학교산학협력단 Contents platform network system with common space server
US10339516B2 (en) 2015-01-09 2019-07-02 Seiko Epson Corporation Information processing device, information processing system, and control method of an information processing device
US10374905B2 (en) * 2015-06-05 2019-08-06 Oracle International Corporation System and method for intelligently mapping a source element to a target element in an integration cloud service design time
JP2017097417A (en) * 2015-11-18 2017-06-01 アガサ株式会社 Clinic research information cloud service system and clinic research information cloud service method
WO2017116420A1 (en) * 2015-12-29 2017-07-06 Utopia Global, Inc. Systems and techniques for ensuring the integrity of enterprise asset management data
KR101824084B1 (en) 2016-07-21 2018-03-14 주식회사 영림원소프트랩 Data processing method applicable to various analysis models for business analysis service system based on cloud computing
US11275873B2 (en) * 2018-04-06 2022-03-15 G. Lori Morton System and method for compliance, safety and space management
KR102435498B1 (en) * 2018-07-03 2022-08-24 한국전자통신연구원 System and method to control a cross domain workflow based on a hierachical engine framework
US11803555B2 (en) 2018-09-24 2023-10-31 Salesforce, Inc. Integrated entity view across distributed systems
US11442952B2 (en) * 2018-09-24 2022-09-13 Salesforce, Inc. User interface for commerce architecture
US11647095B1 (en) * 2018-10-02 2023-05-09 Intuit Inc. Method and system for orchestrating communications between application services through a unified connector platform
JP6739744B2 (en) * 2018-11-05 2020-08-12 株式会社Zenport Physical distribution management device, physical distribution management method, and physical distribution management program
SG11202109836QA (en) 2019-04-24 2021-10-28 Ibm Extracting data from a blockchain network
US11726995B2 (en) 2019-12-17 2023-08-15 Hewlett Packard Enterprise Development Lp System and method for value pack generation using generic SQL plugin for unified console
KR102109461B1 (en) 2020-02-17 2020-05-12 주식회사 제이윈파트너스 Project Automation Assistance System with Micro Service Architecture
CN111400382A (en) * 2020-03-03 2020-07-10 湖南长信畅中科技股份有限公司 Model-driven data integration middleware and implementation method
KR102240496B1 (en) 2020-04-17 2021-04-15 주식회사 한국정보기술단 Data quality management system and method
US11093239B1 (en) 2020-05-13 2021-08-17 International Business Machines Corporation Application driven configuration of service management tools
CN111966743A (en) * 2020-09-21 2020-11-20 南京智数云信息科技有限公司 Method and system for realizing data exchange, treatment and monitoring based on XML
CN112418800A (en) * 2020-11-24 2021-02-26 武汉点源工程技术有限公司 Engineering digital integration platform and use method thereof
WO2022251323A1 (en) * 2021-05-25 2022-12-01 Emaginos Inc. Educational analytics platform and method thereof
KR102337800B1 (en) * 2021-06-21 2021-12-09 주식회사 크라우드웍스 Project workflow design method using online work-based database of previously performed projects and apparatus of the same
CN113296959B (en) * 2021-06-22 2024-05-24 中国平安财产保险股份有限公司 Service processing method and device based on AOP functional component and computer equipment
KR102443301B1 (en) * 2021-11-25 2022-09-16 주식회사 파트리지시스템즈 Adaptive data processing system for processing various data and method thereof
KR102443692B1 (en) 2022-02-07 2022-09-16 주식회사 한국정보기술단 System and method for integrated management of data quality
KR20230138074A (en) 2022-03-23 2023-10-05 배재대학교 산학협력단 Method and apparatus for managing data quality of academic information system using data profiling
CN114997836A (en) * 2022-06-28 2022-09-02 北京字跳网络技术有限公司 Processing method, device, equipment and medium for integration scheme template
CN115292022B (en) * 2022-09-29 2023-01-20 泰豪软件股份有限公司 Workflow engine system, implementation method, storage medium and computer equipment
CN115774573B (en) * 2023-02-10 2023-06-30 美云智数科技有限公司 Application integration method, device, electronic equipment and storage medium

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050144114A1 (en) * 2000-09-30 2005-06-30 Ruggieri Thomas P. System and method for providing global information on risks and related hedging strategies
JP2002259643A (en) * 2001-03-02 2002-09-13 Hitachi Ltd Business process control program
US20040243458A1 (en) * 2001-07-17 2004-12-02 Lior Barkan Method and system for organization management utilizing document-centric intergrated information exchange and dynamic data collaboration
WO2003034228A1 (en) * 2001-10-18 2003-04-24 Bea Systems, Inc. System and method for implementing a schema object model in application integration
JP2004102886A (en) * 2002-09-12 2004-04-02 Fuji Xerox Co Ltd Application development support method, device and program, and workflow processing method, device and program
JP2004151893A (en) * 2002-10-29 2004-05-27 Fuji Xerox Co Ltd Coordinated information generation device and program
US8561069B2 (en) * 2002-12-19 2013-10-15 Fujitsu Limited Task computing
US20040243453A1 (en) * 2003-05-30 2004-12-02 International Business Machines Corporation Method, system, and storage medium for gathering, developing, and disseminating announcement and offering information in a collaborative network environment

Cited By (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101763428A (en) * 2010-01-04 2010-06-30 山东浪潮齐鲁软件产业股份有限公司 Registering, storing, managing and applying system of SOA for web services
CN102236672B (en) * 2010-05-06 2016-08-24 深圳市腾讯计算机系统有限公司 A kind of data lead-in method and device
CN102236672A (en) * 2010-05-06 2011-11-09 深圳市腾讯计算机系统有限公司 Method and device for importing data
CN101853160A (en) * 2010-05-18 2010-10-06 上海动量软件技术有限公司 Platform system and method for realizing framework configuration based on cloud components in computer software system
CN102346685A (en) * 2010-07-29 2012-02-08 甲骨文国际公司 Integrated adapter management system and method
CN102346685B (en) * 2010-07-29 2016-09-28 甲骨文国际公司 Integrated adapter management system and method
CN104471557A (en) * 2012-06-18 2015-03-25 谷歌公司 Optimized execution of dynamic languages
CN104471557B (en) * 2012-06-18 2016-11-02 谷歌公司 The optimization of dynamic language performs
US11922215B2 (en) 2013-03-15 2024-03-05 Advanced Elemental Technologies, Inc. Systems and methods for establishing a user purpose class resource information computing environment
US11847495B2 (en) 2013-03-15 2023-12-19 Advanced Elemental Technologies, Inc. Systems and methods configured to enable an operating system for connected computing that supports user use of suitable to user purpose resources sourced from one or more resource ecospheres
CN109101217A (en) * 2013-03-15 2018-12-28 先进元素科技公司 Method and system for purposefully calculating
US11822662B2 (en) 2013-03-15 2023-11-21 Advanced Elemental Technologies, Inc. Methods and systems for secure and reliable identity-based computing
CN109101217B (en) * 2013-03-15 2023-09-29 先进元素科技公司 Method and system for purposeful computation
CN104794000A (en) * 2014-01-22 2015-07-22 深圳市沃信科技有限公司 Work scheduling method and system
CN104794000B (en) * 2014-01-22 2018-02-23 深圳市沃信科技有限公司 A kind of job scheduling method and system
CN107111713A (en) * 2014-10-02 2017-08-29 微软技术许可有限责任公司 The automatic checking of software systems
CN105630475B (en) * 2014-11-06 2018-12-21 阿里巴巴集团控股有限公司 A kind of data label organization system and method for organizing
CN105630475A (en) * 2014-11-06 2016-06-01 阿里巴巴集团控股有限公司 Data label organization system and organization method
CN104793071A (en) * 2015-03-28 2015-07-22 合肥天海电气技术有限公司 Power grid fault diagnosis system based on J2EE distributed type technology
CN108351940B (en) * 2015-09-03 2021-05-07 策安保安有限公司 System and method for high frequency heuristic data acquisition and analysis of information security events
CN108351940A (en) * 2015-09-03 2018-07-31 策安保安有限公司 High frequency heuristic data for information security events obtains the system and method with analysis
CN108027825A (en) * 2015-09-04 2018-05-11 微软技术许可有限责任公司 The exposure exterior content in enterprise
CN108027825B (en) * 2015-09-04 2022-04-01 微软技术许可有限责任公司 Exposing external content in an enterprise
CN105956087B (en) * 2016-04-29 2019-08-30 交叉信息核心技术研究院(西安)有限公司 Data version management system and method
CN105956087A (en) * 2016-04-29 2016-09-21 清华大学 Data and code version management system and method
CN106484778A (en) * 2016-09-14 2017-03-08 深圳中兴网信科技有限公司 Material distribution method and material dispensing device based on SOA
CN106599195A (en) * 2016-12-14 2017-04-26 北京邮电大学 Method and system for synchronizing metadata under mass network data environment
CN106599195B (en) * 2016-12-14 2020-07-31 北京邮电大学 Metadata synchronization method and system under massive network data environment
CN109491998A (en) * 2018-10-08 2019-03-19 杭州数梦工场科技有限公司 Analyze the method, apparatus and electronic equipment of business datum
CN109254992A (en) * 2018-10-12 2019-01-22 北京京东金融科技控股有限公司 Project generation method and system, computer system and computer readable storage medium storing program for executing
CN109254992B (en) * 2018-10-12 2020-11-20 京东数字科技控股有限公司 Project generation method and system, computer system and computer-readable storage medium
US20200126013A1 (en) * 2018-10-23 2020-04-23 Enosix, Inc. Microcomponents for data integration and methods thereof
CN109726192A (en) * 2018-12-24 2019-05-07 普元信息技术股份有限公司 The system and method for master data model version and field separate management function is realized based on big data environment
CN109726192B (en) * 2018-12-24 2021-05-18 普元信息技术股份有限公司 System and method for realizing separate management function of main data model version and field based on big data environment
CN109783069A (en) * 2019-01-08 2019-05-21 上海因致信息科技有限公司 A kind of data conversion system and method for EDI data source
CN110187869B (en) * 2019-05-14 2020-09-01 上海直真君智科技有限公司 Unified interoperation system and method between big data heterogeneous storage computing models
CN110187869A (en) * 2019-05-14 2019-08-30 上海直真君智科技有限公司 Unified inter-operation system and method between a kind of big data isomery storage computation model
CN110531967A (en) * 2019-08-16 2019-12-03 北京三快在线科技有限公司 Code generating method and code generating unit
CN110532269A (en) * 2019-08-30 2019-12-03 深圳市原点参数科技有限公司 One kind being based on the transnational accounting standard conversion method of machine learning financial statement
CN110532269B (en) * 2019-08-30 2023-06-09 深圳市原点参数信息技术有限公司 Cross-country accounting criterion conversion method based on machine learning financial statement
CN111651507B (en) * 2020-04-16 2023-10-10 杭州半云科技有限公司 Big data processing method and system
CN111651507A (en) * 2020-04-16 2020-09-11 杭州半云科技有限公司 Big data processing method and system
CN112307153B (en) * 2020-09-30 2022-06-10 杭州量知数据科技有限公司 Automatic construction method and device of industrial knowledge base and storage medium
CN112307153A (en) * 2020-09-30 2021-02-02 杭州量知数据科技有限公司 Automatic construction method and device of industrial knowledge base and storage medium
CN112882803A (en) * 2021-03-08 2021-06-01 万维云网(北京)数据科技有限公司 Data processing method and system
CN112882803B (en) * 2021-03-08 2024-05-14 万维云网(北京)数据科技有限公司 Data processing method and system
RU2773429C1 (en) * 2021-10-07 2022-06-03 Дмитрий Алексеевич Данков Automation system for the exchange of marking codes

Also Published As

Publication number Publication date
WO2006026673A2 (en) 2006-03-09
WO2006026673A3 (en) 2006-04-20
EP1800217A2 (en) 2007-06-27
JP2008511934A (en) 2008-04-17
KR20070057806A (en) 2007-06-07
EP1800217A4 (en) 2009-06-24

Similar Documents

Publication Publication Date Title
CN101076793A (en) System structure for enterprise data integrated system
CN101048732A (en) Object oriented architecture for data integration service
CN1294710A (en) Extensible distributed enterprise application integration system
US7814142B2 (en) User interface service for a services oriented architecture in a data integration platform
US7814470B2 (en) Multiple service bindings for a real time data integration service
US8041760B2 (en) Service oriented architecture for a loading function in a data integration platform
US8060553B2 (en) Service oriented architecture for a transformation function in a data integration platform
US6772409B1 (en) Specification to ABAP code converter
CN1267820C (en) Common application metamodel including c/c++ metamodel
CN1650279A (en) Method and system for enterprise business process management
US20050262189A1 (en) Server-side application programming interface for a real time data integration service
CN1828527A (en) Platform for data services across disparate application frameworks
US20060010195A1 (en) Service oriented architecture for a message broker in a data integration platform
US20050223109A1 (en) Data integration through a services oriented architecture
US20050240354A1 (en) Service oriented architecture for an extract function in a data integration platform
US20050228808A1 (en) Real time data integration services for health care information data integration
US20060069717A1 (en) Security service for a services oriented architecture in a data integration platform
US20050235274A1 (en) Real time data integration for inventory management
US20050232046A1 (en) Location-based real time data integration services
US20050234969A1 (en) Services oriented architecture for handling metadata in a data integration platform
US20050240592A1 (en) Real time data integration for supply chain management
US20050262190A1 (en) Client side interface for real time data integration jobs
US20050222931A1 (en) Real time data integration services for financial information data integration
US20050262193A1 (en) Logging service for a services oriented architecture in a data integration platform
CN1838165A (en) Work item rules for a work item tracking system

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C02 Deemed withdrawal of patent application after publication (patent law 2001)
WD01 Invention patent application deemed withdrawn after publication

Open date: 20071121