CRM Magic with Data Migration & Integration



Similar documents
Enterprise Data Integration for Microsoft Dynamics CRM

SQL Azure and SqlBulkCopy

Integrating Siebel CRM 8 with Oracle Applications

Integration Architecture & (Hybrid) Cloud Scenarios on the Microsoft Business Platform. Gijs in t Veld CTO BizTalk Server MVP BTUG NL, June 7 th 2012

MDM and Data Warehousing Complement Each Other

White paper. Planning for SaaS Integration

OWB Users, Enter The New ODI World

Service Oriented Data Management

Microsoft Azure Cloud on your terms. Start your cloud journey.

Data Integration Checklist

Enterprise Enabler and the Microsoft Integration Stack

Azure Scalability Prescriptive Architecture using the Enzo Multitenant Framework

The ESB and Microsoft BI

Cloud Computing with Windows Azure using your Preferred Technology

Attunity Integration Suite

Oracle Data Integration: CON7926 Oracle Data Integration: A Crucial Ingredient for Cloud Integration

Pervasive Software + NetSuite = Seamless Cloud Business Processes

Microsoft Dynamics CRM Event Pipeline

ORACLE DATA INTEGRATOR ENTERPRISE EDITION

Implementing a SQL Data Warehouse 2016

Integrating Netezza into your existing IT landscape

Advantage Integration Strategy Integrating for the Enterprise

AppDev OnDemand Cloud Computing Learning Library

EII - ETL - EAI What, Why, and How!

Sentinet for BizTalk Server SENTINET

Oracle Data Integrator Technical Overview. An Oracle White Paper Updated December 2006

Client. Applications. Middle Tier. Database. Infrastructure. Leading Vendors

replication solution Using CDC and Data Replication October 19, 2010

Using multi-tenancy in Microsoft Dynamics CRM 2013 to address challenges in enterprise business environments

the smarter way to manage enterprise APIs for SYSPRO ebook

Using MySQL for Big Data Advantage Integrate for Insight Sastry Vedantam

ENZO UNIFIED SOLVES THE CHALLENGES OF OUT-OF-BAND SQL SERVER PROCESSING

Course 10777A: Implementing a Data Warehouse with Microsoft SQL Server 2012

Entity store. Microsoft Dynamics AX 2012 R3

Kenneth Schwartz Nielsen Global Channel Manager

Implementing a Data Warehouse with Microsoft SQL Server 2012

Real-time Data Replication

Data Integration: Using ETL, EAI, and EII Tools to Create an Integrated Enterprise. Colin White Founder, BI Research TDWI Webcast October 2005

Course Outline. Module 1: Introduction to Data Warehousing

High-Volume Data Warehousing in Centerprise. Product Datasheet

ORACLE DATA INTEGRATOR ENTERPRISE EDITION

Integrating MDM and Business Intelligence

James Serra Data Warehouse/BI/MDM Architect JamesSerra.com

Implementing a Data Warehouse with Microsoft SQL Server 2012

Breadboard BI. Unlocking ERP Data Using Open Source Tools By Christopher Lavigne

IBM WebSphere Cast Iron Cloud integration

Data Virtualization for Agile Business Intelligence Systems and Virtual MDM. To View This Presentation as a Video Click Here

Building a Data Warehouse

In-Memory Analytics: A comparison between Oracle TimesTen and Oracle Essbase

COURSE 20463C: IMPLEMENTING A DATA WAREHOUSE WITH MICROSOFT SQL SERVER

The Integration Between EAI and SOA - Part I

SCRIBE INSIGHT ARCHITECTURE OVERVIEW

Jitterbit Technical Overview : Salesforce

Implementing a Data Warehouse with Microsoft SQL Server

Advantages of Implementing a Data Warehouse During an ERP Upgrade

Migrating SaaS Applications to Windows Azure

Sentinet for Windows Azure SENTINET

Best Practices. Integration of Salesforce and Microsoft Dynamics GP

Solving Business Pains with SQL Server Integration Services. SQL Server 2005 / 2008

SOLUTION BRIEF. JUST THE FAQs: Moving Big Data with Bulk Load.

Implementing a Data Warehouse with Microsoft SQL Server 2012 MOC 10777

ETL Tools. L. Libkin 1 Data Integration and Exchange

Implementing a Data Warehouse with Microsoft SQL Server 2014

Dynamics CRM with Azure and SharePoint a perfect match. Central and Eastern Europe

Course 10978A Introduction to Azure for Developers

Accelerate Data Loading for Big Data Analytics Attunity Click-2-Load for HP Vertica

MicroStrategy Course Catalog

Implementing a Data Warehouse with Microsoft SQL Server 2012

Ariett Purchasing & Expense Management. Go Paperless, Go Mobile, Go Easy.

Complex Event Processing (CEP) Why and How. Richard Hallgren BUGS

ebay : How is it a hit

Cloud First Does Not Have to Mean Cloud Exclusively. Digital Government Institute s Cloud Computing & Data Center Conference, September 2014

Your Technology Partner Offshore and Onsite. Services Portfolio

Why Big Data in the Cloud?

ORACLE DATA INTEGRATOR ENTEPRISE EDITION FOR BUSINESS INTELLIGENCE

Jitterbit Technical Overview : Microsoft Dynamics CRM

Sentinet for BizTalk Server SENTINET 3.1

Implement a Data Warehouse with Microsoft SQL Server 20463C; 5 days

Reduce and manage operating costs and improve efficiency. Support better business decisions based on availability of real-time information

Microsoft SQL Server for Oracle DBAs Course 40045; 4 Days, Instructor-led

Explain how to prepare the hardware and other resources necessary to install SQL Server. Install SQL Server. Manage and configure SQL Server.

Course 10977A: Updating Your SQL Server Skills to Microsoft SQL Server 2014

Quickly Deploy Microsoft Private Cloud and SQL Server 2012 Data Warehouse on Hitachi Converged Solutions. September 25, 2013

Building a BI Solution in the Cloud

Integrating SAP and non-sap data for comprehensive Business Intelligence

Scaling Analysis Services in the Cloud

Repeatable, Embedded Integration from the Cloud to SaaS or On-Premises ERP, CRM and More

Implementing a Data Warehouse with Microsoft SQL Server

Building and Deploying Enterprise M2M Applications with Axeda Platform

Expert Reference Series of White Papers. Unlock the Power of Microsoft SQL Server 2012

Automatizace Private Cloud. Petr Košec, Microsoft MVP, MCT, MCSE

Real World Enterprise SQL Server Replication Implementations. Presented by Kun Lee

Microsoft Dynamics CRM2015 Fast Track for developers

Connectivity in the Enterprise: The Rise of Cloud and Its Integration Challenges

MS 10978A Introduction to Azure for Developers

Cloud Ready Data: Speeding Your Journey to the Cloud

Implementing a Data Warehouse with Microsoft SQL Server 2012 (70-463)

Monitor and Manage Your MicroStrategy BI Environment Using Enterprise Manager and Health Center

Skynax. Mobility Management System. System Manual

Transcription:

CRM Magic with Data Migration & Integration Daniel Cai http://www.kingswaysoft.com http://danielcai.blogspot.com

About me Daniel Cai Principal Developer @KingswaySoft An independent software company offering integration software and solutions Main interests Microsoft Dynamics CRM Business Intelligence.NET Enterprise Architecture Microsoft Dynamics CRM MVP 2011, 2012, 2013

Agenda Challenges Data Migration vs. Data Integration Data Migration / Integration Approaches CRM Import Wizard Custom Integration Development ETL Service Bus / BizTalk Get data into CRM faster! Closing notes

Challenges of Data Migration / Integration Diversity of data and systems Complexity and intricacy associated with working with CRM web service interfaces An often overlooked piece of work in CRM projects Limited space for performance tuning

Data Integration vs. Data Migration Data Migration Data Integration A One-Off activity Often large volume of data in initial load Cost to fix any data issues thereafter is high Data cleansing is usually part of the effort Time sensitive On-going data synchronization or replication Managing incremental changes Different requirements call for different design Real-time Batch Messaging Need to be done fast in order to minimize performance impact on production system

Available options Leverage existing technologies and tools CRM Import Data Wizard ETL tools SSIS Informatica Scribe Connectors for Microsoft Dynamics etc. BizTalk / Service Bus Custom integration solution development Program against CRM Web Service Interfaces (SDK Programming)

CRM Import Data Wizard

CRM Import Data Wizard What s it? Free utilities offered by the platform Pros Works for simple and small data import scenarios Works within application, available for CRM users for self-served data imports Undoable works well for new insert, but not update though Free Cons No delete don t confuse with the above undo capability No transformation No scheduling, no automation Difficult to manage incremental changes Maximum number of records is constrained by file size Limited capability of handling relationship Exceptions to be expected when used for some special entities, fields

CRM Import Data Wizard

Custom Integration Development

Custom Integration Development How does it work? Write custom code against CRM web service interfaces using SDK or service references Pros Leverage your.net programming (C# or VB.NET) skills More granular control Flexible integration points Plugins Workflows / Processes Standalone applications (Console, Windows Form, and probably third-party apps) Cons Could be an exhaustive effort due to large amount of coding effort Scheduling Threading Intricacies associated with working with CRM web service interfaces Most likely much higher maintenance cost down the road Often the case, the implementation ends up with a tightly-coupled architecture style, which leads to poor maintainability

Decisions Custom Integration Development SDK assemblies v6.0 can be used to talk to either CRM 2013 or 2011 v5.0 can also be used to talk to either CRM 2013 or 2011, however with no access to CRM 2013 specific features entityimage field Programming Styles Early-bound Late-bound Performance Considerations Multi-threading Bulk Data Load API

Programming Styles Early-bound vs. Late-bound Early-bound Pros Compile-time validation through strongly-typed entity classes and fields Intellisense CRM LINQ query APIs Cons Small performance overhead Dependency on command-line tool whenever CRM metadata has been changed Larger binary delivery Late-bound Slightly better performance comparing to early-bound More flexibility Smaller binary delivery No compile-time validation or intellisense Less productive CRM LINQ query APIs

Custom Integration Development Demo Data integration through CRM Web Service Interfaces utilizing CRM SDK

ETL

ETL Tools What s ETL Extract, Transform, Load Pros Development productivity Integration automation with scheduling engine Performance, scalability and extensibility Can be part of your overall BI and data warehousing strategies Cons Learning curve of the ETL tool License cost of the ETL tool and/or the adapters Probably not the ideal solution for real-time requirements Options SSIS (SQL Server Integration Services) Informatica Scribe Connectors for Microsoft Dynamics

SSIS as CRM Data Integration Platform Why SSIS? SSIS is Microsoft s answer to enterprise data integration Scalability Performance Extensibility Easy to work with Works for almost any data source or target Accessible technical resources A third-party adapter is required KingswaySoft SSIS Integration Toolkit for Microsoft Dynamics CRM Free developer edition available at www.kingswaysoft.com 4 SSIS components included

ETL Demo Data integration using KingswaySoft SSIS Integration Toolkit for Microsoft Dynamics CRM

Connectors for Microsoft Dynamics A small footprint ETL engine Support the integration between Microsoft Dynamics CRM and most of Microsoft Dynamics ERP applications (AX, NAV, GP, SL) SDK is available to develop your own adapters Offered under free license since its v3.0 release

Connectors for Microsoft Dynamics (cont.) Image from MSDN article: http://msdn.microsoft.com/en-us/library/gg502460.aspx

Service Bus / BizTalk

Service Bus / BizTalk Messaging-based integration What s service bus? A software architecture model used for designing and implementing the interaction and communication between mutually interacting software applications in service-oriented architecture (SOA) A messaging-based integration solution Pros Optimized to move single transactions between different systems or processes in near real time or real time Decoupled integration architectural model Best suited for decoupled heterogeneous systems by using Service Bus or BizTalk as the middleware Cons Probably not best fit with large volume data load Performance overhead due to serialization and deserialization Complexity associated with the messaging platform

Service Bus Implementation Patterns Various Implementation Patterns (Azure Service Bus) Queue No active listener is required destructive read vs. non-destructive read two types of queues message buffer queue persistent queue One Way requires an active listener retries through asynchronous system job Two Way requires an active listener a string value can be returned REST essentially a two-way listener in REST style Topic Similar to a queue, except that listener(s) can subscribe to receive messages from the topic

Service Bus Integration for Microsoft Dynamics CRM Image from MSDN article: http://msdn.microsoft.com/en-us/library/gg334766.aspx

CRM Service Bus Integration Integration Points Plugin Workflow Some Limitations There is no way to use custom messages You publish the entire execution context, which could contain unnecessary information for other parties Remove sensitive information from the context object if necessary Although you can host Windows Service Bus on-premise, there isn t a way to talk to your service bus on-premise from CRM plug-in or Workflow It is possible to write listener to listen to service bus, and push the data (messages) to CRM server, however this is not currently an out-of-the-box feature provided by the platform There will be some technical challenges if you want to utilize a third-party service bus solution

CRM + Azure Service Bus Demo Service Bus integration in CRM Plugin

Get data into CRM faster!

Why? Web service interface is generally slow It is never faster enough to load data

Multi-threading The SSIS way 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>

Leverage multi-node cluster

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

Other considerations Minimize the number of fields you work with when reading from or writing to CRM Mind the performance impact that your plugins or workflows may have on the system disable them if you don t need them in initial load Watch out your query (if any) performance during data migration/integration make sure database indexes are available for the queries add custom indexes if needed Watch out the resource usage on your integration server, CRM server and database server Poor performance could be caused by poor infrastructure More often, poor performance can be caused by poorly-written custom code in plugins or workflows

Closing Notes

How to survive your CRM data migration/integration Don t ever try to write to CRM database directly at any time! Choose the right tools, and know your tools there is often more than one way to get a job done Know your data both source and target document and establish the mapping between your source data and target data Error happens define a proper error handling strategy and possibly implement a retry mechanism if necessary, particularly if you are working with CRM online Define your data quality standards make sure your data migration/integration adhere to the standards Plan ahead, expect changes

Q & A Daniel Cai KingswaySoft, http://www.kingswaysoft.com Personal Blog: http://danielcai.blogspot.com Email: daniel.cai@kingswaysoft.com