Microsoft released its latest incarnation of an earlier Windows Azure EAI and EDI Labs incubator project for cloud-based enterprise application integration and electronic data interchange at TechEd North America 2013. The Windows Azure BizTalk Services (WABS) preview lets developers combine Message Bus 2.1 and Workflow 1.0 with BizTalk Server components to manage message itineraries from the Azure cloud to on-premises line-of-business apps, at costs ranging from 6.5 cents to $4 per hour. (Hourly prices will double when WABS enters general availability.)
- Message-oriented-middleware (MOM) to provide connectivity between applications by manipulating and passing messages in queues;
- Adapters to standardize connections between common packaged applications and message formats, such as Electronic Document Interchange (EDI, ANSI X12 and UN/EDIFACT dialects) between trading partners over HTTP (AS2) or FTP (AS3) transports, as well as Web services (AS4);
- Workflow management tools to orchestrate transactions initiated by business-to-business (B2B) message flows
BizTalk Server (BTS), which Microsoft introduced in 2000, is a packaged enterprise service bus (ESB) originally intended as MOM for constructing on-premises EAI and B2B solutions. BTS 2013 enables graphical process modeling and customization with Visual Studio 2012 and provides a Windows Communication Foundation (WCF) Adapter set for multiple transports. The included BizTalk Adapter Pack provides connectivity with 15 Line-of-Business (LOB) systems, such as SAP, Oracle Database and eBusiness Suite, IBM WebSphere and DB2, Seibel, PeopleSoft, JD Edwards and TIBCO.
Running the WABS numbers
Implementing a BTS solution requires a major up-front investment in license fees, which can be as much as $50,000 ($43,000 for the Enterprise edition on up to a four-core processor, plus $3,400 for SQL Server standard edition on two cores and $1,300 for two two-core Windows Server 2012 instances.) Add $25,000 for servers, networking hardware and data center space, as well as $25,000 in commissioning costs. A $100,000 bill before paying BizTalk consultants and developers means BTS on premises isn't practical for most small and many medium-size businesses. Substituting the Standard edition, which doesn't support scaling, reduces licensing costs to about $10,000, but there remains a hefty up-front investment for a small firm.
Windows Azure IaaS offers Virtual Machines (WAVMs) with images preconfigured with BTS Standard or Enterprise editions, which range in cost from $0.84 (Standard edition on a Medium-size instance) to $6.52 (Enterprise edition on an Extra Large instance) per hour. These prices translate to about $625 to $4,851 per month, based on 544 hours. This pay-as-you-go approach eliminates the up-front cost and lets you quickly scale up your BTS installation as business increases. However, you're required to configure, manage and protect your cloud servers. An advantage of running BTS in a WAVM is the capability to move BizTalk applications between the cloud and an on-premises data center.
Small firms and independent developers and consultants get a break with Windows Azure BizTalk Services (WABS), which ranges in cost during its preview stage from $0.065/hour (~$48/month) for the Developer edition to $4.03/hour ($2,998/month) for the Premium edition, plus standard Windows Azure data transfer charges. These hourly/monthly prices (see Table 1) reflect a 50% preview discount. Each version has twice the compute resources of its predecessor: Basic has twice the resources of Developer, Standard has twice the resources of Basic and Premium has twice the resources of Standard.
Prices reflect a 50%discount during the preview period. Standard Windows Azure data transfer charges apply. A scalability unit corresponds to a BizTalk Server unit, which represents a single CPU core. (Data is from the Introduction to Windows Azure BizTalk Services session at TechEd North America 2013.)
Bridging message sources and destinations
BizTalk Services' EAI Bridge is a single message processing unit with three parts:
- Sources are where messages originate;
- A Pipeline processes flat-file, XML and pass-through messages;
- Destinations are where the messages are sent.
Figure 1 shows the types of supported sources and destinations for an EAI bridge:
The pipeline's V, E, T and E are abbreviations for Validate, Extract, Transform and Enrichment actions for messages. (Source: Introduction to Windows Azure BizTalk Services session at TechEd North America 2013.)
Table 2 lists the bridging and related features offered by each of the four WABS versions. Nitin Mehrota's Using EAI Bridges to Send Flat File Messages from FTP Server to On-Premise SQL Server describes a simple but common hybrid EAI scenario.
SB standard protocol is an abbreviation for the Windows Azure Service Bus (WASB.) The Premium version's BizTalk Standard License for on-premises use is intended for creating hybrid BizTalk applications.
Developing WABS Applications
Installing the WABS SDK adds BizTalk Service and BizTalk Service Artifact templates to Visual Studio 2012 (see Figure 2.).
BizTalk Service projects contain a single bridge configuration file to define the message flow itinerary between source and destination endpoints with various types of bridges. (See Figure 3.)
The design surface restricts adding bridge connections to compatible Sources and Destinations only.
BizTalk artifacts consist of XML schemas and transforms, certificates and .NET assemblies. A BizTalk Service Artifacts project provides an XML schema editor that's similar to the BizTalk Server schema editor and an XML schema mapper that provides many more "functoids" for manipulating message data than the BizTalk Server version (see Figure 4.) Alternatively, you can write an XSL Transform or import XSLT code from a file. Richard Seroter's Walkthrough of New Windows Azure BizTalk Services blog post provides an illustrated guide to using WABS' graphical tools.
You can replace the default XML schemas with your own *.xsd files and edit them with Visual Studio's XML schema editor.
Deploying Hybrid WABS with the BizTalk Adapter Service
The WABS SDK download includes a BizTalk Adapter Service executable that you deploy on premises to connect a Service Bus Relay endpoint to LOB systems (see Figure 5).
Installing the BizTalk Adapter Service, which runs under IIS, requires prior installation of the BizTalk Adapter Pack 2013, 32-bit edition for use with Visual Studio 2012. The Adapter Pack includes the following items:
- Oracle Database adapter
- Oracle E-Business adapter
- SAP adapter
- Siebel adapter
- SQL [Server] adapter
Tomasso Groenendijk's Installing Microsoft BizTalk Adapter Pack on BizTalk Server 2013 Beta blog post provides a fully illustrated walkthrough with the beta version's installation files. The BizTalk Server Team's Nitin Mehrota published Using Service Bus EAI and EDI Labs to Integrate with an On-Premises SAP Server to the Windows Azure Web site on June 3, 2013. (Service Bus EAI and EDI Labs was the name of WABS' predecessor.)
Kent Weare offers a Windows Azure BizTalk Services Preview (Part 2) –BizTalk Adapter Services SAP Integration tutorial post with details for using the SAP adapter with an on-premises SAP installation (see Figure 6). His Part 1 describes basic WABS concepts, SDK installation and the Visual Studio experience.
WABS offers business of all sizes the opportunity to evaluate the benefits of a packaged EAI and B2B/EDI message processing in the Azure cloud at very low cost during the preview period. Pay-as-you-go licensing for a high-availability cloud service with a 99.9 percent SLA after general availability avoids the high up-front cost of deploying the corresponding BizTalk Server 2013 on premises. Hybrid WABS deployments with LOB software supported by BizTalk Adapters are certain to have a much lower total cost of ownership than developing EAI or B2B/EDI message processing applications from scratch and managing the required infrastructure.