Using hash keys
Hash keys were introduced in Data Vault 2.0 and play a central role in the design. One advantage of using hash keys is that both Hubs and Links can (and often will) have a composite key. This makes the keys large and inefficient. By creating a single hash value, the key becomes more efficient. This is not true for Hubs with small keys. In that case, hash keys are likely to be more inefficient. But there are other arguments. One other argument is that we want all tables to have the same structure. So, we also use a hash key, even when that is less efficient.
The most important advantage of using hash keys is the efficiency gain of the load process. To explain this, consider a star schema with surrogate keys. You need to load the dimension tables first. The surrogate keys are created during the insert of the new dimension rows. After all the dimensions have finished loading, you can start to load the fact table. The ETL process, which gets fact rows with source keys...