Been thinking very hard recently about the differences between collecting data and contextualizing data. In the world I live in I can (and do) harvest huge quantities of data from F&B POS that tell me that:
Account Id:
9A3C2460-5F06-483A-A1A0-143CFF9F37C0
bought:
SKU: 1234
Qty: 1.00
Unit Price: 2.75
from:
Property Id: 075
Outlet Id: 175
Now, what does this tell you? Certainly with multiple records you could tell that that this particular account like SKU 1234 or that he paid an average over time for this SKU of a certain amount ... and this is certainly useful to be sure. But, what I want to know is WHAT is SKU 1234? For what did this particular guy/gal trade 2.75 of "value"?
In our hypothetical here, this particular item is a Coca-Cola branded Cola, dispensed from a fountain. And, oh by the way, it's defined differently not just at different properties, but at different outlets within the same property.
It seems to me there are two ways to do this. The first is to apply context at time of collection. To do this, somewhere there needs to be a giant database or tag farm, in which prior to any sale, SKU 1234 @ property 075 @ outlet 175 is defined as a "Fountain Coke" ... and more likely/better yet tagged with attributes "Fountain" and "Coca-Cola". By "pre-contextualizing" the source data I can now come along and query for any account that bought a "Fountain Coke", ideally across any property and/or outlet. Very handy, but incredibly difficult to maintain, especially in a heavily manual environment.
The second alternative is to store data "as-is" (ok, maybe we'll normalize structure :-)) and then to apply context AS PART of the query. In this scenario, I again want to query all accounts that bought a "Fountain Coke", but in our context-less database, I also need to DEFINE a "Fountain Coke" at all of my properties and outlets. The benefit here is that I don't need to maintain that huge database/tag farm of "contextualization", but the trade-off is that my queries are MUCH more complicated and likely perform more poorly.
At present, I have no good answer, nor am I convinced I've thought of all the alternatives. What, you thought I knew which was better? Ha ha ... good luck with that. I'll let you know when we decide.