# Ownership, parent-child and lookup data skew

*Platform Data Architect Study Guide · Data Modeling/Database Design · Last updated October 26, 2026 · https://www.certifyforce.com/study-guide/platform-data-architect/data-modeling-database-design/ownership-parent-child-and-lookup-data-skew*

How ownership, parent-child (account) and lookup skew cause long sharing recalculations and record-lock errors, the 10,000-record guidance, where to place an unavoidable skewed owner, how to break lookup skew, and how group membership locking and granular locking affect realignments.

- Certification: Salesforce Platform Data Architect
- Exam section: Data Modeling/Database Design
- Study guide: https://www.certifyforce.com/study-guide/platform-data-architect

**Official exam objective:**

> Given a customer scenario, recommend approaches and techniques to avoid data skew (record locking, sharing calculation issues, and excessive child to parent relationships).

## What the exam expects

- Recognise ownership, parent-child and lookup skew from record counts and symptoms (long sharing recalculation, UNABLE_TO_LOCK_ROW errors).
- Place an unavoidable skewed owner: no role, or its own top-level role that never moves, outside sharing-rule source groups.
- Spread children so no parent holds more than about 10,000 records.
- Break lookup skew with picklists, blank lookups, more lookup records, shorter saves and smaller batches.
- Plan realignments around group membership locking and granular locking.

Key terms: **ownership skew** (one user owns more than 10,000 records of an object); **parent-child skew** (10,000 or more children under one parent account); **lookup skew** (very many records look up to one record); **record lock** (held on a lookup target while a record saves); **granular locking** (lets unrelated group operations run at the same time).

## Key facts

| Fact | Detail | Source |
|---|---|---|
| Ownership skew | One user owns more than 10,000 records of an object | [Ownership Data Skew](https://developer.salesforce.com/docs/platform/draes/guide/draes-group-membership-data-skew.html) |
| Skewed owner with a role | Separate top-level role, never moved, not in sharing-rule source groups | [Ownership Data Skew](https://developer.salesforce.com/docs/platform/draes/guide/draes-group-membership-data-skew.html) |
| Criteria rules on skewed data | Use fields that rarely change | [Architect Record Ownership Skew](https://developer.salesforce.com/blogs/engineering/2012/06/architect-salesforce-record-ownership-skew-for-peak-performance-in-large-data-volume-environments) |
| Parent-child skew | 10,000 or more children under one account | [Parent-Child Data Skew](https://developer.salesforce.com/docs/atlas.en-us.draes.meta/draes/draes_object_relationships_parent_child_data_skew.htm) |
| Skewed account owner change | May re-examine sharing on every child | [Avoid Account Data Skew](https://developer.salesforce.com/blogs/engineering/2012/04/avoid-account-data-skew-for-peak-performance) |
| Lookup lock | Target record locked on each insert or update | [Managing Lookup Skew](https://developer.salesforce.com/blogs/engineering/2013/04/managing-lookup-skew-to-avoid-record-lock-exceptions) |
| Integration during business hours | Reduce batch size | [Managing Lookup Skew](https://developer.salesforce.com/blogs/engineering/2013/04/managing-lookup-skew-to-avoid-record-lock-exceptions) |
| Granular locking | Enabled by default | [Group Membership Locking](https://developer.salesforce.com/docs/platform/draes/guide/draes-group-membership-locking.html) |
| Partner account owner change | Counts as role reparenting | [Group Membership Locking](https://developer.salesforce.com/docs/platform/draes/guide/draes-group-membership-locking.html) |

## Check yourself

- Why does parking 200,000 contacts under one account slow sharing changes?
- When should a skewed lookup become a blank value instead of a picklist?
- Why does changing a large partner account's owner block other admins' role changes?
- What three things should a skewed owner that needs a role avoid?

## Sources

- [Ownership Data Skew](https://developer.salesforce.com/docs/platform/draes/guide/draes-group-membership-data-skew.html)
- [Parent-Child Data Skew](https://developer.salesforce.com/docs/atlas.en-us.draes.meta/draes/draes_object_relationships_parent_child_data_skew.htm)
- [Group Membership Locking](https://developer.salesforce.com/docs/platform/draes/guide/draes-group-membership-locking.html)
- [Managing Lookup Skew to Avoid Record Lock Exceptions](https://developer.salesforce.com/blogs/engineering/2013/04/managing-lookup-skew-to-avoid-record-lock-exceptions)
- [Architect Record Ownership Skew for Peak Performance](https://developer.salesforce.com/blogs/engineering/2012/06/architect-salesforce-record-ownership-skew-for-peak-performance-in-large-data-volume-environments)
- [Avoid Account Data Skew for Peak Performance](https://developer.salesforce.com/blogs/engineering/2012/04/avoid-account-data-skew-for-peak-performance)
- [Platform Sharing Architecture](https://architect.salesforce.com/docs/architect/fundamentals/guide/platform-sharing-architecture)

## About the full unit

The "Core concepts", "Exam traps" and "Worked scenario" sections of this unit, its 15 linked practice questions, and unlimited timed mock exams are included with the Platform Data Architect pack (USD $19): https://www.certifyforce.com/practice-exams
