SlideShare a Scribd company logo
1 of 46
Sandbox Templates
Under The Hood
Seth Tager, Salesforce, Lead Member of Technical Staff
John Vogt, Salesforce, Senior Product Manager
Safe harbor
Safe harbor statement under the Private Securities Litigation Reform Act of 1995:
This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties
materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results
expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be
deemed forward-looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other
financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any
statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services.
The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new
functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our
operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any
litigation, risks associated with completed and any possible mergers and acquisitions, the immature market in which we operate, our
relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of
our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to
larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is
included in our annual report on Form 10-K for the most recent fiscal year and in our quarterly report on Form 10-Q for the most recent
fiscal quarter. These documents and others containing important disclosures are available on the SEC Filings section of the Investor
Information section of our Web site.
Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently
available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions
based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these
forward-looking statements.
Seth Tager
Lead Member of Technical Staff
@sethtager
John Vogt
Product Manager, Platform
Before we get started…
Why create Sandbox Templates?
Sandbox Lineup as of Spring ‘12 Release
Developer

Configuration***

Full

Refresh Interval

1 Day

1 Day

29 Days

Includes Setup
Configuration

Yes

Yes

Yes

Copies Data
Records

None

None

All

Sandbox Size

10MB
(~5,000 records)

500MB
(~250,000 records)

Match Production

*** Configuration is now Developer Pro
Sandbox Use Cases – Our Expectations
Use Case

Developer

Build/ Develop
Quality Assurance

✔
✔

Configuratio
n
✔
✔

Data Load/
Integration Tests

✖

✔

✖

Training

✖
✖
✖
✖

✔
✔
✖
✖

✖
✔
✔
✔

UAT
Perf/Load Test
Staging

Full

✖
✖
Sandbox Use Cases – Actual Usage
Use Case

Developer

Build/ Develop
Quality Assurance

✔
✔

Configuratio
n
✔
✔

Data Load/
Integration Tests

✖

✖

✔

Training

✖
✖
✖
✖

✖
✖
✖
✖

✔
✔
✔
✔

UAT
Perf/Load Test
Staging

Full

✖
✔
Reliance on Full Sandboxes can Decrease Productivity
• Configuration Sandbox is too limited
• Customers try to duplicate their on premise environments

• Full sandbox creation/refresh is slow
• More full sandbox copies causes delays for all customers
• Post Refresh Tasks are Time Consuming

• Drag on development agility
• Project timelines can suffer
• Customer ROI can degrade
How do we increase Productivity with Sandboxes?
• Give the User Control over Sandbox Creation
• Improve Sandbox Copy Performance
• Decrease Refresh Interval
Product Innovation: Sandbox Templates
• More Control Over Data Copied
• Potential to Improve Copy Performance
• Potential to Decrease Post Refresh Tasks
Demonstration:
Sandbox Templates with Full Sandbox
“Custom All” Copy Strategy Explained
Templates with FULL sandbox
• Spidering
• Master/Detail and lookup relationships
• Feature groups
Templates with FULL sandbox
• Spidering master/detail and required lookup relationships
Templates with FULL sandbox
• Spidering master/detail and required lookup relationships
Templates with FULL sandbox
• Spidering master/detail and required lookup relationships
Templates with FULL sandbox
• Feature groups (Predefined for standard objects)
• e.g. Opportunity
•

OpportunityLineItem

•

OpportunityLineItemSchedule

•

OpportunityCompetitor

•

OpportunityTeamMember

•

OpportunityAlert

•

OpportunityUpdateReminder

•

(OpportunityHistory)
Product Innovation: Data Sampling

10K
records

Sample up to 10k records per object
Random samples reflect true testing needs to find edge case issues
Demonstration:
Sandbox Templates with Partial Copy Sandbox
“Custom Sampled” Copy Strategy Explained
Templates with partial copy
• Custom Sampled
• Spidering
• And Sampling
Sampling
• Max rows for all entities
• (Small) Metadata is fully copied
• Cycles not allowed
• Parents first vs children first
• Non-required relationships (e.g. Contact/Acct, Opp/Acct)
• Helper entities (e.g. notes and attachments)
• Handling multiple non-required relationships
Sampling
• Cycles
Sampling: Parents First vs Children First
• Parents First
Sampling: Parents First vs Children First
• Children First
Sampling
• Parents First – Select parents
Sampling
• Parents First – Narrow the field
Sampling
• Parents First – Sample children
Sampling
• Parents First – Copy rows
Sampling
• Non-required relationships
Sampling
• Non-required relationships
Sampling
• Non-required relationships
Sampling
• Non-required relationships
Sampling
• Helper entities
Sampling
• Helper entities
Sampling
• Multiple Non-Required Relationships
Sampling
• Multiple Non-Required Relationships
Sampling
• Multiple Non-Required Relationships
Product Line Evolution
New Sandbox Lineup & Bundles
Developer

Developer Pro

Partial Copy***

Full

Refresh Interval

1 Day

1 Day

5 Days

29 Days

Includes Setup
Configuration

Yes

Yes

Yes

Yes

Copies Data Records

No

No

Yes

Yes

Sandbox Templates/
Sampling

No & No

No & No

Yes & Yes (10,000
records/object)

Yes & No (Full Data /
Object)

None

5

10

15

200MB

1GB
(~500K records)

5GB
(2.5M records)

Match production

Bundled Developer
Sandboxes
Sandbox Size

***New Product Available in Winter ‘14
Sandbox Use Cases
Use Case
Build / Develop
Quality Assurance
Data Load /
Integration Tests
Training
UAT
Performance /
Load Test
Staging

Developer

✔
✔
✖
✖
✖
✖
✖

Developer
Pro

Partial Data

Full

✔
✔
✔
✔
✖
✖

✔
✔
✔
✔
✔
✖

✖
✖
✔
✔
✔
✔

✖

✖

✔
Top Feature Requests & Roadmap
• Partial Copy
• Criteria Based Sampling
• Customer Driven Data Requirements

• Sandbox Copy Service
• New Sandbox Copy Architecture – Pilot
• Multi-Instance Queuing Support
John Vogt

Seth Tager

Senior Product Manager

Lead Member of Tech Staff,
@sethtager
Under the Hood of Sandbox Templates

More Related Content

What's hot

What's hot (20)

Lightning アプリケーション開発 - Visualforce ページの移行
Lightning アプリケーション開発 - Visualforce ページの移行Lightning アプリケーション開発 - Visualforce ページの移行
Lightning アプリケーション開発 - Visualforce ページの移行
 
The Ideal Salesforce Development Lifecycle
The Ideal Salesforce Development LifecycleThe Ideal Salesforce Development Lifecycle
The Ideal Salesforce Development Lifecycle
 
Best Practices for Team Development in a Single Org
Best Practices for Team Development in a Single OrgBest Practices for Team Development in a Single Org
Best Practices for Team Development in a Single Org
 
Release and Enviromental Management
Release and Enviromental ManagementRelease and Enviromental Management
Release and Enviromental Management
 
Managing Change With A Sensible Sandbox Architecture
Managing Change With A Sensible Sandbox ArchitectureManaging Change With A Sensible Sandbox Architecture
Managing Change With A Sensible Sandbox Architecture
 
Demo Environment Best Practices (Salesforce Partners)
Demo Environment Best Practices (Salesforce Partners)Demo Environment Best Practices (Salesforce Partners)
Demo Environment Best Practices (Salesforce Partners)
 
Choosing the Right Demo Environment (Salesforce Partners)
Choosing the Right Demo Environment (Salesforce Partners)Choosing the Right Demo Environment (Salesforce Partners)
Choosing the Right Demo Environment (Salesforce Partners)
 
Salesforce Org Health Check & Performance Testing
Salesforce Org Health Check & Performance TestingSalesforce Org Health Check & Performance Testing
Salesforce Org Health Check & Performance Testing
 
Circles of success - So you have created or acquired a mess - now what (1)
Circles of success - So you have created or acquired a mess - now what (1)Circles of success - So you have created or acquired a mess - now what (1)
Circles of success - So you have created or acquired a mess - now what (1)
 
Odc setup
Odc setupOdc setup
Odc setup
 
AZ-104T00A-ENU-PowerPoint_00.pptx
AZ-104T00A-ENU-PowerPoint_00.pptxAZ-104T00A-ENU-PowerPoint_00.pptx
AZ-104T00A-ENU-PowerPoint_00.pptx
 
Defining Your Cloud Strategy
Defining Your Cloud StrategyDefining Your Cloud Strategy
Defining Your Cloud Strategy
 
SCCM 2012 Presentation
SCCM 2012 PresentationSCCM 2012 Presentation
SCCM 2012 Presentation
 
Introduction to salesforce ppt
Introduction to salesforce pptIntroduction to salesforce ppt
Introduction to salesforce ppt
 
Microsoft System center
Microsoft System centerMicrosoft System center
Microsoft System center
 
Best Practices for Successful Deployment
Best Practices for Successful DeploymentBest Practices for Successful Deployment
Best Practices for Successful Deployment
 
Webinar: Take Control of Your Org with Salesforce Optimizer
Webinar: Take Control of Your Org with Salesforce OptimizerWebinar: Take Control of Your Org with Salesforce Optimizer
Webinar: Take Control of Your Org with Salesforce Optimizer
 
Getting Demo & POV Ready
Getting Demo & POV ReadyGetting Demo & POV Ready
Getting Demo & POV Ready
 
Digital Insurance Platform - Vlocity
Digital Insurance Platform - VlocityDigital Insurance Platform - Vlocity
Digital Insurance Platform - Vlocity
 
Salesforce Release Management - Best Practices and Tools for Deployment
Salesforce Release Management - Best Practices and Tools for DeploymentSalesforce Release Management - Best Practices and Tools for Deployment
Salesforce Release Management - Best Practices and Tools for Deployment
 

Viewers also liked

Viewers also liked (7)

The definitive guide to salesforce sandbox flosum
The definitive guide to salesforce sandbox flosumThe definitive guide to salesforce sandbox flosum
The definitive guide to salesforce sandbox flosum
 
Manage Development in Your Org with Salesforce Governance Framework
Manage Development in Your Org with Salesforce Governance FrameworkManage Development in Your Org with Salesforce Governance Framework
Manage Development in Your Org with Salesforce Governance Framework
 
Manage Salesforce Like a Pro with Governance
Manage Salesforce Like a Pro with GovernanceManage Salesforce Like a Pro with Governance
Manage Salesforce Like a Pro with Governance
 
Release & Change management in salesforce
Release & Change management in salesforceRelease & Change management in salesforce
Release & Change management in salesforce
 
From Sandbox To Production: An Introduction to Salesforce Release Management
From Sandbox To Production: An Introduction to Salesforce Release ManagementFrom Sandbox To Production: An Introduction to Salesforce Release Management
From Sandbox To Production: An Introduction to Salesforce Release Management
 
Large Data Management Strategies
Large Data Management StrategiesLarge Data Management Strategies
Large Data Management Strategies
 
Building a Single Page App with Lightning Components
Building a Single Page App with Lightning ComponentsBuilding a Single Page App with Lightning Components
Building a Single Page App with Lightning Components
 

Similar to Under the Hood of Sandbox Templates

Similar to Under the Hood of Sandbox Templates (20)

Apex Testing Best Practices
Apex Testing Best PracticesApex Testing Best Practices
Apex Testing Best Practices
 
Bridging the Gap between Clicks & Code
Bridging the Gap between Clicks & CodeBridging the Gap between Clicks & Code
Bridging the Gap between Clicks & Code
 
Designing Custom REST and SOAP Interfaces on Force.com
Designing Custom REST and SOAP Interfaces on Force.comDesigning Custom REST and SOAP Interfaces on Force.com
Designing Custom REST and SOAP Interfaces on Force.com
 
Coding in the App Cloud
Coding in the App CloudCoding in the App Cloud
Coding in the App Cloud
 
Development Best Practices
Development Best PracticesDevelopment Best Practices
Development Best Practices
 
Release Management: Managing Your Internal Releases
Release Management: Managing Your Internal ReleasesRelease Management: Managing Your Internal Releases
Release Management: Managing Your Internal Releases
 
Advanced Lightning Components
Advanced Lightning ComponentsAdvanced Lightning Components
Advanced Lightning Components
 
Sandboxes: The Future of App Development by Evan Barnet & Pam Barnet
Sandboxes: The Future of App Development by Evan Barnet & Pam BarnetSandboxes: The Future of App Development by Evan Barnet & Pam Barnet
Sandboxes: The Future of App Development by Evan Barnet & Pam Barnet
 
Designing custom REST and SOAP interfaces on Force.com
Designing custom REST and SOAP interfaces on Force.comDesigning custom REST and SOAP interfaces on Force.com
Designing custom REST and SOAP interfaces on Force.com
 
API Design for Your Packaged App
API Design for Your Packaged AppAPI Design for Your Packaged App
API Design for Your Packaged App
 
Planning Your Migration to the Lightning Experience
Planning Your Migration to the Lightning ExperiencePlanning Your Migration to the Lightning Experience
Planning Your Migration to the Lightning Experience
 
Five Developer Tips Every Admin Needs To Know
Five Developer Tips Every Admin Needs To KnowFive Developer Tips Every Admin Needs To Know
Five Developer Tips Every Admin Needs To Know
 
Transition to the Lightning Experience: Pro Tips, Tools and a Transition Stra...
Transition to the Lightning Experience: Pro Tips, Tools and a Transition Stra...Transition to the Lightning Experience: Pro Tips, Tools and a Transition Stra...
Transition to the Lightning Experience: Pro Tips, Tools and a Transition Stra...
 
API Design for Your Packaged App
API Design for Your Packaged AppAPI Design for Your Packaged App
API Design for Your Packaged App
 
Build Together And Deliver Continuously With Salesforce DX
Build Together And Deliver Continuously With Salesforce DXBuild Together And Deliver Continuously With Salesforce DX
Build Together And Deliver Continuously With Salesforce DX
 
Dreamforce 2014 - Salesforce Python SDK for REST/SOAP APIs
Dreamforce 2014 - Salesforce Python SDK for REST/SOAP APIsDreamforce 2014 - Salesforce Python SDK for REST/SOAP APIs
Dreamforce 2014 - Salesforce Python SDK for REST/SOAP APIs
 
Puppet Camp San Francisco 2015: Puppet Adoption in a Mature Environment
Puppet Camp San Francisco 2015: Puppet Adoption in a Mature EnvironmentPuppet Camp San Francisco 2015: Puppet Adoption in a Mature Environment
Puppet Camp San Francisco 2015: Puppet Adoption in a Mature Environment
 
Bootstrapping DX in Your Enterprise - AutoRABIT at TrailheaDX
Bootstrapping DX in Your Enterprise - AutoRABIT at TrailheaDXBootstrapping DX in Your Enterprise - AutoRABIT at TrailheaDX
Bootstrapping DX in Your Enterprise - AutoRABIT at TrailheaDX
 
Wrestling Alligators: How Salesforce Partners Can Increase Close Rates & Deli...
Wrestling Alligators: How Salesforce Partners Can Increase Close Rates & Deli...Wrestling Alligators: How Salesforce Partners Can Increase Close Rates & Deli...
Wrestling Alligators: How Salesforce Partners Can Increase Close Rates & Deli...
 
Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...
Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...
Kitchener Salesforce Developer Group Event - Introduction to dev ops with Sal...
 

More from Salesforce Developers

More from Salesforce Developers (20)

Sample Gallery: Reference Code and Best Practices for Salesforce Developers
Sample Gallery: Reference Code and Best Practices for Salesforce DevelopersSample Gallery: Reference Code and Best Practices for Salesforce Developers
Sample Gallery: Reference Code and Best Practices for Salesforce Developers
 
Maximizing Salesforce Lightning Experience and Lightning Component Performance
Maximizing Salesforce Lightning Experience and Lightning Component PerformanceMaximizing Salesforce Lightning Experience and Lightning Component Performance
Maximizing Salesforce Lightning Experience and Lightning Component Performance
 
Local development with Open Source Base Components
Local development with Open Source Base ComponentsLocal development with Open Source Base Components
Local development with Open Source Base Components
 
TrailheaDX India : Developer Highlights
TrailheaDX India : Developer HighlightsTrailheaDX India : Developer Highlights
TrailheaDX India : Developer Highlights
 
Why developers shouldn’t miss TrailheaDX India
Why developers shouldn’t miss TrailheaDX IndiaWhy developers shouldn’t miss TrailheaDX India
Why developers shouldn’t miss TrailheaDX India
 
CodeLive: Build Lightning Web Components faster with Local Development
CodeLive: Build Lightning Web Components faster with Local DevelopmentCodeLive: Build Lightning Web Components faster with Local Development
CodeLive: Build Lightning Web Components faster with Local Development
 
CodeLive: Converting Aura Components to Lightning Web Components
CodeLive: Converting Aura Components to Lightning Web ComponentsCodeLive: Converting Aura Components to Lightning Web Components
CodeLive: Converting Aura Components to Lightning Web Components
 
Enterprise-grade UI with open source Lightning Web Components
Enterprise-grade UI with open source Lightning Web ComponentsEnterprise-grade UI with open source Lightning Web Components
Enterprise-grade UI with open source Lightning Web Components
 
TrailheaDX and Summer '19: Developer Highlights
TrailheaDX and Summer '19: Developer HighlightsTrailheaDX and Summer '19: Developer Highlights
TrailheaDX and Summer '19: Developer Highlights
 
Live coding with LWC
Live coding with LWCLive coding with LWC
Live coding with LWC
 
Lightning web components - Episode 4 : Security and Testing
Lightning web components  - Episode 4 : Security and TestingLightning web components  - Episode 4 : Security and Testing
Lightning web components - Episode 4 : Security and Testing
 
LWC Episode 3- Component Communication and Aura Interoperability
LWC Episode 3- Component Communication and Aura InteroperabilityLWC Episode 3- Component Communication and Aura Interoperability
LWC Episode 3- Component Communication and Aura Interoperability
 
Lightning web components episode 2- work with salesforce data
Lightning web components   episode 2- work with salesforce dataLightning web components   episode 2- work with salesforce data
Lightning web components episode 2- work with salesforce data
 
Lightning web components - Episode 1 - An Introduction
Lightning web components - Episode 1 - An IntroductionLightning web components - Episode 1 - An Introduction
Lightning web components - Episode 1 - An Introduction
 
Migrating CPQ to Advanced Calculator and JSQCP
Migrating CPQ to Advanced Calculator and JSQCPMigrating CPQ to Advanced Calculator and JSQCP
Migrating CPQ to Advanced Calculator and JSQCP
 
Scale with Large Data Volumes and Big Objects in Salesforce
Scale with Large Data Volumes and Big Objects in SalesforceScale with Large Data Volumes and Big Objects in Salesforce
Scale with Large Data Volumes and Big Objects in Salesforce
 
Replicate Salesforce Data in Real Time with Change Data Capture
Replicate Salesforce Data in Real Time with Change Data CaptureReplicate Salesforce Data in Real Time with Change Data Capture
Replicate Salesforce Data in Real Time with Change Data Capture
 
Modern Development with Salesforce DX
Modern Development with Salesforce DXModern Development with Salesforce DX
Modern Development with Salesforce DX
 
Get Into Lightning Flow Development
Get Into Lightning Flow DevelopmentGet Into Lightning Flow Development
Get Into Lightning Flow Development
 
Integrate CMS Content Into Lightning Communities with CMS Connect
Integrate CMS Content Into Lightning Communities with CMS ConnectIntegrate CMS Content Into Lightning Communities with CMS Connect
Integrate CMS Content Into Lightning Communities with CMS Connect
 

Recently uploaded

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024Manulife - Insurer Innovation Award 2024
Manulife - Insurer Innovation Award 2024
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 

Under the Hood of Sandbox Templates

  • 1. Sandbox Templates Under The Hood Seth Tager, Salesforce, Lead Member of Technical Staff John Vogt, Salesforce, Senior Product Manager
  • 2. Safe harbor Safe harbor statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services. The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any litigation, risks associated with completed and any possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal year and in our quarterly report on Form 10-Q for the most recent fiscal quarter. These documents and others containing important disclosures are available on the SEC Filings section of the Investor Information section of our Web site. Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.
  • 3. Seth Tager Lead Member of Technical Staff @sethtager
  • 5. Before we get started…
  • 6. Why create Sandbox Templates?
  • 7. Sandbox Lineup as of Spring ‘12 Release Developer Configuration*** Full Refresh Interval 1 Day 1 Day 29 Days Includes Setup Configuration Yes Yes Yes Copies Data Records None None All Sandbox Size 10MB (~5,000 records) 500MB (~250,000 records) Match Production *** Configuration is now Developer Pro
  • 8. Sandbox Use Cases – Our Expectations Use Case Developer Build/ Develop Quality Assurance ✔ ✔ Configuratio n ✔ ✔ Data Load/ Integration Tests ✖ ✔ ✖ Training ✖ ✖ ✖ ✖ ✔ ✔ ✖ ✖ ✖ ✔ ✔ ✔ UAT Perf/Load Test Staging Full ✖ ✖
  • 9. Sandbox Use Cases – Actual Usage Use Case Developer Build/ Develop Quality Assurance ✔ ✔ Configuratio n ✔ ✔ Data Load/ Integration Tests ✖ ✖ ✔ Training ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✖ ✔ ✔ ✔ ✔ UAT Perf/Load Test Staging Full ✖ ✔
  • 10. Reliance on Full Sandboxes can Decrease Productivity • Configuration Sandbox is too limited • Customers try to duplicate their on premise environments • Full sandbox creation/refresh is slow • More full sandbox copies causes delays for all customers • Post Refresh Tasks are Time Consuming • Drag on development agility • Project timelines can suffer • Customer ROI can degrade
  • 11. How do we increase Productivity with Sandboxes? • Give the User Control over Sandbox Creation • Improve Sandbox Copy Performance • Decrease Refresh Interval
  • 12. Product Innovation: Sandbox Templates • More Control Over Data Copied • Potential to Improve Copy Performance • Potential to Decrease Post Refresh Tasks
  • 14. “Custom All” Copy Strategy Explained
  • 15. Templates with FULL sandbox • Spidering • Master/Detail and lookup relationships • Feature groups
  • 16. Templates with FULL sandbox • Spidering master/detail and required lookup relationships
  • 17. Templates with FULL sandbox • Spidering master/detail and required lookup relationships
  • 18. Templates with FULL sandbox • Spidering master/detail and required lookup relationships
  • 19. Templates with FULL sandbox • Feature groups (Predefined for standard objects) • e.g. Opportunity • OpportunityLineItem • OpportunityLineItemSchedule • OpportunityCompetitor • OpportunityTeamMember • OpportunityAlert • OpportunityUpdateReminder • (OpportunityHistory)
  • 20. Product Innovation: Data Sampling 10K records Sample up to 10k records per object Random samples reflect true testing needs to find edge case issues
  • 22. “Custom Sampled” Copy Strategy Explained
  • 23. Templates with partial copy • Custom Sampled • Spidering • And Sampling
  • 24. Sampling • Max rows for all entities • (Small) Metadata is fully copied • Cycles not allowed • Parents first vs children first • Non-required relationships (e.g. Contact/Acct, Opp/Acct) • Helper entities (e.g. notes and attachments) • Handling multiple non-required relationships
  • 26. Sampling: Parents First vs Children First • Parents First
  • 27. Sampling: Parents First vs Children First • Children First
  • 28. Sampling • Parents First – Select parents
  • 29. Sampling • Parents First – Narrow the field
  • 30. Sampling • Parents First – Sample children
  • 31. Sampling • Parents First – Copy rows
  • 42. New Sandbox Lineup & Bundles Developer Developer Pro Partial Copy*** Full Refresh Interval 1 Day 1 Day 5 Days 29 Days Includes Setup Configuration Yes Yes Yes Yes Copies Data Records No No Yes Yes Sandbox Templates/ Sampling No & No No & No Yes & Yes (10,000 records/object) Yes & No (Full Data / Object) None 5 10 15 200MB 1GB (~500K records) 5GB (2.5M records) Match production Bundled Developer Sandboxes Sandbox Size ***New Product Available in Winter ‘14
  • 43. Sandbox Use Cases Use Case Build / Develop Quality Assurance Data Load / Integration Tests Training UAT Performance / Load Test Staging Developer ✔ ✔ ✖ ✖ ✖ ✖ ✖ Developer Pro Partial Data Full ✔ ✔ ✔ ✔ ✖ ✖ ✔ ✔ ✔ ✔ ✔ ✖ ✖ ✖ ✔ ✔ ✔ ✔ ✖ ✖ ✔
  • 44. Top Feature Requests & Roadmap • Partial Copy • Criteria Based Sampling • Customer Driven Data Requirements • Sandbox Copy Service • New Sandbox Copy Architecture – Pilot • Multi-Instance Queuing Support
  • 45. John Vogt Seth Tager Senior Product Manager Lead Member of Tech Staff, @sethtager

Editor's Notes

  1. How many people in the room have access to a sandbox product? this would be anyone who works in a sandbox or holds the keys to creating them How many people in the room have the ability to work with more than one type of sandbox? How many people in the room work with Full sandboxes? Has anyone created a sandbox template?
  2. Start building features that give the user control over how the sandbox is built Improve the performance of the sandbox copy How do we clarify that bullet #1 is a general concept that covers features not yet implemented Decrease the refresh interval
  3. Show Template Tab Create Template, describe UI and data relationships Show how to apply a template to a full sandbox Explain that a template on Full copies all data for the objects selected
  4. DEMO: Build new template Show creation process Show results of template applied to FULL – (show data and storage usage and compare to prod org)
  5. Let’s say we have an ERD like this… If we select C in our template…
  6. Both A and B will be included in the template But if we select B instead…
  7. Then A will still be selected, but C will not. C, the detail of B, is not selected automatically when you select B
  8. The item listed as “Opportunity” in the template really represents a large number of entities OpportunityHistory also depends on “Include Object History Data” checkbox when creating a sandbox.
  9. Increase copy performance Potential to decrease post copy tasks Allows us to decrease refresh interval
  10. Talk through some basics of what sampling is – 10,000 records per object Edit the Template, describe ability to re-use template Show how to apply a template to a partial copy sandbox Explain that a template on partial copies a sample of the data for the objects selected
  11. It is possible to create cycles of required relationships using lookup relationships
  12. Select parents first
  13. Select children first
  14. Here’s how parents first sampling works First we select some parents
  15. The parent selection eliminates come children from possible selection.
  16. Select children from remaining set of rows
  17. Copy data to sandbox
  18. In the case where both parent and child has been included in the template the selection process for non-required is the same as in the case of required relationships Remember: we don’t spider non-required entities
  19. Select some children Obviously the relationships will no longer exist since parents are not copied
  20. Wind up with only children in sandbox
  21. Similarly, if the parent is selected, but not the child there will be no lookup data in the sandbox
  22. Helper entities, like Attachments, have many different types of parents. In this case there are attachments pointing to two different types of entities, but only one of those entities is included in the sandbox template.
  23. In this case we only copy attachments that point to other entities that are included in the sandbox template.
  24. When a child has multiple non-required relationships we try to satisfy at least one. This may not match the semantics of the object. For example, the semantics might be “if field A points to something then field B must also point to something”
  25. Allow customers to develop faster without needing 5+ Full Sandboxes Captures new revenue from smaller customers