论文部分内容阅读
键值存储系统为云计算和大数据管理提供了一种分布式解决方案,并且广泛用作众多Web应用的数据平台。例如,Facebook社交网站采用Cassandra,亚马逊在线购物网站采用Dynamo。为了快速响应Web查询,键值存储系统通常采用弱一致性模型。弱一致性模型通过放松数据一致性要求带来了系统响应性能的提升,但是同时也造成了负面影响,即用户访问到的数据可能是陈旧的。因此,查询延迟与数据一致性两者之间存在内在的矛盾,这对矛盾已经成为设计大规模分布式数据管理系统时所需要考虑的关键因素之一。具体来说,在某一数据存储节点上,数据一致性表现为查询所访问数据的新鲜程度。因此,查询延迟与数据一致性的矛盾在节点级进一步表现为查询延迟(即,服务质量)与数据新鲜度(即,数据质量)之间的矛盾。在实际应用中,不同Web查询或不同用户对服务质量和数据质量的期望不尽相同。为此,本文围绕如何从系统节点级优化服务质量和数据质量这一核心问题展开探讨,主要贡献如下:·分析了分布式键值存储系统中的异步更新模型以及服务质量与数据质量的衡量方法,形式化地定义了质量感知调度问题。本文分析了键值存储系统的数据组织模型、数据备份与一致性、用户查询以及系统更新,抽象出与质量感知调度密切相关的异步更新方式,详细阐述了状态迁移更新方式和操作迁移更新方式这两类不同异步更新方式的特点,并且进行了合理建模。同时,本文分别基于服务级协议和新鲜度级协议衡量了服务质量和数据质量。在此基础上,本文合理地设置参数进行模型分析,形式化地定义了分布式键值存储系统中的质量感知调度问题。·设计了面向状态迁移更新方式的基于数据新鲜/查询延迟、自适应数据新鲜/查询延迟等调度机制及其热度感知版本,合理平衡了服务质量和数据质量。在采用状态迁移更新方式的键值存储系统中,本文根据有选择性地执行更新的思想,即执行或跳过更新的执行,提出了基于数据新鲜/查询延迟的调度机制,综合考虑了用户在服务质量和数据质量两个方面的需求。为了利用截止时间这一重要因素来进一步平衡服务质量和数据质量,本文提出了数据新鲜/查询延迟调度机制的变种,即自适应的数据新鲜/查询延迟调度机制。为了考虑数据访问模式的倾斜性,本文将查询根据访问的数据项进行分组并以查询分组为单位进行调度,提出热度感知的调度机制。因此,本文所提出的这一系列调度机制可以有效支持面向状态迁移更新方式的质量感知调度。·提出了面向操作迁移更新方式的近似方法,有效降低基于数据新鲜/查询延迟的调度机制及其热度感知版本中更新数目计算的复杂度。在采用操作迁移更新方式的键值存储系统中,本文扩展了数据新鲜/查询延迟调度机制。虽然该机制的主要原理与面向状态迁移更新方式的数据新鲜/查询延迟调度机制的相同,但是操作迁移方式下数据新鲜/查询延迟调度机制将执行或跳过更新的二元决策推广至执行多少个更新的决策。类似地,在操作迁移方式下,热度感知的数据新鲜/查询延迟调度机制也从二元决策推广至执行多少个更新的决策。因此,为了在更新较为频繁时降低关于更新数目计算代价,本文提出的相应的近似方法,可以有效降低面向操作迁移更新方式质量感知调度的算法复杂度。·实现了质量感知调度器的原型系统及其测试基准,并根据原型系统演示了质量感知调度对在线应用的支持。本文考察了分布式键值存储系统中的具体技术实现,描绘了质量感知查询调度器的原型框架,并且以Cassandra为基础实现质量感知调度器的原型系统AQUAS。本文还设计了针对分布式键值存储系统中质量感知调度的测试基准方案,并且以基于YCSB阐述了测试基准QCSB的实现。此外,本文以微博首页时间轴查询为例,描述了如何基于AQUAS支持在线应用,展示了质量感知调度实际在线应用中的意义。因而,本文既设计实现了质量感知调度器的原型系统,又提出了针对这类系统的测试基准,并展示了所支持的在线应用,是一套完整、有效的解决方案。综上所述,本文重点研究了键值存储系统中质量感知调度问题,设计了质量感知调度器原型的基本框架,并展示了质量感知调度对在线应用的支持。这一系列研究工作具有连贯性和可持续性,形成一个相对完整的整体。本文所完成的工作是建立在对已有理论、技术和方法的详尽调研和分析的基础上。理论分析和实验结果都表明,本文为键值存储系统中质量感知调度提出的一整套解决方案具有好的性能和效果。