《(数据整理)大数据治理的关键技术探讨.docx》由会员分享,可在线阅读,更多相关《(数据整理)大数据治理的关键技术探讨.docx(18页珍藏版)》请在优知文库上搜索。
1、(数据整理)大数据治理的关键技术探讨数据是政府、企业和机构的重要资源。数据治理关注数据资源有效利用的众多方面,如数据资产确权、数据管理、数据开放共享、数据隐私保护等。从数据管理的角度,探讨了数据治理中的一项关键技术:数据整理。介绍了以数据拥有者和直接使用者(行业用户)为核心的数据整理的关键技术,包括数据结构化处理、数据质量评估及数据清洗、数据规范化、数据融合与摘取、数据整理的发布共享等。最后,针对加强数据整理方面的研究提出了一些思考。1引言大数据作为一种资源,在政府、大型企业和机构中发挥着越来越重要的作用。随着大数据应用的不断推进,与数据资源的价值提炼、保值和增值密切相关的大数据治理越来越引起
2、人们的重视。大数据治理是一项复杂的工程,它需要在国家、行业、企业等多个层面上开展体系化的建设,技术上包含数据资产确权、数据管理、数据开放共享、数据隐私保护等诸多方面。这些技术面临的挑战多、难度大,很多方面还没有形成被广泛认可的系统化的解决方案。本文从数据管理这一关键环节出发,探讨其中的关键支撑技术:数据整理(datawrangling)。数据整理也叫数据准备,是在挖掘提炼数据价值的过程中进行的前期的数据预处理工作。它看似不足轻重,实则非常重要。有调查研究表明,很多大数据分析任务80%以上的工作花费在数据整理上,这给数据分析带来了巨大的人力成本。很多分析设想因为承担不起前期的数据整理工作而最终被
3、放弃。更重要的是,由于缺少系统性和理论性的支撑,数据整理的质量千差万别,这给数据分析的结果带来了很大的不确定性,大大影响了大数据价值的挖掘与提炼。因此,人们很有必要重视数据整理的研究工作,它是整个数据治理环节中一项重要的基础性工作,但是这项工作在学术界和企业界并没有得到应有的重视。2数据整理概述在数据仓库时代,数据预处理主要指的是抽取、转换和加载(ETL)过程。笔者探讨的数据整理和ETL过程有相似的地方,两者都将多源异构的数据集通过一系列处理和转换,变成想要的输出形式。但二者之间是存在较大差别的,具体如下。针对的用户不同。ETL服务于专业的数据工程师,而数据整理服务于企业内部所有的数据使用者,
4、以对数据处理技术不熟悉的业务用户为主。这些用户虽然缺少数据管理与数据处理知识,但对业务非常熟悉,对数据背后的语义更清楚。他们是企业机构大数据价值发现的主力。如何针对这类业务型数据分析人员的需求和特点,提供高效的数据整理工具,是数据整理技术面临的一大挑战。数据处理的目的不同。数据仓库中的ETL是为了建立数据仓库采用的相对固定的数据处理流水线。数据处理过程一旦建立,整个过程比较静态,很少再变化。数据整理是针对企业业务系统中的问题,动态构建的数据处理过程。它针对具体问题进行数据预处理,针对不同问题采用不同的数据整理过程,一些任务之间可以共享某些数据整理过程。数据处理的对象不同。ETL处理的数据对象多
5、为业务系统数据库中的结构化数据源,这些数据源有很规范的元数据。数据整理则面临更复杂、更多样化的数据源,直接应对大数据多样性(variety)的挑战。这种多源异构性在很多大数据应用中非常常见。数据整理技术通常需要帮助用户将其拥有的数据与外部的一些数据源进行关联和数据融合。融合过程中存在的大量数据质量问题(如数据项缺失、不一致、重复、错位、异常值等)给数据整理带来了巨大挑战。与ETL技术相比,这种变化是一种质的变化。数据整理是为了使数据更好地服务于数据分析而对数据进行的审查和转换的过程,它是整个数据分析流程中最占用精力的过程。从技术上讲,数据整理包含前期数据解析与结构化处理、数据质量评估与数据清洗
6、、数据集成和提纯等过程。由于问题的复杂性,数据整理过程通常不是完全自动化的,而是需要用户介入的反复迭代和交互的过程。数据可视化、用户反馈与交互在整个过程中都发挥了重要作用。数据整理是由数据可视化领域的JefferyHeer教授(华盛顿大学)和数据库领域的JosephM.Hellerstein教授(加州大学伯克利分校)等人较早提出来并持续开展系列研究的。他们还将研究成果进行了产业化,成功创立了以数据整理为主业的Trifacta公司。本文主要在上述两位教授及其合作者发表的一些成果的基础上,对数据整理包含的一些核心要素进一步地阐述,以期引起人们对数据整理研究和应用的重视。3数据整理的核心技术3.1
7、数据的结构化处理很多数据模型和算法是构建在结构化数据基础上的,多源异构数据要更好地与其他数据集融合,结构化处理是必不可少的过程。数据结构化处理首先要对原始数据进行解析,提取出需要的信息,再进一步将其转换成结构化数据。很多非结构化数据、Web数据是以文本形式存在的,需要使用信息抽取技术识别文本中的实体、属性、关系等信息。也有很多数据采用的是结构化强一些的数据模型,如JSO格式,这类数据相对关系型数据更灵活,在结构化转换过程中也需要一些技术上的处理。结构化处理的主要输出形式是二维表或者图数据,它需要用户确定数据在转换过程中采用的规则。3.2 数据质量评估与数据清洗结构化处理主要是数据表达形式上的转
8、换,数据结构化之后并不意味着能够直接使用。处理后的数据还要进行质量评估,如果发现数据中存在问题,则采取进一步的数据清洗措施。这个过程称作数据质量评估。一些简单的数据质量问题可以利用自动化的算法发现,因为数据质量问题的多样性和不可预测性,数据可视化技术成为数据质量评估的关键技术。借助可视化技术,对数据语义非常了解的业务人员更容易发现数据存在的质量问题(如缺失、不一致、异常等)。伴随着数据质量问题的发现,用户可以定义一些数据清洗规则,批量化地处理数据中存在的质量问题,提高数据清洗的效率。在数据库研究领域,也有人借助众包的思路提升数据清洗的效率。这种做法也是基于用户在数据清洗过程中发挥的重要作用进行
9、的。在数据清洗过程中,需要多轮次的人机交互,系统的交互界面和交互方式对于数据清洗算法的有效性尤为重要。3.3 数据规范化数据清洗还有一项重要的内容是数据规范化,这也是数据准备中常见的问题。规范化有简单的底层数据层面的,如数据类型转换、单位变换、格式表换等,也有较为复杂的数据项规范化处理,如电话号码、邮编、地址等。这类问题的主要成因是自然语言表达上的差异性会造成同一实体存在多种表达形式。比较典型的例子是地址,人们需要对其进行规范化处理,以提升数据的质量。地址的规范化面临的一个比较大的挑战就是粒度的选取,同一个地址可以用不同粒度进行表达。数据的规范化处理需要根据应用的需求特点,确定数据粒度和表达方
10、式。地址规范化处理背后的问题是实体链指问题,即把同一实体的不同表达形式(不同名字)映射到同一个实体名字上,消除实体表达的语义鸿沟,进而通过关联在数据集中不同地方出现的相同语义的实体,达到数据融合的目的。此外,缺失值填充也是数据规范化处理过程中常见的问题。一种处理方式是利用缺失数据的上下文数据,采用数据插值的办法修复缺失数据;另一种处理方式是采用平均值或者缺省值的办法填充缺失数据,有时候也用这种办法替换系统发现的异常值。3.4 数据融合与摘取很多数据价值的发现源自于多源异构数据之间的关联和在关联数据基础之上进行的数据分析。将多个数据集(很可能来自于多个数据源)融合到一起,可使数据内容更丰富,更容
11、易获得新的发现。然而,多源数据融合所需的数据整理过程面临的挑战是很大的。多源头的数据缺少统一的设计,这导致数据集成和数据融合的难度加大。传统的基于模式的数据集成方法很难发挥出大的作用,解决这一难题更多地要从数据项的层面关联数据。因此,实体链指操作在数据融合过程中就显得尤为重要。数据在实体层面的链指可以丰富实体的语义,建立跨数据项之间的关联。由于实体表达的模糊性,实体上下文信息对实体链指精度的影响非常大,有效利用实体上下文信息(如文本中的语境、表结构中同行属性值等)是实体链指的关键。数据融合是数据集整合的过程,有些分析任务未必需要全部整合后的数据,可能仅需要一部分数据支撑分析任务。在这种情况下,
12、需要从数据集中提取部分数据(如一些样本或者数据片段),降低数据量,供数据分析模型实现分析操作。这一过程称作数据摘取,它需要根据任务的特点摘取相关数据。3.5 发布共享企业中复杂的数据分析任务经常需要被共享,某些数据整理操作也会被重复使用,这意味着数据整理的操作也是企业机构的一种资源。企业需要将这些操作以脚本的形式物化出来,使其能够被检索、分享和重复利用。经过数据整理过程的数据,其世袭关系需要被记录下来,以确保用户能够追溯数据的来源,也便于利用索引技术检索需要的数据整理操作。企业内部对数据整理的共享对于企业内部知识管理、协同工作而言有很重要的意义。4以技术带动数据治理能力通过以上分析可以看出,数
13、据整理以提升数据分析的效率和质量为目的,在整个大数据分析流程中占有重要的地位。近些年来,尽管学术界在数据质量管理方面做了大量的研究性工作,但在实际应用中,很多数据整理的需求并没有得到很好的满足,还缺少数据整理方面的工具,尤其是系统化的数据整理工具。对于工业界而言,数据整理工作更多地被看作数据分析人员应完成的工作,人们并没有从工具和系统的角度开发设计高效率的数据准备工具,这使得数据分析人员在执行数据整理任务时,执行了大量重复性的工作。因此,加强数据整理的研究和应用工作是很有必要的。4.1 数据的结构化与规范化信息抽取是指从非结构化的文本中识别实体,并发现实体的属性、实体之间的关系,在互联网信息抽
14、取、知识库构建等领域发挥着重要的作用。命名实体识别的目的是发现文档中的各种实体,如人物、地理位置、组织、日期、时间等。命名实体识别技术分为以下3类。基于正则表达式的命名实体识别:把预先定义的正则表达式和文本进行匹配,把符合正则表达式的文本模式都定位出来。基于正则表达式的命名实体识别一般用于识别日期、时间、金额、电子邮件等规则的文本。基于字典的命名实体识别:把文本和字典里的短语,类别对进行匹配,对匹配的短语进行实体标注,一般用于识别人名、地名。基于机器学习模型的命名实体识别:预先对一部分文档进行实体标注,产生一系列的短语,类别对,利用这些文档进行机器学习模型的训练,然后用这个模型对没有遇到过的文
15、档进行命名实体识别和标注。指代消解是自然语言处理中和命名实体识别关联的一个重要问题。比如在对某位专家学者进行的一个访谈中,除了第一次提到其姓名、职务之外,之后提到这位专家,文本中可能使用“某博士”“某教授”“他”等代称,或者以其担任的职务相称,如“所长”等。如果访谈中还提及其他人物,并且也使用了类似的代称,那么把这些代称对应到正确的命名实体上就是指代消解。在自然语言处理中,经常遇到的一个问题是命名实体的歧义,比如重名问题。为了让计算机正确地分析自然语言书写的文本,命名实体的歧义需要被消除,也就是把具有歧义的命名实体唯一地标识出来。关系抽取是信息抽取的一个重要的子任务,负责从文本中识别出实体之间
16、的语义关系。它分为3类方法:有监督的学习方法,该方法包括基于特征向量的学习方法和基于核函数的学习方法;半监督的学习方法,该方法无需人工标注语料库,但是需要根据预定义好的关系类型人工构造出关系实例,将这个关系实例作为种子集合,然后利用Web或者大规模语料库信息的高度冗余性,充分挖掘关系描述模式,通过模式匹配,抽取新的实体关系实例;无监督的学习方法,该方法是一种自底向上的信息抽取策略,它假设拥有相同语义关系的实体对的上下文信息较为相似,其上下文集合代表该实体对的语义关系。较新的技术是使用向量(embedding,基于词或者实体)的方式将结构化和非结构化数据中提及的实体关联起来,利用向量间的相似性,实现以向量为中介的异构数据的结构化处理和关联。4.2 数据集成数据集成是伴随企业信息化建设的不断深入而形成的。例如,因业务的需要,企事业单位内部普遍构建了多个异构的信息系统(这些信息系统可以自主选择合适的操作系统,有独立的数据库和应用界面,完全是一个自