论文部分内容阅读
大数据时代的来临,使各行各业都面临着管理、处理和查询海量数据的问题,DOA的提出很好地解决了这些问题。作为DOA的核心——数据注册中心是整个架构设计的重中之重,它存储着海量的元数据,并且其数据规模还在飞速的增长,以传统数据库为基础的数据注册中心显然不能够很好的完成其应有的职责。对此,本文使用NoSQL数据库来完成分布式数据注册中心的设计。数据发布者向分布式数据注册中心注册很多功能相同的数据,即这些元数据拥有着相同的关键字。因此,用户在搜索某一关键字后,得到大量的返回结果。在面临此种情况时,没有任何凭据可以帮助用户进行快速抉择。基于以上情况,本文引入了“数据质量”的概念。同时,为分布式数据注册中心设计了一种基于数据质量的排序算法,并基于MapReduce处理框架,实现了海量数据快速排序的功能。本文首先阐述了数据注册中心需要完成的功能,其次介绍了设计到的关键技术与概念,如Hadoop、MapReduce、NoSQL、Cassandra等等。在充分的需求分析之后,完成了概要设计和详细设计。本文完成的主要工作如下:(1)使用Cassandra数据库实现了元数据的分布式存储,完成分布式数据注册中心的数据库设计。(2)实现了针对关键字的元数据检索功能。通过存储着数据质量综合得分的关键字倒排索引列族,实现快速返回元数据排序结果的功能。(3)通过MapReduce并行计算框架实现了离线的、基于数据质量的加权求和排序算法,使用该算法定期地对每个关键字的倒排索引进行更新,即重新排序。本文主要的成果与创新点如下:(1)提出了一种应对大数据挑战的分布式数据注册中心的实现方法,该分布式数据注册中心使用Cassandra完成了元数据的分布式存储的功能。通过Cassandra本身的特性克服了传统注册中心中存在的大数据量查询缓慢、缺少冗余备份、不可扩展性等问题。(2)提出了一种针对基于关系型数据库的数据注册中心的全面重构设计模式。在此方面的主要工作包括:以面向数据查询的设计思想对元数据的存储结构进行重构,将元数据存储在4个列族中,分别是元数据描述列族、分类列族、关键字倒排索引列族和默认权值列族。(3)提出了将数据质量概念引入数据注册中心的设计思想。定义了7种可以量化、用于计算的数据质量标准,将这7种数据质量标准以元数据列的形式存储于元数据描述列族中。(4)提出了一种基于元数据数据质量的排序算法。运用MapReduce并行框架以及Cassandra自身的一些特性,设计了一种排序算法,该排序基于数据质量的加权求和得分,排序的结果存储在关键字倒排索引列族中,方便用户快速检索。