数据集成还涉及数据值冲突的检测与消除处理。对于现实世界的相同实体,来自不同数据源的属性值可能不同,这可能是由数据表示、比例、编码、数据类型、单位不统一,字段长度不同等原因造成的。例如,质量属性可能在一个系统中以公制单位存放,而在另一个系统中以英制单位存放。再如,不同学校交换信息时,每个学校有自己的课程设置和等级模式。一个大学可采用季度制,数据库系统中存在3门课程,等级从A+到F。另一个大学可能采用学期制,数据库系统中提供2门课程,等级从1到10,很难制定两所大学精确的课程和等级之间的转换规则,交换信息很困难。
例3_9_Attribute transformation.py
在实际业务中,监控系统会每天定时对磁盘的信息进行收集,但是一般情况下,磁盘容量属性都是一个定值(不考虑中途扩容的情况),因此磁盘原始数据中会存在磁盘容量的重复数据。要求剔除磁盘容量的重复数据,并且将所有服务器的磁盘容量作为一个固定值,方便模型预警,实现属性构造。(www.xing528.com)
磁盘原始容量表如图3-4左侧表格所示,其中磁盘相关属性以记录的形式存在数据中,其单位为KB。因为每台服务器的磁盘信息可以通过表中NAME、TARGETID、ENTITY三个属性进行区分,且上述三个属性值是不变的,可以将三个属性的值合并。属性变换后的磁盘数据结果如图3-4右侧表格所示,构造出了新的属性,本质上是进行行列互换操作。
图3-4 属性值的构造效果
目前来说,属性冲突处理方法没有统一的标准,根据实际需求进行处理即可。在现实世界实体中,来自不同数据源的属性值或许不同。例如,重量属性在一个系统中采用公制,而在另一个系统中却采用英制;价格属性在不同地点采用不同的货币单位。这些语义的差异为数据集成带来许多问题。产生这种问题的原因可能是表示、比例尺度、编码的差异等。处理属性值冲突问题的方法主要有两种:一是形成唯一数据,如果要进行总体摘要统计,则需要以某种方式消除冲突以便报告一个数据;二是不消除冲突,要使用所有冲突的数据。如果在进行整体流程统计分析时使用不同业务流程的不同数据,则不同的指标将具有更好的渠道转换效果。数据处理过程中,要保证处理后的结果差异可解释,且客观稳定。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。