Business Activity Monitoring (BAM) is a powerful feature in BizTalk server which enables to track the required data in business processes to monitor the progress. Purpose of this post is to share my learnings on using BAM.
- BizTalk comes with Tracking Profile Editor (TPE), which provides developers a graphical way to instrument orchestrations and ports by mapping the data with the items in the BAM activities. Although for many solutions this works great, it has certain limitations. These can be met by using BAM API.
- Consider using OrchestrationEventStream and MessagingEventStream instead of DirectEventStream, when using BAM APIs. These temporarily writes the data to MessageBox database unlike DirectEventStream which writes the data directly into BAM database. The tracking host (TDDS service) moves the data from message box database to BAMPrimaryImport database, periodically. This performs better as calls are asynchronous i.e. caller does not wait for data to be committed in BAM database, and it is transactionally consistent with orchestrations and pipelines i.e. if orchestration rolls back for some reason then BAM entries are also rolled back.
- If you use DirectEventStream, you will need to specify the database connection string, as it directly writes to database i.e you will need to store the connection parameters in your application. The best way to do this is by storing this as configuration data (in BizTalk configuration file or in SSO database). When using OrchestrationEventStream, you don’t have to worry about the server and database names as BizTalk automatically takes care of database connections based on BizTalk configuration.
- It is better to use BAM to track message body data than the built in message body tracking for performance reasons. Built in message body tracking is good for debugging scenarios, temporarily. But if you always need to track message body data, consider using BAM.
- In general, avoid BAM continuations if you can as it incurs performance overhead. If you can not do without it, but try your best to limit to using 2 continuations with a BAM activity.
- The data traced from BizTalk Server is received in UTC format. If you use the event stream APIs to provide date and time tracking data in local time format, the data in the BAM portal will be incorrect as the expectation is that all times in BAM data are in UTC format.
If you have existing applications that use local time, and you are now upgrading and planning to use the BAM portal, you must modify your data to make it conform to UTC format. You also need to modify your custom application to convert to UTC format.
- It is recommended to review and monitor the BAMPrimaryImport database size over a period of time. By default, the configuration is to archive the data older than 6 months into BAMArchive database. For more information, see this article: Archiving Primary Import Database Data.
- To identify the bottleneck with BAM ensure that the active Instances count is not climbing, the SQL agent service is running, and BAM_DM_ (Data Maintenance) job is scheduled to run at periodic intervals. Also if OLAP Analysis is configured ensure that the BAM_AN_ job is running at periodic intervals.
There is a great whitepaper available on MSDN: Business Activity Monitoring in Depth for Developers. This is recommended for all developers starting to work on BAM.
Please do leave comments, if any questions or issues or suggestions. Thanks!
To provide industry-standard compliance with the Society for Worldwide Interbank Financial Telecommunication (SWIFT) 2009 Standards Release Guide specification, Microsoft has released BizTalk Accelerator for SWIFT (A4SWIFT) 2009 Message Pack. This new release provides the compatibility that is required for you to use the SWIFT standard that is scheduled to be imposed in October 2009.
The KB Article http://support.microsoft.com/default.aspx?scid=kb;EN-US;925731 provides the download links for Message Packs to support the multiple versions of the BizTalk Accelerator for SWIFT.
BizTalk Accelerator for SWIFT 2009 Message Pack includes the following features:
- The repackaging of all SWIFT FIN FF message types and of all business rules
- Updates to schemas and to business rules to make the schemas and the business rules fully compliant with the SWIFT 2009 certification requirements
- All the hotfixes that are related to schemas and to business rules but that are not superseded by the SWIFT 2009 certification requirements
- BizTalk Accelerator for SWIFT Message Pack 2009 has no components other than schemas, business rules, and Microsoft Office InfoPath forms.
Note: Microsoft intends to release a new message pack for BizTalk Accelerator for SWIFT each year to coincide with the annual updates to the SWIFT Standards Release Guide.
Please do leave comments, if any questions or issues or suggestions. Thanks!
Microsoft BizTalk Server is used to integrate enterprise applications and systems within an organization and across businesses, automate business processes and create business process management solutions. These processes may be short lived e.g. for seconds, minutes or long running for days, weeks or even months. An integration solution may span across multiple systems and be mission critical, therefore it is very important for organizations to have appropriate monitoring solutions in place to be able to capture the status of various processes in real-time.
BizTalk Server provides following out-of-box monitoring tools that are normally used by developers and administrators.
- Health and Activity Tracking (HAT): Health and Activity Tracking (HAT) is a web-based user interface that you can access over HTTP to see tracking data through different views and queries, depending on your role. You can monitor the progress of your business process, you can examine state as your business process runs, and you can create custom views to get just the information that is important to you.
- Business Activity Monitoring (BAM) Portal: The BAM portal in BizTalk Server provides real-time, end-to-end visibility into a business process. It is a Web-based feature that consists of a collection of ASP.NET 2.0 pages. You can customize BAM to enhance the performance and experience for your users.
- BizTalk Server Administration Console: The BizTalk Server Administration Console is a Microsoft Management Console (MMC) that you can use to manage and monitor BizTalk Server, and that you can use to deploy and manage your BizTalk Server applications.
Although these tools address most of the needs for monitoring and managing BizTalk solutions, below are some requirements that are not met in effective manner, especially for complex solutions:
- Ability to search for BizTalk orchestration and messaging instances based on process identifiers. In some situations, it is required to locate the corresponding BizTalk instances (one or more) for a particular process based on process identifiers e.g. order number, order dates etc. It can get very difficult to locate the instances based on such properties when a large number of messages flow through the system.
- Ability to resume business processes from latest possible checkpoint in the process flow, in case the orchestration is suspended in non-resumable state for any reason. This eliminates the need to restart the process from the initial state, which may have required rework if the process includes manual steps.
To fulfill the above requirements, BAM and HAT integration is one of optimal solutions. Although some integration between BAM and HAT already exists, it is very primitive and is good only for very basic needs. The integration feature is limited to availability of ‘Assistance’ button on activity status page in BAM portal. The assistance request is placed in the Application Event log. You can then use Health and Activity Tracking (HAT) to retrieve the assistance request.
To achieve better integration between BAM and HAT, another possible solution is to develop custom BAM portal, which integrates very well with health and activity tracking. You may utilize class members in Microsoft.BizTalk.Operations namespace and BAM API to query the data from BizTalk databases and present the same on a unified interface, as per your needs. Here are related links for the same:
BAM and HAT Integration
http://msdn.microsoft.com/en-us/library/aa578154.aspx
Microsoft.BizTalk.Operations Namespace
http://msdn.microsoft.com/en-us/library/microsoft.biztalk.operations.aspx
BAM Portal
http://msdn.microsoft.com/en-us/library/aa560294.aspx
Business Activity Monitoring in Depth for Developers
http://msdn.microsoft.com/en-us/library/dd320628.aspx
Using Health and Activity Tracking
http://msdn.microsoft.com/en-us/library/ms943797.aspx
Please do leave comments, if any questions or issues or suggestions. Thanks!
There is ton of information available for BizTalk Server 2009 performance optimization. I am attempting to summarize the content and links of what is available out there:
- BizTalk Server 2009 performance optimization guide: The BizTalk Server 2009 Performance Optimization Guide contains prescriptive guidance for optimizing BizTalk Server performance, based upon hands-on experience of IT professionals who have worked extensively with BizTalk Server. This guide contains four main sections: Finding and Eliminating Bottlenecks, Optimizing Performance, Scaling a Production BizTalk Server Environment, and BizTalk Server Performance Testing Methodology. The BizTalk Server 2009 performance optimization guide is available here.
- Video: BizTalk 2009 – End to end performance testing: These 2 video recordings are from the BizTalk 2009 launch and Massive scalability night at Microsoft in Stockholm on April 16, 2009. This session introduces the BizTalk Performance Testing Guidance. This session will provide a full interactive run through of the performance lab process. It will illustrate the tools and techniques and documentation that we use and are documented in the guide. Also learn about performance lab characteristics on BizTalk Server 2006 R2, BizTalk 2009 (physical) and BizTalk 2009 on Hyper-V platform. Watch it here: Part 1 & Part 2.
- Presentations from the BizTalk Customer Advisory Team: There are 4 separate presentations available:
- BizTalk Server 2009: Performance Characteristics on Hyper-V and Physical Platforms; Ewan Fairweather and Paolo Salvatori
The BizTalk Customer Advisory Team quantifies performance of BizTalk Server 2009 vs. BizTalk Server 2006 R2, as well as performance of BizTalk Server 2009 on Hyper-V. The team also provides guidance on how to effectively do performance testing of BizTalk Server 2009.
- BizTalk Server 2009 Performance; Ewan Fairweather, Tim Wieman, and Paolo Salvatori
The BizTalk Customer Advisory Team provides examples of successful performance labs. The team also provides information about the tools, techniques, and processes that were used to run effective BizTalk Server performance labs.
- BizTalk Server End-to-End Performance Testing Guidance; Ewan Fairweather and Paolo Salvatori
The BizTalk Customer Advisory Team discusses how they run BizTalk performance assessments, demonstrate tools and techniques that used during the assessment, and introduce the BizTalk Server Performance Optimization Guide.
- BizTalk Hyper-V Virtualization Guidance; Ewan Fairweather and Clint Huffman
The BizTalk Customer Advisory Team shares best practices for using BizTalk Server with Hyper-V. They also provide guidance on the performance characteristics of BizTalk Server on Hyper-V, and introduce the BizTalk Server Hyper-V Guide.
Download them all from here.
- Technical Webcast: Ewan Fairweather, who is a member of BizTalk customer advisory team and is primarily focused on BizTalk Server performance, is presenting a webcast on BizTalk performance this Tuesday September 01, 2009 1:00 PM Pacific Time along with Trace Young, who wrote the majority of the BizTalk Documentation. They will cover a summary of all the performance tests they have performed in the lab this year and answer any questions. Please tune in if you have any performance related questions or if you just want to see what we have been up to. Registration link is here. I will update the link once it is available for on demand.
Please do leave comments, if any questions or issues or suggestions. Thanks!
The much awaited Microsoft BizTalk Server Management Pack for Operations Manager 2007 is live and available for download here. The pack supports all 3 versions of BizTalk: BizTalk Server 2006, BizTalk Server 2006 R2, and BizTalk Server 2009.
Version info & changes for the pack:
8/31/2009 - Version 6.0.6679.0 - Updated release of MP, for supporting BizTalk Server 2009 and addressing high CPU utilization issue.
Overview:
The BizTalk Server Management Pack for Operations Manager provides comprehensive discovery and monitoring of BizTalk Server components and applications.
Feature Bullet Summary:
This management pack focuses on the following key scenarios which are discussed further in the management pack guide provided within the download:
-
Suspended Message Alerts
-
Alert Suppression Policy
-
BAM Technical Assistance Alerts
-
BizTalk Message Boxes and Hosts
-
Orchestration Failures
-
Service Monitoring
-
Application Monitoring
-
Monitoring of various aspects of RFID
The Management Pack has already been downloaded and tested by 11 customers through our Technology Adoption Program (TAP).
Please do leave comments, if any questions or issues or suggestions. Thanks!
I am sharing some generic points based on my learnings, one should keep in mind while coding and designing BizTalk solutions. Here we go:
· Follow standard naming conventions for BizTalk artifacts: This is one area which may seem a minor point in the beginning but as the solution grows larger it plays an important role in maintaining the solution. It is a good idea to maintain a guidelines document that everybody on the development team must walkthrough so that there is a consistency across the project in terms of maintaining a standard.
· Encourage reusability: Before you start writing code, it is advisable to check if the code already exists in BizTalk SDK or somewhere on the internet as an open source e.g. on CodePlex etc. Keep in mind that for each additional line of code, you are also adding an additional maintenance effort. Also in large solution, it is always to check with the other developers whether the utility functions already exist to meet a desired functionality.
· Before adding any new artifact in the BizTalk solution, check if this is really required? I have seen solutions having multiple message schemas when the functionality could be met with very few of them. E.g. consider using multi part messages for situations where a message needs to exist which is only a combination of two other messages.
Or avoid creating maps where you could construct a simple XML or XLangMessage message in the user code. Just because you need to create another message, you don’t need to use a map. There exist different ways to do this, see Constructing Messages in User Code for more information.
· Do lot of tracing in the code: Do not hesitate to instrument your code enough. This really helps debugging the problems without getting into the code in many situations. Use features in System.Diagnostics class library to enable tracing your code. With this it becomes easier to turn on/off at run time using configuration. It will also be possible to switch a particular level of tracing on e.g. verbose, error, info etc. Ideally each function should have some tracing enabled with the function duration, passed parameters and how far you did get in your function.
· Leverage pub-sub architecture of BizTalk: It is very important to understand the way BizTalk server works. Build your systems loosely coupled as much as possible. BizTalk orchestration designer built into VS.Net provides an easy way to drag-drop shapes and define your business processes. But before doing that take some time to really think about how the business process may look like in future? Are there any possibilities of adding any new systems in the future to participate in the current process? Is it easy to plug-in new components to existing process without changing the design too much? Really think hard about the extensibility, and maintainability of the solution. Think about the people who are going to maintain the solution after you build it.
Also, here is a nice code review checklist compiled by Richard Seroter.
Please do leave comments, if any questions or issues or suggestions. Thanks!
Enterprise Single Signon component in BizTalk Server can be used to provide single signon capabilities, as the name suggests, where in the mapping of non-windows credentials can be done to windows credentials and so on. Ent SSO can also be used for storing any application specific configuration data that needs to be encrypted and should to be kept secure. You also may rely on Ent SSO for storing any non-secure configuration data for a BizTalk application if you do not want to put that in BizTalk configuration file (BTSNTSvc.exe.config or BTSNTSvc64.exe.config) as it requires host instances restart to reflect the changes you make. Ent SSO provides a quick and reliable way to store and retrieve data. However you should be careful for not using this for storing any transactional data as it can be too heavy on the enterprise single sign-on server.
In this blog, we are going to talk about new utility "SSO Configuration Application MMC Snap-In". This snap-in is available for download here.
Here is the overview of the snapin (taken from the documentation):
Currently in Enterprise Single Sign-On (SSO), there are three utilities to perform SSO-based tasks:
- SSOConfig
- SSOManage
- SSOClient
All these tools focus on managing credentials. There has been a lack of tooling for ability to create and manage configuration-based applications. This has now changed with the creation of the SSO Configuration Application MMC Snap-In. This tool provides the ability to add and manage applications, add and manage key value pairs, as well as import and export configuration applications so that they can be deployed to different environments. Also provided is a client-side class that makes accessing the SSO system to retrieve your key/value pairs easy.
The downloaded zip file extracts to 3 another zip files:
- SSOMMCSnapInSetup.zip: Extracts to setup and msi file for installing mmc snapin.
- SSOConfigurationApplicationClientHelper.zip: Extracts to SSOClientHelper.cs that can be used in your application to read the values stored in SSO.
- SSOConfigurationApplicationMSBuildImportTask.zip: Contains MSBuild custom task that can be used to automate the deployment of your applications’ SSO configuration data. All you need to do is export the application and then use the MSBuild task to automatically import it into your environment
Attached screenshot (SSO Application Configuration Snap In Screenshot.png) shows how the snap in looks like after installation. I have created a dummy application called POApplication and a key-value pair in the application called SQLConnectionString.
Please do leave comments, if any questions or issues or suggestions. Thanks!
SQL Server database replication is a set of technolgoes that allows to distribute or copy the schema and data from a database on one server to one or more servers in unidirectional or bidirectional manner. Replication is one of the many ways in which SQL Server provides lets you develop highly available applications. SQL Server 2005 provides 3 types of replication: Snapshot, Transactional and Merge.
Snapsot replication is easiest to understand as it is similar to database backup and restore in a way. Everytime a snapshot replication happens, it copies all the specified articles/ data from publisher to subscribers. Instead of writing only the changed data, snapshot replication rewrites the whole data. This means that you should use this type of replication only when the amount of data is small and rather static.
Transactional replication suites more volatile scenarios and is one of the mostly used replication type. It initially copies the whole set of data and from then onwards copies only the modified data. It uses transaction logs to copy the modified data and keeps the publisher and subscribers in sync.Peer-to-peer transactional replication is a new kind of transactional replication that lets multiple servers subscribe to the same schema and data, permitting simultaneous changes in multiple servers. Limitations of transactinal replication is that it does not allow to change the data in subscribers.
When the solution requires both publisher and subscriber to allow changes and keep them in sync, Merge replication is required. Merge replication does not rely on transaction logs to sync the data, rather in this each server modifies the replicated data.
To replicate the data, SQL Server uses programs called replication agents which are sql server agent jobs. When replication is configured these jobs are automatically created for you. The replications agents include snapshot agent, Log reader agent, distribution agent, merge agent and queue reader agent. All replication types use snapshot agent initially to create the starting copy of the database.
Replication involves 2 types of subscriptions: Push and Pull subscription. In push subscription, distributer is responsible for distributing the data to subscribers. Pull subscriptions run on subscriber servers that retrieve the publications from the distributors.
LINQ (Language integrated Query) is a new feature introduced in .NET Framework 3.5. LINQ makes the job of .Net developers easy for accessing the data in SQL, XML, ADO.Net data sets or any other objects. By using LINQ, a developer gets the ability to write queries within .NET language (e.g. C# or VB.NET) for querying any type of data in efficient and unified manner. The benefits are significant: complie time checking of queries, ability to debug, intellisense etc.
LINQ is divided into following 3 areas:
LINQ to SQL is a component of .NET Framework version 3.5 that provides a run-time infrastructure for managing relational data as objects.
LINQ to XML provides an in-memory XML programming interface that leverages the .NET Language-Integrated Query (LINQ) Framework. LINQ to XML uses the latest .NET Framework language capabilities and is comparable to an updated, redesigned Document Object Model (DOM) XML programming interface.
The term "LINQ to Objects" refers to the use of LINQ queries with any IEnumerable or IEnumerable<(Of <(T>)>) collection directly, without the use of an intermediate LINQ provider or API such as LINQ to SQL or LINQ to XML. You can use LINQ to query any enumerable collections such as List<(Of <(T>)>), Array, or Dictionary<(Of <(TKey, TValue>)>). The collection may be user-defined or may be returned by a .NET Framework API.
Here is the list of reqources available for more information:
Additional samples and/or documentation may be available from the following sources:
-
The LINQ Project site on MSDN for general news and information about LINQ.
-
The Visual Basic Developer Center for the latest news on using LINQ with Visual Basic.
-
The C# Developer Center for the latest version of the C# 3.0 specification and other information.
-
The LINQ forum on MSDN is the best place to post questions related to LINQ.
-
Whitepapers provides a link to whitepapers that provide additional information about LINQ.
Cheers!
Teekam.
Today, during the keynote address at Microsoft TechEd Developers 2007, S. “Soma” Somasegar, corporate vice president of the Developer Division at Microsoft Corp., announced that Microsoft will release Visual Studio 2008 and the .NET Framework 3.5 by the end of November 2007. Find press release
here.
On 6th November, Microsoft announced Search Server 2008 Express, a new addition to enterprise search line up, which includes Microsoft Enterprise Server 2008 and SharePoint 2007 Server. This product includes powerful search features to search the content within an organization and is available for free download. The feature list includes simplicity of installation and ease of use, new security enhanced capabilities that help business connect with wide range of information.
Check the press release for more details on the annoucement.
You can see Search Server 2008 Express demo and download this product at http://www.microsoft.com/enterprisesearch/.
Some of the important performance counters related to memory in SQL Server are:
SQL Server Cache Hit Ratios: A consistent value below 90% indicates that more physical memory is needed on the server.
Memory Object: Available Bytes: On a server dedicated to SQL Server, SQL Server attempts to maintain from 4-10MB of free physical memory. The remaining physical RAM is used by the operating system and SQL Server.
Memory Object: Pages/Sec: Measures the number of pages per second that are paged out from RAM to disk. Higher the value, higher will be I/O activities and will result in decrease in performance. If you have only SQL server application running on the server then in most cases this value should be near zero. However you don’t see much performance degradation until it is 20, when SQL Server is not the only application. Above 20, it is an indication to have more RAM on the server.
SQLServer:Memory Manager: Total Server Memory (KB):Tells you how much memory your SQL Server is currently using.
SQLServer:Memory Manager: Target Server Memory (KB):Tells you howmuch memory SQL Server would like to use to operate efficiently. If the SQLServer:Memory Manager: Total Server Memory (KB) counter is more or equal than the SQLServer:Memory Manager: Target Server Memory (KB) counter, this indicates that SQL Server may be under memory pressure and could use access to more physical memory.
SQL Server Buffer Manager Object: Cache Size (pages): Multiply this value by 8K to get the value of physical RAM devoted to SQL Server data cache. If this value is less than what you expect than SQL Server is starving on the memory and is not utilizing the available physical RAM.
Process: Working Set: shows the amount of memory used by process. If this number is consistently below Min Server Memory and Max Server Memory then SQL Server is configured to use too much memory.
When the system is running out of memory, it will have higher paging and disk I/O. You can measure the Memory: Page Faults/sec counter to make sure that the disk activity is not caused by paging. You can also monitor SQL Server:Buffer Manager:Page reads/sec and SQL Server:Buffer Manager:Page writes/sec performance counters. Check more at: http://msdn2.microsoft.com/en-us/library/ms175903.aspx.
There is a relationship between SQL Server disk I/O and CPU usage. Check the article Monitoring CPU Usage - http://msdn2.microsoft.com/en-us/library/ms178072.aspx for more details.
Following are other very useful articles for troubleshooting SQL Server performance.
SQL Server Memory Monitoring - http://msdn2.microsoft.com/en-us/library/ms176018.aspx. This article also contains the list of performance counters for monitoring SQL Server memory. The Process: Working Set counter shows the amount of memory that is used by a process.
Troubleshooting Performance Problems in SQL Server 2005 - http://www.microsoft.com/technet/prodtechnol/sql/2005/tsprfprb.mspx
Microsoft Popfly (internally code named Springfield) is a web site that allows users to create web pages, program snippets, and mashups using Microsoft Silverlight runtime and a set of online tools provided. Following 3 tools are included in Popfly, based on Silverlight:
- Mashup Creator:Mashup is a web application that combines 2 or more web sites or other sources. For example: you can mash together your pictures and map blocks to create geotagged map of pictures of your choice. Follow the tutorial and create your own mashup here.
Check out my first mash up - Las Vegas by teekam
- Web Creator: As the name suggests this tool can be used to create web page. Web pages can be created without writing any HTML code and can be customized by choosing predefined themes, styles and color schemes. Users mashup can also be embedded in these web pages. These web pages are then saved in each user's popfly space. The user interface layout for web creator is similar to ribbon user interface for office 2007. You can create your own block, online or using Microsoft Visual Web Developer Express 2005 (which is a free download), which you can use in any of the maspups.
Check Teekam's web page on PopFly.
- Popfly Space:Completed mashups and web pages are stored in 25 MB on Popfly space. User get their own customizable popfly profile page and other social networking features such as ability to create your private and public profile, message center, search for people, popular things, forums etc.
Popfly allows users to download mashup as gadgets for Window sidebar or embed them into windows live space with some support for blog service providers.
Another feature is Popfly Explorer, a plugin for Visual Studio Express. This can be used for downloading, and editing mashups. You can upload, share, rate and rip these mashup using this.
Learn more at http://www.popfly.com.
SQL Server 2005 dynamically acquires and frees memory as required. Administrator does not have to specify how much memory should be allocated to SQL Server, although following options exist:
- Standard 32 bit addresses can map a maximum of 4 GB of memory. By default, on 32 bit operating system, 2 GB of this space is reserved for operating system and rest 2 GB is made available to the application.
You can specify a /3gb parameter in boot.ini file of windows server so that operating system only reserves 1 GB for itself and 3GB is allocated to application.
- Using WOW64 (Windows on Windows 64) upto 4 GB virtual address space can be used by SQL Server application. WOW64 is the mode in which 32 bit SQL Server runs on 64 bit operating system.
- SQL Server support Address Windows Extensions (AWE) allowing the use of physical memory over 4 GB on 32 bit versions of MS Windows operating systems. Upto 64 GB is supported.
- Instance of SQL Server running on Windows Server 2000 use static AWE memory allocation. The instances of SQL Server that are running on Windows Server 2003 use dynamic AWE memory allocation.
- Support for AWE only applies to SQL Server 2005 Enterprise, Standard and Developer editions and only applies to 32 bit operating systems. There is no need for this on 64 bit operating systems since the virtual address space limit rises upto 7 terabytes on IA64 architecture and 8 terabytes on X64 architecture.
- If locked pages in memory is granted, it is recommended to set Max Server Memory.
- To support more than 4 GB of physical memory on 32 bit operating system, you must add /pae (physical address extension) parameter to boot.ini file and reboot the computer.
- If there is more than 16 GB of physical memory available on a computer, it requires 2 GB of virtual address space for system purposes and therefore /3gb parameter is not supported in boot.ini file. If the parameter exists then the computer will not use any memory available above 16 GB.
- The Min Server Memory and Max Server Memory configuration options establish minimum and maximum limits to the amount of memory used by the buffer pool of SQL Server Database engine.
For managing memory for large databases, refer to this article.