Microsoft Developer Network > BizTalk Server Forums > BizTalk Server General > major difference between BizTalk and SSIS

Answered major difference between BizTalk and SSIS

  • Tuesday, March 09, 2010 1:21 PM
     
     

    Hi there:
      I was referred by the moderator from SSIS forum to repost here. Hope someone could shed some lights.

      Can someone tell me the major difference between SSIS and BizTalk. I know Biztalk is for application message integration while SSIS is for data integration. However, can someone give me examples that can ONLY be accomplished by BizTalk instead of SSIS and some examples that can ONLY be accomplished by SSIS instead of BizTalk?

    That would better explain the difference between these two products.

     thanks

     Hui
    --Currently using Reporting Service 2000; Visual Studio .NET 2003; Visual Source Safe SSIS 2008 SSAS 2008, SVN --

Answers

  • Tuesday, March 09, 2010 1:51 PM
     
     Answered
    From http://msdn.microsoft.com/en-us/library/ms141026.aspx

    You use Integration Services to solve complex business problems by copying or downloading files, sending e-mail messages in response to events, updating data warehouses, cleaning and mining data, and managing SQL Server objects and data. Integration Services includes a rich set of built-in tasks and transformations; tools for constructing packages; and the Integration Services service for running and managing packages. You can use the graphical Integration Services tools to create solutions without writing a single line of code; or you can program the extensive Integration Services object model to create packages programmatically and code custom tasks and other package objects.

    SSIS is used for data integration while BizTalk is a Middleware tool used to integrate heterogenous systems. Systems can be integrated through any protocol TCP/SOAP/HTTP etc and the messages can be of any type. The systems can be applications or databases. In BizTalk you can develop (BPM) business process management solutions, (B2B) Business To Business solutions (integrate your organization with your partner) or establish an ESB (Enterprise Service Bus).

    SSIS can be a part of the ESB, B2B or a BPM solution.
    Abdul Rafay - MVP & MCTS BizTalk Server
    blog: http://abdulrafaysbiztalk.wordpress.com/
    Please mark this as answer if it helps.
  • Thursday, March 11, 2010 4:26 PM
    Moderator
     
     Answered

    Hi,

    Just to add to other replies:

    Biztalk is a "messaging" application basically.  It is designed and optomized to move single transactions (called "messages", and consisting of relatively tiny amounts of data in each discrete "message") between different systems or processes in real time. It wraps all user data in XML.  As a result, it is extremely verbose during the data movement.  It is not fast and would not be very satisfactory to manipulate large data sets using batch processing.  Performance would be abysmal most likely.Whereas SSIS _is_ designed specifically to move and manipulate large datasets using extremely high performance batch processing.

    from
    http://social.msdn.microsoft.com/Forums/en-US/sqlintegrationservices/thread/db697eeb-d29e-42a1-af8a-d1beb03901ed

    What is being set above is used as rule of tumb in case you need to choose between the two or use them both (esgraham comment) based on requirement scenario (similar to Randal's comment). In past I experienced that BizTalk was only choice to do messaging and move/manipulate large sets of data. Defintely take all advice given by people here to heart.

    Regards,

    Steef-Jan Wiggers
    MCTS BizTalk Server
    http://soa-thoughts.blogspot.com/


    BizTalk

All Replies

  • Tuesday, March 09, 2010 1:51 PM
     
     Answered
    From http://msdn.microsoft.com/en-us/library/ms141026.aspx

    You use Integration Services to solve complex business problems by copying or downloading files, sending e-mail messages in response to events, updating data warehouses, cleaning and mining data, and managing SQL Server objects and data. Integration Services includes a rich set of built-in tasks and transformations; tools for constructing packages; and the Integration Services service for running and managing packages. You can use the graphical Integration Services tools to create solutions without writing a single line of code; or you can program the extensive Integration Services object model to create packages programmatically and code custom tasks and other package objects.

    SSIS is used for data integration while BizTalk is a Middleware tool used to integrate heterogenous systems. Systems can be integrated through any protocol TCP/SOAP/HTTP etc and the messages can be of any type. The systems can be applications or databases. In BizTalk you can develop (BPM) business process management solutions, (B2B) Business To Business solutions (integrate your organization with your partner) or establish an ESB (Enterprise Service Bus).

    SSIS can be a part of the ESB, B2B or a BPM solution.
    Abdul Rafay - MVP & MCTS BizTalk Server
    blog: http://abdulrafaysbiztalk.wordpress.com/
    Please mark this as answer if it helps.
  • Tuesday, March 09, 2010 1:59 PM
     
     

    well instead of saying only SSIS or only Biztalk its better which one to use when

    for example if you want to load historical data or datawarehouse then better to use SSIS, but when you need features like retries and tracking or resubmission better go for Biztalk


    KiranMP
  • Tuesday, March 09, 2010 2:15 PM
    Moderator
     
     
    Hi,

    BizTalk and SSIS are different tools and fit different scenarios. The best thing to decide what is right for you is to look at your requirements. You can post your high level requirements here and people will be able to guide you to the right technology/product.


    HTH,

    Randal van Splunteren - MVP, MCTS BizTalk Server
    http://biztalkmessages.vansplunteren.net

    Please mark as answered if this answers your question.

    Check out the PowerShell provider for BizTalk: http://psbiztalk.codeplex.com
  • Tuesday, March 09, 2010 5:17 PM
     
     
    And its important to note that you can use SSIS with BizTalk.  For example, I had a project that would recieve a batch of data once a day - containing 1000s of records.  SSIS would recieve the data, and then scrub the data (or validate the format).  Once the data was acceptable, BizTalk would pick up each record and do the business processing. 

    We used SSIS to validate the data over BizTalk for a couple of reasons, one being that we would have had to create most of the validation in the Business Rules which was more cumbersome than what we wanted, and the schema validation in BizTalk is an all or nothing validation and we only wanted the records that had errors in the data to fail. 

    We used BizTalk to accomplish the business process of each record.  The process was that for each record we would retrieve information out of a database and based on the information we retrived in the database, the record would be processed by one of two business processes (orchestrations).  Then based on information in record we would send the data to any combination of 4 different systems (we had 4 different maps on 4 send ports).  BizTalk was perfect for this because we would publish the information to the database and the orchestrations or send ports would subscribe to the data and process it as required.  In addition, we also had error handling in place and if an error occured during the process we would send the error to a SharePoint site where non-technical individuals (ie customer service reps) could respond.

    So, if you are debating between BizTalk and SSIS, don't rule out implementing both.
  • Thursday, March 11, 2010 4:26 PM
    Moderator
     
     Answered

    Hi,

    Just to add to other replies:

    Biztalk is a "messaging" application basically.  It is designed and optomized to move single transactions (called "messages", and consisting of relatively tiny amounts of data in each discrete "message") between different systems or processes in real time. It wraps all user data in XML.  As a result, it is extremely verbose during the data movement.  It is not fast and would not be very satisfactory to manipulate large data sets using batch processing.  Performance would be abysmal most likely.Whereas SSIS _is_ designed specifically to move and manipulate large datasets using extremely high performance batch processing.

    from
    http://social.msdn.microsoft.com/Forums/en-US/sqlintegrationservices/thread/db697eeb-d29e-42a1-af8a-d1beb03901ed

    What is being set above is used as rule of tumb in case you need to choose between the two or use them both (esgraham comment) based on requirement scenario (similar to Randal's comment). In past I experienced that BizTalk was only choice to do messaging and move/manipulate large sets of data. Defintely take all advice given by people here to heart.

    Regards,

    Steef-Jan Wiggers
    MCTS BizTalk Server
    http://soa-thoughts.blogspot.com/


    BizTalk