论文部分内容阅读
企业信息化建设的深化和进一步发展,产生了海量的数据。同时,业务逻辑的多变使得数据模式也在不断调整变化。企业信息决策也需要提取和分析海量的来源于Web的数据。如何有效管理这些海量、模式多变的数据,从而支持企业核心业务,辅助决策分析,为传统数据管理技术带来新的挑战。传统数据管理系统由于体系结构所限很难扩展管理这些数据。 针对这一个问题,现有研究基于目前流行的分布式云计算平台Hadoop来实现海量数据的存储和类SQL查询,并研制了若干系统,如侧重于实时数据查询响应的Hbase和侧重于离线数据分析的Hive。但是,这些系统不能同时兼顾实时数据查询、数据分析和支持数据模式多变的需求。 本文基于目前的研究进展,探讨了模式多变环境中同时支持实时数据查询和类SQL的实现策略,具体来讲,本文贡献如下: ●在核高基课题组提出的动态表存储机制上提供类SQL查询。动态表对元组集合进行基于B+树的按行有序分块,块内按照列存储。在动态表的数据存储下,提供基于MapReduce的类SQL查询支持,具体包括选择操作、聚集操作和连接操作的多种实现,其中包括本文提出的Index MapMerge Join和Index Reduce Join两种连接算法。 ●提出了针对连接操作的基于代价的优化策略。在基于动态表的数据存储模式下,提供一种基于代价估计模型的连接优化策略,对开销最大的连接操作进行代价估计,并利用代价估计模型对连接操作进行优化,提高分析处理效率。 ●实现了基于动态表的查询处理部件。通过模拟实验,初步验证了本文所提出方法的有效性。