• No results found

Service-oriented integration 29

In document IBM Information Server Blue Book (Page 35-49)

IBM InformationServer simplifiesthecreationofshared dataintegrationservices byenablingintegrationlogictobe usedbyanybusinessprocess.

Invoking service-readydataintegrationtasks ensuresthatbusinessprocessessuch asquotegeneration,orderentries, andprocurementrequestsreceivedatathatis correctlytransformed,standardized,andmatchedacrossapplications,partners, suppliers, andcustomers.

Manyorganizationsaredesigning theirnextgenerationofinfrastructureand applicationsasservices.Implementinga service-orientedarchitecture(SOA) offers these benefits:

Adaptability

Functionalcomponentscanbereassembled quicklyandinnew ways.

Consistency

Corerulesforhandlingdataand processesarereusedacrossprojects.

Reducedcost

Increased reuseanda singlepointofmaintenancespeedtimetovalue and reducedevelopment expense.

Federated ownership

Eachserviceisownedandmaintainedindependentlybyitsown group.

IBM InformationServer providesanSOAinfrastructurethatprovides these capabilitiesbyhelpingyoucreateshareddataintegrationservices.Acommon services layermanageshowservicesare deployedfromanyoftheproduct

modules. Cleansingandtransformationrulesorfederatedqueriescanbe published asshared servicesbyusinga consistentandintuitive graphicalinterface,and managedafterpublication usingthesameinterface.

Introduction to service-oriented integration in IBM Information Server

IBM InformationServer providesstandardservice-orientedinterfacesforenterprise dataintegration.Thebuilt-inintegrationlogicofIBMInformationServercaneasily be encapsulatedasserviceobjectsthatareembedded inuserapplications.

Theseserviceobjectshavethefollowingcharacteristics:

Alwayson

Theservices arealwaysrunning, waitingforrequests.Thisabilityremoves theoverheadofbatchstartupandshutdownand enablesservices to respondinstantaneouslytorequests.

Scalable

Theservices distributerequestprocessingand stopandstart jobsacross multiple WebSphereDataStageservers,enabling highperformancewith large,unpredictablevolumesofrequests.

Standards-based

Theservices arebasedonopenstandardsand caneasilybeinvokedby standards-basedtechnologiesincludingenterpriseapplication integration (EAI)andenterpriseservicebus(ESB)platforms,applications,and portals.

Flexible

Youcaninvoketheservicesbyusingmultiplemechanisms(bindings)and choose frommanyoptionsforusingtheservices.

Manageable

Monitoringservicescoordinate timelyreportingofsystem performance data.

Reliable andhighlyavailable

IfanyWebSphereDataStage serverbecomesunavailable,it routesservice requeststoa differentserverinthepool.

Reusable

Theservices publishtheirownmetadata, enablingthemtobefoundand calledacrossanynetwork.

Highperformance

Loadbalancing andtheunderlyingparallelprocessingcapabilitiesofIBM InformationServercreatehighperformance foranytype ofdatapayload.

Adataintegrationserviceiscreatedbydesigningthedataintegrationprocesslogic in IBMInformationServer andpublishing itasaservice.Theseservicescanthen be accessedbyexternal projectsandtechnologies.

WebSphereInformationServicesDirectorprovidesa foundationforinformation services byallowing youtoleveragetheothercomponentsofIBMInformation Server forunderstanding,cleansing,and transforminginformationanddeploying those integrationtasksasconsistentandreusable informationservices.

AsFigure16shows,service-readydataintegrationjobs canbeusedwith process-centrictechnologiessuchasEAI,businessProcessManagement(BPM), ESB,and applicationservers.

Figure16.Service-readyintegrationtasksworkwithbusinessprocesses

Scenarios for service-oriented integration

Thefollowingexamples showhow customershaveusedservice-oriented architecturesinIBMInformationServer.

Pharmaceuticalindustry:Improvingefficiency

Aleadingpharmaceuticalcompanyneededtoincludereal-time datafrom clinicallabs initsresearchanddevelopment reports.Thecompanyused WebSphereDataStagetodefineatransformationprocess forXML

documents fromlabs.Thisprocess usedSOAtoexposethetransformation asa Webservice,allowing labstosenddataand receivean immediate response.

Pre-clinicaldataisnowavailabletoscientific personnelearlier,allowing labscientiststoselectwhichdatatoanalyze.Now,onlythebestdatais chosen, greatlyimprovingscientists’efficiency.

Insurance:Validatingaddressesin realtime

An internationalinsurancedataservices companyusesIBMInformation Server tovalidateandenrichpropertyaddressesthroughWebservices.As insurance companiessubmitlistsofaddressesforunderwriting,services standardizetheaddressesbasedontheirrules,validate eachaddress, matchtheaddressestoalistofknown addresses,and enrichtheaddresses with additionalinformationthathelpswith underwritingdecisions.The companynowautomates80percentoftheprocessandeliminatedmostof theerrors.Theprojectwassimplified byusingtheSOAcapabilitiesofIBM InformationServerand thestandardization andmatchingcapabilitiesof WebSphereQualityStage.

Where SOA fits in a business context

By enablingintegrationtasks asservices,IBM InformationServer becomesacritical componentoftheapplicationdevelopment andintegrationenvironment.TheSOA infrastructureensures thatdataintegrationlogicthatisdevelopedinIBM

InformationServer canbe usedbyanybusinessprocess.

SOAallowsyoutousebothanalyticaland operationaldata.Thebestdatais available atalltimes,toallpeopleandtoall processes.Thefollowingcategories representcommonusesofSOAinabusinesscontext:

Real-time datawarehousing

Enables companiestopublishtheirexistingdataintegrationlogicas services thatcanbe calledinrealtimefromanyprocess.Thistype of warehousing enablesuserstoperformanalyticalprocessingandloadingof databased ontransactiontriggers,ensuringthattime-sensitivedatainthe warehouseiscompletelycurrent.

Matchingservices

Enables dataintegrationlogictobepackagedasa sharedservicethatcan be calledbyenterpriseapplicationintegrationplatforms.Thismethod allowsreference data(suchascustomer,inventory,andproductdata)tobe matched toandkeptcurrentwith amasterstorewith eachtransaction.

In-flight transformation

Enables enrichmentlogictobe packagedassharedservices sothat capabilitiessuchasproductnamestandardization,addressvalidation,or dataformattransformationscanbe sharedand reusedacrossprojects.

Enterprisedataservices

Enables thedataaccessfunctionsofmanyapplicationstobeaggregated and sharedina commonservicelayer.Insteadof eachapplicationcreating itsownaccesscode,theseservicescanbe reusedacrossprojects,

simplifying developmentandensuringahigher levelofconsistency.

AsFigure17shows,oneofthemajoradvantagesof usinganSOAapproachisthat youcancombinedataintegrationtasks withtheleadingenterprisemessaging, EnterpriseApplicationIntegration(EAI),and BusinessProcessManagement (BPM) productsbyusingbindingchoices.

SincemostmiddlewareproductssupportWebservices,thereareoftenmultiple optionsforhowthis isdone.For example,WebSphereintegrationproductssuchas WebSphereFederationServer orWebSphereBusiness IntegrationMessageBroker caninvokeIBM InformationServer servicestoaccessservice-readyjobs.

A closer look at service-oriented integration in IBM Information Server

IBM InformationServer providesa SOAinfrastructurethatusesdata transformation processesthatare createdfromneworexistingWebSphere

DataStage orWebSphereQualityStagejobsorfederated queriesthatarecreatedby WebSphereFederationServer andexposesthemasaset ofservicesandoperations.

Afteranintegrationservices isenabled,anyenterpriseapplication, .NetorJava developer, MicrosoftOfficeorintegrationsoftwarecaninvoketheservice byusing a bindingprotocolsuchasWebservices.

The followingfeaturesarecentral totheIBM InformationServer SOA infrastructure:

Common administrativeservices

Hostand publishservicemetadata,exposeachoiceofbindingsforeach

Figure17.IBMInformationServerusedwithWebSphereproducts

service,andprovideinfrastructureservices suchassecuritymanagement, session management,logging,andmonitoring.

Foundationcomponents fordevelopment

Providea singlesetof datatransformation rulesforanalyticaland

enterpriseapplications,businessactivitymonitoring,federateddataaccess, and businessprocessintegration.

Any-to-any connectivity

Provides technologyindependencefordatatransformation,

standardization,matching,and legacydataaccessbyusingWebservices (.NET andJava)or EnterpriseJavaBeans(EJB)interfacebindings.

Service-ready integration

Aservice-readydataintegrationjobacceptsrequestsfromclientapplications, mappingrequestdatatoinputrowsandpassingthemtotheunderlyingjobs.A jobinstance caninclude databaselookups,transformations, datastandardization and matching,andotherdataintegrationtasksthataresupplied byIBM

InformationServer.

Figure18showsaWebSphereDataStagejobwith aserviceinputandservice output.

Thedesignof areal-timejobdetermineswhetherit isalways runningorrunsonce tocompletion.All jobsthatareexposedasservicesprocessrequestsona 24-hour basis.TheSOAinfrastructuresupportsthreejobtopologiesfordifferentloadand workstylerequirements:

Batch jobs

Topology Iusesneworexistingbatchjobsthatareexposedasservices.A batchjobstartsondemand.Eachservice requeststartsoneinstanceofthe jobthatrunstocompletion.Thisjobtypicallyinitiatesa batchprocessfrom a real-timeprocessthatdoesnotneeddirectfeedbackontheresults.This topology istailored forprocessingbulkdatasetsandiscapableof acceptingjobparametersasinputarguments.

Batch jobswitha ServiceOutputstage

Topology IIusesanexistingbatchjoband addsanoutputstage.The ServiceOutputstage istheexitpointfromthejob,returningoneormore rowstotheclientapplicationasa serviceresponse.AsFigure19onpage 34shows,thesejobs typicallyinitiatea batchprocessfroma real-time process thatrequiresfeedbackor datafromtheresults.Thistopology is designed toprocesslargedatasetsandcanacceptjobparametersasinput arguments.

JobswithaServiceInput stageandServiceOutputstage

InTopologyIII,jobs usebotha ServiceInputstageanda ServiceOutput stage.TheServiceInputstage istheentrypointtoa job,accepting oneor more rowsduring aservicerequest.Thesejobsare alwaysrunning.This topology istypicallyusedtoprocesshighvolumesofsmallertransactions where responsetimeisimportant. Itistailoredtoprocess manysmall requestsratherthana fewlargerequests.Figure20showsan exampleof this topology.

Service Output CustomerDB

D1Orders

Rows

ReturnedRows XML Output

Order_Transformation

Figure19.BatchjobswithaServiceOutputstage

Service Input

Service Output ODBC

DSLink1

DSLink2

DSLink3

DSLink4

DSLink5 XML Output

XML Input

Transformer

Figure20.AmorecomplexjobwithServiceInputstageandServiceOutputstage

SOA components in IBM Information Server

Therun-time componentsthatenableservice-orientedarchitecturesarecontained intherun-timeenvironment ofthecommon servicesofIBMInformationServer.

ThesecomponentsareJ2EEapplicationsthatdistributerequeststoWebSphere DataStage,WebSphereQualityStage,or WebSphereFederationServer basedon load-balancing algorithms.Commoncoreservicesinclude securityand logging.

Threshold-balanced parallelism

Therun-time environmentcombinesparallelprocessingwith loadbalancingand distribution toprovidehighperformancedataprocessing. Itbalancesservice requestsbyroutingthemtoWebSphereFederationServerorWebSphereDataStage servers,eachof whichtakes advantageofpipelinetechnologyfor parallel

execution.

Threshold-balancedparallelismenablesSOAplatformstoautomaticallyadjust resources basedonthresholdsthatyousetwhenyoudefineservices.Thecommon services startand stopjobsinresponsetoloadconditions.Thecombinationof these capabilitieswith parallelpipeliningisuniquetoIBMInformationServerand enablesIBMInformationServertoprocess dataintegrationtasksfasterthanany othertechnology.

Multiple binding support

Virtuallyanyprotocolcanbe madetoadheretoSOAprinciples.IBM Information Server supportsthisapproach,enablingthesameservicetosupportmultiple protocolbindings,all definedwithin theWSDLfile.

An SOAinterfaceshouldbe abletohandlemultiplemechanisms(bindings)for calling services.Thisimproves theutility ofservicesandthereforeincreasesthe likelihood ofreuseandadoptionacrosstheenterprise.

Projects forwhichWebservicesarenota viableoptionbecauseofperformance or architectural requirementscanstillleveragetheservices byusinganinterface better suitedtotheirrequirements.WebSphereInformationServicesDirector can publishthesameserviceusingdifferentbindings:

SimpleObjectAccessProtocol(SOAP) overHTTP(Web services)

Anyapplicationthatcomplies withXMLWebservicescaninvokea WebSphereFederationServer orWebSphereDataStageintegrationprocess asa Webservice.TheseWebservicessupport thegenerationofliteral document-styleand SOAPencodedRPC-styleWeb services.

EnterpriseJavaBeans(EJB)

For Java-centricdevelopment, WebSphereInformationServicesDirectorcan generatea J2EE-compliantEJB(statelesssession bean)where eachdata transformation serviceisinstantiated asa separatesynchronousEJB method call.

Thedesigndoesnotdependonthebindingchoice.AslogicisbuiltinWebSphere DataStage andWebSphereQualityStage,thedesignerdoesnotneed tobeawareof how itwillbeused.Aftertheserviceisdeployed,additionalbindingscaneasilybe implemented withoutchanging thelogic.

WebSphere Information Services Director tasks

WebSphereInformationServicesDirectorprovidesanintegratedenvironment for designing servicesthatenablesyoutorapidlydeployintegrationlogicasservices withoutassumingextensivedevelopmentskills.

With asimple,wizard-driveninterface, inafewminutesyoucanattachaspecific bindingand deployareusable integrationservice.WebSphereInformationServices Director alsoprovidesthese features:

v

Load-balancingandadministratorservicesfor catalogingand registeringservices v Sharedreportingandsecurityservices

v Ametadataservices layerthatpromotesreuse oftheinformationservices by actuallydefiningwhattheservicedoesandwhatinformationitdelivers.

Information providers

An informationprovider isboththeserverthatcontainsunits thatyoucanexposeas services andtheunitsthemselves,suchasWebSphereDataStageandWebSphere QualityStagejobs orfederatedSQLqueries.

Eachinformationprovidermust beenabled.Toenabletheseproviders,youuse WebSphereInformationServicesDirector.

YouusetheAddInformationProviderwindow toenableinformationproviders thatyouinstalledoutsideofIBMInformationServer,suchasWebSphereDataStage servers orfederatedservers.

Creating a project

Aprojectisacollaborativeenvironmentthatyouusetodesignapplications, services, andoperations.

All projectinformationthatyoucreatebyusingWebSphereInformationServices Director issavedinthecommonmetadatarepositorysothatitcaneasilybe shared amongotherIBM InformationServer components.

Youcanexportaprojecttobackupyour workorshare workwithotherIBM InformationServer users.Theexportfileincludesapplications,services,operations, and bindinginformation.

Creating an application

An applicationisacontainerfora setofservices andoperations.Anapplication contains oneormoreservicesthatyouwanttodeploy togetherasanEnterprise Archive(EAR)fileonanapplicationserver.

All design-timeactivity occursinthecontextof applications:

v Creatingservicesand operations

v Describinghow messagepayloadsandtransport protocolsareusedtoexposea service

v Attachinga referenceprovider, suchasaWebSphereDataStagejoboranSQL query,toanoperation

Creating anapplicationisasimple taskfromtheDevelopnavigatormenuofthe IBM InformationServer console.Youcanalso exportservicesfromanapplication before itisdeployedand importtheservicesintoanotherapplication.

Youcanchangethedefaultsettingsforoperationalpropertieswhenyoucreatean application orlater,asFigure21shows.

Creating a service

An informationserviceexposesresultsfromprocessingbyinformationproviders suchasDataStageserversand federatedservers.Adeployedservice runsonan application serverandprocessesrequestsfromserviceclientapplications.

An informationserviceisa collectionofoperations thatareselectedfromjobs, maps,federatedqueries,orotherinformationproviders.Youcangroup operations inthesameinformationserviceordesignthemin separateservices.

Youcreateaninformationservicefora setofoperations thatyouwanttodeploy together.Youselecta projectandanapplication withintheprojectintheSelecta Viewarea,asFigure22onpage38shows.

Figure21.Settingoperationalpropertiesforanapplication

Whenyoucreatea service,youspecifysuchoptionsasname,base packagename for theclassesthataregeneratedduring thedeploymentof theapplication,and optionallythehomeWebpageand contactinformationfortheservice.

Afteryoucreatetheservice,youattachabindingfortheservice:

SimpleObjectAccessProtocol(SOAP) overHTTP

ToexposeaninformationserviceasaWebservice,attachtheSOAPover HTTPbindingtotheinformationservice.

EnterpriseJavaBeans(EJB)interface

Ifyour serviceconsumerswanttoaccessaninformationservicethroughan EJB interface,attachtheEJB bindingtotheinformationservice.

Deploying applications and their services

Youdeployan applicationonWebSphereApplicationServer toenablethe informationservices thatarecontainedintheapplicationto receiveservice requests.

The DeployApplicationwindowinWebSphereInformationServicesDirector guides youthrough theprocess,asFigure23onpage39shows.

Figure22.Identifyingaserviceforanewapplication

Youcanexcludeoneormore services,bindings,andoperationsfromthe

deployment,changeruntimepropertiessuchasminimumnumberofjobinstances, or,forWebSphereDataStagejobs,setconstantvaluesforjobparameters.

WebSphereInformationServicesDirectordeploystheEnterpriseArchive(EAR)file ontheapplicationserver.

SOA and data integration

Enabling anIBMInformationServerjobasa Webserviceenablesthejobto participate invariousdataintegrationscenarios.

Data integrationenablesuserstofederateheterogeneousdataacrossseveraldata sources.SOAallowsWebSphereDataStagejobstoparticipateinfederatedqueries byusingWebSphereFederation Server.

Figure24onpage40showsabusinessscenarioinwhichacustomerservice manager needstointegrateinformationacrossmultipledatastorestoaddressnew customer complaints.Themanagerneedstolookattheactualinvoicetocompare recent shipmentdatainXMLformatplusthehistoricaldatainthewarehouseto ensurethatthedataisaccurate.

Figure23.Deployinganapplication

Intheexample,real-timeXMLdataispulledoutof amessagequeuebyusing WebSphereDataStage.TheWebSphereDataStagejobreusesthesame

transformation logicthatit usedtopopulatethewarehouse.WebSphere InformationIntegrator ContentEditionisinvokedtodisplayactualcustomer documents thatresideona documentmanagementsystem.

Figure25onpage41showshowthedatafromeachsourceiscombinedtopresent a virtualview ofthemostrecent salesinformation.Thefollowingsequenceis labeledinthediagram.

1. XMLdataispulledfromaqueuebyusinga Shipto_Numbertoidentifythe XMLfileswiththecorrectSales_order_number,quantityof Cases_shippedand Gross_sales.

2. AWebSphereDataStagejobthatisdeployed asaWebserviceprovides real-timetransformation offacttabledata.Lookupsareperformedtolocate valuesforBillto_keyandShipto_keysurrogatekeys.

3. KeysthatareacquiredfromtheWebSphereDataStagelookupare usedtoquery thedatawarehousetoobtaincompanynamesthatcorrespondtothekeys.

4. TheSales_order_numberisusedtoretrievetheURLsoftheappropriate customer invoicesfromthedocumentrepository.

Figure24.CombiningWebSphereInformationIntegrationproducts

Information resources for WebSphere Information Services Director

AvarietyofinformationresourcescanhelpyougetstartedwithWebSphere

AvarietyofinformationresourcescanhelpyougetstartedwithWebSphere

In document IBM Information Server Blue Book (Page 35-49)

Related documents