People often view Salesforce’s data engine as a
relational database with a
web service layer wrapped around it for performing
CRUD operations, but this view is wrong—or at least incomplete. As we learned in Chapter
1, it’s perfectly normal (and good) to
denormalize our data strategically for a needed performance boost. Salesforce takes this a step further. It not only denormalizes the data, it also encourage developers to continue this pattern of
denormalization. The question, then, is how far from
Edger Codd’s vision can we go and still ...