none
Pros/Cons of using BAM & Best Practices of using BAM

    Question

  • Hi All,

    In our company we are toying with the idea of using BAM for tracking some metrics like request/response time of some external services called and probably the uptime/downtime ...

    I don't have much experince on BAM but I have some queries or I guess points to consider before using BAM:

    1. BAM is basically used for monitoring business data and not the technical information of an application
    2. What & how much data we do want to monitor in terms metric and its importance I mean how feasible it is to have the whole BAM installed in a production environment, it should not impact the performance of the actual appllication, so what points do we consider here or how are BAM applications deployed in production enviornment.
    3. Just by enabling tracking on all the BTS artifacts are we able to track and monitor the metrics we require or we need to create a sperate activity workbook using excel to define the activity and view which is later on mapped to the actual BTS artifacts, please share some details how is monitoring basiaclly done in different BTS BAM setups

    Please do let me know your feedback ... Thanks.

     

    Friday, June 24, 2011 11:55 AM

Answers

  • 1)      BAM was made for business data, but is a great tool for monitoring technical data as well.  The alerts and aggregations make finding SLA violations very easy and also throughput / load tracking and forecasting.  It is far easier to use and get data out of than DTA tracking (the kind you turn on in the ports / orchestrations in BizTalk). 

    2)      Monitor all you want BAM will not adversely affect performance, unlike the BTS tracking you mention.  The BTS artifact tracking greatly adversely affects performance, BAM does not.  Most of the ways (other than some of the API) use asynchronous disconnected methods to write to BAM.  That means that under extremely heavy load BAM will slow down or fall behind, but your running solution will not.  The same is not true for BTS artifact tracking, it will slow down BizTalk at runtime.  About deployment; BAM has three main parts: PrimaryImport (and Archive) databases, analysis services (if you’re using them), and a web portal (if you choose to use that, and I think you should).  They can be spread around your environment in creative ways and will scale tremendously. 

    3)      The tracking provided by enabling BTS artifact tracking may be detailed, but it is not easy to get to and it really does have SERIOUS performance impact.  BAM is made to track and age data and even creates a data management SSIS package automatically that will age the data out of the primary import database and into the archive (or delete it) so you can keep scaling for a long time.  You simply create an activity definition and a tracking profile (which binds the definition to your solution) and you’re set.  You can actually track a lot more with BAM than with tracking in the BTS artifacts sense. 

    If you can’t tell, I’m a big fan of BAM.  It does take a little bit to learn, but there are great books out there now (unlike in the past) and it really is well designed and made to do exactly what you want.  The cool part is it allows you to create multiple views of the same source data so that your operations / IT people can get a view that matters to them while your business people get one that they care about.  If you get serious about check out this book: http://www.apress.com/9781430219149


    If this answers your question, please Mark as Answer
    Friday, June 24, 2011 12:42 PM

All replies

  • 1)      BAM was made for business data, but is a great tool for monitoring technical data as well.  The alerts and aggregations make finding SLA violations very easy and also throughput / load tracking and forecasting.  It is far easier to use and get data out of than DTA tracking (the kind you turn on in the ports / orchestrations in BizTalk). 

    2)      Monitor all you want BAM will not adversely affect performance, unlike the BTS tracking you mention.  The BTS artifact tracking greatly adversely affects performance, BAM does not.  Most of the ways (other than some of the API) use asynchronous disconnected methods to write to BAM.  That means that under extremely heavy load BAM will slow down or fall behind, but your running solution will not.  The same is not true for BTS artifact tracking, it will slow down BizTalk at runtime.  About deployment; BAM has three main parts: PrimaryImport (and Archive) databases, analysis services (if you’re using them), and a web portal (if you choose to use that, and I think you should).  They can be spread around your environment in creative ways and will scale tremendously. 

    3)      The tracking provided by enabling BTS artifact tracking may be detailed, but it is not easy to get to and it really does have SERIOUS performance impact.  BAM is made to track and age data and even creates a data management SSIS package automatically that will age the data out of the primary import database and into the archive (or delete it) so you can keep scaling for a long time.  You simply create an activity definition and a tracking profile (which binds the definition to your solution) and you’re set.  You can actually track a lot more with BAM than with tracking in the BTS artifacts sense. 

    If you can’t tell, I’m a big fan of BAM.  It does take a little bit to learn, but there are great books out there now (unlike in the past) and it really is well designed and made to do exactly what you want.  The cool part is it allows you to create multiple views of the same source data so that your operations / IT people can get a view that matters to them while your business people get one that they care about.  If you get serious about check out this book: http://www.apress.com/9781430219149


    If this answers your question, please Mark as Answer
    Friday, June 24, 2011 12:42 PM
  • So the way tracking happens in BAM is thru creating Activity/Views, binding it thru a TPE and then displaying the same thru the BAM Portal.

    BAM monitoring does not have anything to do with the tracking that you enable on the BTS artifacts that is on the  ports & orchestrations, I am still a bit confused here ???

    Also, if there's are any good articles/samples on BAM please do let me know. Thanks.

    Friday, July 01, 2011 8:22 AM
  • So the way tracking happens in BAM is thru creating Activity/Views, binding it thru a TPE and then displaying the same thru the BAM Portal.

    BAM monitoring does not have anything to do with the tracking that you enable on the BTS artifacts that is on the  ports & orchestrations, I am still a bit confused here ???

    Also, if there's are any good articles/samples on BAM please do let me know. Thanks.


    Dan is talking about Regular tracking(Tracking on send port/receive port/orchestration) see this post to know what regular tracking is and how to enable it.

    To know more about BAM refers to this whitepaper on BAM and How to replace Tracking with BAM in BizTalk


    Mark As Answer or Vote As Helpful if My Reply Does, Regards, -Rohit
    Friday, July 01, 2011 8:44 AM
    Moderator
  • Hi Umesh,

    I would suggest to download this whitepaper Business Activity Monitoring in Depth for Developers and if you can spend a some money the BizTalk 2009 Pro BAM book by APRESS.

    HTH

    Regards,

    Steef-Jan Wiggers
    MVP & MCTS BizTalk Server
    http://soa-thoughts.blogspot.com/
    If this answers your question please mark it accordingly


    BizTalk
    Friday, July 01, 2011 9:22 AM
    Moderator