BAM Operations, a brief summary
Installing the BAM infrastructure
BAM infrastructure composed on the base of the SQL Analysis Services and the SQL Integration Services. The SQL Notification Service is an optional element.
1. Before installing BAM make sure the SQL Analysis Services and the SQL Integration Services are installed. If not, install them.
2. Create the BAMAnalysis and BAMStarSchema databases. It can be done in separate step or while the BizTalk configuration.
2.1. Start the BizTalk Server Configuration tool.
2.2. Choose the BAMTools on the left side of window.
2.3. Check on option the “Enable Analysis Services for BAM aggregations”.
2.4. Fill in Server Name with the same value as value for others databases. For example, “SQLDEV2\BIZTALK”.
2.5. Push the “Apply Configuration” button. Click “Next>” button.
2.6. Make sure there are no errors.
Note: to get access to the BAM Portal in the cluster BizTalk deployment use http://seroter.wordpress.com/2007/04/30/production-ready-bam-security-and-deployment/ article by Richard Seroter.
Development and Deploying
Deployment is separated to two parts. One is creating the logical data structure, second is mapping the logical structure to the BizTalk data.
There are two roles in development respectively. Business Analyst creates the logical tracking; BizTalk developer maps the logical tracking structure to the BizTalk application data.
For details read the MSDN documentation, “Using Business Activity Monitoring” at http://msdn.microsoft.com/en-us/library/aa561326.aspx.
Business Analyst uses the Microsoft Excel with special Add-In to create the Activities and Views, and then export them to the Xml file. It is the BAM Definitions.
BizTalk developer uses the Tracking Profile Editor (TPE) to map BAM Definitions to the BizTalk Orchestrations. TPE produces the Tracking Profile.
Deployer is another role in the process. In development environment it is a developer, in the production environment it is a System Administrator.
Deployer uses the bm.exe utility to deploy the BAM Definitions and TPE (in the development environment) or the BttDeploy.exe utility (in the production environment) to deploy Tracking Profile.
Development and Deployment Considerations
If we need to change something in BAM infrastructure first we have to undeploy old Tracking Profile and BAM Definitions then redeploy the new Tracking Profile and BAM Definitions. It is a simple process if we have the old Tracking Profile and BAM Definitions. If we lost them, the undeployment process is more complicated. That means we have to store deployed Tracking Profile and BAM Definitions!
Undeployment
Use deployed files <BAM Definitions>.xml and <Tracking Profile>.btt.
1. Open the Command line window (Start / Run/ >cmd.exe).
2. Go (>cd) to the <BizTalk>\Tracking\ folder.
3. Undeploy BAM Definitions:
a. >bm remove-all -DefinitionFile:< BAM Definitions>.xml -Server:<server>
4. Undeploy Tracking Profile:
a. >BttDeploy <Tracking Profile>.btt /remove [/mgdb <server name[,port]>\<database name>]
If we lost the <BAM Definitions>.xml and <Tracking Profile>.btt files, use the
>bm.exe get-defxml-FileName:<output file>[ -Server:<server> ] [ -Database:<database> ]
to get them. If we before that deployed several Definitions, we have to edit the new DefinitionFile.
Deployment
Use files from the BAM\Current folder.
5. Copy the <BAM Definitions>.xml and <Tracking Profile>.btt files to the <BizTalk>\Tracking\ folder.
6. Open the Command line window (Start / Run/ >cmd.exe).
7. Go (>cd) to the <BizTalk>\Tracking\ folder.
8. Deploy BAM Definitions:
a. >bm deploy-all -DefinitionFile:< BAM Definitions>.xml -Server:<server>
9. Deploy Tracking Profile:
a. >BttDeploy <Tracking Profile>.btt/mgdb <server name[,port]>\<database name>
10. 10. Set the access permissions for the BAM Portal users:
a. >bm add-account -AccountName:<BAMUsersGroup> -view:<ViewName>
– use it for each view in the BAM Definition.
This creates the database artifacts as tables, views, triggers, stored procedures in the databases.
Deployment scripts
Usually I create the deployment scripts and place them and BAM files to a predefined folder structure.
Folder structure:
o BAM\Scripts – folder for scripts
o BAM\Current – folder for the BAM files to be deployed. We can edit them.
o BAM\Last – folder for the BAM files deployed right now. We cannot edit them.
o BAM\Last-1 – folder for the BAM files deployed before. They are for undo.
%u00b7 Script user has to be in BAM administrators group.
Managing the BAM Infrastructure
The BAM infrastructure consists of the BAM workbook views, BAM Portal, BAM deployments, the BAM Data Transformation Services (DTS) packages, and the BAM databases. For more information about the BAM infrastructure, see http://msdn.microsoft.com/en-us/library/aa561239.aspx .
How to manage this infrastructure see “Managing the BAM Dynamic Infrastructure” http://msdn.microsoft.com/en-us/library/aa578097.aspx .