Capacity Functions
Use the following functions to determine capacity chargebacks:
listChargebackByLUNSummary
This function provides the capability for listing capacity chargebacks by LUNs.
FUNCTION listChargebackByLUNSummary(
userID,
listOfHosts,
listOfDomains,
listOfArrays,
listOfHostGroups,
cascade)
This function returns a list of hosts and related chargeback policy data, similar to what is displayed in the Chargeback By Host report.
Note that in the SQL Template Designer query, the function name must be prefaced with: srm_rtd.
Example Query:
SELECT * FROM table (srm_rtd.listChargebackByLUNSummary(100000,
numberListType(),
numberListType(),
numberListType(),
numberListType(${serverGroups}),
1))
Specify the following arguments:
Argument Name | Description |
userId | Number |
listOfHosts | numberListType Example: numberListType(1,2,3) |
listOfDomains | numberListType Example: numberListType(1,2,3) |
listOfArrays | numberListType Example: numberListType(1,2,3) |
listOfHostGroups | numberListType Example: numberListType(1,2,3) |
cascade | Specify 1 to designate that you want to cascade through the host group hierarchy; Otherwise, set to 0. |
This function returns rows that contain: host ID, host name, policy ID, policy name, unit cost, total GB, total cost.
listChargebackByLUNDetail
This function provides the capability for listing capacity details for chargebacks by LUNs.
FUNCTION listChargebackByLUNDetail(
userID,
listOfHosts,
listOfDomains,
listOfArrays,
listOfHostGroups,
cascade,
listOfPolicy)
This function returns a list of each host LUN chargeback policy. This is the detail that would be available as a drill down from the
Chargeback By Host report. See also,
listChargebackByLUNSummary.
Chargeback in Cluster and Virtualization Environments
• In a cluster environment, if multiple hosts share a LUN, only one host will be charged.
• In virtualization environments, all VMs share the same capacity from the ESX server, so this function will return an estimation (calculated) for each LUN and for the ESX server, it will return the total capacity of the LUN.
• The following example shows the ESX server last in the list.
Host Name LUN ID Capacity
HQmkting1 133200 20
HQsales1 133200 10
HQfinance1 133200 10
HQesx10 133200 510
Example Query:
Note: In the SQL Template Designer query, the function name must be prefaced with: srm_rtd.
SELECT *
FROM table (srm_rtd.listChargebackByLUNDetail(100000,
numberListType(),
numberListType(),
numberListType(),
numberListType(${hostGroups}),
1,
numberListType()
))
Specify the following arguments:
Argument Name | Description |
userID | Number |
listOfHosts | numberListType Example: numberListType(1,2,3) |
listOfDomains | numberListType Example: numberListType(1,2,3) |
listOfArrays | numberListType Example: numberListType(1,2,3) |
listOfHostGroups | numberListType Example: numberListType(1,2,3) |
cascade | Specify 1 to designate that you want to cascade through the host group hierarchy; Otherwise, set to 0. |
listOfPolicy | numberListType Example: numberListType(1,2,3) |
This function returns rows that contain: host ID, host name, policy ID, policy name, storage array ID, storage array name, LUN ID, LUN name, unit cost, total GB, total cost.
listChargebackCatByLUNSummary
This function provides the capability for listing capacity chargebacks by LUNs by category; for example, for each storage tier, list the capacity chargeback. This function provides much of the same data that is displayed in the Chargeback Policy Capacity report.
FUNCTION listChargebackCatByLUNSummary(
userID,
listOfDomains,
listOfArrays)
Note that in the SQL Template Designer query, the function name must be prefaced with: srm_rtd.
Example Query
SELECT * FROM table (srm_rtd.listChargebackCatByLUNSummary(100000,
numberListType(),
numberListType()
))
Specify the following arguments:
Argument Name | Type | Length | Description |
userId | Number | | |
listOfDomains | | | numberListType Example: numberListType(1,2,3) |
listOfArrays | | | numberListType Example: numberListType(1,2,3) |
This function returns rows that contain: policy ID, policy name, policy ID, unit cost, total KB, unallocated KB, allocated KB, HDP capacity KB, non-HDP capacity KB, HDP free capacity KB, array group capacity KB, array group used KB, array group available KB, array group virtual capacity KB, array group PDEV capacity KB.
listChargebackCatByLUNDetail
This function provides the capability for listing capacity chargebacks by LUNs for array capacity (without regard to host usage). This function provides much of the same data that is displayed in the Chargeback Array Capacity report.
FUNCTION listChargebackCatByLUNDetail(
userID,
listOfDomains,
listOfArrays,
listOfPolicy)
Note that in the SQL Template Designer query, the function name must be prefaced with: srm_rtd.
Example Query
SELECT *
FROM table (srm_rtd.listChargebackCatByLUNSDetail(100000,
numberListType(),
numberListType(),
numberListType()
))
Specify the following arguments:
Argument Name | Type | Length | Description |
userId | Number | | |
listOfDomains | | | numberListType Example: numberListType(1,2,3) |
listOfArrays | | | numberListType Example: numberListType(1,2,3) |
listOfPolicy | | | numberListType Example: numberListType(1,2,3) |
This function returns rows that contain: storage array ID, array name, policy ID, policy name, unit cost, total KB, unallocated KB, allocated KB, HDP capacity KB, non-HDP capacity KB, HDP free capacity KB, array group capacity KB, array group used KB, array group available KB, array group virtual capacity KB, array group PDEV capacity KB.