Frequently Asked Questions
For Data Vault Modeling, Methodology, Architecture and Implementation. I will do my best to answer questions here as they come up. Feel free to post NEW questions, please read the proper category descriptions to keep them in the right place.
Have a Question? Submit one HERE.
Data Vault Implementation
I recently saw a post about SQL server deprecating older hashing algorithms requiring the newer Sha2 versions to be used which would increase the hash. I tried to reply to that but could not for some reason so I’ll just pitch the question here. We currently get around this by converting the value from HashBytes to a BIGINT. That has the plus of introducing integer based joins versus character based hash joins as well as providing good partition distribution, but we have always wondered if it increases the risk of collisions. We’ve tested this with all the algorithms and have yet to come across a collision…keeping our fingers crossed.. I actually wondered why this was not mentioned in the book as an alternative. Is it because it could increase the chance of collisions or some other consideration Dan?
HashBytes and MD5 Deprecated in SQLServer 2016
I found this information in SQL Server 2016 documentation.
Beginning with SQL Server 2016, all algorithms other than SHA2_256, and SHA2_512 are deprecated. Older algorithms (not recommended) will continue working, but they will raise a deprecation event.
Would using this have a performance impact? Would you recommend using either of the supported algorithms as a DV standard?