Download - Force.com Data Modeling: The Advantages of Denormalization

Transcript
Page 1: Force.com Data Modeling: The Advantages of Denormalization

Force.com Data ModelingThe Advantages of Denormalization

Michael Topalovich, Delivered Innovation, CTO@topalovich

Page 2: Force.com Data Modeling: The Advantages of Denormalization

All about Delivered Innovation

Delivered Innovation helps growing companies run their businesses in the cloud with Salesforce.

Business process design for creating great customer experiences

100% focus on Salesforce and the Salesforce Platform

Founded in 2006 in Chicago by Michael Topalovich

Page 3: Force.com Data Modeling: The Advantages of Denormalization
Page 4: Force.com Data Modeling: The Advantages of Denormalization

Goals

Page 5: Force.com Data Modeling: The Advantages of Denormalization
Page 6: Force.com Data Modeling: The Advantages of Denormalization

GAME PLAN

Page 7: Force.com Data Modeling: The Advantages of Denormalization
Page 8: Force.com Data Modeling: The Advantages of Denormalization
Page 9: Force.com Data Modeling: The Advantages of Denormalization
Page 10: Force.com Data Modeling: The Advantages of Denormalization
Page 11: Force.com Data Modeling: The Advantages of Denormalization

Why Normalize?

Page 12: Force.com Data Modeling: The Advantages of Denormalization

Update Anomaly

Page 13: Force.com Data Modeling: The Advantages of Denormalization

Insertion Anomaly

Page 14: Force.com Data Modeling: The Advantages of Denormalization

Deletion Anomaly

Page 15: Force.com Data Modeling: The Advantages of Denormalization
Page 16: Force.com Data Modeling: The Advantages of Denormalization

Denormalize for the cloud.

Page 17: Force.com Data Modeling: The Advantages of Denormalization
Page 18: Force.com Data Modeling: The Advantages of Denormalization
Page 19: Force.com Data Modeling: The Advantages of Denormalization

Multitenant Architecture

Page 20: Force.com Data Modeling: The Advantages of Denormalization
Page 21: Force.com Data Modeling: The Advantages of Denormalization

How many custom objects can you have in

Force.com?

Page 22: Force.com Data Modeling: The Advantages of Denormalization

How many custom objects can you have in

Force.com?

200 (Enterprise Edition)2,000 (Unlimited

Edition)

Page 23: Force.com Data Modeling: The Advantages of Denormalization

How many custom fields can you have on an

object?

Page 24: Force.com Data Modeling: The Advantages of Denormalization

How many custom fields can you have on an

object?

500 (Enterprise Edition)800 (Unlimited Edition)

Page 25: Force.com Data Modeling: The Advantages of Denormalization
Page 26: Force.com Data Modeling: The Advantages of Denormalization
Page 27: Force.com Data Modeling: The Advantages of Denormalization

Metadata-driven architecture =

No direct database access.

Page 28: Force.com Data Modeling: The Advantages of Denormalization

Metadata-driven architecture =

Describe for context.

Page 29: Force.com Data Modeling: The Advantages of Denormalization

Metadata-driven architecture =

Custom query language.

Page 30: Force.com Data Modeling: The Advantages of Denormalization
Page 31: Force.com Data Modeling: The Advantages of Denormalization

SQL vs. SOQL

Page 32: Force.com Data Modeling: The Advantages of Denormalization

SOQL = Join limitations

Page 33: Force.com Data Modeling: The Advantages of Denormalization

SOQL = Explicit relationships

Page 34: Force.com Data Modeling: The Advantages of Denormalization
Page 35: Force.com Data Modeling: The Advantages of Denormalization

Entities describe somethingthat should exist only once.

Page 36: Force.com Data Modeling: The Advantages of Denormalization
Page 37: Force.com Data Modeling: The Advantages of Denormalization

Attributes providecontext that describeentities as a whole.

Page 38: Force.com Data Modeling: The Advantages of Denormalization
Page 39: Force.com Data Modeling: The Advantages of Denormalization

Relationships describehow entities are connected.

Page 40: Force.com Data Modeling: The Advantages of Denormalization
Page 41: Force.com Data Modeling: The Advantages of Denormalization

What are the two primary types of

relationship fields?

Page 42: Force.com Data Modeling: The Advantages of Denormalization

What are the two primary types of

relationship fields?

LookupMaster-Detail

Page 43: Force.com Data Modeling: The Advantages of Denormalization

How many levels can you go up in a child-to-

parent relationship query?

Page 44: Force.com Data Modeling: The Advantages of Denormalization

How many levels can you go up in a child-to-

parent relationship query?

5 Levels

Page 45: Force.com Data Modeling: The Advantages of Denormalization

How many levels can you go down in a parent-to-child

relationship query?

Page 46: Force.com Data Modeling: The Advantages of Denormalization

How many levels can you go down in a parent-to-child

relationship query?Only one level.

Page 47: Force.com Data Modeling: The Advantages of Denormalization

Analytics

Page 48: Force.com Data Modeling: The Advantages of Denormalization

User Experience

Page 49: Force.com Data Modeling: The Advantages of Denormalization

Clicks vs. Code

Page 50: Force.com Data Modeling: The Advantages of Denormalization

Security

Page 51: Force.com Data Modeling: The Advantages of Denormalization

Scalability

Page 52: Force.com Data Modeling: The Advantages of Denormalization
Page 53: Force.com Data Modeling: The Advantages of Denormalization

Embracehierarchy.

Page 54: Force.com Data Modeling: The Advantages of Denormalization

Relationship queries!= SQL joins

Page 55: Force.com Data Modeling: The Advantages of Denormalization

SOQL requiresrelationships

between objects

Page 56: Force.com Data Modeling: The Advantages of Denormalization

We can go up 5 levelsin a child-to-parentrelationship query

Page 57: Force.com Data Modeling: The Advantages of Denormalization

We can go down onelevel in a parent-to-child

relationship query

Page 58: Force.com Data Modeling: The Advantages of Denormalization

Reference data fromparent objectswith formulas

Page 59: Force.com Data Modeling: The Advantages of Denormalization

Aggregate child data withRollup Summary fields

Page 60: Force.com Data Modeling: The Advantages of Denormalization

Use Master-Detailrelationships to enablecross-object workflows

Page 61: Force.com Data Modeling: The Advantages of Denormalization

Get better reportand dashboard data

Page 62: Force.com Data Modeling: The Advantages of Denormalization

Know your siblings.

Page 63: Force.com Data Modeling: The Advantages of Denormalization

Children of the same parentdon’t see each other unless…

Page 64: Force.com Data Modeling: The Advantages of Denormalization

If you need siblings to see eachother, define a relationship.

Page 65: Force.com Data Modeling: The Advantages of Denormalization

If an explicit relationship isnot an option, be prepared

to write Apex Map<> functions.

Page 66: Force.com Data Modeling: The Advantages of Denormalization

IRT

Page 67: Force.com Data Modeling: The Advantages of Denormalization
Page 68: Force.com Data Modeling: The Advantages of Denormalization

Don’t be afraid to useyour custom fields.

Page 69: Force.com Data Modeling: The Advantages of Denormalization

Flatten your data modelto improve performance.

Page 70: Force.com Data Modeling: The Advantages of Denormalization

Be smart about it.Don’t let your data modelbecome a mess.

Page 71: Force.com Data Modeling: The Advantages of Denormalization
Page 72: Force.com Data Modeling: The Advantages of Denormalization
Page 73: Force.com Data Modeling: The Advantages of Denormalization

Junction objects enable M:Mrelationships between objects.

Page 74: Force.com Data Modeling: The Advantages of Denormalization

Reference data and use it inmultiple places without duplication.

Page 75: Force.com Data Modeling: The Advantages of Denormalization

All you need is a custom objectwith two relationship fields.

Page 76: Force.com Data Modeling: The Advantages of Denormalization
Page 77: Force.com Data Modeling: The Advantages of Denormalization

Avoid data duplication.

Page 78: Force.com Data Modeling: The Advantages of Denormalization

Reference before copying.

Page 79: Force.com Data Modeling: The Advantages of Denormalization

Beware of picklist sprawl.

Page 80: Force.com Data Modeling: The Advantages of Denormalization
Page 81: Force.com Data Modeling: The Advantages of Denormalization
Page 82: Force.com Data Modeling: The Advantages of Denormalization

Which standard object does not support RT’s as

of Winter ’14?

Page 83: Force.com Data Modeling: The Advantages of Denormalization

SolutionsAssets

Price Books

Which standard object does not support RT’s as

of Winter ’14?

Page 84: Force.com Data Modeling: The Advantages of Denormalization

SolutionsAssets

Price Books

Which standard object does not support RT’s as

of Winter ’14?

Page 85: Force.com Data Modeling: The Advantages of Denormalization
Page 86: Force.com Data Modeling: The Advantages of Denormalization

Did we meet our goals today?

Page 87: Force.com Data Modeling: The Advantages of Denormalization

Do we understand why Force.com data model design is so important?

Page 88: Force.com Data Modeling: The Advantages of Denormalization

Do we understand how Force.com is different from relational databases?

Page 89: Force.com Data Modeling: The Advantages of Denormalization

Did we learn something new that we can apply to our own instances?

Page 90: Force.com Data Modeling: The Advantages of Denormalization
Page 91: Force.com Data Modeling: The Advantages of Denormalization

Calls to Action

Page 92: Force.com Data Modeling: The Advantages of Denormalization

Take a look at your current data model.

Page 93: Force.com Data Modeling: The Advantages of Denormalization

Experiment.

Page 94: Force.com Data Modeling: The Advantages of Denormalization

Apply these principles.

Page 95: Force.com Data Modeling: The Advantages of Denormalization

Read more about Force.com data modeling.

Page 96: Force.com Data Modeling: The Advantages of Denormalization

Get involved in the Force.com community.

Page 97: Force.com Data Modeling: The Advantages of Denormalization

@DIChicago

Page 98: Force.com Data Modeling: The Advantages of Denormalization

Michael Topalovich

CTO, Delivered Innovation@topalovich

Page 99: Force.com Data Modeling: The Advantages of Denormalization