The ultimate Fabric, Power BI, SQL, and AI community-led learning event. Save €200 with code FABCOMM.
Get registeredEnhance your career with this limited time 50% discount on Fabric and Power BI exams. Ends August 31st. Request your voucher.
Many modern data warehouses use uniqueidentifiers/GUIDs as keys, particularly for systems that are sharded or generate keys from hashes. In native SQL Server queries, this equates to a relatively efficient 16-byte comparison. Power BI does not natively support uniqueidentifiers, but converts them to 36-character Unicode strings. The result is highly inefficient, as the keys must be loaded into a xVelocity dictionary and then suffer 72-byte comparisons. The performance impact is severe enough that there are many blog entries describing (problematic and difficult to maintain) workarounds (e.g. https://exceleratorbi.com.au/replace-guids-with-a-surrogate-key-for-better-performance/).
Power BI should support a 16-byte binary/long-bigint type internally to accommodate the importation of uniqueidentifiers/GUIDs and efficient usage as model keys. The prior generation of BI tools had no difficulty in properly utilizing uniqueidentifier/GUID key columns for joins. If Power BI expects to gain widespread adoption as a next generation tool, it should be fully compatible with data types used in underlying data warehouses.
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.