SlideShare a Scribd company logo
1 of 88
Building Reports That Fly
Sean Regan, salesforce.com, @SFDCSRegan
John Tan, salesforce.com, @johntansfdc
Irena Miziolek, NTT centerstance
Jeannette Liu-Deza, NTT centerstance
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.
Your company uses
Salesforce/Force.com …
You are a developer or architect
maintaining your org …
Slow reports return unreliable
data that hurts user productivity
and leads to mistakes …
You need to make these reports
faster and trusted …
Agenda - Building reports that fly!
1. Governance
• Configuration Access
• Sharing Access
• Data Architecture
2. Frequency
• Dashboard & Report Refreshes
3. Efficient Reports
• Tuning Reports
• Data Archiving/Aggregation
4. Customer Case Study
Sean Regan
Architect Evangelist
@SFDCSregan
John C. Tan
Architect Evangelist
@johntansfdc
View our content on developerforce
http://developer.force.com/architect
Irena Miziolek &
Jeannette Liu-Deza
Technical & Solution Architects
NTT Centerstance
How many of you have …?
Run a Salesforce report … and waited forever?
1. Governance
Configuration access
Governance
Even pilots need help
Restrict report and list view creation
Report & list view governance helps you …
• Increase user adoption
• Increase employee productivity
• Decrease employee mistakes
• Save money
Sharing access
Governance
Architect sharing based on business requirements
Global organization sharing
What’s the impact of sharing access?
Data architecture
Governance
Is the correct end result really enough?
Understand your schema
When it isn’t necessary, get rid of it.
Architect your data model for performance
2. Frequency
Dashboard/report refreshes
Frequency
More is not always better
Push data to users: Force.com Streaming API
Scheduled Reports
Visualforce Pages
Workflow Email Alerts
Chatter Feeds
Key takeaways
Governance ensures efficiency & accuracy
Know your object model
Push data to users to drive workflow
Architect your sharing model based on business requirements
3. Efficient reports
Efficient reports
• Tuning reports
• Data archiving/aggregation
Tuning reports
Efficient reports
What is the Force.com query optimizer?
Generates the most efficient query based on:
Statistics
Indexes / Skinny Tables
Sharing
Best practice: One+ selective filter per report
Selective filters: Four components
1. Filters - add filters to reduce data
2. Operators - avoid 2 inefficient filter operators
3. Thresholds – ensure filter meets selectivity threshold
4. Index Creation - index the filter field
Filters reduce the scope of reports
Fields that often make good filters
 Date fields
 Picklists
 Fields with wide and even distribution of values
Non-deterministic formula fields aren’t good filters
Can’t index
For example:
 References related object
 CASE(MyUser__r.UserType__c,1,”Gold”,”Silver”)
 Create separate field and use trigger to populate
Force.com SOQL Best Practices: Nulls and Formula Fields
Use selective operators in filters
Avoid negative operators
Query for reciprocal values instead
✖ NOT EQUALS (“closed”)
✔ EQUALS (“open”, “in progress”)
Avoid filters with a leading % wildcard
CONTAINS ‘%searchstring%’
✖ CONTAINS (“district”) – equivalent to LIKE ‘%district%’
✔ STARTS WITH (“district”) – equivalent to LIKE ‘district%’
Ensure filters meet selectivity thresholds
Standard index selectivity threshold
A standard index is selective when it returns:
< 30% of the first 1 million records
< 15% of returned records after the first 1 million records
No more than 1 million total records
Standard index selectivity threshold
Selectivity threshold for Created Date index
Standard index selectivity threshold
For 750,000 Account records
< 30% of the first 1 million records
750,000 x .30 = 225,000
Standard index selectivity threshold
For 3,500,000 Account records
< 30% of the first 1 million records
< 15% of returned records after the first 1 million records
 (1,000,000 x .30) + (2,500,000 x .15) = 675,000
Standard index selectivity threshold
Over 5,600,000 Account records
No more than 1 million records
1,000,000
Custom index selectivity threshold
A custom index is selective when it returns:
< 10% of the first million records
< 5% of returned records after the first million records
No more than 333,333 records
Create indexes selective filter fields
Trusted traveler program
Standard fields with indexes
Custom indexes
• Discover common filter conditions
• Determine selective fields in those conditions
• Request custom indexes
A filter condition is selective when …
… it uses an optimizable operator
… it meets the selectivity threshold
… selective fields have indexes
Skinny tables: Last resort for non-optimizable
reports
Skinny table
 Single Object. No cross-object joins
 Maximum of 100 fields
 Not aggregate/summary data. 1:1 recount between source
and skinny
 Skinny updated automatically
 Minimal joins
 salesforce.com will analyze and create
Tell me more about skinny tables …
Webinar: Inside the Force.com Query Optimizer
Data archiving/aggregation
Efficient reports
Data archiving
Reduce the # of records the query optimizer needs to consider
 Determine strategy during design phase
 Move older records into a different object
 Soft deletes still count towards record count
Data aggregation
 Report on historical data
 Save tabular or summary report to a custom object
 Use Analytic Snapshots or Batch Apex
 Gists:
• Batch Apex Class - https://gist.github.com/johntansfdc/7044473
• Trigger - https://gist.github.com/johntansfdc/7044570
Key takeaways
Reports should contain at least one selective filter
A filter is selective if…
the field is indexed
the filter does not use an inefficient operator
the filter meets the selectivity theshold
Implement data archiving/aggregation strategies
Introducing customer case
Irena Miziolek &
Jeannette Liu-Deza
Technical & Solution Architects
NTT Centerstance
Agenda
What’s the problem
How to troubleshoot
What’s the solution
Client
Challenge
Reports & dashboards timing out
Errors in Data Loads
Information Overload
In the beginning….
Note: no real data is used in this presentation
Approach to troubleshooting
Reports and dashboards are slow or timing out
Storage usage
Reduce data volume
Reduce data volume
Batch jobs
Data Sampling
Frequency
Compound keys
Workbench
Workbench, Deleted records
Update instead of delete/reload
Full Nightly Delete & Reload
Update/Insert
Upsert
Data loads failing
Error logs
Rollup summary fields
A little
housekeeping
Report tuning
Governance
In the end….
Session summary
Building reports that fly
• Govern users access to reports and data
• Manage reporting frequency
• Add at least one selective filter per report
Related DevZone hands-on, mini-workshop
Wednesday 1:00-1:45 PM
Thursday 1:00-1:45 PM
Building Reports That Fly

More Related Content

What's hot

Creating an Effective MDM Strategy for Salesforce
Creating an Effective MDM Strategy for SalesforceCreating an Effective MDM Strategy for Salesforce
Creating an Effective MDM Strategy for SalesforcePerficient, Inc.
 
Introduction to Salesforce CRM Reporting
Introduction to Salesforce CRM ReportingIntroduction to Salesforce CRM Reporting
Introduction to Salesforce CRM ReportingMichael Olschimke
 
Data Catalog as a Business Enabler
Data Catalog as a Business EnablerData Catalog as a Business Enabler
Data Catalog as a Business EnablerSrinivasan Sankar
 
Salesforce Training For Beginners | Salesforce Tutorial | Salesforce Training...
Salesforce Training For Beginners | Salesforce Tutorial | Salesforce Training...Salesforce Training For Beginners | Salesforce Tutorial | Salesforce Training...
Salesforce Training For Beginners | Salesforce Tutorial | Salesforce Training...Edureka!
 
Enterprise Architecture vs. Data Architecture
Enterprise Architecture vs. Data ArchitectureEnterprise Architecture vs. Data Architecture
Enterprise Architecture vs. Data ArchitectureDATAVERSITY
 
Salesforce Tutorial for Beginners: Basic Salesforce Introduction
Salesforce Tutorial for Beginners: Basic Salesforce IntroductionSalesforce Tutorial for Beginners: Basic Salesforce Introduction
Salesforce Tutorial for Beginners: Basic Salesforce IntroductionHabilelabs
 
Master data management (mdm) & plm in context of enterprise product management
Master data management (mdm) & plm in context of enterprise product managementMaster data management (mdm) & plm in context of enterprise product management
Master data management (mdm) & plm in context of enterprise product managementTata Consultancy Services
 
Salesforce Tableau CRM - Quick Overview
Salesforce Tableau CRM - Quick OverviewSalesforce Tableau CRM - Quick Overview
Salesforce Tableau CRM - Quick OverviewHarshala Shewale ☁
 
Salesforce sales cloud solutions
Salesforce sales cloud solutionsSalesforce sales cloud solutions
Salesforce sales cloud solutionsJanBask LLC
 
How to identify the correct Master Data subject areas & tooling for your MDM...
How to identify the correct Master Data subject areas & tooling for your MDM...How to identify the correct Master Data subject areas & tooling for your MDM...
How to identify the correct Master Data subject areas & tooling for your MDM...Christopher Bradley
 
Achieving GxP compliance with SAP S/4HANA in the AWS Cloud
Achieving GxP compliance with SAP S/4HANA in the AWS CloudAchieving GxP compliance with SAP S/4HANA in the AWS Cloud
Achieving GxP compliance with SAP S/4HANA in the AWS CloudCapgemini
 
Force.com Data Modeling: The Advantages of Denormalization
Force.com Data Modeling: The Advantages of DenormalizationForce.com Data Modeling: The Advantages of Denormalization
Force.com Data Modeling: The Advantages of DenormalizationSalesforce Developers
 
Introduction to Salesforce Platform - Basic
Introduction to Salesforce Platform - BasicIntroduction to Salesforce Platform - Basic
Introduction to Salesforce Platform - Basicsanskriti agarwal
 
Introduction to Salesforce | Salesforce Tutorial for Beginners | Salesforce T...
Introduction to Salesforce | Salesforce Tutorial for Beginners | Salesforce T...Introduction to Salesforce | Salesforce Tutorial for Beginners | Salesforce T...
Introduction to Salesforce | Salesforce Tutorial for Beginners | Salesforce T...Edureka!
 
Sales Cloud Lightning Migration Best Practices
Sales Cloud Lightning Migration Best PracticesSales Cloud Lightning Migration Best Practices
Sales Cloud Lightning Migration Best PracticesSalesforce Partners
 
Fearless Date Formulas: Leap Years and More by Beth Breisnes
Fearless Date Formulas: Leap Years and More by Beth BreisnesFearless Date Formulas: Leap Years and More by Beth Breisnes
Fearless Date Formulas: Leap Years and More by Beth BreisnesSalesforce Admins
 
Should I move my database to the cloud?
Should I move my database to the cloud?Should I move my database to the cloud?
Should I move my database to the cloud?James Serra
 

What's hot (20)

Creating an Effective MDM Strategy for Salesforce
Creating an Effective MDM Strategy for SalesforceCreating an Effective MDM Strategy for Salesforce
Creating an Effective MDM Strategy for Salesforce
 
Introduction to Salesforce CRM Reporting
Introduction to Salesforce CRM ReportingIntroduction to Salesforce CRM Reporting
Introduction to Salesforce CRM Reporting
 
Customer Centric Discovery
Customer Centric DiscoveryCustomer Centric Discovery
Customer Centric Discovery
 
Data Catalog as a Business Enabler
Data Catalog as a Business EnablerData Catalog as a Business Enabler
Data Catalog as a Business Enabler
 
Salesforce Training For Beginners | Salesforce Tutorial | Salesforce Training...
Salesforce Training For Beginners | Salesforce Tutorial | Salesforce Training...Salesforce Training For Beginners | Salesforce Tutorial | Salesforce Training...
Salesforce Training For Beginners | Salesforce Tutorial | Salesforce Training...
 
Enterprise Architecture vs. Data Architecture
Enterprise Architecture vs. Data ArchitectureEnterprise Architecture vs. Data Architecture
Enterprise Architecture vs. Data Architecture
 
Salesforce Tutorial for Beginners: Basic Salesforce Introduction
Salesforce Tutorial for Beginners: Basic Salesforce IntroductionSalesforce Tutorial for Beginners: Basic Salesforce Introduction
Salesforce Tutorial for Beginners: Basic Salesforce Introduction
 
Master data management (mdm) & plm in context of enterprise product management
Master data management (mdm) & plm in context of enterprise product managementMaster data management (mdm) & plm in context of enterprise product management
Master data management (mdm) & plm in context of enterprise product management
 
Salesforce Tableau CRM - Quick Overview
Salesforce Tableau CRM - Quick OverviewSalesforce Tableau CRM - Quick Overview
Salesforce Tableau CRM - Quick Overview
 
Salesforce sales cloud solutions
Salesforce sales cloud solutionsSalesforce sales cloud solutions
Salesforce sales cloud solutions
 
How to identify the correct Master Data subject areas & tooling for your MDM...
How to identify the correct Master Data subject areas & tooling for your MDM...How to identify the correct Master Data subject areas & tooling for your MDM...
How to identify the correct Master Data subject areas & tooling for your MDM...
 
Achieving GxP compliance with SAP S/4HANA in the AWS Cloud
Achieving GxP compliance with SAP S/4HANA in the AWS CloudAchieving GxP compliance with SAP S/4HANA in the AWS Cloud
Achieving GxP compliance with SAP S/4HANA in the AWS Cloud
 
Force.com Data Modeling: The Advantages of Denormalization
Force.com Data Modeling: The Advantages of DenormalizationForce.com Data Modeling: The Advantages of Denormalization
Force.com Data Modeling: The Advantages of Denormalization
 
Introduction to Salesforce Platform - Basic
Introduction to Salesforce Platform - BasicIntroduction to Salesforce Platform - Basic
Introduction to Salesforce Platform - Basic
 
Introduction to Salesforce | Salesforce Tutorial for Beginners | Salesforce T...
Introduction to Salesforce | Salesforce Tutorial for Beginners | Salesforce T...Introduction to Salesforce | Salesforce Tutorial for Beginners | Salesforce T...
Introduction to Salesforce | Salesforce Tutorial for Beginners | Salesforce T...
 
Sales Cloud Lightning Migration Best Practices
Sales Cloud Lightning Migration Best PracticesSales Cloud Lightning Migration Best Practices
Sales Cloud Lightning Migration Best Practices
 
Fearless Date Formulas: Leap Years and More by Beth Breisnes
Fearless Date Formulas: Leap Years and More by Beth BreisnesFearless Date Formulas: Leap Years and More by Beth Breisnes
Fearless Date Formulas: Leap Years and More by Beth Breisnes
 
Salesforce PPT.pptx
Salesforce PPT.pptxSalesforce PPT.pptx
Salesforce PPT.pptx
 
Salesforce
SalesforceSalesforce
Salesforce
 
Should I move my database to the cloud?
Should I move my database to the cloud?Should I move my database to the cloud?
Should I move my database to the cloud?
 

Viewers also liked

Analyze billions of records on Salesforce App Cloud with BigObject
Analyze billions of records on Salesforce App Cloud with BigObjectAnalyze billions of records on Salesforce App Cloud with BigObject
Analyze billions of records on Salesforce App Cloud with BigObjectSalesforce Developers
 
Publishing Data to REST APIs with Lightning Process Builder
Publishing Data to REST APIs with Lightning Process BuilderPublishing Data to REST APIs with Lightning Process Builder
Publishing Data to REST APIs with Lightning Process BuilderScott Coleman
 
The Need for Speed: Building Reports That Fly
The Need for Speed: Building Reports That FlyThe Need for Speed: Building Reports That Fly
The Need for Speed: Building Reports That FlySalesforce Developers
 
Data Pipelines -Big Data Meets Salesforce
Data Pipelines -Big Data Meets SalesforceData Pipelines -Big Data Meets Salesforce
Data Pipelines -Big Data Meets SalesforceCarolEnLaNube
 
Alert! Event Notification Options for Force.com Apps Webinar
Alert! Event Notification Options for Force.com Apps WebinarAlert! Event Notification Options for Force.com Apps Webinar
Alert! Event Notification Options for Force.com Apps WebinarSalesforce Developers
 
Inside the Force.com Query Optimizer Webinar
Inside the Force.com Query Optimizer WebinarInside the Force.com Query Optimizer Webinar
Inside the Force.com Query Optimizer WebinarSalesforce Developers
 
Salesforce API Series: Release Management with the Metadata API webinar
Salesforce API Series: Release Management with the Metadata API webinarSalesforce API Series: Release Management with the Metadata API webinar
Salesforce API Series: Release Management with the Metadata API webinarSalesforce Developers
 
Introduction to External Objects and the OData Connector
Introduction to External Objects and the OData ConnectorIntroduction to External Objects and the OData Connector
Introduction to External Objects and the OData ConnectorSalesforce Developers
 
Advanced Platform Series - OAuth and Social Authentication
Advanced Platform Series - OAuth and Social AuthenticationAdvanced Platform Series - OAuth and Social Authentication
Advanced Platform Series - OAuth and Social AuthenticationSalesforce Developers
 
Salesforce API Series: Fast Parallel Data Loading with the Bulk API Webinar
Salesforce API Series: Fast Parallel Data Loading with the Bulk API WebinarSalesforce API Series: Fast Parallel Data Loading with the Bulk API Webinar
Salesforce API Series: Fast Parallel Data Loading with the Bulk API WebinarSalesforce Developers
 
Building apps faster with lightning and winter '17
Building apps faster with lightning and winter '17Building apps faster with lightning and winter '17
Building apps faster with lightning and winter '17Salesforce Developers
 
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 ComponentsSalesforce Developers
 

Viewers also liked (12)

Analyze billions of records on Salesforce App Cloud with BigObject
Analyze billions of records on Salesforce App Cloud with BigObjectAnalyze billions of records on Salesforce App Cloud with BigObject
Analyze billions of records on Salesforce App Cloud with BigObject
 
Publishing Data to REST APIs with Lightning Process Builder
Publishing Data to REST APIs with Lightning Process BuilderPublishing Data to REST APIs with Lightning Process Builder
Publishing Data to REST APIs with Lightning Process Builder
 
The Need for Speed: Building Reports That Fly
The Need for Speed: Building Reports That FlyThe Need for Speed: Building Reports That Fly
The Need for Speed: Building Reports That Fly
 
Data Pipelines -Big Data Meets Salesforce
Data Pipelines -Big Data Meets SalesforceData Pipelines -Big Data Meets Salesforce
Data Pipelines -Big Data Meets Salesforce
 
Alert! Event Notification Options for Force.com Apps Webinar
Alert! Event Notification Options for Force.com Apps WebinarAlert! Event Notification Options for Force.com Apps Webinar
Alert! Event Notification Options for Force.com Apps Webinar
 
Inside the Force.com Query Optimizer Webinar
Inside the Force.com Query Optimizer WebinarInside the Force.com Query Optimizer Webinar
Inside the Force.com Query Optimizer Webinar
 
Salesforce API Series: Release Management with the Metadata API webinar
Salesforce API Series: Release Management with the Metadata API webinarSalesforce API Series: Release Management with the Metadata API webinar
Salesforce API Series: Release Management with the Metadata API webinar
 
Introduction to External Objects and the OData Connector
Introduction to External Objects and the OData ConnectorIntroduction to External Objects and the OData Connector
Introduction to External Objects and the OData Connector
 
Advanced Platform Series - OAuth and Social Authentication
Advanced Platform Series - OAuth and Social AuthenticationAdvanced Platform Series - OAuth and Social Authentication
Advanced Platform Series - OAuth and Social Authentication
 
Salesforce API Series: Fast Parallel Data Loading with the Bulk API Webinar
Salesforce API Series: Fast Parallel Data Loading with the Bulk API WebinarSalesforce API Series: Fast Parallel Data Loading with the Bulk API Webinar
Salesforce API Series: Fast Parallel Data Loading with the Bulk API Webinar
 
Building apps faster with lightning and winter '17
Building apps faster with lightning and winter '17Building apps faster with lightning and winter '17
Building apps faster with lightning and winter '17
 
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 Building Reports That Fly

Techniques to Effectively Monitor the Performance of Customers in the Cloud
Techniques to Effectively Monitor the Performance of Customers in the CloudTechniques to Effectively Monitor the Performance of Customers in the Cloud
Techniques to Effectively Monitor the Performance of Customers in the CloudSalesforce Engineering
 
Singapore dg salesforce einstein + spring 17 release by manish
Singapore dg   salesforce einstein + spring 17 release by manishSingapore dg   salesforce einstein + spring 17 release by manish
Singapore dg salesforce einstein + spring 17 release by manishManish Thaduri
 
Succes Services - Top tips for better adoption
Succes Services - Top tips for better adoptionSucces Services - Top tips for better adoption
Succes Services - Top tips for better adoptionSalesforce_Benelux
 
Instant Stardom How to Build Executive Dashboards
Instant Stardom How to Build Executive DashboardsInstant Stardom How to Build Executive Dashboards
Instant Stardom How to Build Executive Dashboardsdreamforce2006
 
Meet the Product Managers
Meet the Product ManagersMeet the Product Managers
Meet the Product Managersdreamforce2006
 
Analytic Snapshots: Common Use Cases that Everyone Can Utilize (Dreamforce 2...
Analytic Snapshots:  Common Use Cases that Everyone Can Utilize (Dreamforce 2...Analytic Snapshots:  Common Use Cases that Everyone Can Utilize (Dreamforce 2...
Analytic Snapshots: Common Use Cases that Everyone Can Utilize (Dreamforce 2...Rhonda Ross
 
Performance Tuning for Visualforce and Apex
Performance Tuning for Visualforce and ApexPerformance Tuning for Visualforce and Apex
Performance Tuning for Visualforce and ApexSalesforce Developers
 
Enterprise Analytics - Salesforce.com Toronto User Group Presentation
Enterprise Analytics - Salesforce.com Toronto User Group PresentationEnterprise Analytics - Salesforce.com Toronto User Group Presentation
Enterprise Analytics - Salesforce.com Toronto User Group PresentationTorontoSFDC
 
The Path to 100% Adoption
The Path to 100% AdoptionThe Path to 100% Adoption
The Path to 100% Adoptiondreamforce2006
 
Inside the Enterprise Case Studies of Customer Apps
Inside the Enterprise Case Studies of Customer AppsInside the Enterprise Case Studies of Customer Apps
Inside the Enterprise Case Studies of Customer Appsdreamforce2006
 
Living Large: Enterprise Organizations on Nonprofit Cloud
Living Large: Enterprise Organizations on Nonprofit CloudLiving Large: Enterprise Organizations on Nonprofit Cloud
Living Large: Enterprise Organizations on Nonprofit CloudSalesforce.org
 
Predictive System Performance Data Analysis
Predictive System Performance Data AnalysisPredictive System Performance Data Analysis
Predictive System Performance Data AnalysisSalesforce Engineering
 
Unleash the Potential of Big Data on Salesforce
Unleash the Potential of Big Data on SalesforceUnleash the Potential of Big Data on Salesforce
Unleash the Potential of Big Data on SalesforceDreamforce
 
Webinar: Cut that Clutter! Maintain a Clean Org and Improve Productivity
Webinar: Cut that Clutter! Maintain a Clean Org and Improve ProductivityWebinar: Cut that Clutter! Maintain a Clean Org and Improve Productivity
Webinar: Cut that Clutter! Maintain a Clean Org and Improve ProductivitySalesforce Admins
 
ISV Tech Talk: Usage Metrics (October 15, 2014)
ISV Tech Talk: Usage Metrics (October 15, 2014)ISV Tech Talk: Usage Metrics (October 15, 2014)
ISV Tech Talk: Usage Metrics (October 15, 2014)Salesforce Partners
 
Supercharge your Salesforce Reports and Dashboards
Supercharge your Salesforce Reports and DashboardsSupercharge your Salesforce Reports and Dashboards
Supercharge your Salesforce Reports and DashboardsNetStronghold
 
Salesforce Winter 17 Release Overview
Salesforce Winter 17 Release OverviewSalesforce Winter 17 Release Overview
Salesforce Winter 17 Release OverviewRoy Gilad
 
Build System Performance Data Analytics Using Wave
Build System Performance Data Analytics Using WaveBuild System Performance Data Analytics Using Wave
Build System Performance Data Analytics Using WaveSalesforce Developers
 
Essential Habits for Salesforce Admins: Actionable Analytics
Essential Habits for Salesforce Admins: Actionable AnalyticsEssential Habits for Salesforce Admins: Actionable Analytics
Essential Habits for Salesforce Admins: Actionable AnalyticsSalesforce Admins
 

Similar to Building Reports That Fly (20)

Techniques to Effectively Monitor the Performance of Customers in the Cloud
Techniques to Effectively Monitor the Performance of Customers in the CloudTechniques to Effectively Monitor the Performance of Customers in the Cloud
Techniques to Effectively Monitor the Performance of Customers in the Cloud
 
Singapore dg salesforce einstein + spring 17 release by manish
Singapore dg   salesforce einstein + spring 17 release by manishSingapore dg   salesforce einstein + spring 17 release by manish
Singapore dg salesforce einstein + spring 17 release by manish
 
Succes Services - Top tips for better adoption
Succes Services - Top tips for better adoptionSucces Services - Top tips for better adoption
Succes Services - Top tips for better adoption
 
Monitoring @ Scale in Salesforce
Monitoring @ Scale in SalesforceMonitoring @ Scale in Salesforce
Monitoring @ Scale in Salesforce
 
Instant Stardom How to Build Executive Dashboards
Instant Stardom How to Build Executive DashboardsInstant Stardom How to Build Executive Dashboards
Instant Stardom How to Build Executive Dashboards
 
Meet the Product Managers
Meet the Product ManagersMeet the Product Managers
Meet the Product Managers
 
Analytic Snapshots: Common Use Cases that Everyone Can Utilize (Dreamforce 2...
Analytic Snapshots:  Common Use Cases that Everyone Can Utilize (Dreamforce 2...Analytic Snapshots:  Common Use Cases that Everyone Can Utilize (Dreamforce 2...
Analytic Snapshots: Common Use Cases that Everyone Can Utilize (Dreamforce 2...
 
Performance Tuning for Visualforce and Apex
Performance Tuning for Visualforce and ApexPerformance Tuning for Visualforce and Apex
Performance Tuning for Visualforce and Apex
 
Enterprise Analytics - Salesforce.com Toronto User Group Presentation
Enterprise Analytics - Salesforce.com Toronto User Group PresentationEnterprise Analytics - Salesforce.com Toronto User Group Presentation
Enterprise Analytics - Salesforce.com Toronto User Group Presentation
 
The Path to 100% Adoption
The Path to 100% AdoptionThe Path to 100% Adoption
The Path to 100% Adoption
 
Inside the Enterprise Case Studies of Customer Apps
Inside the Enterprise Case Studies of Customer AppsInside the Enterprise Case Studies of Customer Apps
Inside the Enterprise Case Studies of Customer Apps
 
Living Large: Enterprise Organizations on Nonprofit Cloud
Living Large: Enterprise Organizations on Nonprofit CloudLiving Large: Enterprise Organizations on Nonprofit Cloud
Living Large: Enterprise Organizations on Nonprofit Cloud
 
Predictive System Performance Data Analysis
Predictive System Performance Data AnalysisPredictive System Performance Data Analysis
Predictive System Performance Data Analysis
 
Unleash the Potential of Big Data on Salesforce
Unleash the Potential of Big Data on SalesforceUnleash the Potential of Big Data on Salesforce
Unleash the Potential of Big Data on Salesforce
 
Webinar: Cut that Clutter! Maintain a Clean Org and Improve Productivity
Webinar: Cut that Clutter! Maintain a Clean Org and Improve ProductivityWebinar: Cut that Clutter! Maintain a Clean Org and Improve Productivity
Webinar: Cut that Clutter! Maintain a Clean Org and Improve Productivity
 
ISV Tech Talk: Usage Metrics (October 15, 2014)
ISV Tech Talk: Usage Metrics (October 15, 2014)ISV Tech Talk: Usage Metrics (October 15, 2014)
ISV Tech Talk: Usage Metrics (October 15, 2014)
 
Supercharge your Salesforce Reports and Dashboards
Supercharge your Salesforce Reports and DashboardsSupercharge your Salesforce Reports and Dashboards
Supercharge your Salesforce Reports and Dashboards
 
Salesforce Winter 17 Release Overview
Salesforce Winter 17 Release OverviewSalesforce Winter 17 Release Overview
Salesforce Winter 17 Release Overview
 
Build System Performance Data Analytics Using Wave
Build System Performance Data Analytics Using WaveBuild System Performance Data Analytics Using Wave
Build System Performance Data Analytics Using Wave
 
Essential Habits for Salesforce Admins: Actionable Analytics
Essential Habits for Salesforce Admins: Actionable AnalyticsEssential Habits for Salesforce Admins: Actionable Analytics
Essential Habits for Salesforce Admins: Actionable Analytics
 

More from Salesforce Developers

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 DevelopersSalesforce 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 PerformanceSalesforce Developers
 
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 ComponentsSalesforce Developers
 
TrailheaDX India : Developer Highlights
TrailheaDX India : Developer HighlightsTrailheaDX India : Developer Highlights
TrailheaDX India : Developer HighlightsSalesforce Developers
 
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 IndiaSalesforce Developers
 
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 DevelopmentSalesforce Developers
 
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 ComponentsSalesforce Developers
 
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 ComponentsSalesforce Developers
 
TrailheaDX and Summer '19: Developer Highlights
TrailheaDX and Summer '19: Developer HighlightsTrailheaDX and Summer '19: Developer Highlights
TrailheaDX and Summer '19: Developer HighlightsSalesforce Developers
 
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 TestingSalesforce Developers
 
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 InteroperabilitySalesforce Developers
 
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 dataSalesforce Developers
 
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 IntroductionSalesforce Developers
 
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 JSQCPSalesforce Developers
 
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 SalesforceSalesforce Developers
 
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 CaptureSalesforce Developers
 
Modern Development with Salesforce DX
Modern Development with Salesforce DXModern Development with Salesforce DX
Modern Development with Salesforce DXSalesforce Developers
 
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 ConnectSalesforce 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

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxNavinnSomaal
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 

Recently uploaded (20)

Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 
SAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptxSAP Build Work Zone - Overview L2-L3.pptx
SAP Build Work Zone - Overview L2-L3.pptx
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 

Building Reports That Fly

  • 1. Building Reports That Fly Sean Regan, salesforce.com, @SFDCSRegan John Tan, salesforce.com, @johntansfdc Irena Miziolek, NTT centerstance Jeannette Liu-Deza, NTT centerstance
  • 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.
  • 4. You are a developer or architect maintaining your org …
  • 5. Slow reports return unreliable data that hurts user productivity and leads to mistakes …
  • 6. You need to make these reports faster and trusted …
  • 7. Agenda - Building reports that fly! 1. Governance • Configuration Access • Sharing Access • Data Architecture 2. Frequency • Dashboard & Report Refreshes 3. Efficient Reports • Tuning Reports • Data Archiving/Aggregation 4. Customer Case Study
  • 9. John C. Tan Architect Evangelist @johntansfdc
  • 10. View our content on developerforce http://developer.force.com/architect
  • 11. Irena Miziolek & Jeannette Liu-Deza Technical & Solution Architects NTT Centerstance
  • 12. How many of you have …? Run a Salesforce report … and waited forever?
  • 16. Restrict report and list view creation
  • 17. Report & list view governance helps you … • Increase user adoption • Increase employee productivity • Decrease employee mistakes • Save money
  • 19. Architect sharing based on business requirements
  • 21. What’s the impact of sharing access?
  • 23. Is the correct end result really enough?
  • 25. When it isn’t necessary, get rid of it.
  • 26. Architect your data model for performance
  • 29. More is not always better
  • 30. Push data to users: Force.com Streaming API Scheduled Reports Visualforce Pages Workflow Email Alerts Chatter Feeds
  • 31. Key takeaways Governance ensures efficiency & accuracy Know your object model Push data to users to drive workflow Architect your sharing model based on business requirements
  • 33. Efficient reports • Tuning reports • Data archiving/aggregation
  • 35. What is the Force.com query optimizer? Generates the most efficient query based on: Statistics Indexes / Skinny Tables Sharing
  • 36. Best practice: One+ selective filter per report
  • 37. Selective filters: Four components 1. Filters - add filters to reduce data 2. Operators - avoid 2 inefficient filter operators 3. Thresholds – ensure filter meets selectivity threshold 4. Index Creation - index the filter field
  • 38. Filters reduce the scope of reports
  • 39. Fields that often make good filters  Date fields  Picklists  Fields with wide and even distribution of values
  • 40. Non-deterministic formula fields aren’t good filters Can’t index For example:  References related object  CASE(MyUser__r.UserType__c,1,”Gold”,”Silver”)  Create separate field and use trigger to populate Force.com SOQL Best Practices: Nulls and Formula Fields
  • 42. Avoid negative operators Query for reciprocal values instead ✖ NOT EQUALS (“closed”) ✔ EQUALS (“open”, “in progress”)
  • 43. Avoid filters with a leading % wildcard CONTAINS ‘%searchstring%’ ✖ CONTAINS (“district”) – equivalent to LIKE ‘%district%’ ✔ STARTS WITH (“district”) – equivalent to LIKE ‘district%’
  • 44. Ensure filters meet selectivity thresholds
  • 45. Standard index selectivity threshold A standard index is selective when it returns: < 30% of the first 1 million records < 15% of returned records after the first 1 million records No more than 1 million total records
  • 46. Standard index selectivity threshold Selectivity threshold for Created Date index
  • 47. Standard index selectivity threshold For 750,000 Account records < 30% of the first 1 million records 750,000 x .30 = 225,000
  • 48. Standard index selectivity threshold For 3,500,000 Account records < 30% of the first 1 million records < 15% of returned records after the first 1 million records  (1,000,000 x .30) + (2,500,000 x .15) = 675,000
  • 49. Standard index selectivity threshold Over 5,600,000 Account records No more than 1 million records 1,000,000
  • 50. Custom index selectivity threshold A custom index is selective when it returns: < 10% of the first million records < 5% of returned records after the first million records No more than 333,333 records
  • 51. Create indexes selective filter fields Trusted traveler program
  • 53. Custom indexes • Discover common filter conditions • Determine selective fields in those conditions • Request custom indexes
  • 54. A filter condition is selective when … … it uses an optimizable operator … it meets the selectivity threshold … selective fields have indexes
  • 55. Skinny tables: Last resort for non-optimizable reports
  • 56. Skinny table  Single Object. No cross-object joins  Maximum of 100 fields  Not aggregate/summary data. 1:1 recount between source and skinny  Skinny updated automatically  Minimal joins  salesforce.com will analyze and create
  • 57. Tell me more about skinny tables … Webinar: Inside the Force.com Query Optimizer
  • 59. Data archiving Reduce the # of records the query optimizer needs to consider  Determine strategy during design phase  Move older records into a different object  Soft deletes still count towards record count
  • 60. Data aggregation  Report on historical data  Save tabular or summary report to a custom object  Use Analytic Snapshots or Batch Apex  Gists: • Batch Apex Class - https://gist.github.com/johntansfdc/7044473 • Trigger - https://gist.github.com/johntansfdc/7044570
  • 61. Key takeaways Reports should contain at least one selective filter A filter is selective if… the field is indexed the filter does not use an inefficient operator the filter meets the selectivity theshold Implement data archiving/aggregation strategies
  • 63. Irena Miziolek & Jeannette Liu-Deza Technical & Solution Architects NTT Centerstance
  • 64. Agenda What’s the problem How to troubleshoot What’s the solution
  • 66. Challenge Reports & dashboards timing out Errors in Data Loads Information Overload
  • 67. In the beginning…. Note: no real data is used in this presentation
  • 69. Reports and dashboards are slow or timing out
  • 72. Reduce data volume Batch jobs Data Sampling Frequency
  • 76. Update instead of delete/reload Full Nightly Delete & Reload Update/Insert Upsert
  • 84.
  • 86. Building reports that fly • Govern users access to reports and data • Manage reporting frequency • Add at least one selective filter per report
  • 87. Related DevZone hands-on, mini-workshop Wednesday 1:00-1:45 PM Thursday 1:00-1:45 PM

Editor's Notes

  1. SPEAKER: So what are we going to cover in today’s session? Well, let’s say your company uses Salesforce apps or perhaps a custom Force.com app.
  2. SPEAKER: You are a developer, perhaps an architect, and you are in charge of maintaining the org.
  3. SPEAKER: The org has a bunch of reports that query data from objects with 100s of millions of records. And there are a bunch of reports created by users that are slow. So slow that users are loosing productivity. The users also make mistakes because the data returned by the reports is not always correct.
  4. SPEAKER: So your job is to make these reports faster and ensure their results can be trusted.
  5. SPEAKER: And that’s what we are going to cover today. We are going to take a look at the most common problems that cause slow and inaccurate reports, and then we’ll show you how to find and fix these problems in your org. Using the skills you learn today, you’ll be able to go back to work and make old, and new, reports fly with data your users can trust.
  6. SPEAKER: My name is Sean Regan, and I’m part of the Customer Centric Engineering group here at salesforce.com. I think of myself as an “architect evangelist”, someone that can help you learn more about how Salesforce works under the hood so that you can implement better solutions on our platform.
  7. SPEAKER: With me today is another member of our team, John Tan, and together, we’d like to discuss what everyone should know about building reports that fly.
  8. SPEAKER: Governance is the concept of ensuring users within our organization have only as much access as required to do their jobs.
  9. SPEAKER: Lets talk about governing your configuration access.
  10. SPEAKER: Just as pilots need governance to ensure they can successfully fly their airplanes, Salesforce users also require governance to successfully create reports that fly. If there were only 100 passengers in the world that flew, flights would be successful without air traffic control but as the number of passengers and flights increase, so to does the need for air traffic control. Out of the box, Salesforce allows all users to create and modify reports and list views to access data, and users belonging to smaller organizations can usually find what they need quickly and easily, even if they have only a basic understanding of the Salesforce platform. However, if users both belong to an organization with large data volume and a complex sharing architecture, and those users aren’t familiar with their organizations Salesforce data model or its data distribution, they might create inefficient queries that don’t return an accurate, appropriately focused, or quickly delivered data set. In other words, they might need help from an architect or developer like you.
  11. SPEAKER: We provide several way to govern users access to data on the platform. Large customers that have 10s or 100s of millions of records should govern their end users ability to create reports and list view. This ensures that they: can be architected and tuned to return results fast. return the correct data users are looking for. You can govern your users’ ability to create and manage reports and list views at the profile level by un-checking the Create and Customize Reports checkbox.
  12. SPEAKER: Governing end users ability to create reports and list views can have a very significant positive impact on your organization or if you are a partner, on your customers. By governing end users ability to create reports and list views, you can: Increase the user adoption rate by getting the right data to users fast. Increase employee productivity since users wont be waiting for slow reports to return data. Decrease employee mistakes since the data they are querying can be trusted to be accurate and complete. All of these benefits ultimate can save your organization money or if you are a partner they can save your customers money!
  13. SPEAKER: Now lets talk about governing your sharing access.
  14. SPEAKER: In large organizations that have a highly restrictive sharing model, implementing sharing can cause reports to use indexed sharing filters to return results extremely fast. If a user only has access to a small number of an object’s records and you configure that object’s organization-wide default as Private, we will use the sharing index filter to drive any queries on that object made by that user. Although it is important to understand that all sharing architectures that produce the same end result are not created equal from a performance perspective. If you are interested in seeing an example of this, be sure to attend our workshop.
  15. SPEAKER: What about a global company that has business units in each country with a relatively even data distribution across each of those business unit. In this case, this company’s data access requirements are not restrictive. Should they implement a sharing model to segregate data by country to improve report performance or simply filter the data on the reports themselves? Lets get a show of hands: How many of you think implementing the sharing model will improve performance of the application? How many think filtering on each of the reports will yield the best performance? In this case, sharing should not be implemented since the sharing filter would not be selective. Using an open sharing model eliminates the query optimizers need to check the sharing filter and also reduces the administrative burden with managing the sharing records.
  16. SPEAKER: Some architects think that creating a sharing model is a good way to filter records and this can certainly have a positive impact on performance when users query data however in many cases, the same selectivity could be achieved through indexed report filters. In these cases, sharing will add overhead to the queries and increase administrative burden. In most cases the overhead related to sharing will outweigh any performance gain. As a result, we generally recommend implementing your sharing model based on your organization’s requirements.
  17. SPEAKER: Now lets talk about governing your data architecture.
  18. SPEAKER: There are a lot of ways to do things. Some are certainly more efficient than others. Just as there are many routes that an airplane can take to get to an airport, there are many ways a report can return the exact same dataset and some are much faster than others.
  19. SPEAKER: Enterprise customers can sometimes have rather complex schemas. This is another great reason, end users’ ability to create reports and list views should be governed in these types of environments. However, it is critical for an administrator or architect to be intimately familiar with the schema to ensure reports are being created in an optimal manner. For example, reports should not perform aggregation on a field when a rollup summary field already exists that performs the same calculation.
  20. SPEAKER: I know most of you have heard it before but we encounter it time after time. If data is not required for transactional business, it should be archived or purged. There are many different strategies to keep this data out of your transactional dataset but still allow the data to be accessible. John will talk about aggregation later in the presentation which is one of these approaches. If you feel like you need assistance in this area, we have many great partners who can help architect a data management strategy to meet your specific requirements.
  21. SPEAKER: When architecting your object model for large data volume objects, it is important to consider both how its data will be used and its query performance. When dealing with 100s of millions or billions of records in an object, if query filters cross multiple objects, the joins can be very costly. It is extremely important to consider the performance impact of flattening your data architecture to ensure peak performance for data access.
  22. Now we will switch gears a bit and discuss frequency which is the part of your architecture that determines how users go about getting the data they require to perform their job.
  23. First, lets discuss an organization’s frequency of dashboard and report refreshes.
  24. SPEAKER: Reports, Dashboards and even Visualforce pages that are constantly refreshed, needlessly use resources that can impact your report’s performance as well as the performance of other operations in your org.
  25. SPEAKER: In Customer Centric Engineering, we see many of our customers who are pulling data in a very inefficient manner by driving workflow off of reports. The platform offers quite a few tools to implement a push based solution which would provide users with the same data in a much more efficient manner. For example, you can use workflow rules, scheduled reports and chatter feeds right out of the box. For more complex requirements, a Visualforce page can be built using our streaming API that will automatically refresh when the underlying data architecture changes. In many cases, these solutions can be much more efficient and return the exact same data to users.
  26. Sean covered the who, what and when but let’s talk about how. Specifically about ensuring your reports are as efficient as possible.
  27. To ensure that your reports are efficient, we’ll be covering: The role of the Force.com Query Optimizer and indexes for optimal report performance What it means to include at least 1 selective filter in your report How skinny tables may help after you’ve exhausted indexes Making your data lightweight
  28. Because of our multitenant data architecture, we developed our own query optimizer. It is the engine that sits between your reports/SOQL/listviews and our database. The query optimizer looks at the list of filters in the WHERE clause and runs inexpensive queries based on those filters to determine best filter (smallest data-set). It then chooses the option with the lowest estimated cost Based on this, it’ll then determine the best leading table/index to drive the query.
  29. If the query optimizer tries to drive a query with the most selective filter, your reports should include at least 1 selective filter. Let’s talk about how to do it.
  30. In order to have at least one selective filter we’ll need to do the following: Add filters to your reports to reduce scope Ensure the operators in these filters are efficient Ensure that the number of records returned by the filter meets a selectivity threshold If the filter meets the threshold and if it’s not indexed, create one Let’s look into each one of these areas in more detail
  31. Like overpacking for a trip, you’ll want to limit the amount of data retrieved.
  32. A good candidate for filters besides fields that are already indexed would be date fields. Date fields are examples of fields that are wide and have an even distribution. If the data values in your field is skewed to a very small number of records, it will be hard to meet the selectivity thresholds which we will discuss shortly.
  33. A common problem we see with bad filters are non-deterministic formula fields. Essentially, the data can change based on when you access it. A formula field that uses the TODAY() function is non-deterministic. The most common example is cross object references. The easiest way to spot these are to look for “__r”. For more info on formula fields, take a look at this blog on developerforce.
  34. So we’ve just talked about adding a filter to your report. But what about the operators for those filters? Well, there are 2 of them that keep your filter from being selective.
  35. For NOT or != conditions, due to the underlying database implementation, the query optimizer can’t use the index to drive the query. Includes the ‘excludes’ operator
  36. All database query optimizers have the same issue with leading % wildcard searches. If you need to do leading % wildcard searches, SOSL may be a better alternative. However, if you need real-time results, an alternative it to create a custom search page which restricts leading % wildcard searches and adds governance on the search string(s).
  37. The query optimizer has set thresholds for using an index to drive the query. If your filter returns more records than the threshold, the optimizer knows that it would not be efficient to use that index.
  38. For a custom index, the threshold is essentially 1/3 of a standard index.
  39. After you’ve determined that your filter would meet the selectivity threshold, create an index for that field if one doesn’t already exist.
  40. Although a custom index is created when you use unique or external id, we recommend working with support to create custom indexes.
  41. We’ve spoken about how the query optimizer tries to drive a query with a selective index. However, there may be times where indexes aren’t enough. After tuning with indexes is exhausted, skinny tables may help.
  42. Now that you’ve learned how to build efficient reports. You’ll want to maintain that efficiency. One of the best ways to do this is to keep your data lean.
  43. Speaker notes: When the Force.com query optimizer judges returned records against its threhsholds, all of the records that appear in the Recycle Bin or are marked for physical delete do still count against your total number of records. If you’re deleting a large number of records, work with customer support to physically delete the records.
  44. Allergan is a multi-specialty health care company focused on discovering, developing and commercializing innovative pharmaceuticals, biologics, medical devices and over-the-counter consumer products that enable people to live life to its greatest potential — to see more clearly, move more freely, express themselves more fully.
  45. Sales Rep perspective: Inline report for individual Physician is taking a long time to load
  46. Sales Rep perspective: Viewing Sales Data is not meaningful: too many rows, little relevance. Can’t find the information needed.
  47. Manager Perspective: Summary Dashboards keep spinning. And they wait, and they wait, and they wait. While they wait, let’s look at specifics of the dashboards, and let’s look at the storage.
  48. “I am afraid that I rather give myself away when I explain,” said he. “Results without causes are much more impressive.” The Stock-Broker’s Clerk, Sir Arthur Conan Doyle
  49. Let’s take a look at the timing out dashboards.
  50. Troubleshooting tool #1: Storage Usage Overall Data Storage is getting very high. There are only 6,000 accounts – how can 6,000 accounts eat up that much storage? Perhaps Daily Sales Data is too granular?
  51. Most impactful: data volumes. Only load absolutely necessary data; treat as operational data store.
  52. Ways to reduce: Reduce sampling frequency Summarize (in ETL layer, batch jobs, off-platform jobs, etc) Archive
  53. Common problem when moving summary calculations into the Integration Layer, is the lack of primary keys. Common solution is to create Compound Keys (logical Keys) that identify a piece of information uniquely, and are composed of multiple components.
  54. Troubleshooting tool #2: Workbench Use to profile data: distribution, anomalies, information sparsity/density
  55. Use to analyze total data set, including deleted records. Note that the number of records returned is much larger when including the deleted records for our use case.
  56. Existing data load scripts were deleting/reloading full sets of data nightly. We helped the customer retire the full reloads, and just do updates/inserts. Note: upserts are easier to implement, but are a bit slower.
  57. Challenge: large numbers of errors in data loads; long-running operations; timeouts.
  58. Error logs showed concurrency locking
  59. Caused by roll-up summary fields. Fixed by moving the calculations into the Integration Layer, and removing the roll-ups.
  60. After, the major re-work of the data structure, and integration, we turned to fine-tuning.
  61. People Defined who can create reports and views Ensured there is a “platform owner”   Process Ensured performance testing of reports and views in Full sandboxes before promotion to Prod  Implemented complex sharing model, limiting visibility to just records required
  62. Demo
  63. And they fly!
  64. SPEAKER: Governance is the concept of ensuring users within our organization have only as much access as required to do their jobs.