New kids on the data management block
Keep it old skool
In the age of Web 2.0, data is a strategic differentiator. Tim O’Reilly, considered the father of Web 2.0, has claimed “data is the Intel inside” of this revolution. Companies that control a particularly unique or desirable set of information drive more customers to their sites.
But the concept of data as a competitive differentiator is not new. So what - if anything - has changed, and what does it mean? I believe that, although Web 2.0 and XML are having a liberating affect on data, there is much they can - and should - borrow from the past.
A tenet in Web 2.0 is that you, the user, control your own data. How many of us now book travel online or execute our own stock trades? With Web 2.0, this concept goes a step further. The consumer expects to be a contributor to the data, not just a consumer - contributing blogs about their favorite travel destinations, creating mashups linking travel itineraries with weather and map information, loading their favorite travel videos to the YouTube.
Traditionally, data was strictly controlled by the business and by IT. Data was stored in proprietary DBMS formats, strictly controlled by a DBA on the operational side, and by a data architecture team on the design side. Business requirements for data were carefully documented in a logical data model and structural designs were built in a physical model that generated DLL for the DBA to implement as the gatekeeper of the DBMS system.
In Web 2.0, XML is touted by many as the open alternative. Basic design principles of XML are to provide interoperability and accessibility of data. XML can be read anywhere: on multiple platforms and operating systems, as well as by human beings themselves.
Also inherent in the design of the XML technology stack is the ability to format the data visually, and there are a growing number of technologies and scripting languages emerging for this purpose. Part of the appeal of the web and one of the reasons for its explosion is the ability for users to see information in an easily understandable and visually appealing format. XML is an evolution from the HTML document mark-up system, which allowed the user to create display tags for easy internet readability.
A core architectural capability that XML added was the ability to structure previously unstructured documents. Metadata tags were added to allow semantic meaning to a document and schemas allowed for structured data typing and validation. Searches could now move from being simply string-based text searches to structurally-based queries.
But is the tag structure that comes with XML enough to provide true data and metadata management? And is the structure provided even being used, or is the focus on the flashy visualization aspects? Many in the new school create an XML document without using schema validation at all, claiming that the document is self-documenting by nature of the tags provided.
To see the errors in this assumption, let’s consider the following XML snippet:
The self-documenting crowd is correct in that, with tags, we do have more meaning than would be provide with an untagged document - we know that the number 32.90 is the latitude of the location rather than, say, the acreage. An old school data architect, however, would want to capture much more information to make this meaningful for data governance. For example: what is the definition of location? Is this a state, a continent or a store location?