← Back to Patent Explorer
US5819030A Expired / Lapsed US ⏱️ 0.0 years remaining

System and method for configuring a server computer for optimal performance for a particular server type

Assignee: Microsoft Technology Licensing LLC
•
Filing: 1996-07-03
•
Granted: 1998-10-06
•
Expires: 2016-07-03
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A technique for configuring a server computer using an optimizer program to achieve optimal performance of the server based on the server types supported by the server. Configuration may involve both calculating server configuration parameters and deciding where to place various files used by the server. In order to decide where to place files, the hardware and software characteristics of the server disk drives are analyzed, and a performance table is generated. The disk drive performance data is then input into a series of algorithms of varying complexity to determine the drives where database files should be stored. Information regarding server utilization, the number of host users and the number of users in the organization is received from an administrator. The administrator input is used to calculate configuration parameters. The optimizer program may automatically adjust a plurality of registry parameters, and may automatically move one or more database and log files to the appropriate disk drives. Alternately, the administrator may be prompted to authorize the changes. The optimizer program may also save the changed parameters and locations to a registry log file.

Inventors

  • 👤 John Yun-Kuang Chen
  • 👤 Eric N. Lockard
  • 👤 Darren A. Shakib
  • 👤 Daniel R. Weisman

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-05 14:56
CPC Classifications
G; G06; G06F; G06F9/00; G06F9/06; G06F9/46; G06F9/50; G06F11/00; G06F11/30; G06F11/34; G06F11/3466; G06F11/3485; G06F11/3409; G06F11/3419; Y; Y10; Y10S; Y10S707/00; Y10S707/99951; Y10S707/99952; Y10S707/99953; Y10S707/99956

Claims Analysis

Total Claims: 22
Claim 1
Independent Claim 345 words
In a client server environment where a server computer may be configured to act as any of a plurality of server types, and where the performance of the server computer when acting as any of the server types is determined by various server configuration parameters that can be adjusted to optimize operation for a given server type, a method for configuring the server computer including (1) automatically calculating configuration parameters that are optimized to the specific server types supported by the server computer to improve performance over using a default set of configuration parameters for all server types and (2) placing files used by the server computer on disks that will further increase overall server performance, the method comprising the steps of: querying an administrator for server data, comprising any of the number of users that are expected to be connected to the server, the number of users in the entire organization, the amount of memory specifically allocated for server use, and the particular server types that are to be supported by the server; determining from said server data provided by the administrator and from hardware information obtained directly from the server various server configuration parameters that can be adjusted to optimize operation for the particular server types that are to be supported by the server by performing at least the steps of: calculating a total number of database buffers to be used by at least one software component on the server: and calculating a number of execution threads that can be simultaneously executed by at least one software component on the server; testing the read and write performance of a plurality of disk drives in order to determine the disk drives that are best suited to store various files used by the server in supporting the server types designated by said administrator; determining the capacities of the disk drives: and assigning the server files to specific disk drives based on the results of the read and write performance testing, the storage capacities of the disk drives, and the amount of memory in the server.
Claim 2
Dependent Claim 345 words
In a client server environment where a server computer may be configured to act as any of a plurality of server types, and where the performance of the server computer when acting as any of the server types is determined by various server configuration parameters that can be adjusted to optimize operation for a given server type, a method for configuring the server computer including (1) automatically calculating configuration parameters that are optimized to the specific server types supported by the server computer to improve performance over using a default set of configuration parameters for all server types and (2) placing files used by the server computer on disks that will further increase overall server performance, the method comprising the steps of: querying an administrator for server data, comprising any of the number of users that are expected to be connected to the server, the number of users in the entire organization, the amount of memory specifically allocated for server use, and the particular server types that are to be supported by the server; determining from said server data provided by the administrator and from hardware information obtained directly from the server various server configuration parameters that can be adjusted to optimize operation for the particular server types that are to be supported by the server by performing at least the steps of: calculating a total number of database buffers to be used by at least one software component on the server: and calculating a number of execution threads that can be simultaneously executed by at least one software component on the server; testing the read and write performance of a plurality of disk drives in order to determine the disk drives that are best suited to store various files used by the server in supporting the server types designated by said administrator; determining the capacities of the disk drives: and assigning the server files to specific disk drives based on the results of the read and write performance testing, the storage capacities of the disk drives, and the amount of memory in the server.
Claim 3
Dependent Claim 23 words
The method of claim 1, further comprising the step of saving the server configuration parameters and file locations in a server registry database.
Claim 4
Dependent Claim 38 words
The method of claim 1, further comprising the steps of: creating an optimizer log file; and recording changes made to the server configuration parameters and to the server database and log file locations in the optimizer log file.
Claim 5
Dependent Claim 35 words
The method of claim 1, wherein the step of determining server configuration parameters comprises the step of choosing certain preset parameters based on whether the computer is configured as a single server or a multi-server.
Claim 6
Dependent Claim 38 words
The method of claim 1, wherein the step of determining server parameters comprises the steps of: calculating the total number of buffers required by at least two server database engines: and allocating the buffers between the database engines.
Claim 7
Dependent Claim 66 words
The method of claim 5, wherein the step of calculating the total number of buffers comprises the steps of: determining a RAM value in kilobytes corresponding to the amount of available random-access memory in the server; determining the number of users hosted by the server; and using the RAM value and the number of users to determine the total number of buffers required by the server.
Claim 8
Dependent Claim 19 words
The method of claim 6, wherein the amount of RAM is adjusted depending on the role of the server.
Claim 9
Dependent Claim 31 words
The method of claim 5, wherein the allocating step comprises the steps of: determining the role of the server: and dividing the buffers between the database engines according to an algorithm.
Claim 10
Dependent Claim 28 words
The method of claim 5, wherein a directory service database engine is limited to a maximum amount of buffers depending on the number of users in the organization.
Claim 11
Dependent Claim 26 words
The method of claim 1, wherein the assigning step further comprises the step of prompting the administrator to authorize the file assignments and the calculated parameters.
Claim 12
Dependent Claim 328 words
In a client server environment where a server computer may be configured to act as any of a plurality of server types, and where the performance of the server computer when acting as any of the server types is determined by various server configuration parameters that can he adjusted to optimize operation for a given server type, a computer program product for configuring the server computer including (1) automatically calculating configuration parameters that are optimized to the specific server types supported by the server computer and (2) placing files used by the server computer on disks that will further increase overall server performance comprising: a computer readable medium having computer executable instructions embodied thereon comprising: means for querying an administrator for server data comprising any of the number of users that are expected to be connected to the server the number of users in the organization, the amount of memory allocated for server use and the particular server types that are to be supported by the server; means for determining from at least said server data provided by the administrator various server configuration parameters that can be adjusted to optimize operation for the particular server types that are to he supported by the server comprising: means for calculating a total number of database buffers to be used by at least one software component on the server; and means for calculating a number of execution threads that can be simultaneously executed by at least one software component on the server; means for testing the read and write performance of a plurality of disk drives in order to determine the disk drives that are best suited to store various files used by the server in supporting the server types designated by the administrator; means for determining the capacities the disk drives; and means for assigning the server files to specific disk drives based on the results of the read and write performance testing and storage capacities of the disk drives.
Claim 13
Dependent Claim 328 words
In a client server environment where a server computer may be configured to act as any of a plurality of server types, and where the performance of the server computer when acting as any of the server types is determined by various server configuration parameters that can he adjusted to optimize operation for a given server type, a computer program product for configuring the server computer including (1) automatically calculating configuration parameters that are optimized to the specific server types supported by the server computer and (2) placing files used by the server computer on disks that will further increase overall server performance comprising: a computer readable medium having computer executable instructions embodied thereon comprising: means for querying an administrator for server data comprising any of the number of users that are expected to be connected to the server the number of users in the organization, the amount of memory allocated for server use and the particular server types that are to be supported by the server; means for determining from at least said server data provided by the administrator various server configuration parameters that can be adjusted to optimize operation for the particular server types that are to he supported by the server comprising: means for calculating a total number of database buffers to be used by at least one software component on the server; and means for calculating a number of execution threads that can be simultaneously executed by at least one software component on the server; means for testing the read and write performance of a plurality of disk drives in order to determine the disk drives that are best suited to store various files used by the server in supporting the server types designated by the administrator; means for determining the capacities the disk drives; and means for assigning the server files to specific disk drives based on the results of the read and write performance testing and storage capacities of the disk drives.
Claim 14
Dependent Claim 24 words
The computer program product of claim 11, further comprising means for saving the server configuration parameters and file locations in a server registry database.
Claim 15
Dependent Claim 41 words
The computer program product of claim 11, further comprising: means for creating an optimizer log file; and means for recording changes made to the server configuration parameters and to the server database and log file locations in the optimizer log file.
Claim 16
Dependent Claim 36 words
The computer program product of claim 11, wherein the means for determining server configuration parameters comprises means for choosing certain preset parameters based on whether the computer is configured as a single server or a multi-server.
Claim 17
Dependent Claim 42 words
The computer program product of claim 11, wherein the means for determining server configuration parameters comprises: means for calculating the total number of buffers required by at least two server database engines: and means for allocating the buffers between the database engines.
Claim 18
Dependent Claim 70 words
The computer program product of claim 15, wherein the means for calculating the numbers of buffers comprises: means for determining a RAM value in kilobytes corresponding to the amount of available random-access memory in the server; means for determining the number of users hosted by the server; and means for using the RAM value and the number of users to determine the total number of buffers required by the server.
Claim 19
Dependent Claim 21 words
The computer program product of claim 16, wherein the amount of RAM is adjusted depending on the role of the server.
Claim 20
Dependent Claim 36 words
The computer program product of claim 15, wherein the means for allocating buffers comprises: means for determining the role of the server; and means for dividing the buffers between the database engines according to an algorithm.
Claim 21
Dependent Claim 30 words
The computer program product or claim 15, wherein a directory service database engine is limited to a maximum amount of buffers depending on the number of users in the organization.
Claim 22
Dependent Claim 28 words
The computer program product of claim 11, wherein the means for assigning further comprises means for prompting the administrator to authorize the file assignments and the calculated parameters.

References Cited (Backward Citations)

US5247676A Cited
US5218699A Cited
US5210860A Cited
US5333311A Cited
US5283856A Cited
US5423046A Cited
US5640595A Cited
US5537542A Cited
US5666538A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2001-10-05 2002-04-06 2002-10-06 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2005-10-05 2006-04-06 2006-10-06 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2009-10-05 2010-04-06 2010-10-06 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag