Training - An Introduction to Enterprise Integration
What is EI?
Enterprise Integration (EI) is a business computing term for the plans, methods, and tools aimed at modernizing, consolidating, and co-coordinating the computer applications in an enterprise.
EI Levels
Data Level
Integrates and synchronizes data stores to help them support the sharing of information among applications in a more efficient manner. Typically, this approach entails extracting information from one database and updating other database(s), while simultaneously processing information between them.
Application / interface level
This links applications at their individual interface levels. This often requires implementation of an adapter between the application interfaces and the message broker. message brokers are typically delivered with ‘out-of-the-box’ adapters for popular packaged applications such as SAP. Application-level integration is a form of EI that integrates different applications on the functional level. A function (which can be viewed as a business logic) in one application causes the execution of another function in a different application.
Process level
Process level integration takes application level integration a step further, allowing a business model, which defines the flow of business activities, to control inter-application processing links. This often leads to modeling and implementation of business process flow (or business process management), beyond the logic embedded within the existing applications. Conceptually, this is a layer above the application integration layer that deals with business processes rather than data and interfaces.
Middleware Types
Data Middleware
Data Middleware includes data gateways, data replication, as well as extract, transformation, and load (ETL) tools. They integrate applications by giving direct access to their databases, or through file transfers.
Message oriented Middleware (MOM)
Message oriented Middleware (MOM) facilitates the exchange of messages between applications allowing them to operate independent of each other, and yet remain loosely coupled. MOM provides an API that abstracts the application developer from having to deal with the intricacies of lower-level communication chores including guaranteed message delivery, automatic error detection, and retry amongst others.
Application servers
Application servers include Web-application servers for monitoring purposes. Object-request brokers offer a centralized, object-oriented integration framework or platform that provides built-in support for environment management and transaction services. This type of Middleware either partially or completely insulates the application program from the operating system. Application servers are used in a more synchronous environment where the primary focus is development of new applications rather than integration of existing applications.
Message brokers
Message brokers are high-level Middleware that provide a set of functions that is specifically related to connecting application programs or Middleware products that differ from each other. The message broker provides additional functionality including a variety of adapters, publish or subscribe communication techniques, intelligent message transformation including syntactic conversion and semantic transformation, content-based routing, process flow automation, and business process modeling.
Data Integration Features
- Data movement: This focuses on the transfer of data (directly) from one database to another.
- Data transformation: This processes and transforms data to fit or match the target database's format.
- Data services: This has the ability to transfer data through service.
- Data synchronization: This has the capability of enabling the same data to be made shareable amongst different systems.
- Changed data capture: This has the capability of loading differential change.
- Data quality: This has the ability of performing data standardization, constraint-checking, data validation, and rule-based cleansing.
Data Integration Advantages
- It is relatively inexpensive.
- It represents a proven approach that has been used successfully multiple times.
- The technology to implement this approach has been available for quite some time.
- Appropriate expertise is more readily available than other types of Data Integration.
- Since Data Integration does not involve any traditional kind of programming like Cobol or C++, it can produce results faster than them.
- In some scenarios, the only practical integration option is the DBMS interface.
- Data Integration is useful in situations where there is a need to wrap existing data sources to allow integration through encapsulated interfaces, like a data abstraction layer for example.
- It does not require any knowledge of the application code of Legacy Applications.
Data Integration Disadvantages
- Data Integration does not solve the problem of integration of business events, since a business event in one application does not trigger an execution of business logic in another. In that sense, it can be viewed as more of a stopgap arrangement.
- Data Integration does not scale well for OLTP type of application integration.
- Data Integration can mask important issues with the enterprise information systems since it accesses data without invoking the business logic in the application that ‘owns’ the data.
- In many cases, Data Integration may require a detailed knowledge of data semantics as well.
- Data Integration has been known to result in lower levels of integrity when business rules and data-owning (and validated) applications are bypassed.
Key Points to Real time Data Integration
- Business processes generally requires real time data processing.
- A data replication mechanism should be in place to copy information in more than one application.
- In real time Data Integration, business logic is applied to the data.
- The push mode of Data Integration is used during real time Data Integration.
- Data throughput is relatively small in the case of real time Data Integration.
- A two phase commit can be supported by real time Data Integration.
- Real time Data Integration is a costly option when compared to batch mode Data Integration (to be covered in the next section).
Key Points to Batch mode Data Integration
- Business models commonly include bulk processing of activities.
- Data transfer can be scheduled in a predefined time for it.
- Generally, business logic is not applied to the data in the case of a batch mode of Data Integration.
- This is a pull mode of Data Integration.
- Data throughput is comparatively higher in the case of a batch mode of Data Integration.
- Legacy applications can be supported very easily on it.
- This is a cheaper option when compared to real time Data Integration (covered in the previous section).
Data Integration approach
- Data consolidation: This is a technique that integrates data from multiple source systems and integrates them into a single persistent data store. This approach is generally adopted in data warehousing.
- Data federation: This provides a single virtual view of one or more source databases. Enterprise Information Integration (EII) is an example of a technology that supports a federated approach to Data Integration.
- Data propagation: This copies data from one location to another. This event-driven approach is usually operated online.
Data Integration Styles
Extract, Transform and Load (ETL)
- It works by extracting data in bulk from a source system, then bulk transforming it, and then finally bulk loading it into the target system.
- When it is used, the collection of data level records is medium at the most.
Enterprise Information Integration (EII)
- Providing real time 'read and write' access
- Transforming data for business analysis and data interchange
- Managing data placement for performance, currency, and availability
Enterprise Data Replication (EDR)
- Same instance of data is replicated across multiple data repositories
- Employs effective methods for disaster recovery and data mirroring
- Ensures an exceptional availability of data as there are multiple repositories of similar data repository
- Uses an extremely effective technique for load balancing
Master Data Management (MDM)
- Central repository of master data
- Single source of core business entities
- Reference data to transactional applications
- Useful for cross selling and up selling of products
- Core business entities can be modified at a single place
- Can be used to implement better CRM
WebSphere MQ Features
- Provides cross platform support
- Has the same messaging API on all platforms
- Guarantees a one-time delivery
- Employs a two-phase commit
- Enjoys a wide EI industry support
- Has the capability of triggering an application to process a message
- Capable of grouping messages
- Capable of performing load balancing
Message Broker Features
- Facilitates interaction among applications
- Acts as a shareable component that sits between information sources, or message publishers
- Sometimes, it also includes basic message-oriented Middleware and database Middleware
- Supports functionality of a variety of adapters
- Facilitates intelligent message transformation, and content-based routing
- Supports process flow automation and business process modeling
Message Oriented Middleware Features
- Can combine many input messages into a single message (many to one)
- Can split one input message into multiple messages (one to many)
- Employs a complex conditional logic, especially across repeating records
- Can hold or maintain state and variables, both within as well as across messages
- Processes communications synchronously
- Can perform data related activities beyond transformation and substitutions such as data de-duplication and data cleansing
WebSphere Message Broker Features
- Distributes information irrespective of its type
- Provides a mechanism for connecting, routing, and transforming business data from a variety of transports without a need to change the underlying applications generating the data
- Is built upon the WebSphere MQ
- Reduces the number of point-to-point interconnections
- Routes information in real time based on topic and content
- Validates and transforms in-flight messages
- Routes messages based on business rules which can be reevaluated
- Improves business agility by dynamically reconfiguring the distribution of information
- Provided access control in order to securely deliver personalized information
What is Service Oriented Integration (SOI)?
- SOI is an architectural style which requires a service provider, a service requestor, and a service description.
- SOI consists of a set of architectural principles, patterns, and criteria which address characteristics such as modularity, encapsulation, loose coupling, separation of concerns, reuse, and composability.
- SOI is in many ways a programming model, complete with standards, tools, and technologies such as Web Services.
The relationship between SOI and SOA
- SOI integrates both SOA and non-SOA applications: It exposes existing business functions as services using the service adaptor pattern.
- SOI integrates non-SOA applications as if they were services: It allows coexistence of architectures during transition using the service proxy pattern.
- SOI does not require an enterprise-wide initiative: Individual projects, regions, or LOBs can adopt SOI and show business benefits. The wider the adoption in the enterprise, the greater the business benefit. 4.Incrementally adopt SOA after SOI adoption without a significant penalty: Loose coupling of SOI components makes integration less brittle.
SOI Advantages
- It lowers the cost to add new interfaces and modify existing interfaces
- It easily, as well as incrementally expands integration services by managing to grow capabilities over time
- It works with single as well as multi-vendor integration environments
- It supports both synchronous as well as asynchronous interfaces
- It starts with the software an organization probably owns already, along with their existing integration architecture
- It begins return on investment with a single project itself and subsequently increases with every additional project
- SOI helps lower maintenance costs
Web Service Features
- Web Services is an implementation technology that is standards based, offering the promise of interoperability.
- Web Services can be used to implement multiple integration styles.
- Many of today's Web Service integration technologies use the point-to-point integration style, which has a number of disadvantages.
- Nowadays, quite a few hub-and-spoke Middleware have adapters that have Web Service interfaces.
- Web Services is often selected as an implementation technology for Service Oriented Architectures (though SOAs can be implemented using other technologies like XML as well).
Enterprise Service Bus(ESB) Features
- The ESB is a specific pattern of connectivity wherein multiple ESB configurations and topologies are possible.
- The topology you implement should be optimized to meet your unique business requirements.
- Your topology can change as your business requirements evolve.
Business Process Management (BPM) Features
- The optimization and automation of business processes allows a new level of flexibility and responsiveness to the changing requirements inherent in an on demand business environment.
- Through monitoring of the automated business processes, both IT performance and business goals can be measured, providing a rich capability for both the business executives and the IT executives to understand, evaluate and improve the organization’s capability to deliver business function that satisfies business requirements.
- A business process is a series of tasks executed in a specific order that an organization follows to achieve a larger business goal.
- WebSphere Process Server is a process engine that provides a hosting environment for business processing. It provides support for the Service Component Architecture (SCA) programming model. 5.WebSphere Process Server includes support for both Web Services Business Process Execution Language (WS-BPEL) based process flows and business state machines. It supports the integration of business rules and for the incorporation of tasks that are carried out by users (human tasks) in a business process.
What is Process Integration?
- An abstraction layer that synchronizes business processes by integrating business applications and human activities
- Integration that takes application level integration a step further by allowing a business model, which defines the flow of business activities, to control inter-application processing links
- A process that allows modeling and implementation of business process flow (in a way similar to business process management) outside the business logic embedded within existing applications
Process Integration Features
- Integrates enterprise with key partners, suppliers, and customers
- Responds swiftly to any customer demand, market opportunity, and external threat
- Automates business processes involving systems and people
- Offers easy exchange of real-time information across multiple participants, platforms, business applications, and organizations
- Makes optimal use of human resources to support business processes and deliver enterprise services
- Manages business process logic in accordance with business design in separation from implementation and integration details
- Increases business agility and flexibility by aligning business models with strategic objectives
Training - An Introduction to Enterprise Integration的更多相关文章
- 按照Enterprise Integration Pattern搭建服务系统
在前一篇文章中,我们已经对Enterprise Integration Pattern中所包含的各个组成进行了简单地介绍.限于篇幅(20页Word以内),我并没有深入地讨论各个组成.但是如果要真正地按 ...
- Enterprise Integration Pattern - 组成简介
近些年来,越来越多的Web应用正在逐渐向大型化的方向发展.它们通常都会包含一系列相互协作的子服务.在开发过程中,如何让这些子服务协同工作常常是软件开发人员所最为头疼的问题,如各个子服务之间的数据表示不 ...
- Self-Paced Training (1) - Introduction to Docker
helloworld: wget -qo- https://get.docker.com/ | sh sudo docker run hello-world sudo usermod -aG dock ...
- Enterprise Integration Patterns
https://camel.apache.org/enterprise-integration-patterns.html 企业集成模式,各种模式算法,挺棒的. https://camel.apach ...
- Java EE (7) -- Java EE 6 Enterprise Architect Certified Master(1z0-807)
Application Design Concepts and Principles Identify the effects of an object-oriented approach to sy ...
- Eclipse Jetty Integration
http://eclipse-jetty.sourceforge.net/ Introduction Eclipse Jetty Integration provides a launch confi ...
- [转] Spring Integration 系统集成
[From] http://blog.csdn.net/w_x_z_/article/details/53316618 pring Ingegration 提供了基于Spring的EIP(Enterp ...
- Spring---Spring Integration
1.概述 1.1.Spring Integration 提供了 基于spring 的 EIP(Enterprise Integration Patterns,企业集成模式)的实现: 1.2.Sp ...
- (转) [it-ebooks]电子书列表
[it-ebooks]电子书列表 [2014]: Learning Objective-C by Developing iPhone Games || Leverage Xcode and Obj ...
随机推荐
- Docker如何为企业产生价值?
一个 IT 系统大致可以分为: 应用程序 运行时平台(bin/framework/lib) 操作系统 硬件(基础设施) 开发人员的主要工作是应用程序的编码.构建.测试和发布,涉及应用程序和运行时平台这 ...
- 提高性能:用RequireJS优化Wijmo Web页面
上周Wijmo 2014 V2版本刚刚发布(下载地址), 有网友下载后发现仅仅使用了40个Widgets的一小部分,还需要加载全部的jquery.wijmo-pro.all.3.20142.45.m ...
- 如何安装Oracle Instant Client
Oracle Instant Client是Oracle发布的轻量级数据库客户端,下面我们来看看官方的定义: Instant Client allows you to run your applica ...
- Deep learning:四十三(用Hessian Free方法训练Deep Network)
目前,深度网络(Deep Nets)权值训练的主流方法还是梯度下降法(结合BP算法),当然在此之前可以用无监督的方法(比如说RBM,Autoencoder)来预训练参数的权值,而梯度下降法应用在深度网 ...
- Nodejs学习笔记(四)——支持Mongodb
前言:回顾前面零零碎碎写的三篇挂着Nodejs学习笔记的文章,着实有点名不副实,当然,这篇可能还是要继续走着离主线越走越远的路子,从简短的介绍什么是Nodejs,到如何寻找一个可以调试的Nodejs ...
- 微信小程序中rpx与rem单位使用
原作者: 小小小 来自: 授权地址 本文讲解rpx和rem应用于微信小程序,如果你还没有入门,建议先从下面看起: 微信小程序官方文档web app变革之remrpx单位官方文档rpx单位基础介绍 ...
- JAVA 设计模式 备忘录模式
用途 备忘录模式 (Memento) 在不破坏封装性的前提下,捕获一个对象的内部状态,并在该对象之外保存这个状态. 这样以后就可将该对象恢复到原先保存的状态. 备忘录模式是一种行为型模式. 结构
- JS Replace() 全部替换字符的用法
好久不写js了,今早遇到替换字符的,就浪费了点时间,由此,要记录下来.replace()方法:楼主有个字符串,需要替换掉其中的一些字母,如: var test='123helo123boy123hi' ...
- Pig 实现关键词匹配
1. 问题描述 收集日志avro数据中有两个Map字段appInstall.appUse分别表示已安装的app.正在使用的app,且key值为app的名称,value值为app使用信息.现在要得到一份 ...
- C#多线程技术总结(同步)
二.串行(同步): 1.lock.Monitor--注意锁定的对象必需是引用类型(string类型除外) 示例: private static object syncObject = new obje ...