Databases Reference
In-Depth Information
Figure 2-14. Aggregation + MMS patterns
For example, this pattern can be used to collect information from multiple SQL Database instances into a single
one used by a third party to monitor overall performance. A Windows Azure worker process can run a performance
view provided by SQL Database and store the data into another database. Although the SQL Database instances being
monitored for performance may have a totally different schema, the output of SQL Database's performance data
management view (DMV) is consistent. For example, the monitoring service can call sys.dm_exec_connections to
monitor connection activity in various SQL Database instances every 5 minutes and store the result in a separate SQL
Database instance.
Sample Design: Application SLA Monitoring
To put a few of the patterns in perspective, let's try an example. We'll create a formal design around a system
that monitors application performance service-level agreements (SLAs). In this design, a company already has
a monitoring product that can audit activity in existing SQL Server databases at customer sites. Assume that the
company that makes this monitoring product wants to extend its services by offering a SQL Database storage
mechanism so it can monitor customers' database SLAs centrally.
Pre-Azure Application Architecture
First, let's look at the existing application-monitoring product. It contains a module that monitors one or more SQL
Servers in an enterprise and stores its results in another database located on the customer's network.
In this example, Company A has implemented the monitoring service against an existing ERP product to monitor
access security and overall SLA. The monitoring application performs the auditing based on live activity on the
internal SQL Server storing the ERP data. When certain statements take too long to execute, the monitoring service
receives an alert and stores an audit record in the local auditing database, as shown in Figure 2-15 .
 
Search WWH ::




Custom Search