Achieve unmatched performance with the Grid-Tools data masking solution

"With Datamaker we were able to create a test project for a few tables and generate the masking scripts in around 30 minutes, enabling us to test our masking rules in a very short space of time. The resulting masked data also maintains its relationships and integrity from the original environments."

Senior Software Specialist, Large UK Financial Institution

Should performance be part of your criteria when choosing a data masking technology? It certainly should. Imagine the amount of time your project will save as masking scripts generate usable output in seconds. This is why a high performing data masking solution is important, and why Datamaker continues to outperform the competition.

The statistics below were taken from a large UK financial institution after the implementation of Datamaker as part of a test data management and data security reevaluation. The data demonstrates the time it took to mask or de-identify different sized tables using Datamaker, each with a varying number of columns. Each table was also masked using a variety of masking functions.

The example indicates the impressive performance of the Grid-Tools data masking solution. Contact Grid-Tools for more information on the project.

Table 1:     Number of Rows = 7,308/500k seeds     Time to mask = 00:00:09 (HH:MM:SS)
Column number Column Function Keep Nulls Cross Ref Cross Ref Ident
Column 1 NAME 'RANDLOV','FULL NAME' Y    

Table 2:     Number of Rows = 87,235/660k seeds     Time to mask = 00:00:42 (HH:MM:SS)
Column number Column Function Keep Nulls Cross Ref Cross Ref Ident
Column 1 LENDER_ADDR_1 'RANDLOV','UK ADDRESS' Y    
Column 2 LENDER_ADDR_2 'RANDLOV','UK ADDRESS' Y    
Column 3 LENDER_ADDR_3 'RANDLOV','UK ADDRESS' Y    
Column 4 LENDER_ADDR_4 'RANDLOV','UK ADDRESS' Y    
Column 5 LENDER_ADDR_5 'RANDLOV','UK ADDRESS' Y    
Column 6 LENDER_POSTCODE 'RANDLOV','POSTCODE' Y    
Column 7 PROPERTY_ADDR_1 'RANDLOV','UK ADDRESS' Y    
Column 8 PROPERTY_ADDR_2 'RANDLOV','UK ADDRESS' Y    
Column 9 PROPERTY_ADDR_3 'RANDLOV','UK ADDRESS' Y    
Column 10 PROPERTY_ADDR_4        
Column 11 PROPERTY_ADDR_5        
Column 12 PROPERTY_POSTCODE 'RANDLOV','POSTCODE' Y    

Table 3:     Number of Rows = 184,975/840k seeds     Time to mask = 00:00:31 (HH:MM:SS)
Column number Column Function Keep Nulls Cross Ref Cross Ref Ident
Column 1 DISTRICT 'RANDLOV','UK ADDRESS' Y    
Column 2 DOB 'ADDRANDDAYS',0,30      
Column 3 FORENAME 'RANDLOV','FIRSTNAME' Y Y FIRSTNAME
Column 4 HOUSE_NAME   Y    
Column 5 POSTCODE 'RANDLOV','POSTCODE' Y    
Column 6 POST_TOWN 'RANDLOV','UK ADDRESS' Y    
Column 7 STREET_1 'RANDLOV','UK ADDRESS' Y    
Column 8 STREET_2 'RANDLOV','UK ADDRESS' Y    
Column 9 SURNAME 'RANDLOV','LASTNAME' Y Y LASTNAME

Table 4:     Number of Rows = 982,312/430k seeds     Time to mask = 00:01:28 (HH:MM:SS)
Column number Column Function Keep Nulls Cross Ref Cross Ref Ident
Column 1 NINO_NUMBER 'RANDLOV','NI NUMBER' Y    
Column 2 PREVIOUS_NAME 'RANDLOV','LASTNAME' Y Y LASTNAME

Table 5:     Number of Rows = 507,573/660k seeds     Time to mask = 00:01:22 (HH:MM:SS)
Column number Column Function Keep Nulls Cross Ref Cross Ref Ident
Column 1 AREA_CODE 'RANDLOV','POSTCODE' Y    
Column 2 DISTRICT_CODE 'RANDLOV','POSTCODE' Y    
Column 3 LINE1 'RANDLOV','UK ADDRESS' Y    
Column 4 LINE2 'RANDLOV','UK ADDRESS' Y    
Column 5 LINE3 'RANDLOV','UK ADDRESS' Y    
Column 6 LINE4   Y    
Column 7 LINE5   Y    
Column 8 SECTOR_CODE 'RANDLOV','POSTCODE' Y    
Column 9 UNIT_CODE 'RANDLOV','POSTCODE' Y    

Table 6:     Number of Rows = 4,232,228/500k seeds     Time to mask = 00:01:13 (HH:MM:SS)
Column number Column Function Keep Nulls Cross Ref Cross Ref Ident
Column 1 BANK_ACCOUNT_NAME 'RANDLOV','FULL NAME' Y    

Table 7:     Number of Rows = 345,548/1m seeds     Time to mask = 00:00:36(HH:MM:SS)
Column number Column Function Keep Nulls Cross Ref Cross Ref Ident
Column 1 CARDHOLDER_ADDRESS 'RANDLOV','UK ADDRESS' Y    
Column 2 CARDHOLDER_NAME 'RANDLOV','FULL NAME' Y    

Table 8:     Number of Rows = 174,193/72k seeds     Time to mask = 00:00:23 (HH:MM:SS)
Column number Column Function Keep Nulls Cross Ref Cross Ref Ident
Column 1 ACCOUNT_SURNAME 'RANDLOV','LASTNAME' Y Y LASTNAME

Table 9:     Number of Rows = 11,942/840k seeds     Time to mask = 00:00:05 (HH:MM:SS)
Column number Column Function Keep Nulls Cross Ref Cross Ref Ident
Column 1 FORENAME 'RANDLOV','FIRSTNAME' Y Y FIRSTNAME
Column 2 FRAUD_ADDR1 'RANDLOV','UK ADDRESS' Y    
Column 3 FRAUD_ADDR2 'RANDLOV','UK ADDRESS' Y    
Column 4 FRAUD_ADDR3 'RANDLOV','UK ADDRESS' Y    
Column 5 FRAUD_ADDR4   Y    
Column 6 FRAUD_ADDR5   Y    
Column 7 FRAUD_PCODE 'RANDLOV','POSTCODE' Y    
Column 8 SURNAME 'RANDLOV','LASTNAME' Y Y LASTNAME

Table 10:     Number of Rows = 709     Time to mask = 00:00:01 (HH:MM:SS)
Column number Column Function Keep Nulls Cross Ref Cross Ref Ident
Column 1 TEL_NUMBER   Y    

Table 11:     Number of Rows = 415,522     Time to mask = 00:00:41 (HH:MM:SS)
Column number Column Function Keep Nulls Cross Ref Cross Ref Ident
Column 1 DATE_OF_BIRTH 'DOB',0,30      

Table 12:     Number of Rows = 3,461,240/240k seeds     Time to mask = 00:10:05 (HH:MM:SS)
Column number Column Function Keep Nulls Cross Ref Cross Ref Ident
Column 1 FORENAME 'RANDLOV','FIRSTNAME' Y Y FIRSTNAME
Column 2 SURNAME 'RANDLOV','LASTNAME' Y Y LASTNAME

Table 13:     Number of Rows = 3,547,873/1.2m seeds     Time to mask = 00:25:52 (HH:MM:SS)
Column number Column Function Keep Nulls Cross Ref Cross Ref Ident
Column 1 ADDRESS_LINE1 'RANDLOV','UK ADDRESS' Y    
Column 2 ADDRESS_LINE2 'RANDLOV','UK ADDRESS' Y    
Column 3 ADDRESS_LINE3 'RANDLOV','UK ADDRESS' Y    
Column 4 ADDRESS_LINE4   Y    
Column 5 ADDRESS_LINE5   Y    
Column 6 DATE_OF_BIRTH 'DOB',0,30      
Column 7 EMAIL_ADDRESS   Y    
Column 8 FORENAMES 'RANDLOV','FIRSTNAME' Y Y FIRSTNAME
Column 9 MOBILE_NUMBER   Y    
Column 10 NINO 'RANDLOV','NI NUMBER' Y    
Column 11 POSTCODE 'RANDLOV','POSTCODE' Y    
Column 12 SURNAME 'RANDLOV','LASTNAME' Y Y LASTNAME

Table 14:     Number of Rows = 1,682,021     Time to mask = 00:01:17 (HH:MM:SS)
Column number Column Function Keep Nulls Cross Ref Cross Ref Ident
Column 1 EMAIL_ADDRESS   Y    

Table 15:     Number of Rows = 3,854,180/240k seeds     Time to mask = 00:14:15 (HH:MM:SS)
Column number Column Function Keep Nulls Cross Ref Cross Ref Ident
Column 1 DOB 'DOB',0,30      
Column 2 FORENAME 'RANDLOV','FIRSTNAME' Y Y FIRSTNAME
Column 3 SURNAME 'RANDLOV','LASTNAME' Y Y LASTNAME

Table 16:     Number of Rows = 4,711/840k seeds     Time to mask = 00:00:03 (HH:MM:SS)
Column number Column Function Keep Nulls Cross Ref Cross Ref Ident
Column 1 ADDRESS_LINE1 'RANDLOV','UK ADDRESS' Y    
Column 2 ADDRESS_LINE2 'RANDLOV','UK ADDRESS' Y    
Column 3 ADDRESS_LINE3 'RANDLOV','UK ADDRESS' Y    
Column 4 ADDRESS_LINE4   Y    
Column 5 ADDRESS_LINE5   Y    
Column 6 DOB 'DOB',0,30      
Column 7 EMAIL_ADDRESS   Y    
Column 8 FORENAMES 'RANDLOV','FIRSTNAME' Y Y FIRSTNAME
Column 9 POSTCODE 'RANDLOV','POSTCODE' Y    
Column 10 SURNAME 'RANDLOV','LASTNAME' Y Y LASTNAME

Table 17:     Number of Rows = 168,042     Time to mask = 00:00:15 (HH:MM:SS)
Column number Column Function Keep Nulls Cross Ref Cross Ref Ident
Column 1 IRSB_DATE_OF_BIRTH 'DOB',0,30      

Table 18:     Number of Rows = 4,628,428/660k seeds     Time to mask = 00:10:53 (HH:MM:SS)
Column number Column Function Keep Nulls Cross Ref Cross Ref Ident
Column 1 LINE1 'RANDLOV','UK ADDRESS' Y    
Column 2 LINE2 'RANDLOV','UK ADDRESS' Y    
Column 3 LINE3 'RANDLOV','UK ADDRESS' Y    
Column 4 LINE4   Y    
Column 5 LINE5   Y    
Column 6 POST_CODE 'RANDLOV','POSTCODE' Y    

Table 19:     Number of Rows = 1,932,908/500k seeds     Time to mask = 00:01:56 (HH:MM:SS)
Column number Column Function Keep Nulls Cross Ref Cross Ref Ident
Column 1 BORR_NAME_1 'RANDLOV','FULL NAME' Y    
Column 2 BORR_NAME_2 'RANDLOV','FULL NAME' Y    
Column 3 BORR_NAME_3 'RANDLOV','FULL NAME' Y    
Column 4 BORR_NAME_4   Y    
Column 5 IP_NAME1 'RANDLOV','FULL NAME' Y    
Column 6 IP_NAME2 'RANDLOV','FULL NAME' Y    
Column 7 IP_NAME3 'RANDLOV','FULL NAME' Y    

Table 20:     Number of Rows = 6,900,844/1.2m seeds     Time to mask = 00:32:06 (HH:MM:SS)
Column number Column Function Keep Nulls Cross Ref Cross Ref Ident
Column 1 DATE_OF_BIRTH 'DOB',0,30      
Column 2 FORENAMES 'RANDLOV','FIRSTNAME' Y Y FIRSTNAME
Column 3 NATIONAL_INS_NUM 'RANDLOV','NI NUMBER' Y    
Column 4 PLACE_OF_BIRTH 'RANDLOV','UK ADDRESS' Y    
Column 5 SURNAME 'RANDLOV','LASTNAME' Y Y LASTNAME
Column 6 TOWN_OF_BIRTH 'RANDLOV','UK ADDRESS' Y    

Table 21:     Number of Rows = 8,836,310/660k seeds     Time to mask = 00:35:04 (HH:MM:SS)
Column number Column Function Keep Nulls Cross Ref Cross Ref Ident
Column 1 AREA_CODE 'RANDLOV','POSTCODE' Y    
Column 2 DISTRICT_CODE 'RANDLOV','POSTCODE' Y    
Column 3 LINE1 'RANDLOV','UK ADDRESS' Y    
Column 4 LINE2 'RANDLOV','UK ADDRESS' Y    
Column 5 LINE3 'RANDLOV','UK ADDRESS' Y    
Column 6 LINE4   Y    
Column 7 LINE5   Y    
Column 8 SECTOR_CODE 'RANDLOV','POSTCODE' Y    
Column 9 UNIT_CODE 'RANDLOV','POSTCODE' Y    

Back to the top