Skip to main content
Delphix

Algorithm: Shuffle (KBA4088)

 

KBA

KBA# 4088

At a Glance   

Versions: Applicable Delphix Masking versions: 4.x, 5.0.x, 5.1.x, 5.2.x, 5.3.x
Early name: This algorithm was formally called 'Secure Shuffle'. 
Description: The data is shuffled in batches of 10 rows.
Characteristics:

Type
Unique
Lookup1
Referential
Integrity2

1:1 Mapping3
Code based n/a No  No

1 Unique Lookup - Not applicable. 
2 Referential Integrity - The shuffle is random and will be different from execution to execution.
3 1:1 Mapping - This will not happen as the shuffle is random and random per block.

Character 
Encoding:
All.
Limitations: The algorithm is ok to Shuffle around 100,000 records.

Rule Set Filter is not working on this algorithm. If a filter is used it will only shuffle the values matching the filter but it will take data from the complete set.

Example 

The example shows different data and different encoding with the data set in 10 rows blocks. Note that each execution will produce a different result using the same input. 

+----+-----------------+-----------------+-----------------+
|    |                 | Exec 1          | Exec 2          |
| ID | Orig            | Mask            | Mask            |
+----+-----------------+-----------------+-----------------+
| 1  | NULL            | 123456789       | 123456789       |
| 2  | 1               | 123456          | 123456          |
| 3  | 12              | 1234567         | 1234567         |
| 4  | 123             | 12345           |                 |
| 5  | 1234            | 12345678        | 12345678        |
| 6  | 12345           | NULL            | NULL            |
| 7  | 123456          | 1234            | 12345           |
| 8  | 1234567         | 123             | 1               |
| 9  | 12345678        | 1               | 123             |
| 10 | 123456789       | 12              | 1234            |
+----+-----------------+-----------------+-----------------+
| 11 | 1234567890      | A               | AB              |
| 12 | 12345678901     | 123456789012345 | A               |
| 13 | 123456789012    | カナ             | カナ             | < Kanji
| 14 | 1234567890123   | ABC             | ABC             |
| 15 | 12345678901234  | AB              | 123456789012345 |
| 16 | 123456789012345 | 12345678901     | 1234567890123   |
| 17 | カナ             | 1234567890      | 12345678901     | < Kanji 
| 18 | A               | 123456789012    | 1234567890      |
| 19 | AB              | 1234567890123   | 123456789012    |
| 20 | ABC             | 12345678901234  | 12345678901234  |
+----+-----------------+-----------------+-----------------+
| 21 | ABCD            | ABCD_!@#        | ABCD_!@#        |
| 22 | ABCD_!@#        |    ABC          | !@#$            |
| 23 | !@#$            | Long Strings    | ABCD            |
| 24 |    ABC          | !@#$            | Long Strings    |
| 25 | Long Strings    | ABCD            |    ABC          |
+----+-----------------+-----------------+-----------------+