Faster and more space efficient backup for Microsoft SQL Server

Technical white paper
Faster and more space efficient
backup for Microsoft SQL
Server databases
HP StoreOnce Plug-in for Microsoft SQL Server
Table of contents
Executive summary ..............................................................................................................................................................2
Introduction to Microsoft SQL Server backup and restore............................................................................................... 3
HP StoreOnce Backup systems—key features and benefits ..........................................................................................4
Introducing HP StoreOnce Catalyst.................................................................................................................................4
HP StoreOnce Plug-in for Microsoft SQL Server ...............................................................................................................4
Configuration guidance ....................................................................................................................................................5
Creating multiple backup copies .....................................................................................................................................7
Using Federated Catalyst stores .....................................................................................................................................7
Using Fibre Channel connection to Catalyst stores ......................................................................................................7
Password protected access to Catalyst stores for added security.................................................................................7
HP StoreOnce Plug-in for Microsoft SQL Server in action ................................................................................................9
Backup with MIRROR TO clause—monitoring performance .................................................................................... 10
Automating daily tasks .................................................................................................................................................. 13
Viewing backups on the Catalyst store ....................................................................................................................... 14
Point-in-time restore..................................................................................................................................................... 14
Performance ....................................................................................................................................................................... 15
Known limitations .............................................................................................................................................................. 18
Summary ............................................................................................................................................................................. 19
Appendix A—HP StoreOnce Catalyst overview .............................................................................................................. 19
Supported device types ................................................................................................................................................. 19
StoreOnce Catalyst terminology and summary features ......................................................................................... 19
Click here to verify the latest version of this document
Technical white paper | HP StoreOnce Plug-in for Microsoft SQL Server
Executive summary
Organizations worldwide run Microsoft® SQL Server databases to support their mission-critical applications. The two main
concerns from a backup perspective in SQL Server database environments are high data growth rates and shrinking backup
windows. HP StoreOnce Backup appliances provide highly efficient deduplicating storage that is accessed using virtual tape,
NAS, CIFS and NFS, and HP StoreOnce Catalyst device types. HP StoreOnce Catalyst is purpose-designed for backup and
recovery workflows, without the overheads and limitations of general purpose protocols, and as a result is the highest
performing and most configurable of these device types. Using a Catalyst-capable backup application software or an
HP StoreOnce Plug-in, the reduction of duplicate backup data can be executed at the database server (source-side
deduplication) to reduce network bandwidth requirements for backup and enable faster backups. For added data protection,
deduplication-optimized replication of backups can also be configured.
The HP StoreOnce Plug-in for Microsoft SQL Server enables direct backup of SQL Server databases to Catalyst stores with
faster throughput and greater deduplication ratios than other backup solutions, thus helping to solve the issues associated
with high data growth rates and shrinking backup windows for Microsoft SQL Server databases.
In many organizations, a key role of the MS SQL Server database administrators (DBAs) is to manage the availability of the
databases. A DBA who is responsible for database availability should be able to rely on backups as the last resort, during
any disaster event, to restore lost or corrupt data. Failing to have reliable backups can cost the DBA his or her job. To avoid
this situation, the DBA should have total visibility into the control of backup and disaster recovery (DR) processes without
involving the backup administrator. The StoreOnce Plug-in for MS SQL empowers DBAs to manage the entire backup,
recovery, and DR process using standard MS SQL BACKUP and RESTORE T-SQL commands. Today, MS SQL DBAs generally
use local disks or CIFS shares as the target device for backups. This paper describes the many advantages of using
HP StoreOnce Catalyst as the target device for MS SQL Server backups. In summary, these benefits are:
• Improved backup throughput by means of:
– Catalyst protocol, which is more efficient than the CIFS protocol
– Distributing the deduplication load across several MS SQL Servers rather than having the single backup target doing all
the deduplication processing
– Automatic selection of the optimal number of output streams, based on the number of data files in the database
• Improved storage savings by means of the HP intelligent processing included in the plug-in.
• Low-bandwidth backups significantly reduce the bandwidth that is used, HP testing has shown (up to 98 percent less
bandwidth used compared to regular backups).
• Use of syntaxes for BACKUP/RESTORE DATABASE/LOG commands very similar to their T-SQL equivalent, placing the DBA
in his or her comfort zone.
• Up to three additional copies of the backup can be made using MS SQL “MIRROR TO” directive and sent to DR sites.
• Supported on 64-bit (x64) versions of MS SQL Server 2008, 2012, and 2014, under 64-bit (x64) versions of
Windows Server® 2008 and 2012.
• The HP StoreOnce Plug-in for Microsoft SQL Server is free of charge and downloadable from hp.com/go/softwaredepot.
Usage notes:
• When using the StoreOnce Plug-in for MS SQL Server note that consideration needs to be given to the additional CPU
requirements on the MS SQL Server to support the StoreOnce Catalyst Plug-in, and if configured, source-side
deduplication. When using source-side deduplication, a large part of the deduplication is done on the SQL Server itself.
• An HP StoreOnce Catalyst license must be purchased and installed on the StoreOnce appliance hosting the target Catalyst
store in order for the plug-in to write to the target appliance.
• The plug-in works with databases of any size, but is tuned for large databases with many data files located on different
partitions or mount points.
2
Technical white paper | HP StoreOnce Plug-in for Microsoft SQL Server
The HP StoreOnce Plug-in for Microsoft SQL Server concept is shown in figure 1.
Figure 1. HP StoreOnce Plug-in concept
Target audience: This white paper is intended to assist MS SQL Server administrators who are responsible for backups as
part of their responsibility for database availability. They prefer generally to use the standard MS SQL Server tools such as
SQLCMD or SQL Maintenance Tasks to back up directly to disk or NAS share and maintain total control of the entire MS SQL
Server environment. However, this may not make optimal use of the backup storage or backup window available.
Using the HP StoreOnce Plug-in for Microsoft SQL Server, the DBA can achieve improved backup performance, using lower
bandwidth with higher deduplication ratios to save on network and storage costs and to get the backups finished faster.
This white paper describes how this technology works and how to take advantage of it.
Assumptions: The bulk of this white paper assumes a working knowledge of Microsoft SQL database structures,
BACKUP/RESTORE DATABASE/LOG T-SQL syntaxes, and HP StoreOnce Catalyst. For those not familiar with MS SQL Server
BACKUP/RESTORE syntaxes, the user guide lists the available options.
Introduction to Microsoft SQL Server backup and restore
Microsoft SQL Server contains all the components needed to run backup and restore of databases and transaction logs.
By using SQL Maintenance Tasks or scripting SQLCMD, DBAs can back up to local disks or CIFS shares. MS SQL Server also
contains an application programming interface (API) able to integrate backup and restore operations into third-party backup
software such as HP Data Protector or Symantec NetBackup. This interface is called Virtual Backup Device Interface (VDI)
and comes built-in with all recent versions of MS SQL Server.
The HP StoreOnce Plug-in for MS SQL Server is integrated with MS SQL Server the same way as a third-party software. It
uses VDI to submit backup and restore commands to MS SQL Server. It then handles the stream and writes or reads it to or
from a Catalyst store.
The command the DBA specifies to start a backup to a Catalyst store is very similar to the T-SQL command the DBA
would use to run a backup from SQL Management Studio (or SQLCMD) to a CIFS share. For example:
Backup to a CIFS share:
BACKUP DATABASE model TO DISK=“\\StoreOnce1\SQL\model_2014-08-01_134532.bak” WITH
MAXTRANSFERSIZE=4194304, CHECKSUM
Backup to a Catalyst store using the plug-in:
BACKUP DATABASE model TO STORE=“StoreOnce1/SQL” WITH MAXTRANSFERSIZE=4194304, CHECKSUM
3
Technical white paper | HP StoreOnce Plug-in for Microsoft SQL Server
The main differences between the two solutions are:
• The “TO DISK=” becomes a “TO STORE=.”
• You do not specify the backup name when using the plug-in. A unique name containing the server name, instance name,
DB name, and timestamp is generated.
HP StoreOnce Backup systems—key features and benefits
HP StoreOnce deduplication—store more data on disk
HP StoreOnce deduplication reduces the disk space required to store backup data sets without impacting backup
performance. Retaining more backup data on disk longer, enables greater data accessibility for rapid restore of lost or
corrupt data and reduces downtime. Deduplication ratios are strongly influenced by two factors—data change rate and
backup data retention periods. Low data change rates and data retained for longer periods of time yield higher
deduplication ratios.
Deduplication-enabled replication
HP StoreOnce deduplication is the technology enabler for HP StoreOnce deduplication-enabled replication, which allows
fully automated replication over low-bandwidth links to a DR site, giving remote office/branch office (ROBO) and small data
centers a cost-effective DR solution. Deduplication-enabled replication is fully supported in the plug-in when the backup is
run with one or more “MIRROR TO STORE=” clause.
Rapid restore of data for dependable, worry-free data protection
HP StoreOnce appliances offer immediate access to backups for rapid restores. HP StoreOnce deduplication allows more
data to be stored closer to the data center for longer periods of time, which offers immediate access for rapid restores.
A lot of design considerations have gone into achieving high restore performance from the HP StoreOnce Backup systems.
HP Data Assurance technology—adding checksums at key stages of the deduplication process enables very high levels of
data integrity.
Simplify and improve the backup process
HP StoreOnce appliances can back up multiple servers via a standard Ethernet or Fibre Channel (FC) network simultaneously
to a disk-based solution at peak speeds of up to 137 TB/hr, for the largest appliance, meaning that substantially reduced
backup windows are possible.
HP StoreOnce appliances can be intuitively managed and configured using the browser-based administrative interface.
HP StoreOnce systems are largely self-managing backup appliances that require little routine maintenance. Unlike other
disk-based storage devices, HP StoreOnce systems do not require virus protection or LUN provisioning.
Introducing HP StoreOnce Catalyst
HP StoreOnce Catalyst is a purpose-designed backup and recovery device type. It can be accessed over Ethernet or FC.
StoreOnce Catalyst targets are recommended for large and complex data-protection environments where highest
performance and flexibility of data movement is required. StoreOnce Catalyst can increase backup speeds and reduce
backup load on the network by configuring distributed deduplication processing to enable operation in low-bandwidth
mode. The same duplication-optimized data transmission enables highly efficient movement of backup data between
StoreOnce appliances for added resiliency to potential data loss incidents. For more details, see appendix A.
HP StoreOnce Plug-in for Microsoft SQL Server
HP StoreOnce Plug-in for Microsoft SQL Server delivers control of MS SQL backup and disaster recovery, enabling DBAs to have
confidence in self-administered recovery from the local or the DR site—without dependence on a backup administrator.
In addition, the HP StoreOnce Plug-in for Microsoft SQL Server provides accelerated backup performance over traditional
CIFS disk targets. When used across large numbers of MS SQL application servers each performing source-side
deduplication, the combined effect of distributing the deduplication processing enables faster backup throughput, provided
the application servers themselves are sized correctly.
4
Technical white paper | HP StoreOnce Plug-in for Microsoft SQL Server
Figure 2 shows the two modes of operations that underpin this technology when the plug-in is installed on the MS SQL
Server. Referred to as target-side deduplication (high-bandwidth backup) or source-side deduplication (low-bandwidth
backup), both modes feature intelligent MS SQL Server data processing where the format of the MS SQL Server backup
stream is understood and optimized by the plug-in to increase space saving and backup speed. In target-side deduplication,
all the deduplication processing takes place on the HP StoreOnce appliance with all the backup data transferred across the
network. In source-side deduplication, (low-bandwidth mode) the majority of the deduplication process is performed on the
MS SQL Server itself and only unique chunks of backup data are sent over the network to the HP StoreOnce appliance, with
significant savings on network bandwidth.
HP recommends using the low-bandwidth mode on Catalyst stores used with the HP StoreOnce Plug-in for MS SQL Server.
Using low-bandwidth mode deliver significantly faster backup and improved space savings for many use cases.
Figure 2. HP StoreOnce Plug-in for MS SQL Server—how it works
The HP StoreOnce Plug-in for Microsoft SQL Server v1 is supported on:
• Database servers: x64 versions of SQL Server 2008, 2008 R2, 2012, 2014
• Operating systems: x64 versions of Windows Server 2008 SP2, 2008 R2, 2012, 2012 R2
For backup to Catalyst device types:
• All StoreOnce appliances with StoreOnce 3.9 or newer software
For the latest compatibility information, please refer to hp.com/go/ebs.
Configuration guidance
The HP StoreOnce Plug-in for Microsoft SQL Server is optimized to back up large databases using multiple data files located on
different partitions or mount points, as recommended by the Microsoft best practices for mission-critical databases.
The plug-in automatically splits the backup stream generated by the SQL Server into several Catalyst items, all copied in
parallel to the StoreOnce appliance. By default, the plug-in creates N+2 output items in the Catalyst store, where N is the
number of data files in the database. Unless the backup targets a StoreOnce appliance with a maximum concurrent stream
count less than N+2, it is recommended to use the default value. Should you need to decrease the value, for example, to
back up a StoreOnce virtual storage appliance (VSA), the parameter –maxstreams=n can be specified. Note, however, that a
lower value does impact negatively the backup performance and deduplication ratio.
5
Technical white paper | HP StoreOnce Plug-in for Microsoft SQL Server
To increase backup throughput performance and storage space savings, the following guidelines should be followed:
• Set the Catalyst store with “Primary (default) transfer policy: Low bandwidth” (Be careful, it’s not the default when
creating new Catalyst stores). This mode enables the deduplication load to be split between the database server and the
StoreOnce appliance. The amount of data to be transferred between the SQL Server and the StoreOnce application is
consequently decreased significantly. The low-bandwidth mode also makes possible internal optimization for better
performance not available with the high-bandwidth mode.
• Run the SQL backup with a large value of the SQL parameter maximum transfer size, for example,
“WITH MAXTRANSFERSIZE=4194304.”
• Do not specify any value for the parameter –maxstreams. Leave the plug-in to compute a default value.
Backup throughput
Figure 3. Effect of multiplexing on throughput using a SQL Server database with 8 data files
0
1
2
3
4
5
6
maxstreams not set
7
8
9
10
Full backups
maxstreams=6
11
12
13
14
maxstreams=3
Note
The plug-in does not support more than one output device as it already splits the stream into several Catalyst items.
Therefore, do not attempt to specify multiple output devices to the SQL BACKUP command.
The first backup of a database is generally slower than subsequent backups. This is because it is likely that all or most of the
chunks that make up the first backup do not exist in the Catalyst store, so have to be compressed and transmitted to the
StoreOnce appliance. As more backups are written to the Catalyst store, it is likely that more duplicate chunks can be
identified so fewer unique chunks have to be compressed and transmitted making the backups faster. It is the same when
backup copies are configured. The first time a copy is made it is likely that the copy requires more data to be transmitted
and takes significantly more time than subsequent copies.
Encryption and compression
As usual, when sending backups to deduplication capable devices, it is recommended not to compress or encrypt backups
upstream of deduplication, as this can generate unique data for every backup, thus significantly reducing the backup
throughput and deduplication ratio. StoreOnce does compress backups, to reduce space usage, but it does so after unique
chunks have been identified so deduplication efficiency is not reduced. For database backups that need to be encrypted, the
StoreOnce Security Pack option enables on disk encryption and data-in-flight encryption.
Using scripts to automate backups
To automate backups, scripts need to be written using the StoreOnce Plug-in for SQL Server commands, typically using
Microsoft PowerShell. To initiate the scripts, the Windows® Scheduler is used.
6
Technical white paper | HP StoreOnce Plug-in for Microsoft SQL Server
Creating multiple backup copies
The HP StoreOnce Plug-in for Microsoft SQL Server also supports the “MIRROR TO” SQL option to create up to four copies of
the backup (including the primary or local copy). These copies can be copied over a WAN to remote sites because in
low-bandwidth mode only unique data is sent across the network. An initial “seeding” backup or copy to all locations is
required, but this is a one-off occurrence during the first backup.
When a TO STORE=“StoreOnce1/Store1”, MIRROR TO STORE=“StoreOnce2/Store2” is specified, the plug-in first
executes a backup to StoreOnce1/Store1, and then instructs the StoreOnce1 to make a copy of this backup to
StoreOnce2/Store2. The program exits only when all copies are done.
Up to three MIRROR TO STORE can be specified, for a total of four copies of a backup.
Using Federated Catalyst stores
Federated Catalyst stores can be created on StoreOnce multi-node appliances. A Federated Catalyst store is of value when
large databases are being protected by backup to a multi-node StoreOnce appliance, and for ease of management, a larger
backup target is possible with a single Catalyst store. The recommendation for regular Catalyst store is not to grow the
store bigger than the capacity of a single node. A Federated Catalyst store can logically combine capacity from up to eight
nodes to create a much bigger backup device. To the DBA, the best practices for using the device and the resulting
performance characteristics of a Federated Catalyst store are the same as a regular Catalyst store.
Using Fibre Channel connection to Catalyst stores
The configuration is very similar when backing up over Fibre Channel as when backing up over Ethernet. The difference is
that a Catalyst over Fibre Channel (CoFC) identifier is used, instead of a Catalyst over Ethernet (CoE) identifier to specify the
target Catalyst device. The following example demonstrates a backup of the database model to the Federated Catalyst
store TC-SQL, using the CoFC identifier of one of the StoreOnce appliances:
“C:\Program Files\Hewlett-Packard\StoreOnce\isvsupport\sql\bin\HPStoreOnceForMSSQL.exe” -backup “BACKUP
DATABASE [model] TO STORE=‘COFC-hp441ea13cb1da01/TC-SQL’ WITH MAXTRANSFERSIZE=4194304, CHECKSUM”
-tag=TestingCoFCandFederatedCatalyst
As described previously, the HP StoreOnce Plug-in for Microsoft SQL Server supports writing backups over Fibre Channel to
Catalyst and Federated Catalyst stores. There is a restriction that Catalyst stores and Federated Catalyst stores accessed
over Fibre Channel cannot be the target of a Catalyst-inbound copy jobs. In other words, a Fibre Channel connection can be
used in a TO STORE clause, but cannot be used in a MIRROR TO STORE clause.
Password protected access to Catalyst stores for added security
To reduce the risk of unauthorized access to the SQL Server backup data user names and passwords can be configured to
control access to the backup targets (Catalyst stores) and simple scripts used to leverage Windows Credential Manager to
securely store the usernames and passwords. The StoreOnce appliance administrator will configure the Catalyst store with
the access credentials. The SQL Server Administrator can use the sample scripts below to integrate the access credentials
with Windows Credential Manager.
Catalyst Client Access Permissions
In many organizations, the administrator of the StoreOnce appliance will not be the DBA. StoreOnce Administrator rights are
required to create the Catalyst store that will be used as the backup target for the SQL Server backups. The Administrator
can set Client Access Permissions at the time the Catalyst store is created. The client (username) and password are assigned
in the Clients tab of the Catalyst Configuration GUI page (figure 4). For use with the StoreOnce Plug-in for SQL Server all the
permissions options should remain unchecked. The username, password, appliance location and store name are shared
with the SQL Server DBA to enable access to the backup target. If a user name and password is not set, all Catalyst clients
will be able to access the Catalyst Store.
7
Technical white paper | HP StoreOnce Plug-in for Microsoft SQL Server
Figure 4. The StoreOnce appliance administrator creates a Client (SQL_DBA) for the database administrator to use and enables access to
the backup target (Store_1)
Using Windows Credential Manager to manage user names and passwords
The following PowerShell code samples are an example of how to use Windows Credential Manager to store usernames and
passwords that the plug-in requires to access password protected Catalyst stores. Two scripts are required as in the
example below. This example uses a file called “credentials.txt.”
Note
Using Windows Credential Manager will protect your Catalyst store access details from all the Windows accounts except
those with “Administrator” Privileges.
Sample script 1: Store username and password in a secure text file
This script is run once, before starting backup operations, per DBA (username and password pair) to generate a secure file
to store the credentials. Running this script will prompt the user to enter the credentials of the store (username and
password) via the Windows Credential Manager Dialogue box. The script will convert the username to a secure string and
the username and password will be stored securely in the specified file. It is not necessary to convert the password to a
secure string since the Windows credentials object already stores the password as a secure string. The sample code for
script 1 is in figure 5.
Figure 5. Script example to write backup target credentials to a secure file
$FileString = “C:\credentials.txt”
$Credential = Get-Credential
# With the following command, we get the username in a secure string
$username = convertto-securestring $Credential.username -asplaintext -force
$password = $Credential.Password
# To save username and password to file
$username | ConvertFrom-SecureString | Set-Content $FileString
$password | ConvertFrom-SecureString | Add-Content $FileString
Note
If the DBA loses the Windows Credential Manager account, the username and password are not recoverable. In this case the
script 1 will need to be rerun.
8
Technical white paper | HP StoreOnce Plug-in for Microsoft SQL Server
Sample script 2: Access the username and password
This is integrated with any script that will access a backup target that is password protected. The script in figure 6 reads the
secure file created by the script in figure 5 and converts the secure string back to plain text. The username and password
extracted from the file are passed as parameters in the backup script. The username and password are passed as plain text
but no other user will be able to convert the entries in the file to plain text because only the Windows user who created the
file can access the credentials. The process must be executed for each password protected backup.
Figure 6. Sample backup script including access to Catalyst Store credentials stored in a secure file
$FileString = “C:\credentials.txt”
# Get credentials from file
$credentials = Get-Content $FileString | ConvertTo-SecureString
# Separate user name and password (username is line 1 whereas password is stored in line 2)
$username = convertfrom-securestring -securestring $credentials[0]
$password = convertfrom-securestring -securestring $credentials[1]
# Convert username and password which are currently stored as secure string into plain text.
$PlainTextUserName =
[Runtime.InteropServices.Marshal]::PtrToStringAuto([Runtime.InteropServices.Marshal]::SecureStringToBSTR( (ConvertToSecureString $username) ))
$PlainTextPassword =
[Runtime.InteropServices.Marshal]::PtrToStringAuto([Runtime.InteropServices.Marshal]::SecureStringToBSTR( (ConvertToSecureString $password) ))
# This script needs to be in the folder where “HPStoreOnceForMSSQL.exe” is located
.\HPStoreOnceForMSSQL.exe -backup “BACKUP DATABASE [master] TO
STORE='$PlainTextUserName`:$PlainTextPassword@123.45.67.89/Store_1' WITH MAXTRANSFERSIZE=4194304,
CHECKSUM”
HP StoreOnce Plug-in for Microsoft SQL Server in action
This section illustrates how the plug-in can be used with the following example tasks:
• Backup of a database to a local StoreOnce—The backup is then copied to another StoreOnce at the central site.
• Monitoring performance.
• Automating daily tasks.
• A point-in-time restore, using Full, Differential, and Transaction Log backups.
Note
The following examples contain performance information that was achieved with the following configuration:
Host details:
• HP ProLiant Server DL380 G6 with Windows 2008 R2 Enterprise edition
• 2.33 GHz CPU
• 32 GB RAM
• QLogic 8 Gb Fibre Channel HBA
• Emulex NC552SFP 10GbE NIC
• SQL Server 2012
9
Technical white paper | HP StoreOnce Plug-in for Microsoft SQL Server
Storage details:
• HP 8400 Enterprise Virtual Array (EVA)
Switch details:
• HP SN6000 Fibre Channel Switch
• HP 5920AF-24XG 10GbE Ethernet switch
Backup target details:
• HP StoreOnce B6200
• HP StoreOnce 2620 iSCSI Backup Storage
Backup with MIRROR TO clause—monitoring performance
A Full backup of the database SuperCADB is sent to two Catalyst stores on two different devices. The first one, at address
16.213.21.98, is a local StoreOnce. The second device, at address 16.24.164.142, is a remote StoreOnce at the central site.
A tag is specified in the backup command so that these backups can then be easily recognized when browsing the content
of the stores.
Note
This example includes extracts from the plug-in output that shows a very high deduplication ratio. This was achieved using
backups where the database was pretty much unchanged between backups. Should the database be subject of a large
amount of changes, a lower deduplication ratio and backup throughput may be observed.
The monitoring example uses the StoreOnce appliance GUI. To access this, the DBA requires user access rights to the
StoreOnce appliance.
“C:\Program Files\Hewlett-Packard\StoreOnce\isvsupport\sql\bin\HPStoreOnceForMSSQL.exe” -backup “BACKUP
DATABASE [SuperCADB] TO STORE=‘16.213.21.98/SQL’ MIRROR TO STORE=‘16.24.164.142/FC-SQL’ WITH
MAXTRANSFERSIZE=4194304, CHECKSUM” -tag=SpecialBackupBeforeMigration
Processed 765712 pages for database “SuperCADB”, file “SuperCADB01” on file 1.
Processed 793016 pages for database “SuperCADB”, file “SuperCADB02” on file 1.
Processed 796064 pages for database “SuperCADB”, file “SuperCADB03” on file 1.
Processed 821960 pages for database “SuperCADB”, file “SuperCADB04” on file 1.
Processed 840152 pages for database “SuperCADB”, file “SuperCADB05” on file 1.
Processed 853848 pages for database “SuperCADB”, file “SuperCADB06” on file 1.
Processed 879784 pages for database “SuperCADB”, file “SuperCADB07” on file 1.
Processed 903992 pages for database “SuperCADB”, file “SuperCADB08” on file 1.
Processed 2 pages for database “SuperCADB”, file “SuperCADB_log” on file 1.
BACKUP DATABASE successfully processed 6654530 pages in 79.119 seconds (657.092 MB/s).
10
Technical white paper | HP StoreOnce Plug-in for Microsoft SQL Server
Backup Completed in 83 Seconds...
Database
: SuperCADB
Type
: DB_FULL
Name
: S=CBCSRV19;I=DEFAULT;DB=SuperCADB;TS=2014-10-16T13:56:58.151;T=DB_FULL;V=1;ID=6BC84D2E7AAB-4D9A-8C9F-07AA6C418789;TAG=SpecialBackupBeforeMigration;
Copied
: 51992.198 MB
Stored
: 348.065 MB
Disk Space Saving : 99.331%
Bytes Transmitted : 143.715 MB
Virtual Bandwidth : 626.412 MB/s
Actual Bandwidth : 1.732 MB/s
Bandwidth Saving : 99.724%
Mirror to
: 16.24.164.142/FC-SQL (progress updated every 1 GB)
Completed in 129 Seconds...
Copied
: 51992.647 MB
Stored
: 259.116 MB
Disk Space Saving : 99.502%
Bytes Transmitted : 143.972 MB
Virtual Bandwidth : 403.044 MB/s
Actual Bandwidth : 1.116 MB/s
Bandwidth Saving : 99.723%
While the operations are running, the “Activity Window” on the first StoreOnce shows the device receiving the backup at
more than 600 MB/s, and then the Catalyst copy jobs replicating the backup to the second StoreOnce. The speed at which
these operations are executed depends on various factors, such as the network speed, the load on the StoreOnce, and the
deduplication ratio (Chunks that are part of previous backups do not need to be transmitted again).
11
Technical white paper | HP StoreOnce Plug-in for Microsoft SQL Server
Figure 7. Monitoring performance using the StoreOnce appliance graphical interface
Since the parameter “maxstreams” has not been specified in the command line, the plug-in automatically selected one
stream or item per data file in the DB, plus two control streams or items. These Catalyst items are all accessed in parallel
during backups, restores, or Catalyst copies. These Catalyst objects are visible on both the first and the second StoreOnce
under the tab “Item Summary.”
12
Technical white paper | HP StoreOnce Plug-in for Microsoft SQL Server
Figure 8. Items stored in an HP StoreOnce Catalyst store, as viewed in the StoreOnce appliance graphical interface
In addition to this, the backup to the first StoreOnce leaves traces in the tab “Data Jobs”; and the Catalyst copies leave trace
in the tabs “Outbound Copy Jobs” and “Inbound Copy Jobs”, respectively on the first and second StoreOnce.
Automating daily tasks
Daily operations generally include two tasks:
1.
Regular backups—Typically, database backups are run once per day, and Transaction Log backups are executed once
every n hours.
2.
Deleting expired backups—Usually, expired backups are deleted after a new successful backup.
These two tasks can be automated with scripts, scheduled at regular intervals using the Windows Scheduler. To write the
scripts, it is recommended to use PowerShell, which includes all the needed components:
• The assembly Microsoft.SqlServer.SMO can be used to enumerate the databases running under a specific server
or instance.
• The SMO object pointing to a database has many properties that can be used to test if the database is accessible
(.IsAccessible), is a system database (.IsSystemDatabase), and requires a Transaction Log backup (.RecoveryModel).
• PowerShell supports lists (collections) that can be used to manage include and exclude lists. For example, the database
tempdb cannot be backed up and should be part of the exclude list.
• Variables of type date have a property .ToString(‘dddd’) that can be used to identify the day of the week, allowing for
example, a Full backup on Friday and Differential backups on the other days of the week.
• The optional qualifier “-tag=name” should be used during backups, so that backups of different types, for example,
weekly and monthly, can then be distinguished and expired with different retentions.
• To expire backups, the output of the “-list –tag=name –date-end=date&time” command should be processed, the backup
names extracted, and the backups deleted with the “–delete” command.
• The executable HPStoreOnceForMSSQL.exe returns a status code that can be tested with the variable $LASTEXITCODE.
13
Technical white paper | HP StoreOnce Plug-in for Microsoft SQL Server
Viewing backups on the Catalyst store
To see which backups exist on a specific Catalyst store, use the SQL Catalyst Plug-in with the –list option. For example:
PS C:\Program Files\Hewlett-Packard\StoreOnce\isvsupport\sql\bin> ./HPStoreOnceForMSSQL.exe -list
-store=“10.1.2.151/Backups”
2015-01-27 15:40:14 S=SKYSQL;I=DEFAULT;DB=RealDB_8;TS=2015-01-27T15:40:13.965;T=LOG;V=1;
ID=EE76DBB5-44D7-4715-AEB7-9B375C0BEC12;
2015-01-27 15:34:34 S=SKYSQL;I=DEFAULT;DB=RealDB_8;TS=2015-01-27T15:34:34.480;T=DB_FULL;V=1;
ID=135CBE4C-DA3E-4E8D-94BD-21381D131486;
2015-01-27 15:31:23 S=SKYSQL;I=DEFAULT;DB=RealDB_8;TS=2015-01-27T15:31:23.515;T=DB_DIFF;V=1;
ID=2A9B68A5-E890-43CE-A7DD-6EA75F421B88;
2015-01-12 15:01:18 S=SKYSQL;I=DEFAULT;DB=RealDB_5;TS=2015-01-12T15:01:18.029;T=DB_FULL;V=1;
ID=D6F2D62B-F489-41A5-AACC-68F92A04AB88;
The above example shows a log, full and differential backup of the RealDB_8 database and a full backup of database
RealDB_5. The –database option can be used to show backups on a store for a specific database. The list option can also be
filtered to show backups by:
• instance name
• database name
• backup type
• backup tag
• date
• status
In the following example, only the backups for database RealDB_5 will be displayed:
PS C:\Program Files\Hewlett-Packard\StoreOnce\isvsupport\sql\bin> ./HPStoreOnceForMSSQL.exe -list
-store=“10.1.2.151/Backups” –database RealDB_5
2015-01-12 15:01:18 S=SKYSQL;I=DEFAULT;DB=RealDB_5;TS=2015-01-12T15:01:18.029;T=DB_FULL;V=1;
ID=D6F2D62B-F489-41A5-AACC-68F92A04AB88;
Point-in-time restore
The database PRD needs to be restored to the state it had on October 14, at 3 a.m. Because we don’t want to overwrite the
production database, it needs to be restored under another name (P2), and new file locations have to be specified during the
restore of the Full backup.
The Full, Differential, and Transaction Logs backups can be restored using the following commands:
“C:\Program Files\Hewlett-Packard\StoreOnce\isvsupport\sql\bin\HPStoreOnceForMSSQL.exe” -restore “RESTORE
DATABASE [P2] FROM STORE=‘192.168.1.133/TC-SQL/S=CBCSRV19;I=DEFAULT;DB=PRD;TS=2014-10-10T20:11:00.333;
T=DB_FULL;V=1;ID=F3A5086C-7F01-4B82-A9F1-B912525F0678;TAG=Weekly;’ WITH NORECOVERY, CHECKSUM,
REPLACE, MOVE ‘PRD_01’ TO ‘M:\SQL\Data01\P2.mdf’, MOVE ‘PRD_02’ TO ‘N:\SQL\Data02\P2.ndf’, MOVE ‘PRD_log’
TO ‘L:\SQL\Log\P2.ldf’”
“C:\Program Files\Hewlett-Packard\StoreOnce\isvsupport\sql\bin\HPStoreOnceForMSSQL.exe” -restore
“RESTORE DATABASE [P2] FROM STORE=‘192.168.1.133/TC-SQL/S=CBCSRV19;I=DEFAULT;DB=PRD;
TS=2014-10-13T20:11:52.358;T=DB_DIFF;V=1;ID=D50755E0-1D68-47EE-92AB-388BC645087F;TAG=Daily;’ WITH
NORECOVERY, CHECKSUM, REPLACE”
“C:\Program Files\Hewlett-Packard\StoreOnce\isvsupport\sql\bin\HPStoreOnceForMSSQL.exe” -restore
“RESTORE LOG [P2] FROM STORE=‘192.168.1.133/TC-SQL/S=CBCSRV19;I=DEFAULT;DB=PRD;
TS=2014-10-13T22:06:39.692;T=LOG;V=1;ID=E50E39DB-6B49-4BE1-ACE9-A88DE5AC2018;TAG=Log;’ WITH
NORECOVERY, CHECKSUM, REPLACE, STOPAT=‘2014-10-14 03:00:00’”
14
Technical white paper | HP StoreOnce Plug-in for Microsoft SQL Server
“C:\Program Files\Hewlett-Packard\StoreOnce\isvsupport\sql\bin\HPStoreOnceForMSSQL.exe” -restore
“RESTORE LOG [P2] FROM STORE=‘192.168.1.133/TC-SQL/S=CBCSRV19;I=DEFAULT;DB=PRD;
TS=2014-10-14T00:07:03.055;T=LOG;V=1;ID=5ACE6C32-A79D-4858-99B1-CCA2AEFD7F12;TAG=Log;’ WITH
NORECOVERY, CHECKSUM, REPLACE, STOPAT=‘2014-10-14 03:00:00’”
“C:\Program Files\Hewlett-Packard\StoreOnce\isvsupport\sql\bin\HPStoreOnceForMSSQL.exe” -restore
“RESTORE LOG [P2] FROM STORE=‘192.168.1.133/TC-SQL/S=CBCSRV19;I=DEFAULT;DB=PRD;
TS=2014-10-14T02:06:29.646;T=LOG;V=1;ID=F68A430E-5112-4928-9295-7FE6807BA30A;TAG=Log;’ WITH
NORECOVERY, CHECKSUM, REPLACE, STOPAT=‘2014-10-14 03:00:00’”
“C:\Program Files\Hewlett-Packard\StoreOnce\isvsupport\sql\bin\HPStoreOnceForMSSQL.exe” -restore
“RESTORE LOG [P2] FROM STORE=‘192.168.1.133/TC-SQL/S=CBCSRV19;I=DEFAULT;DB=PRD;
TS=2014-10-14T04:06:50.815;T=LOG;V=1;ID=45162641-EC80-48A5-A570-A947904BD2F3;TAG=Log;’ WITH
RECOVERY, CHECKSUM, REPLACE, STOPAT=‘2014-10-14 03:00:00’”
The steps required to generate these commands are:
1.
Identify all the backups needed for this restore with the command “-store=‘192.168.1.133/TC-SQL’ -list -database=PRD.”
The output lists, in descending order, the backups done on this DB. Select the Full, Differential (if any), and Transaction
Log backups required to restore the DB to the selected time stamp. The backup name follows the Catalyst object
creation time in each line of the output.
2.
Use the plug-in and run a RESTORE FILELISTONLY on one of the backups of this database. The output contains the
logical names of each data and log file. These names are needed in the next step.
3.
Restore the Full backup with a RESTORE DATABASE, specifying a MOVE TO clause for each file, and NORECOVERY to
keep the database open for further restores.
4.
Restore the Differential backup with a RESTORE DATABASE and also with a NORECOVERY so that Transaction Log
backups can then be applied.
5.
Restore the Transaction Log backups in the order they have been performed with a succession of RESTORE LOG.
All but the last one needs NORECOVERY; the last one requires RECOVERY.
Performance
Performance (backup speed, restore speed, and deduplication ratio) depends on many factors such as available resources
on the SQL Server, network load, number of concurrent backups, amount changed in the DB between two backups,
retention period, and so on.
HP testing has shown that the HP StoreOnce Plug-in for Microsoft SQL Server has been seen providing better performance
than alternative solutions in the vast majority of use cases. This point is further illustrated by a test conducted under the
following conditions:
• 500 GB database with eight data files, each on a different mount point.
• 60 Full database backups with 30 backup retention.
• Approximately 5 percent of the DB’s rows or bytes changed between the backups.
Comparing the performance of the plug-in vs. backups to a StoreOnce CIFS share, we found the HP StoreOnce Plug-in for
Microsoft SQL Server providing 18.6 percent faster backups and saving 2.8 times more disk space.
15
Technical white paper | HP StoreOnce Plug-in for Microsoft SQL Server
Figure 9. Measured average backup throughput over
60 Full backups
Figure 10. Store deduplication ratios after two months of backup
and one-month retention
Backup speed (MB/s)
Deduplication ratio
520
50
500
40
480
460
30
440
20
420
10
400
380
0
Plug-in for SQL
CIFS
Plug-in for SQL
CIFS
Note
Approximately 40 percent of the maximum throughput of a 10 Gbps Ethernet connection is required to achieve 450 MB/s to
a CIFS share. In other words, the Ethernet connection becomes rapidly the bottleneck when several MS SQL Servers or
databases are backed up in parallel.
The plug-in for MS SQL only consumes a small percentage of the throughput; therefore, it becomes a lot faster when
multiple SQL Servers or databases are backed up in parallel.
Low-bandwidth vs. high-bandwidth
HP recommends using low-bandwidth mode on Catalyst stores used with the HP StoreOnce Plug-in for MS SQL Server.
Using low-bandwidth mode delivers significantly faster backup and improved space savings for many use cases, as shown
in figures 11 and 12.
Backup throughput
Figure 11. Low-bandwidth vs. high-bandwidth throughput with 1 percent data change
0
1
2
3
4
5
6
7
8
9
10
Full backups
Low-bandwidth
High-bandwidth
16
11
12
13
14
Technical white paper | HP StoreOnce Plug-in for Microsoft SQL Server
Deduplication ratio
Figure 12. Low-bandwidth vs. high-bandwidth deduplication ratio with 1 percent data change
0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Full backups
Low-bandwidth
High-bandwidth
Data change rate
Data change rate can have a significant impact on deduplication ratios. Deduplication ratios will be higher if the data change
rate is low. The chart below illustrates how the database change rate between each full backup affects StoreOnce
deduplication ratios.
Deduplication ratio
Figure 13. Effect of various data change rates on deduplication ratio through 2 weeks of full backups
0
1
2
3
4
5
1% Change
6
7
8
Full backups
3% Change
9
10
11
12
13
14
5% Change
17
Technical white paper | HP StoreOnce Plug-in for Microsoft SQL Server
Backup retention period
Backup retention periods can also have a significant impact on deduplication ratios. Deduplication ratios will be higher if the
retention period is long. In the chart below, the retention period was thirty days with a full backup every day. Once the
retention period is reached, a decline in deduplication ratio of about 10 percent is expected.
Deduplication ratio
Figure 14. Effect of retention period on deduplication ratio—30 day retention period and 1 percent data change rate was used
0
1
9
17
25
33
41
49
57
65
73
81
89
Full backups
Note
There will be a slight decline in deduplication ratio once the retention period is reached; however, the deduplication ratio will
stabilize. The reason for this decline is that the backup being expired has a small amount more deduplicated data than the
newer backup. This phenomenon is not a characteristic of the HP StoreOnce Plug-in for SQL Server and is not data type
dependent.
Known limitations
Please note the following known limitations of the HP StoreOnce Plug-in for Microsoft SQL Server version 1:
• No support for FILE and FILEGROUP backups.
• Testing indicates maximum restore speed is ~180 MB/s.
• Cannot write mirror copies over a Fibre Channel network.
18
Technical white paper | HP StoreOnce Plug-in for Microsoft SQL Server
Summary
The StoreOnce Plug-in for Microsoft SQL Server in conjunction with Catalyst targets on StoreOnce appliances is the highest
performing solution to MS SQL Server backups as the test results in this paper demonstrate. Compared to existing backup
solutions, it gives the database administrator increased control over how backups are run and the ability to finish backups
faster while using less space to store the backups. All backup and restore operations are executed using commands similar
to known T-SQL commands. In summary, the reasons to deploy the StoreOnce SQL Server Plug-in are:
• Improved backup throughput compared to back up to CIFS targets:
– Due to the enhanced efficiency of the Catalyst protocol
– By distributing deduplication processing to the MS SQL Server(s) rather than having the StoreOnce Backup target
executing all the deduplication
• Reduced space consumed by database backups because of higher deduplication ratios achieved by the intelligent
processing of the backup stream
• Lower network bandwidth use achieved with low-bandwidth backups that only transmit the unique data to the StoreOnce
appliance
• Added protection and DR capability with up to three additional copies of the backup made using MS SQL
“MIRROR TO” directive
• No learning curve as most of the standard Microsoft SQL Server BACKUP/RESTORE WITH options supported
• Zero cost for the plug-in that is downloadable from hp.com/go/softwaredepot
Appendix A—HP StoreOnce Catalyst overview
Supported device types
HP StoreOnce Backup appliances can be configured with three types of devices that can be used as backup targets. Multiple
device types can be used in parallel to support different workloads. The choice of device type is determined by the needs of
the data protection solution being deployed.
• Virtual tape library (VTL) is supported for connection over Fibre Channel and Ethernet (using iSCSI) networks. This is used
by traditional backup software that was first designed for use with tape-backed devices. This device type emulates the
geometry of physical tape devices for simple integration with backup software. It is robust and well proven but provides
limited advanced functionality compared to StoreOnce Catalyst devices.
• NAS (CIFS and NFS) devices are supported for connection over Ethernet networks. These device types are primarily used
for newer backup applications that were not initially designed for use with tape devices. NAS is also used for business
applications, such as Microsoft SQL Server, which have built in backup and recovery modules.
• HP StoreOnce Catalyst is a device type specifically designed for backup and recovery. Catalyst is supported for connection
over Fibre Channel and Ethernet networks. It removes many of the limitations of the general purpose VTL and NAS device
types and adds features for enhanced control and performance. It uses a client-server architecture; the Catalyst server
runs on the StoreOnce appliance, and the Catalyst client is integrated with the backup or business application.
StoreOnce Catalyst terminology and summary features
HP StoreOnce Catalyst store is the target device where backups are stored.
HP StoreOnce Catalyst items are objects not files. Backup data is held as Catalyst items in a Catalyst store. Item size and
number are set by the StoreOnce Plug-in for Microsoft SQL Server.
An HP StoreOnce Catalyst client, such as the StoreOnce Plug-in for Microsoft SQL Server, communicates with the
StoreOnce Catalyst server that runs on the StoreOnce appliance.
A Catalyst data job is any job that stores or restores data to or from a Catalyst store.
A Catalyst copy job copies backup data between Catalyst stores. The StoreOnce Plug-in for Microsoft SQL Server is aware
of these copies and all can be used for restore jobs.
The design of the Catalyst device type enables many advanced features.
19
Technical white paper | HP StoreOnce Plug-in for Microsoft SQL Server
Source-side deduplication can be configured for low-bandwidth backups to help reduce, usually by 90 percent or more, the
load on the network by only transmitting new and updated blocks to complete the backup. If there are multiple application
servers or media servers running the Catalyst client software, it means the deduplication is federated and distributed so it is
possible to achieve overall higher throughput to the StoreOnce appliance for reduced times to complete backups.
HP Catalyst also enables more flexible replication—known as Catalyst copy. NAS and VTL replication is a 1:1 asynchronous
mirror between the source and target. Catalyst copies enable added features such as multi-hop replication.
Integrating the Catalyst client with the backup software or business application enables control of the StoreOnce capabilities
to be executed through the backup software or business application for a unified point of backup management. Depending
upon the level of integration, this enables the application to manage device configuration, backup specification, copy
configuration, and view reporting and troubleshooting information. figure 15 illustrates the use of StoreOnce appliances in a
data protection solution that includes backups and replicated backups.
Figure 15. Multiple HP StoreOnce device types in use
The HP StoreOnce Plug-in for Microsoft SQL Server fully supports CoFC. When this protocol is used, the data is transferred
using the Fibre Channel protocol instead of the Ethernet.
The HP StoreOnce Plug-in for Microsoft SQL Server also supports Federated Catalyst stores, with the restrictions that such a
store cannot be the target of a Catalyst inbound copy job. In other words, it can be used in a TO STORE expression but cannot
be used in a MIRROR TO STORE clause.
20
Technical white paper | HP StoreOnce Plug-in for Microsoft SQL Server
Useful links
HP StoreOnce official page
HP StoreOnce appliance manuals
HP StoreOnce Catalyst Service technical data sheet
HP StoreOnce Catalyst Service solution brief
Microsoft TechNet for SQL Server
To get your copy of the StoreOnce Plug-in for Microsoft SQL Server
1. Go to hp.com/go/softwaredepot.
2. Expand the “HP Storage” menu and select “Storage Software.”
3. Under “Product,” locate and select “StoreOnce Free Software.”
4. Locate and read the information about the StoreOnce Plug-in for Microsoft SQL Server.
5. At the top or bottom of page, select “Receive for Free.”
6. When prompted, enter your HP Passport credentials (if not sign up—it is free and fast).
7. Check your details on the next page and read license terms, then select “Next.”
8. From the “Software downloads and licenses” page, select the StoreOnce Plug-in for Microsoft SQL Server and
select “Download.”
9. Follow instructions to download the package containing the plug-in and the user guide.
Note
By default, the StoreOnce Plug-in for Microsoft SQL Server user guide is installed in \Program Files\Hewlett-Packard\
StoreOnce\isvsupport\sql\doc
Learn more at
hp.com/go/storage
Sign up for updates
hp.com/go/getupdated
Share with colleagues
Rate this document
© Copyright 2014–2015 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. The only
warranties for HP products and services are set forth in the express warranty statements accompanying such products and services. Nothing herein should
be construed as constituting an additional warranty. HP shall not be liable for technical or editorial errors or omissions contained herein.
Microsoft, Windows, and Windows Server are trademarks of the Microsoft group of companies.
4AA5-6133ENW, March 2015, Rev. 1