Data consistency is always a big concern when subsetting databases. Will it extract enough data from each table to create a consistent 'slice' of the database? There are a couple of factors that influence consistency. The main one is the classification of your data model. There are some tricks in DATPROF Subset that will help you create consistent subsets of your source database.
First we are going to discuss technical consistency or in database terms Referential Integrity. In a relational database foreign keys are used to enforce referential integrity. If we take a look at the following example, you may notice that the CONTRACTS table contains a column which references the CUSTOMERS table. This means that we know which contracts belongs to which customer. Within a database a foreign keys refers to a primary key the other table. In our example the foreign key on CUSTOMER_ID references the primary key ID field in the CUSTOMER table. The primary key must be unique, but the foreign key don't have to be unique. There can be more than one contract that belongs to a customer.
Referential integrity or technical consistency issues occur when records from the CONTRACTS table are referring to records in the CUSTOMER table that does not exist. In the above example contract 103 is referring to customer 5. But as you can see, there isn't a customer 5.
Some data models are so complex that following the subset process dependency network will cause initially missing records. Luckily DATPROF Subset will automatically validate all foreign keys and append the missing records. This means that after the initial subset run, some technical iterations can be executed to provide a technical consistent subset. The cool part is, that DATPROF Subset will do this automatically for you! You don't have to worry about this. But now you know and when it occur, you will understand the reason behind it.