离线表数据敏感字段自动id化处理

简介: 离线表数据敏感字段自动id化处理

一、背景

对于一些表数据包含的铭感字段需要id 化处理,比如说:用户搜索了某个关键词,或者用户的购物地址是某个城市,这种都需要进行模糊化处理,但是直接模糊化处理不利于使用,比如说:在三四线城市(村镇收货地址)的用户可能是下沉用户,或者搜索过美妆相关的关键词用户认为大概率是女性用户,但是这种又不太方便对外进行展示,所以需要进行id化

认为地址位置id 为3和4的用户其实有非常相似的特征的。

二、实现思路

核心思路:用字典表和地址信息表进行关联,自动生成新的字典表,然后拿字典表和地址信息表进行匹配实现位置信息id化

三、具体实现

(1)首先构造一个字典表

表:location_dict
字段:location_name,location_id

(2)拿到字典表的最大id

MAX_ID=$(hive -e "select COALESCE(max(location_id), 0) from location_dict;")
echo "Max id : ${MAX_ID}"

(3)继续自动生成id,写入字典表

insert overwrite table location_dict partition (dt='${target_date}')
select a.location, (row_number() over (order by a.location desc) + ${MAX_ID}) as location_id from 
(select * from location_info
where dt='${target_date}') a
left outer join
location_dict b
on a.location = b.location
where b.location is null;

(4)生成id化之后的数据表

insert overwrite table location_result partition (dt='${target_date}')
select a.location,b.location_id from 
(select * from location_info
where dt='${target_date}') a
join location_dict b
on a.location = b.location

四、总结

敏感数据id化在一些数据安全场景中会经常用到,比如说:电商或者物流的收货地址信息、用户安装的app信息列表均可以考虑进行id化处理


相关文章
kettle开发篇-空操作
kettle开发篇-空操作
276 0
|
8月前
|
安全 数据建模 应用服务中间件
SSL证书怎么获得?获得后如何安装到服务器?
在当今互联网时代,SSL证书是保障网站安全的重要工具,实现HTTPS加密和身份认证,防止数据劫持或篡改,提升SEO效果。获取SSL证书需选择可信的CA机构、选择证书类型、生成CSR、验证域名及企业信息并获取证书。安装SSL证书到服务器(如Nginx)涉及上传证书文件、配置Nginx并重启服务。具体步骤可参考详细教程。 简介:SSL证书对网站安全至关重要,涵盖获取与安装流程,包括选择CA、生成CSR、验证信息、配置服务器等关键步骤。
|
11月前
|
数据采集 分布式计算 大数据
数据治理之道:大数据平台的搭建与数据质量管理
【10月更文挑战第27天】在数字化时代,数据治理对于确保数据资产的保值增值至关重要。本文探讨了大数据平台的搭建和数据质量管理的重要性及实践方法。大数据平台应包括数据存储、处理、分析和展示等功能,常用工具如Hadoop、Apache Spark和Flink。数据质量管理则涉及数据的准确性、一致性和完整性,通过建立数据质量评估和监控体系,确保数据分析结果的可靠性。企业应设立数据治理委员会,投资相关工具和技术,提升数据治理的效率和效果。
401 2
|
9月前
|
关系型数据库 OLAP OLTP
深入剖析 OALP 与 OLTP:概念、区别、技术、场景
本文深入剖析了OLTP(在线事务处理)与OLAP(在线分析处理)的概念、区别、技术及应用场景。OLTP专注于实时业务操作,确保数据一致性和高效性,适用于金融、电商等行业;OLAP则侧重于历史数据分析,支持复杂查询和多维分析,助力企业决策。两者在数据特点、系统设计、用户类型及数据库设计上存在显著差异。合理结合OLTP和OLAP,可提升企业的运营效率和决策水平。
1469 15
|
Web App开发 存储 缓存
第八篇 提升网页性能:深入解析HTTP请求优化策略(三)
第八篇 提升网页性能:深入解析HTTP请求优化策略(三)
338 0
|
存储 数据管理 数据库
|
前端开发 JavaScript 编译器
前端开发新视界:2024年的五大技术趋势
【10月更文挑战第3天】前端开发新视界:2024年的五大技术趋势
812 0
|
监控 安全 Linux
Docker——基础概念与操作
Docker——基础概念与操作
248 0
|
NoSQL Linux C语言
GDB:强大的GNU调试器
GDB:强大的GNU调试器
317 0
|
IDE 开发工具 Python
【Python】已解决:pip安装第三方模块(库)与PyCharm中不同步的问题(PyCharm添加本地python解释器)
【Python】已解决:pip安装第三方模块(库)与PyCharm中不同步的问题(PyCharm添加本地python解释器)
2832 0