SlideShare a Scribd company logo
#CRMUGSummit | #INreno15
#CRMUGSummit
Daniel Cai, KingswaySoft Inc.
SESSION CODE: ADC26
GETTING DATA INTO MICROSOFT DYNAMICS
CRM FASTER
#CRMUGSummit | #INreno15
INTRODUCTION - YOUR PRESENTER
 Daniel Cai
 Principal Developer @KingswaySoft
 7 Years of development experiences with Microsoft Dynamics CRM
– Mostly working as a developer
 5 times of Microsoft Dynamics CRM MVP since 2011
 About KingswaySoft
– A leading provider of data integration solutions for Microsoft Dynamics software and
beyond
• SSIS Integration Toolkit for Microsoft Dynamics CRM
• SSIS Integration Toolkit for Microsoft Dynamics AX
• SSIS Integration Toolkit for Microsoft Dynamics GP
• SSIS Integration Toolkit for Microsoft Dynamics Marketing
• SSIS Integration Toolkit for Microsoft Dynamics NAV
• SSIS Integration Toolkit for Microsoft Dynamics SL
• SSIS Integration Toolkit for Parature
• and many more…
– Thousands of enterprise clients worldwide depend on our integration solutions to
drive their data efficiency
2
#CRMUGSummit | #INreno15
 Discuss the techniques that you can use to get
data into Microsoft Dynamics CRM faster
 Discuss some best practices that you utilize in
your CRM data integration and migration
projects
3
SESSION OBJECTIVES
#CRMUGSummit | #INreno15
 SSIS Integration Toolkit is used in some occasions in this presentation to
discuss the techniques
– It is a data integration solution developed by KingswaySoft that I work for
– More information available at http://www.kingswaysoft.com/products/ssis-integration-
toolkit-for-microsoft-dynamics-crm
 The techniques should be transferrable to any other third-party or home-
grown solutions in a similar fashion, provided an equivalent option is
available
 I didn’t invent any tips or tricks, neither did I discover all of them by myself,
they all come from the community that I have been learning. The credits go
to the generous CRM community and some special individuals.
4
DISCLAIMER
#CRMUGSummit | #INreno15
 WHY?
 WHERE TO START FROM?
 HOW?
 Final Q&A
 Closing & Surveys
5
AGENDA
WHY?
#CRMUGSummit | #INreno15
 Web Service Interfaces are generally slow
– Dynamics CRM is no exception
 You are often constrained by the limited time window
– A couple to a few hours time window for your daily integration
– Typically a ~50 hours of time window for the initial data migration
• Friday 9pm to Monday 6am
 Your data volume could be significantly large
 You always want to be faster!
7
WHAT ARE THE PROBLEMS
WHERE TO START FROM?
#CRMUGSummit | #INreno15
 Identify Resources
– Technical Resources
 Get to know your infrastructure
– Networking
– Server Capacities
 Define a baseline benchmark
– How many records in a second are required in order to meet the time window allowed
 Define the infrastructure that can help you achieve the desired benchmark
 Decide between Buy vs Write
9
DEFINE YOUR STRATEGIES
#CRMUGSummit | #INreno15
 Optimized Infrastructure
– Networking
– Firewall
– Security Policies
– Network Load Balancer
 Server Capacity (CRM Server, Database Server, Integration
Server)
– CPU
– Memory
– I/O
10
HAVING THE RIGHT INFRASTRUCTURE
#CRMUGSummit | #INreno15
 CRM Data Import Wizard
 Message-driven Integration Solutions
– BizTalk
– Service Bus
– Message Queue
 Batch-based ETL Solutions
– SSIS
– Scribe
– Informatica
– IBM CastIron
11
CHOOSE THE RIGHT TOOLS
#CRMUGSummit | #INreno15
 Each tool works somewhat differently
 Establish a good understanding of your tools
– Know the capabilities
– Know the different options to achieve a particular
purpose
– Know the techniques that can be used to help achieve
better performance
12
TRY TO KNOW YOUR TOOLS
HOW?
#CRMUGSummit | #INreno15
MULTI-THREADING
Make sure to update your .config file in order to
overcome the connection limit of concurrent
service calls
<configuration>
...
<system.net>
<connectionManagement>
<add address="*" maxconnection="100"/>
</connectionManagement>
</system.net>
</configuration>
TheSSIS way
#CRMUGSummit | #INreno15
LEVERAGE MULTI-NODE CLUSTER
How to achieve this?
• CRM Server URL option in SSIS Integration Toolkit
#CRMUGSummit | #INreno15
BULK API
 Bulk API is more beneficial when
network latency is high
 There is an API throttling with CRM
Online
– At most 2 concurrent ExecuteMultiple
requests per organization
How to achieve this?
• Simply enter a Batch Size in SSIS destination
component.
#CRMUGSummit | #INreno15
 The less fields, the better performance
 Some fields may require additional services calls using special SOAP messages when
writing to CRM
– statecode/statuscode
– ownerid
– some more
• parentsytemuserid and businessunitid (systemuser entity)
• businessunitid (team and equipment entities)
• Parentbusinessunitid (businessunit entity)
– Those special service calls are not necessary if it is an Update and you are using v7.1 or later
• For Create or Upsert calls, you still need the additional service calls (as of v7.1).
 Any fields registered for CRM plugins/workflows or auditing will have certain performance
impact when submitted
17
MINIMIZE THE NUMBER OF FIELDS YOU WORK WITH
#CRMUGSummit | #INreno15
 Why?
– Smaller SOAP message, which in turn results in less networking time
– Can avoid firing unnecessary CRM plugins/workflows or auditing
that are registered for the fields
 How to achieve this?
– Simply turn on “Ignore Unchanged Fields” option in CRM destination
component
18
AVOID SUBMITTING UNCHANGED FIELDS
#CRMUGSummit | #INreno15
 CRM Diagnostics Tool
– http://CrmServer/tools/diagnostics/diag.aspx
 Ideally the latency should be as low as
possible
– Make sure the integration server (or
workstation) is close to the CRM Server
– A poor infrastructure can result in high
network latency, even the servers are close
to each other
 Bandwidth should be as high as possible
19
MIND YOUR NETWORK LATENCY
#CRMUGSummit | #INreno15
 Which servers
– CRM Server
– Database Server
– Integration Server (or workstation)
 What to watch
– CPU
– Memory
– I/O
– Other CRM performance counters
20
WATCH OUT RESOURCE USAGES ON SERVERS
#CRMUGSummit | #INreno15
 Plan CRM database growth
– Have the right server specification to accommodate the growth
– Define data archiving strategies as required
– For initial load, consider sizing the database to the target size after the completion of the load to avoid database growth during
the load
 Cleanup PrincipalObjectAccessBase table as required (to remove orphan records)
– http://support.microsoft.com/kb/2664150
• Consider implementing this as a SQL Server agent job to cleanup weekly or monthly to keep your system healthy
 Cleanup AsyncOperationBase table as required (to remove completed workflow logs)
– http://support.microsoft.com/kb/968520 for one-time cleanup
• Make sure you implement the index first, otherwise it could a long time to complete depending on how many records you have
• Consider implementing this as a SQL Server agent job to cleanup weekly or monthly to keep your system healthy
– For CRM workflows, consider choosing “Automatically delete completed workflow jobs (to save disk space)” option for automatic
cleanup
– For asynchronous plugin, consider choosing “Delete AsyncOperation if StatusCode = Successful” option for automatic cleanup
21
MANAGE DATABASE GROWTH
#CRMUGSummit | #INreno15
 If your data integration or migration process involves any querying, you should review your query performance
 Depending on the situation, if any query involves non-indexed CRM database field(s), you might want to add custom
index(es)
– CRM On-Prem, add custom indexes to CRM database directly
– CRM Online, request adding custom indexes by raising a support ticket. Alternatively, use the following techniques to add custom
indexes automatically.
• Add the field to CRM quick find view
• Create CRM alternate key – will have to be unique
 Note that having an excessive number of indexes in one database table (entity) can adversely affect your performance
 Where to start from?
– Look for long running queries in CRM Server Windows Log
• CRM logs any database queries that take longer than 10s
– SQL Server “Missing Index” tables
 Query Tuning
– Show Actual Execution Plan – SQL Server Management Studio (SSMS)
– SQL Server Database Engine Tuning Wizard
22
MANAGE DATABASE INDEXES
#CRMUGSummit | #INreno15
 Reschedule CRM Maintenance Jobs
– By default, the time when CRM maintenance jobs kick off
depends on when the server was installed (or the
organization being provisioned) – which could be in busy
business hours
– Ideally your integration job kicks off shortly after the
maintenance job finishes
 Disable the Reindex All job
– What it does?
• Reindex
• Shrink your CRM database
– Create your own CRM database maintenance jobs
23
MANAGE CRM MAINTENANCE JOBS
#CRMUGSummit | #INreno15
 Manual primary keys could cause performance issue
down the road
– CRM Server generates sequential GUID values for best
performance
– Use manual primary keys only for migration purpose
 Further read:
– The Dangers of Guid.NewGuid();
• http://blogs.msdn.com/b/crminthefield/archive/2015/01/19/the-dangers-of-guid-
newguid.aspx
24
AVOID GENERATING PRIMARY KEY (GUID) YOURSELF
#CRMUGSummit | #INreno15
 Turn on SQL Server RCSI (Read Committed Snapshot Isolation)
– https://msdn.microsoft.com/en-us/library/tcbchxcb(v=vs.110).aspx
ALTER DATABASE CrmOrgName_MSCRM
SET ALLOW_SNAPSHOT_ISOLATION ON
ALTER DATABASE CrmOrgName_MSCRM
SET READ_COMMITTED_SNAPSHOT ON
 Add NOLOCK hint to your FetchXML Query
<fetch mapping="logical" no-lock="true">
<entity name="account">
<attribute name="name" />
<filter>
<condition attribute="creditlimit" operator="gt" value="1000000" />
</filter>
</entity>
</fetch>
25
DEAL WITH LOCKS
#CRMUGSummit | #INreno15
 Help reduce database
deadlocks
 Recommended for CRM
database, but not for data
warehouse
26
SQL SERVER – MAX DEGREE OF PARALLELISM
#CRMUGSummit | #INreno15
 Set CRM database to Simple Recovery mode
– No SQL Server transaction logs
 Disable IIS Logging
 Disable all CRM workflows / plugins and auditing
 Running data integration on CRM server itself
– Best possible network latency
– You need to alternate the target service URL to point to local server as
shown previously
27
EVEN MORE AGGRESSIVE MEASURES – SOME MAY
ONLY BE PRACTICAL FOR INITIAL LOAD
#CRMUGSummit | #INreno15
 White Papers
– Microsoft Dynamics CRM 2015 White Papers & Technical Documentation
• http://blogs.msdn.com/b/crminthefield/archive/2015/01/05/microsoft-dynamics-crm-2015-white-papers-amp-technical-
documentation.aspx
– Optimizing and maintaining the performance of a Microsoft Dynamics CRM 2011 server infrastructure
• http://www.microsoft.com/en-ca/download/details.aspx?id=27139
 Wikipedia
– Dynamics CRM Quick Optimization Guide
• http://social.technet.microsoft.com/wiki/contents/articles/13661.dynamics-crm-2011-quick-optimization-guide.aspx
 Blog Posts
– http://blogs.msdn.com/b/crminthefield/archive/2012/04/26/avoid-performance-issues-by-re-scheduling-crm-2011-
maintenance-jobs.aspx
 Best Practices
– Best practices for developing with Microsoft Dynamics CRM
• https://msdn.microsoft.com/en-us/library/gg509027.aspx
28
RESOURCES
#CRMUGSummit | #INreno15
 Daniel Cai, KingswaySoft
– daniel.cai@kingswaysoft.com
– Twitter: danielcai
– LinkedIn: https://ca.linkedin.com/in/danielcai
– http://www.kingswaysoft.com
29
CONTACT INFO
#CRMUGSummit | #INreno15
THANK YOU!
 Please complete & turn in your survey now
 Session code: ADC26
 Visit the online CRMUG Summit 2015 community to
download these slides, ask questions, and connect
with participants
 Visit the CRMUG Medics in the HUB to get expert
advice on your CRM-related problems!
30
Getting data into microsoft dynamics crm faster

More Related Content

What's hot

Financial Services Cloud - Blueprint Webinar (March 20, 2016)
Financial Services Cloud - Blueprint Webinar (March 20, 2016)Financial Services Cloud - Blueprint Webinar (March 20, 2016)
Financial Services Cloud - Blueprint Webinar (March 20, 2016)
Salesforce Partners
 
Dell Boomi Integration with Salesforce
Dell Boomi Integration with SalesforceDell Boomi Integration with Salesforce
Dell Boomi Integration with Salesforce
Nagarjuna Kaipu
 
Adopting Multi-Cloud Services with Confidence
Adopting Multi-Cloud Services with ConfidenceAdopting Multi-Cloud Services with Confidence
Adopting Multi-Cloud Services with Confidence
Kevin Hakanson
 
Accelerate Cloud Migration to AWS Cloud with Cognizant Cloud Steps
Accelerate Cloud Migration to AWS Cloud with Cognizant Cloud StepsAccelerate Cloud Migration to AWS Cloud with Cognizant Cloud Steps
Accelerate Cloud Migration to AWS Cloud with Cognizant Cloud Steps
Amazon Web Services
 
MuleSoft Architecture Presentation
MuleSoft Architecture PresentationMuleSoft Architecture Presentation
MuleSoft Architecture Presentation
Rupesh Sinha
 
Introducing Dapr.io - the open source personal assistant to microservices and...
Introducing Dapr.io - the open source personal assistant to microservices and...Introducing Dapr.io - the open source personal assistant to microservices and...
Introducing Dapr.io - the open source personal assistant to microservices and...
Lucas Jellema
 
Center of Excellence for Enterprise Content Management: a how-to guide
Center of Excellence for Enterprise Content Management:  a how-to guideCenter of Excellence for Enterprise Content Management:  a how-to guide
Center of Excellence for Enterprise Content Management: a how-to guide
Joaquin Marques
 
Cloud ops
Cloud opsCloud ops
Cloud ops
jayaradhaa
 
Salesforce Cross-Cloud Architecture
Salesforce Cross-Cloud ArchitectureSalesforce Cross-Cloud Architecture
Salesforce Cross-Cloud Architecture
Thierry TROUIN ☁
 
Power Platform Governance
Power Platform GovernancePower Platform Governance
Power Platform Governance
Daniel Laskewitz
 
API Governance and GitOps in Hybrid Integration Platform (MuleSoft)
API Governance and GitOps in Hybrid Integration Platform (MuleSoft)API Governance and GitOps in Hybrid Integration Platform (MuleSoft)
API Governance and GitOps in Hybrid Integration Platform (MuleSoft)
Sumanth Donthi
 
Clustering, Server setup and Hybrid deployment setup using Anypoint Runtime M...
Clustering, Server setup and Hybrid deployment setup using Anypoint Runtime M...Clustering, Server setup and Hybrid deployment setup using Anypoint Runtime M...
Clustering, Server setup and Hybrid deployment setup using Anypoint Runtime M...
Manish Kumar Yadav
 
Customer engagement solution architecture and Dynamics 365 Portals
Customer engagement solution architecture and Dynamics 365 PortalsCustomer engagement solution architecture and Dynamics 365 Portals
Customer engagement solution architecture and Dynamics 365 Portals
Digital Illustrated
 
API Management Solution Powerpoint Presentation Slides
API Management Solution Powerpoint Presentation SlidesAPI Management Solution Powerpoint Presentation Slides
API Management Solution Powerpoint Presentation Slides
SlideTeam
 
Innovation morning power platform
Innovation morning power platformInnovation morning power platform
Innovation morning power platform
Claudia Angelelli
 
Explore Microsoft Power Platform Center of Excellence
Explore Microsoft Power Platform Center of ExcellenceExplore Microsoft Power Platform Center of Excellence
Explore Microsoft Power Platform Center of Excellence
Nanddeep Nachan
 
MuleSoft's Approach to Driving Customer Outcomes
MuleSoft's Approach to Driving Customer Outcomes MuleSoft's Approach to Driving Customer Outcomes
MuleSoft's Approach to Driving Customer Outcomes
MuleSoft
 
Digital Insurance Platform - Vlocity
Digital Insurance Platform - VlocityDigital Insurance Platform - Vlocity
Digital Insurance Platform - Vlocity
Adam Wiebe
 
AWS Enterprise First Call Deck
AWS Enterprise First Call DeckAWS Enterprise First Call Deck
AWS Enterprise First Call DeckAlexandre Melo
 
Architecture of Dynamics CRM with Office 365 and Azure
Architecture of Dynamics CRM with Office 365 and AzureArchitecture of Dynamics CRM with Office 365 and Azure
Architecture of Dynamics CRM with Office 365 and Azure
Pedro Azevedo
 

What's hot (20)

Financial Services Cloud - Blueprint Webinar (March 20, 2016)
Financial Services Cloud - Blueprint Webinar (March 20, 2016)Financial Services Cloud - Blueprint Webinar (March 20, 2016)
Financial Services Cloud - Blueprint Webinar (March 20, 2016)
 
Dell Boomi Integration with Salesforce
Dell Boomi Integration with SalesforceDell Boomi Integration with Salesforce
Dell Boomi Integration with Salesforce
 
Adopting Multi-Cloud Services with Confidence
Adopting Multi-Cloud Services with ConfidenceAdopting Multi-Cloud Services with Confidence
Adopting Multi-Cloud Services with Confidence
 
Accelerate Cloud Migration to AWS Cloud with Cognizant Cloud Steps
Accelerate Cloud Migration to AWS Cloud with Cognizant Cloud StepsAccelerate Cloud Migration to AWS Cloud with Cognizant Cloud Steps
Accelerate Cloud Migration to AWS Cloud with Cognizant Cloud Steps
 
MuleSoft Architecture Presentation
MuleSoft Architecture PresentationMuleSoft Architecture Presentation
MuleSoft Architecture Presentation
 
Introducing Dapr.io - the open source personal assistant to microservices and...
Introducing Dapr.io - the open source personal assistant to microservices and...Introducing Dapr.io - the open source personal assistant to microservices and...
Introducing Dapr.io - the open source personal assistant to microservices and...
 
Center of Excellence for Enterprise Content Management: a how-to guide
Center of Excellence for Enterprise Content Management:  a how-to guideCenter of Excellence for Enterprise Content Management:  a how-to guide
Center of Excellence for Enterprise Content Management: a how-to guide
 
Cloud ops
Cloud opsCloud ops
Cloud ops
 
Salesforce Cross-Cloud Architecture
Salesforce Cross-Cloud ArchitectureSalesforce Cross-Cloud Architecture
Salesforce Cross-Cloud Architecture
 
Power Platform Governance
Power Platform GovernancePower Platform Governance
Power Platform Governance
 
API Governance and GitOps in Hybrid Integration Platform (MuleSoft)
API Governance and GitOps in Hybrid Integration Platform (MuleSoft)API Governance and GitOps in Hybrid Integration Platform (MuleSoft)
API Governance and GitOps in Hybrid Integration Platform (MuleSoft)
 
Clustering, Server setup and Hybrid deployment setup using Anypoint Runtime M...
Clustering, Server setup and Hybrid deployment setup using Anypoint Runtime M...Clustering, Server setup and Hybrid deployment setup using Anypoint Runtime M...
Clustering, Server setup and Hybrid deployment setup using Anypoint Runtime M...
 
Customer engagement solution architecture and Dynamics 365 Portals
Customer engagement solution architecture and Dynamics 365 PortalsCustomer engagement solution architecture and Dynamics 365 Portals
Customer engagement solution architecture and Dynamics 365 Portals
 
API Management Solution Powerpoint Presentation Slides
API Management Solution Powerpoint Presentation SlidesAPI Management Solution Powerpoint Presentation Slides
API Management Solution Powerpoint Presentation Slides
 
Innovation morning power platform
Innovation morning power platformInnovation morning power platform
Innovation morning power platform
 
Explore Microsoft Power Platform Center of Excellence
Explore Microsoft Power Platform Center of ExcellenceExplore Microsoft Power Platform Center of Excellence
Explore Microsoft Power Platform Center of Excellence
 
MuleSoft's Approach to Driving Customer Outcomes
MuleSoft's Approach to Driving Customer Outcomes MuleSoft's Approach to Driving Customer Outcomes
MuleSoft's Approach to Driving Customer Outcomes
 
Digital Insurance Platform - Vlocity
Digital Insurance Platform - VlocityDigital Insurance Platform - Vlocity
Digital Insurance Platform - Vlocity
 
AWS Enterprise First Call Deck
AWS Enterprise First Call DeckAWS Enterprise First Call Deck
AWS Enterprise First Call Deck
 
Architecture of Dynamics CRM with Office 365 and Azure
Architecture of Dynamics CRM with Office 365 and AzureArchitecture of Dynamics CRM with Office 365 and Azure
Architecture of Dynamics CRM with Office 365 and Azure
 

Similar to Getting data into microsoft dynamics crm faster

CRM magic with data migration & integration (Presentation at CRMUG Summit 2013)
CRM magic with data migration & integration (Presentation at CRMUG Summit 2013)CRM magic with data migration & integration (Presentation at CRMUG Summit 2013)
CRM magic with data migration & integration (Presentation at CRMUG Summit 2013)
Daniel Cai
 
Scribe insight 03 elevating performance
Scribe insight 03   elevating performanceScribe insight 03   elevating performance
Scribe insight 03 elevating performance
Scribe Software Corp.
 
Boosting the Performance of your Rails Apps
Boosting the Performance of your Rails AppsBoosting the Performance of your Rails Apps
Boosting the Performance of your Rails Apps
Matt Kuklinski
 
IBM Capacity Management Analytics
IBM Capacity Management AnalyticsIBM Capacity Management Analytics
IBM Capacity Management Analytics
IBM z Systems Software - IT Service Management
 
Serverless Design Patterns for Rethinking Traditional Enterprise Application ...
Serverless Design Patterns for Rethinking Traditional Enterprise Application ...Serverless Design Patterns for Rethinking Traditional Enterprise Application ...
Serverless Design Patterns for Rethinking Traditional Enterprise Application ...
Amazon Web Services
 
How a CPA Can Leverage Cloud ERP to Improve Client Relationships
How a CPA Can Leverage Cloud ERP to Improve Client RelationshipsHow a CPA Can Leverage Cloud ERP to Improve Client Relationships
How a CPA Can Leverage Cloud ERP to Improve Client Relationships
TAG
 
Tech Talk: Five Simple Steps to a More Powerful Database Experience
Tech Talk: Five Simple Steps to a More Powerful Database ExperienceTech Talk: Five Simple Steps to a More Powerful Database Experience
Tech Talk: Five Simple Steps to a More Powerful Database Experience
CA Technologies
 
Integratie_met_System_Center_Service_Manager (1).pptx
Integratie_met_System_Center_Service_Manager (1).pptxIntegratie_met_System_Center_Service_Manager (1).pptx
Integratie_met_System_Center_Service_Manager (1).pptx
dismantlinghue7028
 
SAP performance testing & engineering courseware v01
SAP performance testing & engineering courseware v01SAP performance testing & engineering courseware v01
SAP performance testing & engineering courseware v01
Argos
 
Data Server Manager for DB2 for z/OS
Data Server Manager for DB2 for z/OS Data Server Manager for DB2 for z/OS
Data Server Manager for DB2 for z/OS
Saghi Amirsoleymani
 
Jean-René Roy: Integrate Legacy App with Dynamic CRM
Jean-René Roy: Integrate Legacy App with Dynamic CRMJean-René Roy: Integrate Legacy App with Dynamic CRM
Jean-René Roy: Integrate Legacy App with Dynamic CRM
MSDEVMTL
 
NZS-4532 - Bringing Historical Data to Life with IBMs SMF Data Engine
NZS-4532 - Bringing Historical Data to Life with IBMs SMF Data EngineNZS-4532 - Bringing Historical Data to Life with IBMs SMF Data Engine
NZS-4532 - Bringing Historical Data to Life with IBMs SMF Data Engine
IBM z Systems Software - IT Service Management
 
Solving 21st Century App Performance Problems Without 21 People
Solving 21st Century App Performance Problems Without 21 PeopleSolving 21st Century App Performance Problems Without 21 People
Solving 21st Century App Performance Problems Without 21 People
Dynatrace
 
Marketing Automation at Scale: How Marketo Solved Key Data Management Challen...
Marketing Automation at Scale: How Marketo Solved Key Data Management Challen...Marketing Automation at Scale: How Marketo Solved Key Data Management Challen...
Marketing Automation at Scale: How Marketo Solved Key Data Management Challen...
Continuent
 
Saratoga CRM: Implementing Thin Client at Johnson Controls Inc.
Saratoga CRM: Implementing Thin Client at Johnson Controls Inc.Saratoga CRM: Implementing Thin Client at Johnson Controls Inc.
Saratoga CRM: Implementing Thin Client at Johnson Controls Inc.
Aptean
 
Enhance ServiceNow with Automated Discovery for Mainframe and IBM i
Enhance ServiceNow with Automated Discovery for Mainframe and IBM iEnhance ServiceNow with Automated Discovery for Mainframe and IBM i
Enhance ServiceNow with Automated Discovery for Mainframe and IBM i
Precisely
 
Exploring Opportunities in Crisis by Ramco
Exploring Opportunities in Crisis by RamcoExploring Opportunities in Crisis by Ramco
Exploring Opportunities in Crisis by Ramco
IndiaMART InterMESH Ltd
 
Enterprise Data Integration for Microsoft Dynamics CRM
Enterprise Data Integration for Microsoft Dynamics CRMEnterprise Data Integration for Microsoft Dynamics CRM
Enterprise Data Integration for Microsoft Dynamics CRM
Daniel Cai
 
Prodev Solutions Intro
Prodev Solutions IntroProdev Solutions Intro
Prodev Solutions Intro
larryATprodev
 

Similar to Getting data into microsoft dynamics crm faster (20)

CRM magic with data migration & integration (Presentation at CRMUG Summit 2013)
CRM magic with data migration & integration (Presentation at CRMUG Summit 2013)CRM magic with data migration & integration (Presentation at CRMUG Summit 2013)
CRM magic with data migration & integration (Presentation at CRMUG Summit 2013)
 
Scribe insight 03 elevating performance
Scribe insight 03   elevating performanceScribe insight 03   elevating performance
Scribe insight 03 elevating performance
 
Boosting the Performance of your Rails Apps
Boosting the Performance of your Rails AppsBoosting the Performance of your Rails Apps
Boosting the Performance of your Rails Apps
 
IBM Capacity Management Analytics
IBM Capacity Management AnalyticsIBM Capacity Management Analytics
IBM Capacity Management Analytics
 
Serverless Design Patterns for Rethinking Traditional Enterprise Application ...
Serverless Design Patterns for Rethinking Traditional Enterprise Application ...Serverless Design Patterns for Rethinking Traditional Enterprise Application ...
Serverless Design Patterns for Rethinking Traditional Enterprise Application ...
 
2013-11-13 Cloud Based Accounting Systems
2013-11-13 Cloud Based Accounting Systems2013-11-13 Cloud Based Accounting Systems
2013-11-13 Cloud Based Accounting Systems
 
How a CPA Can Leverage Cloud ERP to Improve Client Relationships
How a CPA Can Leverage Cloud ERP to Improve Client RelationshipsHow a CPA Can Leverage Cloud ERP to Improve Client Relationships
How a CPA Can Leverage Cloud ERP to Improve Client Relationships
 
Tech Talk: Five Simple Steps to a More Powerful Database Experience
Tech Talk: Five Simple Steps to a More Powerful Database ExperienceTech Talk: Five Simple Steps to a More Powerful Database Experience
Tech Talk: Five Simple Steps to a More Powerful Database Experience
 
Integratie_met_System_Center_Service_Manager (1).pptx
Integratie_met_System_Center_Service_Manager (1).pptxIntegratie_met_System_Center_Service_Manager (1).pptx
Integratie_met_System_Center_Service_Manager (1).pptx
 
SAP performance testing & engineering courseware v01
SAP performance testing & engineering courseware v01SAP performance testing & engineering courseware v01
SAP performance testing & engineering courseware v01
 
Data Server Manager for DB2 for z/OS
Data Server Manager for DB2 for z/OS Data Server Manager for DB2 for z/OS
Data Server Manager for DB2 for z/OS
 
Jean-René Roy: Integrate Legacy App with Dynamic CRM
Jean-René Roy: Integrate Legacy App with Dynamic CRMJean-René Roy: Integrate Legacy App with Dynamic CRM
Jean-René Roy: Integrate Legacy App with Dynamic CRM
 
NZS-4532 - Bringing Historical Data to Life with IBMs SMF Data Engine
NZS-4532 - Bringing Historical Data to Life with IBMs SMF Data EngineNZS-4532 - Bringing Historical Data to Life with IBMs SMF Data Engine
NZS-4532 - Bringing Historical Data to Life with IBMs SMF Data Engine
 
Solving 21st Century App Performance Problems Without 21 People
Solving 21st Century App Performance Problems Without 21 PeopleSolving 21st Century App Performance Problems Without 21 People
Solving 21st Century App Performance Problems Without 21 People
 
Marketing Automation at Scale: How Marketo Solved Key Data Management Challen...
Marketing Automation at Scale: How Marketo Solved Key Data Management Challen...Marketing Automation at Scale: How Marketo Solved Key Data Management Challen...
Marketing Automation at Scale: How Marketo Solved Key Data Management Challen...
 
Saratoga CRM: Implementing Thin Client at Johnson Controls Inc.
Saratoga CRM: Implementing Thin Client at Johnson Controls Inc.Saratoga CRM: Implementing Thin Client at Johnson Controls Inc.
Saratoga CRM: Implementing Thin Client at Johnson Controls Inc.
 
Enhance ServiceNow with Automated Discovery for Mainframe and IBM i
Enhance ServiceNow with Automated Discovery for Mainframe and IBM iEnhance ServiceNow with Automated Discovery for Mainframe and IBM i
Enhance ServiceNow with Automated Discovery for Mainframe and IBM i
 
Exploring Opportunities in Crisis by Ramco
Exploring Opportunities in Crisis by RamcoExploring Opportunities in Crisis by Ramco
Exploring Opportunities in Crisis by Ramco
 
Enterprise Data Integration for Microsoft Dynamics CRM
Enterprise Data Integration for Microsoft Dynamics CRMEnterprise Data Integration for Microsoft Dynamics CRM
Enterprise Data Integration for Microsoft Dynamics CRM
 
Prodev Solutions Intro
Prodev Solutions IntroProdev Solutions Intro
Prodev Solutions Intro
 

Recently uploaded

AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
Google
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Globus
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
Alina Yurenko
 
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptxText-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
ShamsuddeenMuhammadA
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Mind IT Systems
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
abdulrafaychaudhry
 
AI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website CreatorAI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website Creator
Google
 
Game Development with Unity3D (Game Development lecture 3)
Game Development  with Unity3D (Game Development lecture 3)Game Development  with Unity3D (Game Development lecture 3)
Game Development with Unity3D (Game Development lecture 3)
abdulrafaychaudhry
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
Juraj Vysvader
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
NYGGS Automation Suite
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
Paco van Beckhoven
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
Globus
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
Hornet Dynamics
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
Matt Welsh
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
Globus
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
Neo4j
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
XfilesPro
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
rickgrimesss22
 

Recently uploaded (20)

AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI AppAI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
AI Fusion Buddy Review: Brand New, Groundbreaking Gemini-Powered AI App
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
 
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)GOING AOT WITH GRAALVM FOR  SPRING BOOT (SPRING IO)
GOING AOT WITH GRAALVM FOR SPRING BOOT (SPRING IO)
 
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptxText-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
 
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
Custom Healthcare Software for Managing Chronic Conditions and Remote Patient...
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
 
AI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website CreatorAI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website Creator
 
Game Development with Unity3D (Game Development lecture 3)
Game Development  with Unity3D (Game Development lecture 3)Game Development  with Unity3D (Game Development lecture 3)
Game Development with Unity3D (Game Development lecture 3)
 
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
In 2015, I used to write extensions for Joomla, WordPress, phpBB3, etc and I ...
 
Enterprise Resource Planning System in Telangana
Enterprise Resource Planning System in TelanganaEnterprise Resource Planning System in Telangana
Enterprise Resource Planning System in Telangana
 
Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024Cracking the code review at SpringIO 2024
Cracking the code review at SpringIO 2024
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
 
E-commerce Application Development Company.pdf
E-commerce Application Development Company.pdfE-commerce Application Development Company.pdf
E-commerce Application Development Company.pdf
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
Large Language Models and the End of Programming
Large Language Models and the End of ProgrammingLarge Language Models and the End of Programming
Large Language Models and the End of Programming
 
Enhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdfEnhancing Research Orchestration Capabilities at ORNL.pdf
Enhancing Research Orchestration Capabilities at ORNL.pdf
 
GraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph TechnologyGraphSummit Paris - The art of the possible with Graph Technology
GraphSummit Paris - The art of the possible with Graph Technology
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
 
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptxTop Features to Include in Your Winzo Clone App for Business Growth (4).pptx
Top Features to Include in Your Winzo Clone App for Business Growth (4).pptx
 

Getting data into microsoft dynamics crm faster

  • 1. #CRMUGSummit | #INreno15 #CRMUGSummit Daniel Cai, KingswaySoft Inc. SESSION CODE: ADC26 GETTING DATA INTO MICROSOFT DYNAMICS CRM FASTER
  • 2. #CRMUGSummit | #INreno15 INTRODUCTION - YOUR PRESENTER  Daniel Cai  Principal Developer @KingswaySoft  7 Years of development experiences with Microsoft Dynamics CRM – Mostly working as a developer  5 times of Microsoft Dynamics CRM MVP since 2011  About KingswaySoft – A leading provider of data integration solutions for Microsoft Dynamics software and beyond • SSIS Integration Toolkit for Microsoft Dynamics CRM • SSIS Integration Toolkit for Microsoft Dynamics AX • SSIS Integration Toolkit for Microsoft Dynamics GP • SSIS Integration Toolkit for Microsoft Dynamics Marketing • SSIS Integration Toolkit for Microsoft Dynamics NAV • SSIS Integration Toolkit for Microsoft Dynamics SL • SSIS Integration Toolkit for Parature • and many more… – Thousands of enterprise clients worldwide depend on our integration solutions to drive their data efficiency 2
  • 3. #CRMUGSummit | #INreno15  Discuss the techniques that you can use to get data into Microsoft Dynamics CRM faster  Discuss some best practices that you utilize in your CRM data integration and migration projects 3 SESSION OBJECTIVES
  • 4. #CRMUGSummit | #INreno15  SSIS Integration Toolkit is used in some occasions in this presentation to discuss the techniques – It is a data integration solution developed by KingswaySoft that I work for – More information available at http://www.kingswaysoft.com/products/ssis-integration- toolkit-for-microsoft-dynamics-crm  The techniques should be transferrable to any other third-party or home- grown solutions in a similar fashion, provided an equivalent option is available  I didn’t invent any tips or tricks, neither did I discover all of them by myself, they all come from the community that I have been learning. The credits go to the generous CRM community and some special individuals. 4 DISCLAIMER
  • 5. #CRMUGSummit | #INreno15  WHY?  WHERE TO START FROM?  HOW?  Final Q&A  Closing & Surveys 5 AGENDA
  • 7. #CRMUGSummit | #INreno15  Web Service Interfaces are generally slow – Dynamics CRM is no exception  You are often constrained by the limited time window – A couple to a few hours time window for your daily integration – Typically a ~50 hours of time window for the initial data migration • Friday 9pm to Monday 6am  Your data volume could be significantly large  You always want to be faster! 7 WHAT ARE THE PROBLEMS
  • 9. #CRMUGSummit | #INreno15  Identify Resources – Technical Resources  Get to know your infrastructure – Networking – Server Capacities  Define a baseline benchmark – How many records in a second are required in order to meet the time window allowed  Define the infrastructure that can help you achieve the desired benchmark  Decide between Buy vs Write 9 DEFINE YOUR STRATEGIES
  • 10. #CRMUGSummit | #INreno15  Optimized Infrastructure – Networking – Firewall – Security Policies – Network Load Balancer  Server Capacity (CRM Server, Database Server, Integration Server) – CPU – Memory – I/O 10 HAVING THE RIGHT INFRASTRUCTURE
  • 11. #CRMUGSummit | #INreno15  CRM Data Import Wizard  Message-driven Integration Solutions – BizTalk – Service Bus – Message Queue  Batch-based ETL Solutions – SSIS – Scribe – Informatica – IBM CastIron 11 CHOOSE THE RIGHT TOOLS
  • 12. #CRMUGSummit | #INreno15  Each tool works somewhat differently  Establish a good understanding of your tools – Know the capabilities – Know the different options to achieve a particular purpose – Know the techniques that can be used to help achieve better performance 12 TRY TO KNOW YOUR TOOLS
  • 13. HOW?
  • 14. #CRMUGSummit | #INreno15 MULTI-THREADING Make sure to update your .config file in order to overcome the connection limit of concurrent service calls <configuration> ... <system.net> <connectionManagement> <add address="*" maxconnection="100"/> </connectionManagement> </system.net> </configuration> TheSSIS way
  • 15. #CRMUGSummit | #INreno15 LEVERAGE MULTI-NODE CLUSTER How to achieve this? • CRM Server URL option in SSIS Integration Toolkit
  • 16. #CRMUGSummit | #INreno15 BULK API  Bulk API is more beneficial when network latency is high  There is an API throttling with CRM Online – At most 2 concurrent ExecuteMultiple requests per organization How to achieve this? • Simply enter a Batch Size in SSIS destination component.
  • 17. #CRMUGSummit | #INreno15  The less fields, the better performance  Some fields may require additional services calls using special SOAP messages when writing to CRM – statecode/statuscode – ownerid – some more • parentsytemuserid and businessunitid (systemuser entity) • businessunitid (team and equipment entities) • Parentbusinessunitid (businessunit entity) – Those special service calls are not necessary if it is an Update and you are using v7.1 or later • For Create or Upsert calls, you still need the additional service calls (as of v7.1).  Any fields registered for CRM plugins/workflows or auditing will have certain performance impact when submitted 17 MINIMIZE THE NUMBER OF FIELDS YOU WORK WITH
  • 18. #CRMUGSummit | #INreno15  Why? – Smaller SOAP message, which in turn results in less networking time – Can avoid firing unnecessary CRM plugins/workflows or auditing that are registered for the fields  How to achieve this? – Simply turn on “Ignore Unchanged Fields” option in CRM destination component 18 AVOID SUBMITTING UNCHANGED FIELDS
  • 19. #CRMUGSummit | #INreno15  CRM Diagnostics Tool – http://CrmServer/tools/diagnostics/diag.aspx  Ideally the latency should be as low as possible – Make sure the integration server (or workstation) is close to the CRM Server – A poor infrastructure can result in high network latency, even the servers are close to each other  Bandwidth should be as high as possible 19 MIND YOUR NETWORK LATENCY
  • 20. #CRMUGSummit | #INreno15  Which servers – CRM Server – Database Server – Integration Server (or workstation)  What to watch – CPU – Memory – I/O – Other CRM performance counters 20 WATCH OUT RESOURCE USAGES ON SERVERS
  • 21. #CRMUGSummit | #INreno15  Plan CRM database growth – Have the right server specification to accommodate the growth – Define data archiving strategies as required – For initial load, consider sizing the database to the target size after the completion of the load to avoid database growth during the load  Cleanup PrincipalObjectAccessBase table as required (to remove orphan records) – http://support.microsoft.com/kb/2664150 • Consider implementing this as a SQL Server agent job to cleanup weekly or monthly to keep your system healthy  Cleanup AsyncOperationBase table as required (to remove completed workflow logs) – http://support.microsoft.com/kb/968520 for one-time cleanup • Make sure you implement the index first, otherwise it could a long time to complete depending on how many records you have • Consider implementing this as a SQL Server agent job to cleanup weekly or monthly to keep your system healthy – For CRM workflows, consider choosing “Automatically delete completed workflow jobs (to save disk space)” option for automatic cleanup – For asynchronous plugin, consider choosing “Delete AsyncOperation if StatusCode = Successful” option for automatic cleanup 21 MANAGE DATABASE GROWTH
  • 22. #CRMUGSummit | #INreno15  If your data integration or migration process involves any querying, you should review your query performance  Depending on the situation, if any query involves non-indexed CRM database field(s), you might want to add custom index(es) – CRM On-Prem, add custom indexes to CRM database directly – CRM Online, request adding custom indexes by raising a support ticket. Alternatively, use the following techniques to add custom indexes automatically. • Add the field to CRM quick find view • Create CRM alternate key – will have to be unique  Note that having an excessive number of indexes in one database table (entity) can adversely affect your performance  Where to start from? – Look for long running queries in CRM Server Windows Log • CRM logs any database queries that take longer than 10s – SQL Server “Missing Index” tables  Query Tuning – Show Actual Execution Plan – SQL Server Management Studio (SSMS) – SQL Server Database Engine Tuning Wizard 22 MANAGE DATABASE INDEXES
  • 23. #CRMUGSummit | #INreno15  Reschedule CRM Maintenance Jobs – By default, the time when CRM maintenance jobs kick off depends on when the server was installed (or the organization being provisioned) – which could be in busy business hours – Ideally your integration job kicks off shortly after the maintenance job finishes  Disable the Reindex All job – What it does? • Reindex • Shrink your CRM database – Create your own CRM database maintenance jobs 23 MANAGE CRM MAINTENANCE JOBS
  • 24. #CRMUGSummit | #INreno15  Manual primary keys could cause performance issue down the road – CRM Server generates sequential GUID values for best performance – Use manual primary keys only for migration purpose  Further read: – The Dangers of Guid.NewGuid(); • http://blogs.msdn.com/b/crminthefield/archive/2015/01/19/the-dangers-of-guid- newguid.aspx 24 AVOID GENERATING PRIMARY KEY (GUID) YOURSELF
  • 25. #CRMUGSummit | #INreno15  Turn on SQL Server RCSI (Read Committed Snapshot Isolation) – https://msdn.microsoft.com/en-us/library/tcbchxcb(v=vs.110).aspx ALTER DATABASE CrmOrgName_MSCRM SET ALLOW_SNAPSHOT_ISOLATION ON ALTER DATABASE CrmOrgName_MSCRM SET READ_COMMITTED_SNAPSHOT ON  Add NOLOCK hint to your FetchXML Query <fetch mapping="logical" no-lock="true"> <entity name="account"> <attribute name="name" /> <filter> <condition attribute="creditlimit" operator="gt" value="1000000" /> </filter> </entity> </fetch> 25 DEAL WITH LOCKS
  • 26. #CRMUGSummit | #INreno15  Help reduce database deadlocks  Recommended for CRM database, but not for data warehouse 26 SQL SERVER – MAX DEGREE OF PARALLELISM
  • 27. #CRMUGSummit | #INreno15  Set CRM database to Simple Recovery mode – No SQL Server transaction logs  Disable IIS Logging  Disable all CRM workflows / plugins and auditing  Running data integration on CRM server itself – Best possible network latency – You need to alternate the target service URL to point to local server as shown previously 27 EVEN MORE AGGRESSIVE MEASURES – SOME MAY ONLY BE PRACTICAL FOR INITIAL LOAD
  • 28. #CRMUGSummit | #INreno15  White Papers – Microsoft Dynamics CRM 2015 White Papers & Technical Documentation • http://blogs.msdn.com/b/crminthefield/archive/2015/01/05/microsoft-dynamics-crm-2015-white-papers-amp-technical- documentation.aspx – Optimizing and maintaining the performance of a Microsoft Dynamics CRM 2011 server infrastructure • http://www.microsoft.com/en-ca/download/details.aspx?id=27139  Wikipedia – Dynamics CRM Quick Optimization Guide • http://social.technet.microsoft.com/wiki/contents/articles/13661.dynamics-crm-2011-quick-optimization-guide.aspx  Blog Posts – http://blogs.msdn.com/b/crminthefield/archive/2012/04/26/avoid-performance-issues-by-re-scheduling-crm-2011- maintenance-jobs.aspx  Best Practices – Best practices for developing with Microsoft Dynamics CRM • https://msdn.microsoft.com/en-us/library/gg509027.aspx 28 RESOURCES
  • 29. #CRMUGSummit | #INreno15  Daniel Cai, KingswaySoft – daniel.cai@kingswaysoft.com – Twitter: danielcai – LinkedIn: https://ca.linkedin.com/in/danielcai – http://www.kingswaysoft.com 29 CONTACT INFO
  • 30. #CRMUGSummit | #INreno15 THANK YOU!  Please complete & turn in your survey now  Session code: ADC26  Visit the online CRMUG Summit 2015 community to download these slides, ask questions, and connect with participants  Visit the CRMUG Medics in the HUB to get expert advice on your CRM-related problems! 30

Editor's Notes

  1. Title slide to be customized
  2. Introduction slide to be customized. If multiple presenters, add additional intro slides
  3. Objectives slide to be customized
  4. Objectives slide to be customized
  5. Agenda slide to be customized
  6. Example of section slide
  7. Example content slide
  8. Example of section slide
  9. Example content slide
  10. Example content slide
  11. Additionally, you can write integration solutions using CRM SDK
  12. Example content slide
  13. Example of section slide
  14. Example content slide
  15. Example content slide
  16. Example content slide
  17. Example content slide
  18. Example content slide
  19. Example content slide
  20. Example content slide
  21. Example content slide
  22. Example content slide
  23. Example content slide
  24. Example content slide
  25. Add presenter contact info (no logos or images)
  26. Add presenter contact info (no logos or images)
  27. Thank you slide
  28. Final slide