目前,国际及国内市场上的脱敏系统产品主要面向政府、机关及企业客户,提供对生产环境中数据库数据的脱敏处理,保护数据在研发、测试及数据分析过程的隐私数据保护。通过部署数据脱敏系统,对脱离生产环境的敏感数据进行变形或屏蔽等不同的脱敏操作,并使脱敏后的数据信息保留其原始数据格式和数据属性的关联性,以确保业务数据在数据分析、开发和测试过程中正常的运行,同时提高测试类、分析类数据使用的安全性。
静态脱敏的部署模式非常灵活,脱敏系统部署模式可分为单机部署模式、集群部署模式。
单机部署模式:主要包括单服务器和成对服务器两种部署模式。
图示:单机部署模式(含单服务器和成对服务器)
单服务器部署模式,将连接业务部门的生产数据库,对生产数据进行抽取和数据脱敏,脱敏后的数据输出到测试部门的测试数据库中,供测试部门使用数据。单服务器部署模式用于客户生产环境网络和测试环境网络允许通过设备进行连接的使用场景。
成对服务器部署模式,在业务部门数据出口及测试部门数据入口分别部署脱敏服务器,可将业务部门的数据进行有效隔离,通过offline的方式,满足测试部门使用业务部门脱敏后数据的需求。多服务器模式用于客户生产环境网络和测试环境网络需要隔离的使用场景。
集群部署模式:
架构模式设计思路:
图示:集群部署结构图
集群部署架构脱敏,需要一个分布式执行任务的能力。在任意一台脱敏设备中执行脱敏任务,该任务会运行在压力最小的机器中(以任务及表为基础),从而达到可以同时并行运行多任务的能力。
主要构成说明:调度节点、脱敏节点(1个以上)、策略中心数据库有同步机制;调度节点负责整体的任务调度及脱敏任务监控,脱敏节点负责执行脱敏任务,脱敏节点对用户是透明的。整个集群部署结构中必须有调度节点和至少一个脱敏节点,且在调度节点中进行脱敏节点的设置。调度节点可以通过a/b设备实现调度节点的高可用。
平台化应用场景下对脱敏系统的综合处理能力提出了更高的要求,主要体现在:脱敏性能及吞吐量、数据发现的准确性、脱敏数据质量、脱敏系统的使用便捷性等方面。其中,尤其以脱敏性能及吞吐量作为核心评价指标。
目前的应用场景中,客户的数据量越来越大。单次脱敏任务所涉及到的数据量动辄达到数tb的量级,导致脱敏周期非常久,影响了日常开发、测试工作的开展。下面讲一个安华金和的案例。
案例
某商业银行总行数据量在20t左右,单表数据可达5亿行以上,由于涉及到压力测试需要导出全量数据进行脱敏,要求脱敏时间周期在72小时内完成,否则将影响测试部门的数据使用。
按单表脱敏处理,要满足这样的要求需要保证脱敏的处理(含数据抽取、脱敏和输出)平均速度在81m/s以上才能满足需要。同时,需要支持40个以上业务系统的并发处理。以工控机4核cpu,32g内存的配置计算,单台脱敏设备显然无法满足客户的高并发大数据量的脱敏需求。
表格:脱敏处理性能参数
单台设备(环境参数为4核cpu、32g内存)的脱敏性能测试情况,根据以往的测试结果可以看出,单表822g数据量脱敏用时16小时,单位时间的处理能力在14.6m/s。按此配置,增加线程对多表进行同时处理,多表3.2t的数据量理论上处理能力可达43.8m/s。对于81m/s的处理性能,单台设备远远不能达到要求。
通过增加单台脱敏设备的硬件配置,如采购更高配置的服务器来提高脱敏的处理性能的方式可以解决这一难题,但实际应用中往往因为客户数据库及网络环境的限制,即便是增加脱敏服务器的配置,同样很难满足需求。所以,希望有可能通过集群部署模式解决此问题。
表格:脱敏处理能力估算
在集群部署模式下,通过扩展脱敏节点数量可提高脱敏处理的并发能力。在数据总量20t的环境中,集群部署2个并发脱敏节点并行,单位时间的数据处理性能评估可达87.6m/s(此值为评估的理论数据,在实际测试环境中会有一定的偏差),20t的数据需要处理大约67小时左右,基本上能够满足72小时内完成20t数据脱敏的需求场景。但考虑实际的数据库环境及网络环境差异,会提出3个节点并发脱敏节点并行的方案,单位时间的数据处理性能评估可达131.4m/s(此值为评估的理论数据,在实际测试环境中会有一定的偏差),20t的数据需要处理大约44小时左右,完全能够满足72小时内完成20t数据脱敏的需求场景。
集群部署模式的价值体现:
第一,性能大幅度提升。通过集群部署,增加了脱敏处理的吞吐量,满足了客户在有限时间周期内大数据量脱敏处理的应用场景。
第二,系统高可用。弥补了单一脱敏设备在数据处理过程中遇到网络环境异常、设备异常等突发事件带来的任务中断无法正常执行的不足,保证系统的高可用性。
第三,适用场景扩大。用户在各种复杂的应用环境中,涉及与脱敏系统的应用对接满足流程化脱敏,脱敏后的数据发送及数据校验等各种场景,通过集群部署,在调度节点的配置管理中可充分考虑脱敏节点对不同的处理场景的处理机制。
试用申请