Performance Tuning Guidelines for PowerExchange for Microsoft Dynamics CRM



Similar documents
Data Domain Profiling and Data Masking for Hadoop

Secure Agent Quick Start for Windows

Configure an ODBC Connection to SAP HANA

Running a Workflow on a PowerCenter Grid

Configuring Notification for Business Glossary

Using Microsoft Windows Authentication for Microsoft SQL Server Connections in Data Archive

MDM Multidomain Edition (Version 9.6.0) For Microsoft SQL Server Performance Tuning

IBM Tivoli Composite Application Manager for Microsoft Applications: Microsoft Hyper-V Server Agent Version Fix Pack 2.

How to Configure a Secure Connection to Microsoft SQL Server

VMWARE WHITE PAPER 1

Performance Evaluation of VMXNET3 Virtual Network Device VMware vsphere 4 build

Performance Comparison of Fujitsu PRIMERGY and PRIMEPOWER Servers

Optimizing the Performance of the Oracle BI Applications using Oracle Datawarehousing Features and Oracle DAC

Comparison of the High Availability and Grid Options

How to Install and Configure EBF15328 for MapR or with MapReduce v1

Technical Paper. Moving SAS Applications from a Physical to a Virtual VMware Environment

Connect to an SSL-Enabled Microsoft SQL Server Database from PowerCenter on UNIX/Linux

Informatica Corporation Proactive Monitoring for PowerCenter Operations Version 3.0 Release Notes May 2014

Plug-In for Informatica Guide

Configuring Your Computer and Network Adapters for Best Performance

User's Guide. System Monitor - Performance Monitoring Services 5.0

Abstract. Microsoft Corporation Published: November 2011

An Oracle White Paper July Oracle Primavera Contract Management, Business Intelligence Publisher Edition-Sizing Guide

The Lagopus SDN Software Switch. 3.1 SDN and OpenFlow. 3. Cloud Computing Technology

StarWind iscsi SAN: Configuring Global Deduplication May 2012

An Oracle White Paper June High Performance Connectors for Load and Access of Data from Hadoop to Oracle Database

Data Integrator Performance Optimization Guide

Performance Characteristics of VMFS and RDM VMware ESX Server 3.0.1

IBM SPSS Statistics Performance Best Practices

FileMaker 13. ODBC and JDBC Guide

McAfee Web Gateway 7.4.1

Virtuoso and Database Scalability

Unifying Information Security

Microsoft SQL Server OLTP Best Practice

Oracle Database Scalability in VMware ESX VMware ESX 3.5

Achieving Nanosecond Latency Between Applications with IPC Shared Memory Messaging

Windows Server 2008 R2 Hyper-V Live Migration

New Features... 1 Installation... 3 Upgrade Changes... 3 Fixed Limitations... 4 Known Limitations... 5 Informatica Global Customer Support...

MS SQL Performance (Tuning) Best Practices:

Data Domain Discovery in Test Data Management

Troubleshooting SQL Server Enterprise Geodatabase Performance Issues. Matthew Ziebarth and Ben Lin

Multi-core and Linux* Kernel

Virtual SAN Design and Deployment Guide

Performance Optimization Guide Version 2.0

Contents. 2. cttctx Performance Test Utility Server Side Plug-In Index All Rights Reserved.

HP ProLiant DL580 Gen8 and HP LE PCIe Workload WHITE PAPER Accelerator 90TB Microsoft SQL Server Data Warehouse Fast Track Reference Architecture

BrightStor ARCserve Backup for Windows

Virtualization Technologies and Blackboard: The Future of Blackboard Software on Multi-Core Technologies

StreamServe Persuasion SP5 Microsoft SQL Server

NetFlow Collection and Processing Cartridge Pack User Guide Release 6.0

Next Generation Siebel Monitoring: A Real World Customer Experience. An Oracle White Paper June 2010

How to Configure Intel Ethernet Converged Network Adapter-Enabled Virtual Functions on VMware* ESXi* 5.1

Eliminate Memory Errors and Improve Program Stability

Windows Server 2008 R2 Hyper V. Public FAQ

Introduction to the NI Real-Time Hypervisor

BMC Remedy IT Service Management 7.0 Data Management Administrator s Guide

Trend Micro Incorporated reserves the right to make changes to this document and to the products described herein without notice.

The Microsoft Windows Hypervisor High Level Architecture

CA Nimsoft Monitor. Probe Guide for Active Directory Server. ad_server v1.4 series

White Paper. Optimizing the Performance Of MySQL Cluster

SURF HMP getting started guide

Sawmill Log Analyzer Best Practices!! Page 1 of 6. Sawmill Log Analyzer Best Practices

Redis OLTP (Transactional) Load Testing

NetIQ Sentinel Quick Start Guide

PUBLIC Performance Optimization Guide

Microsoft SQL Database Administrator Certification

Enterprise Cloud VM Image Import User Guide. Version 1.0

ASM_readme_6_10_18451.txt README.TXT

Enterprise Performance Tuning: Best Practices with SQL Server 2008 Analysis Services. By Ajay Goyal Consultant Scalability Experts, Inc.

System Requirements - CommNet Server

SQL Server 2008 Performance and Scale

EXPRESSCLUSTER X for Windows Quick Start Guide for Microsoft SQL Server Version 1

Hyper-V R2: What's New?

Managing Latency in IPS Networks

PARALLELS SERVER BARE METAL 5.0 README

Configuring an Oracle Business Intelligence Enterprise Edition Resource in Metadata Manager

Server Management Tools (ASMT)

System Requirements - Table of Contents

SAS University Edition: Installation Guide for Windows

Endpoint Security Console. Version 3.0 User Guide

Also on the Performance tab, you will find a button labeled Resource Monitor. You can invoke Resource Monitor for additional analysis of the system.

Optimizing Performance. Training Division New Delhi

Software Tracing of Embedded Linux Systems using LTTng and Tracealyzer. Dr. Johan Kraft, Percepio AB

StarWind iscsi SAN Software: Using StarWind with MS Cluster on Windows Server 2008

Informatica Ultra Messaging SMX Shared-Memory Transport

SAP Process Orchestration. Technical information

Understanding the Benefits of IBM SPSS Statistics Server

Backup and Restore Back to Basics with SQL LiteSpeed

Migrating the Domain Configuration Repository During an Upgrade

Supported Platforms HPE Vertica Analytic Database. Software Version: 7.2.x

IBM Tivoli Composite Application Manager for Microsoft Applications: Microsoft Internet Information Services Agent Version Fix Pack 2.

VirtualCenter Database Performance for Microsoft SQL Server 2005 VirtualCenter 2.5

By Citrix Consulting Services. Citrix Systems, Inc.

vcenter Operations Manager for Horizon Supplement

Hands-On Microsoft Windows Server 2008

MODULE 3 VIRTUALIZED DATA CENTER COMPUTE

SAP HANA In-Memory Database Sizing Guideline


Contents Introduction... 5 Deployment Considerations... 9 Deployment Architectures... 11

Amadeus SAS Specialists Prove Fusion iomemory a Superior Analysis Accelerator

Transcription:

Performance Tuning Guidelines for PowerExchange for Microsoft Dynamics CRM 1993-2016 Informatica LLC. No part of this document may be reproduced or transmitted in any form, by any means (electronic, photocopying, recording or otherwise) without prior consent of Informatica LLC. All other company and product names may be trade names or trademarks of their respective owners and/or copyrighted materials of such owners.

Abstract When you use PowerExchange for Microsoft Dynamics CRM to read data from or write data to Microsoft Dynamics CRM, multiple factors such as hardware parameters, database parameters, application server parameters, and Informatica mapping parameters impact the adapter performance. You can optimize the performance by tuning these parameters appropriately. This article describes general reference guidelines to help you tune the performance of PowerExchange for Microsoft Dynamics CRM. Supported Versions PowerExchange for Microsoft Dynamics CRM 10.0 Table of Contents Overview.... 2 Performance Tuning Areas... 2 Tune the Hardware.... 3 CPU Frequency.... 3 NIC Card Ring Buffer Size.... 3 Tune the Database... 5 Tune the Application Server.... 5 Tune the Mapping.... 5 Ports Precision.... 5 Data Movement Mode.... 5 Data Type Mapping.... 6 Thread Count.... 6 Partitioning.... 7 Overview Performance tuning is an iterative process in which you analyze the performance, use guidelines to estimate and define parameters that impact the performance, and monitor and adjust the results as required. This document describes the key hardware, database, application server, and Informatica mapping parameters that you can tune to optimize the performance of PowerExchange for Microsoft Dynamics CRM. It also includes case studies that illustrate the impact that the tuning has on the adapter performance. Note: The performance testing results listed in this article are based on observations in an internal Informatica environment using data from real-world scenarios. The performance of PowerExchange for Microsoft Dynamics CRM might vary based on individual environments and other parameters even when you use the same data. Performance Tuning Areas You can optimize the performance of Microsoft Dynamics CRM mappings by tuning the following areas: Hardware Database 2

Application server Informatica mapping Tune the Hardware You can tune the following hardware parameters to optimize the performance: CPU frequency NIC card ring buffer size CPU Frequency Dynamic frequency scaling is a feature that allows the processor's frequency to be adjusted on-the-fly either for power savings or to reduce heat. Ensure that the CPU operates at least at the base frequency. When CPUs are under clocked, that is, they run below the base frequency, the performance degrades by 30% to 40%. Informatica recommends that you work with your IT system administrator to ensure that all the nodes on the cluster are configured to run at least at their supported base frequency. To tune the CPU frequency for Intel multi-core processors, perform the following steps: 1. Run the lscpu command to determine the current CPU frequency, base CPU frequency, and the maximum CPU frequency that is supported for the processor. 2. Request your system administrator to perform the following tasks: a. Increase the CPU frequency at least to the supported base frequency. b. Change the power management setting to OS Control at the BIOS level. 3. Run CPU-intensive tests to monitor the CPU frequency in real time and adjust the frequency for improved performance. On Red Hat operating systems, you can install a monitoring tool such as cpupower. 4. Work with your IT department to ensure that the CPU frequency and power management settings are persisted even in case of future system reboots. NIC Card Ring Buffer Size NIC configuration is a key factor in network performance tuning. When you deal with large volumes of data, it is crucial that you tune the Receive (RX) and Transmit (TX) ring buffer size. The ring buffers contain descriptors or pointers to the socket kernel buffers that hold the actual packet data. You can run the ethtool command to determine the current configuration. For example, run the following command: # ethtool -g eth0 The following sections show a sample output: Ring parameters for eth0: Pre-set maximums: RX: 2040 RX Mini: 0 RX Jumbo: 8160 TX: 255 Current hardware settings: RX: 255 RX Mini: 0 RX Jumbo: 0 TX: 255 3

The Pre-set maximums section shows the maximum values that you can set for each parameter. The Current hardware settings section shows the current configuration details. A low buffer size leads to low latency. However, low latency comes at the cost of throughput. For greater throughputs, you must configure large buffer ring sizes for RX and TX. Informatica recommends that you use the ethtool command to determine the current hardware settings and the maximum supported values. Then, set the values based on the maximum values that are supported for each operating system. For example, if the maximum supported value for RX is 2040, you can use the ethtool command as follows to set the RX value to 2040: # ethtool -G eth0 RX 2040 If you set a low ring buffer size for data transfer, packets might get dropped. To find out if packets were dropped, you can use the netstat and ifconfig commands. The following image shows a sample output of the netstat command: The RX-DRP column indicates the number of packets that were dropped. Set the RX value such that no packets get dropped and the RX-DRP column shows the values as 0. You might need to test several values to optimize the performance. The following image shows a sample output of the ifconfig command: The status messages indicate the number of packets that were dropped. 4

Tune the Database Factors such as the configuration of the physical design structures and indexes can impact the performance of the Microsoft Dynamics CRM database. To optimize the performance, you can configure the database files, tempdb files, and transaction log files to be created on separate sets of physical disks. You can also run the database maintenance command ALTER INDEX to defragment indexes and rebuild one or more indexes for a specific table. For large databases, you can create indexes on separate file groups. For information about tuning the database, click the following URL: https://msdn.microsoft.com/en-us/library/hh413200(v=crm.5).aspx#bkmk_optimize_data_tier Tune the Application Server When you use PowerExchange for Microsoft Dynamics CRM, you can configure compression to reduce the size of the data files that are transmitted over the network and optimize network performance. For information about configuring compression, click the following URL: https://technet.microsoft.com/en-us/library/hh413200(v=crm.6).aspx#bkmk_server_side Tune the Mapping You can tune the following parameters at the Informatica mapping level to optimize the performance: Ports precision Data movement mode Data type mapping Thread count Partitions Ports Precision Precision is the maximum number of significant digits for numeric data types, or maximum number of characters for string data types. For numeric data types, precision includes scale. You can tune the precision in Model repository mappings and PowerCenter repository mappings. When mappings contain ports with a larger precision than required, the mapping performance degrades. Informatica recommends that you set the precision judiciously for all source ports, transformation ports, and target ports. For instance, if a string port can handle data of a maximum of 200 characters, set the precision to 200. Do not set the precision to a high value such as 1000. Data Movement Mode The data movement mode specifies the mode that the Integration Service must use while moving data. The data movement mode affects how the Integration Service enforces code page relationships and code page validation. It can also affect performance. Applications can process single-byte characters faster than multibyte characters. You can tune the data movement mode in Model repository mappings and PowerCenter repository mappings. 5

Tuning Guidelines for Model Repository Mappings When you run mappings on the Data Integration Service, the logical Data Transformation Manager (LDTM) component of the Data Integration Service determines whether to use the ASCII or Unicode data movement mode for mappings that read from a flat file or relational source. The LDTM determines the data movement mode based on the character set that the mapping processes. When a mapping processes all ASCII data, the LDTM selects the ASCII mode. In ASCII mode, the Data Integration Service uses one byte to store each character, which can optimize mapping performance. In Unicode mode, the service uses two bytes for each character. For more information about the data movement mode, see the "Data Integration Service Architecture" chapter in the Informatica 10.0 Application Service Guide. Tuning Guidelines for PowerCenter Repository Mappings When you create a PowerCenter Integration Service, you can specify the mode based on the type of data you want to move, single byte or multibyte data. For example, if the data does not contain any UTF-8 data, specify the data movement mode as ASCII. Data Type Mapping When the Integration Service reads source data, it converts the native data types to the comparable transformation data types before transforming the data. When the Integration Service writes data to a target, it converts the transformation data types to the comparable native data types. You can tune the data type mapping in Model repository mappings and PowerCenter repository mappings. When you map source ports to transformation ports and then to target ports, avoid unnecessary data type conversions. For instance, do not map a port of the string data type to a port of the date data type. Ensure that you map ports to the same data type in all components of the mapping. Also, remove all unconnected ports from the mapping. Thread Count When you use PowerExchange for Microsoft Dynamics CRM to write data to an object, you can choose to write data in parallel to improve performance. You can define a thread count to specify the number of parallel threads that the Integration Service must create for the data load. Note: The thread count is not applicable for bulk loads. You can tune the thread count in Model repository mappings and PowerCenter repository mappings. To define the thread count in Informatica Developer, perform the following steps: 1. Log in to Informatica Developer. 2. Double-click and open the Microsoft Dynamics CRM data object write operation. 3. Click the Advanced tab. 4. In the Thread Count field, enter an appropriate value based on the hardware capabilities of the machine on which the Data Integration Service runs. To define the thread count in PowerCenter, perform the following steps: 1. In the Task Developer of the Workflow Manager, double-click the Microsoft Dynamics CRM target session to open the session properties. 2. Click the Mapping tab. 3. In the Target settings on the Mapping tab, enter a value for the thread count. Enter an appropriate value based on the hardware capabilities of the machine on which the PowerCenter Integration Service runs. 6

Case Study Consider the following multi-threaded Microsoft Dynamics CRM Developer tool mapping: The mapping contains a flat file as the Read transformation and a Microsoft Dynamics CRM Account object as the Write transformation. When the thread count was set to 8, the performance improved by approximately 7.5 times. The following figure summarizes the performance test results: Partitioning When you use PowerExchange for Microsoft Dynamics CRM to read or write data, you can define partitions in order to optimize the performance. When you configure partitioning, the Integration Service can perform the extract, transformation, and load tasks in parallel, thereby increasing the mapping performance. Increase the number of partitions until the performance saturation point. Note: The throughput gain with increase in partitions may not always be linear. Partitioning is CPU bound. Therefore, you must configure partitioning based on the available hardware in your environment. You can configure partitions in Model repository mappings. When you use Informatica Developer to read data from Microsoft Dynamics CRM, you can configure key range partitioning. When you use Informatica Developer to write data to Microsoft Dynamics CRM, you can configure dynamic partitioning. With key range partitioning, the Data Integration Service distributes rows of data based on a port or set of ports that you define as the partition key. For each port, you define a range of values. The Integration Service uses the key and ranges to send rows to the appropriate partition. When you configure dynamic partitioning, the Data Integration Service determines the number of partitions that it must create at run time. It scales the number of partitions based on factors such as the maximum parallelism value defined for the Data Integration Service and the mapping, and the number of CPUs available on the nodes where the mappings run. For information about configuring the maximum parallelism value for the Data Integration Service, see the "Data Integration Service Management" chapter in the Informatica 10.0 Application Service Guide. For information about overriding the maximum parallelism value for a mapping, see the "Partitioned Mappings" chapter in the Informatica 10.0 Developer Tool Mapping Guide. 7

To configure partitioning, perform the following steps: 1. Log in to Informatica Developer. 2. Perform one of the following steps: a. To define partitions for reading data from Microsoft Dynamics CRM, double-click and open the Microsoft Dynamics CRM data object read operation. Click the Run-time tab. In the Partition Type field, select the type of partitioning as key range partitioning and define the number of partitions that the Data Integration Service must create. b. To define partitions for writing data to Microsoft Dynamics CRM, double-click and open the Microsoft Dynamics CRM data object write operation. Click the Run-time tab. In the Partition Type field, select the type of partitioning as dynamic partitioning. Case Study The following figures summarize the performance test results for partitioning: Authors Sonal RN Performance Engineer Anu Chandrasekharan Lead Technical Writer 8