Courseiva
Data Migration →mediumMultiple Select

SF-Data-Arch Data Migration Practice Question

A data architect is preparing to migrate 20 million Opportunity records from a legacy CRM into Salesforce. The source data includes Opportunities with related OpportunityLineItem records and historical StageName values. The architect must ensure that the migration preserves data integrity and avoids common Bulk API pitfalls. Which TWO actions should the architect take before initiating the load? (Choose two.)

⚠ Common exam trap

The trap here is thinking that disabling automation or using AllOrNone is a best practice for data integrity; both can introduce risk or reduce throughput without guaranteeing correctness.

Answer choices

Why each option matters

Answer the question above first, then reveal the full breakdown to understand why each option is right or wrong.

Correct answer & explanation

✓

Load Opportunity records first, then load OpportunityLineItem records using the parent Opportunity's External ID to establish the relationship.

Loading parents before children using an External ID preserves referential integrity, and marking the External ID as Unique supports upsert and prevents duplicates. Together, these actions address the core data integrity concerns for a large Opportunity migration with related line items.

Answer analysis

Option-by-option breakdown

For each option: why learners choose it and why it is or isn't the right answer here.

  • ✗

    Disable all validation rules, workflow rules, and triggers on Opportunity during the load to improve performance.

    Why it's wrong here

    Disabling automation can improve speed but risks loading invalid data and bypassing business logic. The question asks for actions to preserve data integrity, and disabling validation may compromise it. Best practice is to evaluate which automation must run and use selective bypass only when justified.

  • ✓

    Load Opportunity records first, then load OpportunityLineItem records using the parent Opportunity's External ID to establish the relationship.

    Why this is correct

    OpportunityLineItem records require a parent OpportunityId. By loading Opportunities first with an External ID, the architect can then load line items referencing that External ID, ensuring referential integrity. This two-pass approach is standard for parent-child migrations and avoids orphaned child records.

  • ✗

    Set the Batch Size to 1 record to avoid governor limit issues and ensure maximum error isolation.

    Why it's wrong here

    Batch size 1 drastically reduces throughput and is unnecessary for Bulk API 2.0, which manages batching internally. It would make a 20 million record migration take an impractically long time. Error isolation can be achieved through other means without sacrificing performance.

  • ✗

    Enable AllOrNone on all Bulk API batches to guarantee that no partial data is committed if a single record fails.

    Why it's wrong here

    AllOrNone can cause entire batches to fail on a single bad record, which is risky for a 20 million record migration. It reduces throughput and increases the chance of job failure. The requirement is to preserve integrity, but AllOrNone is not a recommended default for large loads.

  • ✓

    Ensure that the External ID field on Opportunity is marked as Unique to support upsert and prevent duplicate Opportunities.

    Why this is correct

    A Unique External ID field enables reliable upsert matching and prevents duplicate Opportunities when the load is retried or when source data contains duplicates. This is critical for data integrity in a large migration and supports idempotent loading.

About these practice questions

This SF-Data-Arch question is part of Courseiva's 222-question bank — original exam-style content with full explanations and wrong-answer analysis, never real exam questions or exam dumps. Learn why practice questions differ from exam dumps →

How Courseiva writes practice questions · Editorial policy

JA

Written and reviewed by Johnson Ajibi, MSc IT Security

Senior Network & Security Engineer · founder of Courseiva

Last reviewed September 2026 · checked against the official Salesforce exam blueprint

This SF-Data-Arch practice question is part of Courseiva's free Salesforce certification practice question bank. Courseiva provides original exam-style practice questions with explanations, topic-based practice, mock exams, readiness tracking, and study analytics to help learners prepare for the SF-Data-Arch exam.