Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Salesforce.com’s Multitenant Architecture 
How we do the magic we do…
Safe Harbor 
Safe harbor statement under the Private Securities Litigation Reform Act of 1995: 
This presentation may cont...
Doug Merrett 
Principal Architect – Northern Europe
In the Internet of Customers, Apps Connect Everything 
Connected 
Employee 
s 
Connected 
Products 
Social 
Mobile 
Connec...
Trunk Club 
CONSUMER FASHION APP Honeywell 
CONTRACTOR 
APP 
Zimmer 
PRODUCT CATALOG APP 
Virgin America 
EMPLOYEE INTRANE...
The World’s #1 Cloud Platform 
The Fastest Path From Idea To App
Salesforce1: A New Customer Platform for the Future 
Your Customers
At The Core Of The Customer Success Platform 
Multitenant Cloud Computing 
Enterprise 
Cloud Computing 
Fast Innovative Op...
What Salesforce.com does for you 
YOU 
get to focus on 
innovation 
We do 
Infrastructure 
Services 
We do 
Application 
S...
Multitenancy
One Cloud with Many Customers 
Shared Elastic Services 
One Primary Data Store per Production Instance 
8K+ Customers per ...
What is in an Instance 
Pivot 
tables 
Shared Database Metadata Cache 
Data tables 
Metadata 
tables 
Bulk data 
processin...
What Multitenancy means for Salesforce.com R&D 
One Version 
No Legacy Teams 
Bugs fixed for everyone
What Multitenancy means for Salesforce.com R&D 
One Version 
No Legacy Teams 
Bugs fixed for everyone 
Automation 
260K+ o...
What Multitenancy means for Salesforce.com R&D 
One Version 
No Legacy Teams 
Bugs fixed for everyone 
Instance Architectu...
What Multitenancy means for Salesforce.com R&D 
Automation 
Predictability 
Three major releases per year 
Bug fixes every...
What Multitenancy means for Salesforce.com R&D 
Automation 
Predictability 
Three major releases per year 
Bug fixes every...
Key Architectural Principles 
• Stateless Appservers 
• Database system of record 
• No Database Definition Language (DDL)...
Metadata, data, and pivot table structures store data 
corresponding to virtual data structures
The Objects table stores metadata about custom objects 
(tables)
The Fields table stores metadata about custom fields 
(columns)
The Data heap table stores all structured data 
corresponding to custom objects
A single slot can store various types of data that originate 
from different objects
The Indexes pivot table manages tenant-specific selective 
indexes
The UniqueFields pivot table facilitates uniqueness for 
custom fields
The Relationships pivot table facilitates referential integrity 
and optimizes joins
All data & metadata structures are partitioned to improve 
performance and manageability 
• Tables hash partitioned by Org...
Application Framework: a whole lot for free 
• Native Declarative features 
• Bulk Processing 
• The Recycle Bin 
• Full T...
Force.com’s native Application Framework provides 
declarative development, no coding
Validation rules and simple formulas: 
Business analysts can “code” these
Not so simple: Rollup-summary fields provide for easy 
cross-object summaries
Force.com’s bulk processing optimizations reduce overhead 
for data loads
Data definition processing is optimized to avoid 
performance hits or concurrency limits 
Examples: 
• Sort all records by...
The Recycle Bin: Smart Undeletes 
Restore 
 Individual object instances 
(records) 
 Related object instances 
(parent/c...
DR Instance 
Multitenant Search, anything but simple 
Index Backup 
Replication 
Primary Instance
Multitenancy delivers Blazing Performance 
Transactions Per Quarter 
131B Transactions in Q2FY15 
51% YOY Growth 
Average ...
• 4 Online copies of database 
• 2 Online backup copies 
Multitenant Core Data Storage 
Async 
Replication 
Production 
RA...
Multitenant Query Optimization Principles 
• Consistent SQL generation across the application 
• Deep awareness of pivot t...
Multitenant Query Optimizer 
Check user 
visibility 
Check filer 
selectivity 
Dynamically 
write query 
based on pre-quer...
The optimizer considers pre-query selectivity 
measurements when writing a query 
Pre-Query Selectivity 
Measurements 
Wri...
Apex: Force.com’s procedural frontier 
Integer NUM = 10; 
Account[] accs; 
// Clean up old data 
accs = [select id from ac...
Apex code is stored as metadata, interpreted at runtime, and 
cached for scalability
Apex is deeply integrated with platform features 
• Bulk DML 
• Email and messaging 
• Asynchronous processing (Futures) 
...
Social 
Feeds 
Profiles 
Files 
Social Graph 
Mobile 
Right Experience 
Any Device 
Customizable 
Real-time 
Real-time not...
Where to go for more information... 
• http://developer.force.com/architect 
• http://developer.force.com/security 
• Othe...
Where to go for more information... (cont) 
• Other Sessions
BUILD APPS FAST. 
BUILD BUSINESS FASTER. 
Don’t miss the Salesforce1 Platform Keynote with 
Wednesday, October 15, 2 p.m. ...
Q & A 
Please fill out your survey in 
Dreamforce App
Salesforce Multitenant Architecture: How We Do the Magic We Do
Upcoming SlideShare
Loading in …5
×

of

Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 1 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 2 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 3 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 4 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 5 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 6 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 7 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 8 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 9 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 10 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 11 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 12 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 13 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 14 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 15 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 16 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 17 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 18 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 19 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 20 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 21 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 22 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 23 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 24 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 25 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 26 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 27 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 28 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 29 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 30 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 31 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 32 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 33 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 34 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 35 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 36 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 37 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 38 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 39 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 40 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 41 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 42 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 43 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 44 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 45 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 46 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 47 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 48 Salesforce Multitenant Architecture: How We Do the Magic We Do Slide 49
Upcoming SlideShare
Adaptive Development Methodology
Next
Download to read offline and view in fullscreen.

34 Likes

Share

Download to read offline

Salesforce Multitenant Architecture: How We Do the Magic We Do

Download to read offline

Join us as we take a deep dive into the architecture of the Salesforce1 Platform, explain how multitenancy actually works, and how it affects you as a developer. Showing the technology we use and the design principles we adhere to, you'll see how our platform teams manage three major upgrades a year without causing any issues to existing development. We'll cover the performance and security implications around the platform to give you an understanding of how limits have evolved. By the end of the session, you'll have a better grasp of the architecture underpinning Force.com and understand how to get the most out of it.

Related Books

Free with a 30 day trial from Scribd

See all

Salesforce Multitenant Architecture: How We Do the Magic We Do

  1. 1. Salesforce.com’s Multitenant Architecture How we do the magic we do…
  2. 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. 3. Doug Merrett Principal Architect – Northern Europe
  4. 4. In the Internet of Customers, Apps Connect Everything Connected Employee s Connected Products Social Mobile Connected Partners Cloud Connected Customers Customer
  5. 5. Trunk Club CONSUMER FASHION APP Honeywell CONTRACTOR APP Zimmer PRODUCT CATALOG APP Virgin America EMPLOYEE INTRANET APP Academy of Art STUDENT SCHEDULING APP Time Warner Cable FIELD SALES APP Build Next Gen Apps. Lead Next Gen IT.
  6. 6. The World’s #1 Cloud Platform The Fastest Path From Idea To App
  7. 7. Salesforce1: A New Customer Platform for the Future Your Customers
  8. 8. At The Core Of The Customer Success Platform Multitenant Cloud Computing Enterprise Cloud Computing Fast Innovative Open Easy Trusted No Hardware No Software Faster ROI Automatic Upgrades Continuous Improvement Flexible Any Device API First Data Portability Transparent Secure Performance at Scale Real-time Customizations AppExchange Scalable
  9. 9. What Salesforce.com does for you YOU get to focus on innovation We do Infrastructure Services We do Application Services We do Operations Services Customize your CRM Build your data model Build your business logic Build your user interface Network Storage Operating System Database App Server Web Server Data Center Security Sharing Integration Customization Web Services API Multi-Language Authentication Availability Monitoring Patch Mgmt Upgrades Backup NOC
  10. 10. Multitenancy
  11. 11. One Cloud with Many Customers Shared Elastic Services One Primary Data Store per Production Instance 8K+ Customers per Instance 50+ Production Instances All data segregated by customer All operations include Org ID Disaster Recovery Per Org encryption keys
  12. 12. What is in an Instance Pivot tables Shared Database Metadata Cache Data tables Metadata tables Bulk data processing Multitenant aware Query optimizer Runtime App Generator Full text search engine Virtual Application Components Common Application Screens Tenant Specific Screens Objects (Tables)
  13. 13. What Multitenancy means for Salesforce.com R&D One Version No Legacy Teams Bugs fixed for everyone
  14. 14. What Multitenancy means for Salesforce.com R&D One Version No Legacy Teams Bugs fixed for everyone Automation 260K+ of our Tests Run your tests as well
  15. 15. What Multitenancy means for Salesforce.com R&D One Version No Legacy Teams Bugs fixed for everyone Instance Architecture Automation 260K+ of our Tests Run your tests as well Staggered Releases Scalability across all sizes
  16. 16. What Multitenancy means for Salesforce.com R&D Automation Predictability Three major releases per year Bug fixes every week One Version No Legacy Teams Bugs fixed for everyone Instance Architecture 260K+ of our Tests Run your tests as well Staggered Releases Scalability across all sizes
  17. 17. What Multitenancy means for Salesforce.com R&D Automation Predictability Three major releases per year Bug fixes every week One Version No Legacy Teams Bugs fixed for everyone Instance Architecture 260K+ of our Tests Run your tests as well Staggered Releases Scalability across all sizes
  18. 18. Key Architectural Principles • Stateless Appservers • Database system of record • No Database Definition Language (DDL) at Runtime • All tables partitioned by OrgId • Smart Primary Keys, Polymorphic Foreign Keys • Creative de-normalization and pivoting • Use every RDBMS feature & optimization
  19. 19. Metadata, data, and pivot table structures store data corresponding to virtual data structures
  20. 20. The Objects table stores metadata about custom objects (tables)
  21. 21. The Fields table stores metadata about custom fields (columns)
  22. 22. The Data heap table stores all structured data corresponding to custom objects
  23. 23. A single slot can store various types of data that originate from different objects
  24. 24. The Indexes pivot table manages tenant-specific selective indexes
  25. 25. The UniqueFields pivot table facilitates uniqueness for custom fields
  26. 26. The Relationships pivot table facilitates referential integrity and optimizes joins
  27. 27. All data & metadata structures are partitioned to improve performance and manageability • Tables hash partitioned by OrgId • Separate connection pools point to physical hosts • App tier is also dynamically partitioned by OrgId • Distributed metadata cache with transactional invalidation
  28. 28. Application Framework: a whole lot for free • Native Declarative features • Bulk Processing • The Recycle Bin • Full Text Search • Smart Bulk Data Manipulation Language (DML) • Web Services APIs
  29. 29. Force.com’s native Application Framework provides declarative development, no coding
  30. 30. Validation rules and simple formulas: Business analysts can “code” these
  31. 31. Not so simple: Rollup-summary fields provide for easy cross-object summaries
  32. 32. Force.com’s bulk processing optimizations reduce overhead for data loads
  33. 33. Data definition processing is optimized to avoid performance hits or concurrency limits Examples: • Sort all records by primary key before attempting DML • Operate on tables in deterministic order • Slot reallocation for field datatype change • Deferred calculation for new rollup-summary field • Background processing of mass changes
  34. 34. The Recycle Bin: Smart Undeletes Restore  Individual object instances (records)  Related object instances (parent/child records)  Entire fields and objects (dropped columns and tables)
  35. 35. DR Instance Multitenant Search, anything but simple Index Backup Replication Primary Instance
  36. 36. Multitenancy delivers Blazing Performance Transactions Per Quarter 131B Transactions in Q2FY15 51% YOY Growth Average Page Time 217ms Latency in Q2FY15 13% YOY Improvement
  37. 37. • 4 Online copies of database • 2 Online backup copies Multitenant Core Data Storage Async Replication Production RAC Cluster Data Guard Replication Application Servers Standby RAC Cluster Primary Instance Production RAC Cluster Data Guard Replication Application Servers Standby RAC Cluster Secondary Instance
  38. 38. Multitenant Query Optimization Principles • Consistent SQL generation across the application • Deep awareness of pivot table structure – Flex schema does impose a cost • Tenant, user, object, fields statistics are crucial • No runaway queries allowed • Deep integration with the sharing model
  39. 39. Multitenant Query Optimizer Check user visibility Check filer selectivity Dynamically write query based on pre-queries Run Pre-Queries Execute optimized query user visibility = number of rows user can access filter selectivity = index corresponding to filter column Search originates from API or global search return results
  40. 40. The optimizer considers pre-query selectivity measurements when writing a query Pre-Query Selectivity Measurements Write final database access query, forcing … User Filter Low Low … nested loops join; drive using view of rows that the user can see. Low High … use of index related to filter. High Low … ordered hash join; drive using Data table. High High … use of index related to filter.
  41. 41. Apex: Force.com’s procedural frontier Integer NUM = 10; Account[] accs; // Clean up old data accs = [select id from account where name like 'test%']; delete accs; commit; accs = new Account[NUM]; for (Integer i = 0; i < NUM; i++) { accs[i] = new Account(name='test ' + i, outstandingshares__c=i); } insert accs; Contact[] cons = new Contact [0]; for (Account acc : accs) { cons.add(new Contact(lastName=acc.name + '1', accountid=acc.id)); cons.add(new Contact(lastName=acc.name + '2', accountid=acc.id)); } insert cons; SOQL Query Variable Declaration Commit Transaction Control Structure Array Data Operation
  42. 42. Apex code is stored as metadata, interpreted at runtime, and cached for scalability
  43. 43. Apex is deeply integrated with platform features • Bulk DML • Email and messaging • Asynchronous processing (Futures) • XmlStream / HTTP (RESTful) services classes • Declarative exposure as new Web Services
  44. 44. Social Feeds Profiles Files Social Graph Mobile Right Experience Any Device Customizable Real-time Real-time notifications Real-time workflow Real-time feeds Customer Success Platform Powered by Multitenancy Open Open Standards Open Technologies Open Interfaces Open Languages What Makes Us Different?
  45. 45. Where to go for more information... • http://developer.force.com/architect • http://developer.force.com/security • Other Sessions
  46. 46. Where to go for more information... (cont) • Other Sessions
  47. 47. BUILD APPS FAST. BUILD BUSINESS FASTER. Don’t miss the Salesforce1 Platform Keynote with Wednesday, October 15, 2 p.m. Moscone South, Main Keynote Hall Mike Rosenbaum EVP, Salesforce1 Platform Tod Nielsen CEO, Heroku Toby Lester VP, Technology Architecture And Innovation, Brown-Forman Mike Meadows VP, Chief Technology Officer Eli Lilly and Company
  48. 48. Q & A Please fill out your survey in Dreamforce App
  • taedok

    Aug. 25, 2021
  • lukeparis

    Jul. 20, 2021
  • ssuserfed2871

    Apr. 7, 2021
  • abhimanyubhogwan

    Mar. 7, 2021
  • liudingnet

    Jan. 13, 2021
  • zhuanggl

    Jul. 4, 2020
  • joejoe621

    Mar. 12, 2020
  • shankarmahesh1

    Mar. 11, 2020
  • HassanMaher5

    Nov. 23, 2019
  • safibaig

    Nov. 13, 2019
  • sandeepkolnati

    Oct. 1, 2018
  • apeattie

    Jan. 8, 2018
  • zhengwb

    Sep. 2, 2017
  • knight1943

    Jun. 9, 2017
  • MikeRoberts32

    Apr. 20, 2017
  • PrateekSaxena40

    Mar. 15, 2017
  • tak4hir0

    Feb. 1, 2017
  • RobertoCapelan

    Oct. 27, 2016
  • donovanrjohnson

    Sep. 30, 2016
  • arvindraman76

    May. 19, 2016

Join us as we take a deep dive into the architecture of the Salesforce1 Platform, explain how multitenancy actually works, and how it affects you as a developer. Showing the technology we use and the design principles we adhere to, you'll see how our platform teams manage three major upgrades a year without causing any issues to existing development. We'll cover the performance and security implications around the platform to give you an understanding of how limits have evolved. By the end of the session, you'll have a better grasp of the architecture underpinning Force.com and understand how to get the most out of it.

Views

Total views

20,638

On Slideshare

0

From embeds

0

Number of embeds

71

Actions

Downloads

1,207

Shares

0

Comments

0

Likes

34

×