The Blogosphere can come in quite handy in these lazy days of summer. Just as I was confronting the next item on my blog to-do list - CDI vs. EII - up pops a recent blog entry on the very topic in my Technorati watchlist.
John Parker, sales head for CDI at Siebel, has recently started CDI Station, where he deals with all the acronymic confusion and knotty issues therein. We are in general agreement that the two technologies are complementary. The whole post is here, but let me digest it down to some easy beach reading:
EII is the process of using data abstraction to address the data access challenges associated with data heterogeneity and data contextualization.
Correct.
EII uses data normalization to create the "illusion" of one homogeneous, consolidated store of data.
Yes, we call this idea a "virtual database" or "virtual data layer."
In a previous post, John defines CDI:
CDI therefore can be thought of as a three part solution. First, data must be aggregated from the multiple source systems in which it currently resides. Second, the data must be quality assured. This includes matching, reconciliation, scrubbing (e.g. valid US mailing address, city and postal code matching, capitalization and punctuation), and data enhancement. Finally, this "reference source" customer record must be communicated to the systems that need to consume it, and a methodology for keeping the data in synch with the master must be incorporated. This differs primarily according to the ability of the target systems to consume data in real time versus batch processing mode, and the resulting accommodations that need to be made in the larger business processes which depend on the customer data int hose systems. Simple, eh? Aggregation, data quality, and distribution.
Returning to CDI vs. EII, then, the basic difference seems to be that CDI is about physical aggregation, which addresses customer issues of backup, security, master record restoration, and in some cases, better performance. Aaron Zornes of The CDI Institute has a similar definition, and also brings up the performance issue.
Looking at a few CDI vendor sites, it seems to me that there's more. Not being a CDI expert myself, I'll defer to the experts, but I do have to complain that this general performance knock on EII is growing a bit long in the tooth. Not only is it too generally used, but I can tell many a story about the EII layer outperforming poorly coded queries on local databases (I'll save that for another post.).
It seems that CDI products have more in the way of specific tools to deal with customer data. You might be able to build your own CDI solution with a database and some middleware, but these vendors have spent time building in templates, processing rules, event alerts, audit capabilities, etc. That's what you're paying for.
On most of the vendor sites, integration with back-end systems is shown as a single feature. For EII vendors like Ipedo, we see CDI as an application. So that seems to be the fit - EII can bring an enhanced integration capability to CDI applications, either as a built-in component or via a partnership.
Now back to my paperback.
Comments