The SNAPI 2.0 provides APIs for StorNext clients, file systems, and storage managers to enhance integration and customize functions like capacity management, data movement, and reporting. The client API controls server access to StorNext repositories. The file system API optimizes file creation, access, and provides reporting on files and storage. The storage manager API controls data location across storage tiers and provides tape handling and extensive reporting of file locations and storage use.
1. STORNEXT API 2.0 (SNAPI) QUICK REFERENCE GUIDE:
KEY FEATURES AND BENEFITS
SNAPI contains StorNext® Client, File System, and Storage Manager calls that can be used by third-party applications to enhance
integration and allow customized capacity management, data movement, and reporting operations.
CLIENT APIs
The Client API set controls the behavior of servers accessing StorNext disk repositories. Today, these calls are centered on
optimizing performance. Using “Real Time IO calls,” disk resources are configured with a priority bandwidth pool. Servers are then
configured to run in priority or normal access mode. Priority servers have full access to the real-time bandwidth pool and
supersede access requests from normal clients.
Name Function Use Case
Disable Real Time IO Puts client in normal, gated mode Optimize performance—Sets a client to have normal, non-priority access
Enable Real Time IO Puts client in priority, non-gated mode Optimize performance—Provides clients with priority access to storage
Get Stripe Group Stats Gets the configuration and IO statistics for a Optimize performance—Lists IOps or MBps reserved for priority clients and impact on normal clients
stripe group
Get Client Stats Gets the IO statistics for clients Optimizing performance—Displays throughput used by clients (normal and priority)
Set Stripe Group IO Sets the IO properties of a stripe group Increasing operational performance—Sets the reserved IOps or MBps for priority clients on a stripe group
FILE SYSTEM APIs
The File System API is designed to optimize file creation and access patterns. It also provides a significant amount of reporting
detail for integrators that need to customize monitoring and alerting functions. The File System API is broken into three primary
sets. Allocation and Space Management controls how data is written to StorNext, allowing faster writes and more efficient
allocation of capacity. Configuration and Location Management is used primarily for reporting purposes and provides details on
file parameters as well as the configuration of the underlying disk volumes, called stripe groups, which make up a StorNext file
system. Access Management controls concurrent file operations and quotas, as well as providing additional reporting utilities.
Name Function Use Case
Allocation and Space Management
Allocate File Space Allocates disk capacity for a file Optimize write process—Request capacity all at once to speed process of writing larger files
Get “Perfect Fit” Status Determine if file uses "perfect fit" allocations Optimize write process—For files that have a known, repeatable growth this prevents multiple allocation
requests or extraneous reserving of capacity
Punch Holes Removes a portion of a file Custom file management—Removes portions of a file (start, middle, and end) without full deletion
Set File Size Sets capacity requirement for file Faster file create—Reserves space for a file, but does not zero out the disk contents first
Configuration and Location Management
Get File Affinity Gets affinity for a specific file In Depth Reporting
Get File Extent List Gets extents used by a specific file In Depth Reporting
Get File Location Gets block location of a file In Depth Reporting
Get Stripe Group Info Gets parameters of a stripe group Configuration management
Get Stripe Group Name Gets ASCII name of a stripe group Configuration management
Set File Affinity Sets the affinity for a file Optimize performance & group files—Sets disk volume for storing a specific file
www.quantum.com
2. STORNEXT API 2.0 (SNAPI) QUICK REFERENCE GUIDE:
KEY FEATURES AND BENEFITS
Name Function Use Case
Access Management
Clear Concurrent Write Disables concurrent writes for a file Control Write Process—Used to prevent overwrite when application does not support block level updates
Clear Read Hole Fail Causes a hole to return a zero value during Default behavior —When a hole is punched in a file, the hole (unallocated space) is filled with "zeros"
a read operation
File Stat Runs UNIX stat command on a file In Depth Reporting—Lists file attributes
Open State Determines open state of a file In Depth Reporting—Details if one or more servers are reading a file (e.g. check state before deleting)
Get Disk Info Retrieves info on underlying disk In Depth Reporting—Lists physical attributes, including WWN for the disk resources in a stripe group
Get Quota Details Gets current quota usage and limits In Depth Reporting—Lists quota limits for users and groups. Also details user's current capacity utilization.
Get Version Details Lists current StorNext & SNAPI rev In Depth Reporting—Lists build information
Load Extents Pre-loads extents into file system Optimize performance—By pre-loading extents, the time required before first access of a file is minimized
Set Concurrent Writes Enables concurrent writes for a file Control Write Process—Allows simultaneous file updates for applications supporting block level access
Set Quota Details Sets current quota usage and limits Control Capacity Utilization—Sets quota limits for a specific user or group
Set Read Hole Fail Causes reads from a hole to fail Control Read Behavior
File System Stat Gets basic file system information In Depth Reporting / Monitoring—Lists the configuration attributes of the file system
File Stat Plus Runs UNIX stat on a file and retrieves In Depth Reporting—Lists attributes of file in addition to data movement status (disk only, disk and tape, etc)
StorNext specific data
Swap Extents Swaps all extents for a file Optimize performance—Used in defrag to move data from a fragmented extent set to a more contiguous set
STORAGE MANAGER APIs
The Storage Manager API is designed to control the location of data files and allow in depth reporting. Data movement calls
simplify management of storage capacity and enable faster access to archived files that reside on secondary storage. Additionally,
tape handling calls are included to simplify and automate movement for bulk loading and unloading of disaster recovery media.
Extensive reporting calls are also included to enable capacity planning and alerting and location of individual files on media..
Name Function Use Case
EjectMedia Places media in mailbox for export or logically Storage Management—Simplifies off-siting of archive media by automating process of media eject
"ejects" from vault
EnterMedia Imports media to slot or logically "enter" to vault Storage Management—Simplifies process of importing archive media by automating process of media insert
FileRetrieve Retrieves files from secondary storage Optimize Performance—Pulls files back to primary storage. Pre-staging reduces access time
GetFileAttribute Provides file attributes specific to location on tiers In Depth Reporting—Lists tiers where file is located and if DR copies have been generated.
GetFileTapeLocation Provides location information for the specified File Recovery and In Depth Reporting – Reports the media and physical block location where the specified
file, including the copy ID, segment number, file resides.
starting block, and segment size
GetMediaList Lists media with specific attributes Media, capacity, and file management—Identifies media that are blank, suspect, etc.
GetMediaStatus Lists attributes for a piece of media In Depth Reporting—Lists attributes of media including fill level, error count, write protect status.
GetPortList List the identifier(s) for a library or vault Media movement—Provides identifiers used by StorNext when importing / exporting media
MoveMedia Logically moves media between libraries Storage Management—Enabling feature for media movement between libraries (e.g. a local and remote)
RmDiskCopy Removes files from primary disk Capacity Management—Frees up disk space. Used to automate file removal and reduce user interaction
www.quantum.com