Product


The Windocks product delivers on demand databases (usually production data) customized for dev, test, reporting, ML, and devops. Windocks technologies include:

  • SQL Server containers for Windows and Azure SQL - Windocks offers container technology for SQL Server Windows and Azure SQL. These containers are isolated SQL Servers running on a single machine on different ports and can be created and removed quickly. Windocks SQL Server containers are an independent port by Windocks of Docker's container technology. They are available for SQL Server 2008, 2012, 2014, 2016, 2017, and 2019 - Express, Developer, Standard, and Enterprise with support for Active Directory authentication. All SQL services are supported including Agent, Analysis (SSAS), reporting (SSRS) and integration (SSIS). If your production runs in SQL Server, Azure SQL or managed Azure SQL, these containers can be used for test, dev, support, reporting, ML, and devops. Windocks orchestration co-ordinates Windocks SQL Server containers with Windocks cloning, and masking to deliver databases on demand. Learn more about SQL Server containers
  • Database cloning - Database cloning (also known as database virtualization) is the technology that creates instantaneous writeable copies of databases without using additional storage, no matter how big the data. Windocks provides database cloning technology based on standard Linux and Windows file systems. Simply build an image once by restoring SQL Server backups or files, Azure SQL BACPACs, Oracle backups or files, PostGre / MySQL dumps. Windocks will create database clones instantaneously from the image no matter how big the database. Clones use minimal storage - for example a clone of a 10TB database will only occupy 40MB. Clones are writeable and as you write data into the database clone, the size starts growing. Windocks cloning works with either Windocks SQL Server containers or docker Oracle, PostGre, MySQL containers on Linux. The clones are delivered to containers or to conventionally installed database instances or to Kubernetes. Windocks orchestration polls for fresh SQL Server transaction log backups periodically and refreshes the image with current production data. Clones delivered always have current production data. Learn more about database cloning
  • Masking - Windocks offers a built-in database masking solution that discovers and obfuscates sensitive data in SQL Server and Oracle databases. Use a single UI tool to discover sensitive data, classify, and build masks. Windocks masking is deterministic, retains field formats and can preserve parts of fields for masking. Learn more about database masking
  • Access control - Windocks provides access controls based on Windocks groups, Active Directory groups or secrets in vaults such as Azure Vault, Amazon Secrets manager and more. Simply specify the access controls in the image specification along with the details of the databases and masking. Windocks orchestration will do the work in enforcing the access controls. Learn more about access control
  • Database orchestration - Windocks database orchestration is a supervisory database control plane that co-ordinates database cloning, containerization, periodic production refresh, access control, masking, and script repositories to customize and deliver databases. It is needed for database operations at speed and scale for dev, test, reporting, ML, and devops. Orchestration removes the need for you to write or maintain code. You simply specify the databases needed and how to customize them and Windocks orchestration does the work for you. Windocks orchestration is an open system that allows you to use either built-in cloning, container, masking services from Windocks or solutions from others. Learn more about database orchestration
  • Production refresh - Windocks refreshes images with incremental backups from production to always deliver current production database clones. Database orchestration automatically polls for fresh incremental backups, and applies them to keep databases current with production. Alternatively, you can apply incremental backups yourself via UI, API or command line. For SQL Server these incremental backups are transaction log backups.
  • Versioned data repo - The Windocks data repo is a repository of images of all databases ready to be delivered. Each image contains one or more databases ready to be cloned. Images are versioned to track different customizations for different use cases and different versions of production data by dates. Containers with clones are delivered from this data repo. Each image in the data repo consists of one or more databases with all the rules built in for masking, applying database scripts, security and more. The data repo enables databases to be first class artifacts that are auditable.
  • REST API, CLI, web application - All Windocks services are accessed via a built-in web application, a REST API or a command line. Docker clients, Kubectl commands, Helm charts or UI are supported.

Steps to deliver customized databases on-demand

1. Install Windocks Download the Windocks Community Edition or email support@windocks.com for a full featured evaluation edition. Provision a Windows Server VM (Server 2016, 2019, or 2022), install SQL Server (for SQL database delivery) and then install Windocks as described here. For Oracle database delivery, also install the Windocks service for Linux as described here
2. Provide the spec to the Windocks orchestrator and build the image

Specify the path to one or more SQL backup or database files, Azure SQL BACPAC files, or Oracle RMAN backup, or Oracle oradata files. Specify which database cloning to use (Windocks database cloning or volume cloning from other companies), where to deliver the database clones (Windocks SQL Server Windows containers or SQL Server instances or docker Oracle containers), how often to refresh from production, customizations such as database scripts to be applied, which masking software to use (Windocks masking, other masking solutions or scripts), and authorization controls.Provide the spec in the form of a dockerfile and build the image via a web application, command line or REST API.

Tutorial for SQL Server    Tutorial for Oracle   Tutorial for PostGre, MySQL.

3. Deliver databases From the image, deliver database clones to containers or instances. The image you built defines where the databases are delivered to. You may define an image that delivers containers with clones as well as clones to instances. To deliver containers and clones, use the web application or use the docker command line or the REST API.
4. Use the databases Database clones are delivered either to containers or instances based on the image you built. If you delivered to an instance, then connect to that instance for the database clone. Clones are writeable. Containers are delivered on the machine running Windocks on specified ports. Access these containers with regular database tools or command lines or connection strings.

SQL Server containers are accessed with SQL Management Studio or Azure Data Studio or SQLCMD. Connect with the instance name (such as INSTANCE10002 when the container port is 10002). Or you can use the form IPAddressOfWindocksServer,10002 to connect to the SQL container running on port 10002.

Oracle containers are accessed with SQLPlus, RMAN or UI tools for Oracle. You may put in entries in tnsnames.ora for the containers as you would for Oracle instances. With SQLPlus or RMAN, use the form SQLPLUS sys/password@IPAddressOfWindocksLinuxServer:HostPort/orclcdb as sysdba

5. Refresh from production Refresh the image with SQL Server transaction log backups from production or incremental RMAN backups for Oracle. After refresh, clones delivered from the image will have the latest production data. See the SQL Server tutorial to build images that can be refreshed. Windocks orchestration does the refreshes for you - it automatically polls for fresh transaction log backups periodically and refreshes the image. Or you can do the refreshes via UI, command line or the refresh REST API.

SQL refresh

Explore topics