The Data Compression News Blog

All about the most recent compression techniques, algorithms, patents, products, tools and events.

Subscribe

Posts: RSS Feed
Comments: RSS Feed

Sponsored Links

Recent Posts

  • Bijective BWT (2 Comments)

    David Scott has written a bijective BWT transform, which brings all the advantages of bijectiveness to BWT based compressors. Among other things, making BWT more suitable for compression-before-encryption and also give (slightly) better compression.

  • Asymmetric Binary System (107 Comments)

    Jarek Duda’s “Asymmetric Binary System” promises to be an alternate to arithmetic coding, having all the advantages, but being much simpler. Matt has coded a PAQ based compressor using ABS for back-end encoding. Update: Andrew Polar has written an alternate implementation of ABS.

  • Precomp: More Compression for your Compressed Files

    So many of today’s files are already compressed (using old, outdated algorithms) that newer algorithms don’t even get a chance to touch them. Christian Schneider’s Precomp comes to rescue by undoing the harm.

  • On2 Technologies is Hiring

    There aren’t too many companies working on cutting edge codecs, and of those few this one is hiring. Best of luck.

  • China’s AVS Specifications Available (2 Comments)

    Its old news that China has developed their own Advanced Video Standard to avoid high licensing fees. English translation of the standard is now available, along with the IPR policy. Finally something technical that you can get your hands on to feed your appetite.

Is Compression the Solution for Bloated XML in SOA? No

Posted by Sachin Garg on 20th August 2006 | Permanent Link

SOA infrastructure relies heavily on XML to be the default language used for communication, and effective SOA performance management requires efficient ways of handling XML. A close look at the standards stack for SOA shows that XML is the foundation for all the Web Services standards like XML Schema, SOAP, WSDL, and UDDI.

The verbosity of text-based representation by itself also tends to increase the data size in SOA payloads. So XML data representation not only increases data storage and data transfer times in SOA but also increases data parsing times in the context of a SOA, creating a performance challenge for it.

An extreme solution can be to use dedicated XML Hardware, network devices that offload overtaxed servers by processing XML at a higher speed.

Other options include representing XML in a binary format such as Abstract Syntax Notation number One (ASN1).

New Binary XML Standards (XOP, MTOM & RRSHB) are being developed to solve the problem of exchanging large documents between the service provider and the consumer. These schemas address the problem of fitting binary data directly into an XML message.

One obvious solution to solve SOA performance management problems rely on the notion of XML compression. Needless to say, specific application needs are very decisive in choosing a compression technique from the myriad of techniques available.

As XML is mostly text based, something generic like deflate, bzip2 or ppmd can be used. And there are more XML specific options available too, like XMill or XMLPPM which use the nodal structure of XML documents to achieve better compression.

But enough said about compression. This ZDNet blog post puts forward a very refreshing perspective: Can good design overcome the compulsion to simply throw new hardware and systems at a problem?

Popular compression tools are available for those who must deal with the consequences of bad design. In my mind, Binary XML might just distract us from focusing on good design.

Being a data compression enthusiast, I may not be the person from whom you would expect to hear this, but I have to agree with this.

XML compression can be really great to “patch-up” the inefficiencies faced by SOA applications in handling large XML payloads, and fortunately there are solutions available. But nothing beats good design which can eliminate the problem at source.

4 Responses to “Is Compression the Solution for Bloated XML in SOA? No”

  1. Matt Says:

    Good design will not solve the problems inherent with xml

    http://www.idealliance.org/proceedings/xml...
    http://www.w3.org/TR/xbc-properties/

  2. Sachin Garg Says:

    Thanks for the links Matt, XML ofcourse has its limitations and the alternates are welcomed.

    But irresponsible designs and bloated documents cannot be blamed on XML’s limitations. My guess is that Dave’s concern (in the original ZDNet post) is that problems which can and should be solved by better design should not get patched by using compression or binary formats.

  3. » Can good design compensate for XML bloat? | Service-Oriented Architecture | ZDNet.com Says:

    [...] In this new post, Sachin Garg picks up on this theme with a thoughtful discussion of the options pertaining to XML compression. Garg agrees with the line of thinking that "problems which can and should be solved by better design should not get patched by using compression or binary formats." He adds that even though he is a "data compression enthusiast," other options need to be looked at for SOA: "XML compression can be really great to ‘patch up’ the inefficiencies faced by SOA applications in handling large XML payloads, and fortunately there are solutions available. But nothing beats good design which can eliminate the problem at source." [...]

  4. boomhauer Says:

    Sorry but this argument is worn out and invalid. My recent app required to download several thousand “rows” of data from a data store. My choice: 2.5 megs in raw xml over a webservice, or 100kb for the binary version of it. Please explain how i design around this. Easy to preach “good design”, much harder to practice with this level of limitations.

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>