数据屏蔽函数(Data Masking Functions)
Hive在2.1.0版本后,支持数据屏蔽函数(Data Masking Functions),可以用于数据的快速掩码处理(脱敏)。
比如mask函数,默认会将查询回的数据,大写字母转换为X,小写字母转换为x,数字转换为n。当然也可以添加参数自定义转换的字母mask(string str[, string upper[, string lower[, string number]]])
,upper定义大写字母转换,lower定义小写字母转换,number定义数字转换。
--函数调用
mask("abcd-EFGH-8765-4321")
--结果为:
xxxx-XXXX-nnnn-nnnn
其余函数mask_first_n(string str[, int n])
可对前n个字符进行掩码处理。
mask_first_n(string str[, int n])
mask_last_n(string str[, int n])
可对后n个字符进行掩码处理。
mask_last_n(string str[, int n])
而mask_show_first_n(string str[, int n])
则是除了前n个字符,其余进行掩码处理,mask_show_last_n(string str[, int n])
是除了后n个字符,其余进行掩码处理。
mask_show_first_n(string str[, int n])
mask_show_last_n(string str[, int n])
当然,最后mask_hash(string|char|varchar str)
会返回字符串的hash编码。
mask_hash(string|char|varchar str)
使用这些函数,可以方便的对一些数据进行脱敏,从而在保证数据安全的情况下,交由教学使用。
后话
如果有帮助的,记得点赞、关注。在公众号《数舟》中,可以免费获取专栏《数据仓库》配套的视频课程、大数据集群自动安装脚本,并获取进群交流的途径。
我所有的大数据技术内容也会优先发布到公众号中。如果对某些大数据技术有兴趣,但没有充足的时间,在群里提出,我为大家安排分享。
公众号自取: