Data Access and Storage

Windows has APIs, components, and services that support your desktop apps in data access and storage. They provide:

  • File and file system management.
  • Database access.
  • Support for the transfer, synchronization, and replication of data.
  • Access to XML, package, and log files.
  • Image mastering.
  • Backup support.

In this section

Topic Description
Background Intelligent Transfer Service Background Intelligent Transfer Service (BITS) transfers files (downloads or uploads) between a client and server and provides progress information related to the transfers. You can also download files from a peer.
Backup Registry keys for backup and restore allow backup applications to communicate with other applications and services about backup and restore operations. The tape backup API enables backup applications to archive data to tape. The single-instance store (SIS) API enables backup applications to use the SIS architecture for maintaining duplicate files with a minimum of overhead. The raw encryption API enables backup and restore of encrypted files.
Cloud Sync Engines Starting in Windows 10, version 1709, Windows provides the cloud files API. This API formalizes support for cloud sync engines, and handles tasks such as creating and managing placeholder files and directories. Users of this API are typically sync providers and to some extent, Windows applications.
Common Log File System The Common Log File System (CLFS) API provides a high-performance, general-purpose log file subsystem that dedicated client applications can use and multiple clients can share to optimize log access.
Distributed File System The Distributed File System (DFS) functions provide the ability to logically group shares on multiple servers and to transparently link shares into a single hierarchical namespace.
Distributed File System Replication The Distributed File System Replication (DFSR) service is a state-based, multimaster replication engine that supports replication scheduling and bandwidth throttling.
Extensible Storage Engine The Extensible Storage Engine (ESE) is an advanced indexed and sequential access method (ISAM) storage technology. ESE enables applications to store and retrieve data from tables using indexed or sequential cursor navigation.
File Management API (FMAPI) The File Management APIs provide a way for developers to discover and restore deleted files from unencrypted volumes. The File Management APIs also provide the ability to use a password or recovery key file for the discovery and recovery of deleted files from BitLocker-encrypted volumes.
Host bus adapter (HBA) Host bus adapter (HBA).
Image Mastering API The image mastering API enables applications to stage and burn images to CD and DVD optical storage media. Other disc-like media that lay images in the same manner can also use this API.
Imaging API The Windows Imaging Interface Reference describes the programmatic method for managing Windows image (.wim) files.
iSCSI Discovery Library API The iSCSI Discovery Library API allows initiators to locate any accessible target devices as well as the associated addresses with a minimal amount of required configurations.
iSCSI Software Target API The iSCSI Software Target API provides a WMI interface for managing Microsoft iSCSI Software Target, such as creating virtual disks and presenting it to the client.
Local File Systems Describes directory, disk, file, and volume management. Also describes Transactional NTFS (TxF).
MSXML Microsoft XML Core Services (MSXML) allows customers who use JScript, Visual Basic Scripting Edition (VBScript), and Microsoft Visual Studio to build high-performance XML-based applications.
Non-Volatile Memory Library (NVML) Allows developers to utilize NVML APIs in order to code for persistent memory in Windows environments.
Offline Files The Offline Files API allows applications to control and monitor the behavior of Offline Files programmatically.
Packaging The packaging APIs provide support for applications that produce or consume files, called packages, that are compliant with the Open Packaging Conventions.
Projected File System The Projected File System (ProjFS) allows a user-mode application to project a hierarchical data store into the file system, where it appears as files and directories. Content is cached to the local file system on demand, allowing very large data stores to appear local without overwhelming local storage.
Remote Differential Compression Remote Differential Compression (RDC) allows applications to synchronize data between two computers in an efficient manner.
User State Management API The User State Management API provides an alternative way to configure and retrieve current status for the Windows components related to user state. The Windows components that expose configuration and status through these APIs are Folder Redirection, Offline Files, and Roaming Profiles.
Virtual Disk Service The Virtual Disk Service (VDS) manages a wide range of storage configurations, from single-disk desktops to external storage arrays.
Virtual Storage The Virtual Hard Disk (VHD) format is a publicly-available image format specification that specifies a virtual hard disk encapsulated in a single file, capable of hosting native file systems while supporting standard disk and file operations.
Volume Shadow Copy Service The Volume Shadow Copy Service (VSS) is a set of COM interfaces that implements a framework to allow volume backups to be performed while applications on a system continue to write to the volumes.
Windows Data Access Components Windows Data Access Components (Windows DAC) 6.0 is a set of technologies that provide access to information across the enterprise. These technologies include Microsoft ActiveX Data Objects (ADO), OLE DB, and Microsoft Open Database Connectivity (ODBC).
Windows Storage Management API The Windows Storage Management API is used to manage a wide range of storage configurations, from single-disk desktops to external storage arrays.
Windows Sync The Microsoft Windows Sync API provides a way for developers to write custom synchronization providers that enable devices to synchronize data with data stores on a computer or on a network.
WMI Provider for NFS Microsoft Services for Network File System (NFS) provides a file sharing solution that enables you to transfer files using the NFS protocol between computers running Windows and third-party operating systems.
XmlLite XmlLite is a lightweight XML parser designed for ease of use, performance, and standards compliance.