数据集成系统中负责与数据源交互的组件的任务是将来自数据集成系统上层的查询发送给数据源,然后将结果转换成查询处理器可以处理的格式。在数据挖掘中,包装器是从特定信息源抽取内容并转换为关系数据的程序。包装器的复杂性由数据源的特点决定。如果数据源是一个关系数据库系统,则包装器的任务就相对简单,最简单的情况是仅仅包含与数据库的交互功能就可以实现。如果数据源是复杂的半结构化数据,如HTML页面等,包装器不仅需要解析这些半结构化数据,还要将其转换为关系元组的集合。
包装器构建的内容包括抽取数据源模式、构建抽取程序、将数据转换为目标模式。面向Web数据源的包装器构建方法为:①手动方法。需要开发者观察Web页面集合并手动创建数据源模式与抽取程序。②学习方法。首先人工创建数据源模式并在一组Web页面上标记模式属性以学习抽取程序。③自动方法。通过检查Web页面集合自动推导出数据源模式,并生成相应的抽取程序。④交互方法。它是学习方法和自动方法的结合,通过反馈来改进自动方法的结果。
包装器构建面临的挑战主要来自以下几个方面:①学习数据源模式。在处理Web页面这类数据源时需要从页面代码中推导出数据源模式。②学习抽取程序。半结构化数据的抽取程序需要具有最大的表达能力,然而实际上仅能学习有限的参数集合。③处理异常。数据在Web页面数据源中经常存在与数据源模式不符的异常布局情况,这可能导致数据源模式和抽取程序的修改。