1、ViewShift:Dynamic Policy Enforcement With Spark and SQL ViewsWalaa Eldin MoustafaJune 10,2025Data Protection Scene2Can you relate?Too many policiesToo much dataGDPRDMAConsentPIIRight to be forgottenCCPAPrivacy by designAnonymizationThe Rise of Privacy and CompliancePrivacy DashboardsData ExportAd pr
2、eferencesSecurity checkupsData DeletionSolution is Easy!4Only 2 machinesSolution is Easy!5Only 2 machinesPoliciesData Lake MetadataSQLViewsData&ApplicationsCompliance Why Views6ExpressiveExpress multiple policies with projections,filters,joins,UDFs.PortableExecutable on multiple engines.ModularCan b
3、e drop-in replacement to underlying dataAgileRoll-out new views,rollback to previous viewsCREATE VIEW T1_UC1 ASSELECT CASE WHEN consent=ALLOW THEN a ELSE obf(a)FROM T1,Settings WHERE Settings.ID=T1.IDWhy Views7Column level filteringnabcde1a1b1c1d1e12a2b2c2d2e23a3b3c3d2e34a4b4c4d4e45a5b5c5d5e56a6b6c6
4、d6e67a7b7c7d7e78a8b8c8d8e89a9b9c9d9e9nbcde1b1c1d1e12b2c2d2e23b3c3d2e34b4c4d4e45b5c5d5e56b6c6d6e67b7c7d7e78b8c8d8e89b9c9d9e9Why Views8Column level maskingnabcde1a1b1c1d1e12a2b2c2d2e23a3b3c3d2e34a4b4c4d4e45a5b5c5d5e56a6b6c6d6e67a7b7c7d7e78a8b8c8d8e89a9b9c9d9e9nabcde1#b1c1d1e12#b2c2d2e23#b3c3d2e34#b4c4
5、d4e45#b5c5d5e56#b6c6d6e67#b7c7d7e78#b8c8d8e89#b9c9d9e9Why Views9Row level filtersnabcde1a1b1c1d1e12a2b2c2d2e23a3b3c3d2e34a4b4c4d4e45a5b5c5d5e56a6b6c6d6e67a7b7c7d7e78a8b8c8d8e89a9b9c9d9e9nabcde1a1b1c1d1e12a2b2c2d2e24a4b4c4d4e45a5b5c5d5e56a6b6c6d6e68a8b8c8d8e8Why Views10Cell level maskingnabcde1a1b1c1
6、d1e12a2b2c2d2e23a3b3c3d2e34a4b4c4d4e45a5b5c5d5e56a6b6c6d6e67a7b7c7d7e78a8b8c8d8e89a9b9c9d9e9nabcde1a1b1c1d1e12a2b2c2d2e23#b3c3#e34a4b4c4d4e45a5#c5d5#6a6b6c6d6e67a7b7c7d7e78#b8c8d8e89a9b9#Why Views11Multiple types of maskingnabcd1a1b1c1d12a2b2c2d23a3b3c3d24a4b4c4d45a5b5c5d56a6b6c6d67a7b7c7d78a8b8c8d8