9.2 XML as a Medium of Exchange

Team-Fly    

 
Internet-Enabled Business Intelligence
By William A. Giovinazzo
Table of Contents
Chapter 9.  eXtensible Markup Language

9.2 XML as a Medium of Exchange

While XML may be an improvement over both SGML and HTML in general, we are concerned with specifically how XML helps the data warehouse architect. As we shall see in this section, the objectives of XML (extensibility, structure, and validation) make it especially well suited for BI applications. The Internet expands the scope of IEBI, providing additional sources of data as well as new channels for the distribution of information. This is shown in Figure 9.2. In this diagram, we see that XML can serve as the main interface for the exchange of data between systems that are both internal and external to the organization. These systems can be both the source of data feeding our IEBI system as well as the destination of the IEBI system's output.

Figure 9.2. XML in the IEBI data flow.

graphics/09fig02.gif

Let's begin by examining the source side of the equation. One of the challenges in IEBI is the integration of data from heterogeneous systems. XML simplifies this task. In Figure 9.3, receiving XML data is compared with receiving a standard ASCII file. At the heart of receiving the standard ASCII file is an application that makes sense out of the file. This application parses that data, validates it according to some set of business rules, and loads it into memory. On the XML side, a Document Type Definition (DTD) describes the structure of the XML document that contains the input data. A standard XML parser receives as input both the XML document and the DTD. It then parses the document according to the description in the DTD. The data is then passed to the ETL process, which incorporates it into the data warehouse.

Figure 9.3. XML ASCII input comparison.

graphics/09fig03.gif

In the ASCII environment, as the business rules change or as the additional file types are added to the input stream, the parsing application must be updated. This of course requires regeneration of code as well as testing and integration of the new code into the existing system. In the XML environment, the DTD reflects changes in the structure of the input as well as changes in the business rules. As the environment changes, so does the DTD. The process that actually performs the parsing remains the same. We will see later in this chapter that it is far simpler to maintain a DTD than an actual application.

Quite often the structure of the input may vary with the source. Perhaps there are multiple suppliers, each using their own ASCII file structure. In such cases, either a single, very complex application is written to process each of the file types or multiple parsing programs are maintained for each file type. Both solutions increase the complexity of the IEBI system. On the XML side, a separate DTD is maintained for each file type. The parsing program simply parses the input XML document, validating it against its DTD.

We can now apply this XML data integration process to our XML-based B2B exchange. Referring to Figure 9.2, we can see how to use XML to monitor activities on our XML-based B2B exchange. Information is passed between participants in the exchange via XML documents. A listener monitors the activities between the participants of the exchange, copying the XML documents. These documents are then incorporated into the data warehouse, where they are merged with data from other parts of the organization.

Figure 9.2 also shows how XML can be used in the distribution of data. Just as we expect partners to share their strategic information with us for their benefit, we in turn benefit by sharing our own strategic information with them. We can of course do this using an XML report server. The data is generated once. Then, using the XML structure, it is divided and distributed to both partners and customers based on their specific needs. While each partner gets a copy of the same report, the data they receive is tailored to their specific needs. Customers, on the other hand, receive a completely different set of reports . All of this information is divided using XML structures.

We can see that using XML allows us to provide different views of the same data. As shown in Figure 9.2, the reports server performs that actual extraction of the data from the data warehouse. The data is stored in the reports server in an XML document. The data is then distributed to the individual users from the reports server. The content and structure of the data is based on the needs of the individual user . For example, C-level executives may receive aggregated data of the performance of all regions , while regional managers receive detailed information on the performance of their individual region.

Another benefit of the XML structure is the ability to send a complete structure to an individual PC or workstation and push the processing of that structure down to that workstation. For example, we have a multidimensional structure that an analyst may wish to manipulate. We can send the entire structure to the analyst, who can then take the structure and perform whichever multidimensional operations he or she may choose locally. This has the advantage of allowing the analyst to work on the data when he or she is unable to connect to the Internet.

We can see in Figure 9.2 that there are several areas where IEBI can leverage the capabilities of XML. These capabilities can be summarized as

  1. The validation and extensibility aspects of XML make it useful in bringing together data from many independent systems.

  2. The structure capabilities make it possible to generate a report once while tailoring the final output of that report to the specific user's needs.

The structure capabilities also enable much of the processing to be offloaded from the central data warehouse to the middle- tier servers.


Team-Fly    
Top
 


Internet-Enabled Business Intelligence
Internet-Enabled Business Intelligence
ISBN: 0130409510
EAN: 2147483647
Year: 2002
Pages: 113

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net