海量数据存储环境下提升I/O吞吐率的方法及系统技术方案

技术编号:12530880 阅读:71 留言:0更新日期:2015-12-18 02:22
本发明专利技术涉及海量数据存储领域,提供一种海量数据存储环境下提升I/O吞吐率的方法及系统,以解决数据中心的I/O服务无法得到更好利用的问题,该系统包括数据中心、业务服务器、访问代理服务端、分类模块、消息队列构建模块。本发明专利技术提出的技术方案通过构建消息队列并通过消息队列将同类的操作进行合并以及组织成批量操作,大大减少了远程通信的次数和频度,从而显著提高了I/O吞吐率,解决了带宽和业务平台通信库的读写损耗过高导致无法更好地利用数据中心I/O服务的问题。

【技术实现步骤摘要】

本专利技术涉及海量数据存储领域,特别涉及一种海量数据存储环境下提升I/O吞吐率的方法及系统
技术介绍
数据中心是一整套复杂的计算机基础设施,它不仅仅包括计算机、软硬件系统和其他与之配套的设备(例如通信、存储系统、供电设备等),还包含冗余的数据通信连接、环境控制设备、监控设备以及各种安全装置。数据中心在海量存储设施方面通常提供了数种存储服务,其中包括:基于关系数据模型的存储服务、基于键/值对的存储服务、基于文档的存储服务等。数据中心在提供存储服务方面,通过采用高级、超强运算的硬件设施,保证了 I/O服务的高性能。而业务平台在使用数据中心的存储服务时,为了提升存储I/o吞吐率,往往使用了多线程的设计。多线程的设计能够很大地提高I/o吞吐率,但是它也受到一些限制,比如会受到业务平台本身的带宽或内存的限制,又或者是业务服务器自身同时部署了多个业务导致CPU占用过高而被延迟,以至于业务平台在处理I/O时,I/O吞吐率提升到一定程度后就会达到瓶颈,无法继续提升,进而导致数据中心的I/o服务无法得到更好的利用。
技术实现思路
【要解决的技术问题】本专利技术的目的是提供一种海量数据存储环境下提升I/O吞吐率的方法及系统,以解决数据中心的I/O服务无法得到更好利用的问题。【技术方案】本专利技术是通过以下技术方案实现的。本专利技术首先涉及一种海量数据存储环境下提升I/O吞吐率的方法,该方法包括步骤:A、对数据中心的键/值对存储服务端的操作进行分类得到不同的操作类型;B、分别为各个操作类型构建消息队列;C、当业务服务器的多线程端向访问代理服务端发送I/O操作请求时,访问代理服务端接收业务服务器的多线程端发送的I/o操作请求并将I/O操作请求按照不同的操作类型分发到对应的消息队列;D、消息队列接收访问代理服务端发送的I/O操作请求,对进入各消息队列的操作请求进行合并和/或组织成批量操作,再提交到数据中心的键/值对存储服务端,并将I/O操作结果返回给访问代理服务端;E、访问代理服务端接收消息队列发送的I/O操作结果并将I/O操作结果返回给业务服务器的多线程端。作为一种优选的实施方式,所述步骤A中的操作类型包括:根据键名检索键值、提供键名和键值保存键/值对、根据键名删除键/值对、根据键名判断键/值对是否存在、根据键名让对应的键值依次递增或递减、根据键名检索相应的键值并存储新的键值、对列表数据结构的基本操作、对集合数据结构的基本操作。作为另一种优选的实施方式,所述对列表数据结构的基本操作包括数据进栈和数据出桟。作为另一种优选的实施方式,所述对集合数据结构的基本操作包括求数据交集、求数据并集和求数据差集。本专利技术还涉及一种海量数据存储环境下提升I/O吞吐率的系统,该系统包括:数据中心,其包括键/值对存储服务端;业务服务器,其包括多线程端,所述业务服务器的多线程端被配置成:向访问代理服务端发送I/O操作请求、接收访问代理服务端返回的I/O操作结果;访问代理服务端,其被配置成:接收业务服务器的多线程端发送的I/O操作请求并将I/o操作请求按照不同的操作类型分发到对应的消息队列、接收消息队列发送的I/O操作结果并将I/O操作结果返回给业务服务器的多线程端;分类模块,其被配置成:对数据中心的键/值对存储服务端的操作进行分类得到不同的操作类型;消息队列构建模块,用于分别为各个操作类型构建消息队列,所述消息队列被配置成:接收访问代理服务端发送的I/O操作请求,对进入各消息队列的操作请求进行合并和/或组织成批量操作,再提交到数据中心的键/值对存储服务端,并将I/O操作结果返回给访问代理服务端。作为一种优选的实施方式,所述分类模块分类的操作类型包括:根据键名检索键值、提供键名和键值保存键/值对、根据键名删除键/值对、根据键名判断键/值对是否存在、根据键名让对应的键值依次递增或递减、根据键名检索相应的键值并存储新的键值、对列表数据结构的基本操作、对集合数据结构的基本操作。作为另一种优选的实施方式,所述对列表数据结构的基本操作包括数据进栈和数据出桟。作为另一种优选的实施方式,所述对集合数据结构的基本操作包括求数据交集、求数据并集和求数据差集。【有益效果】本专利技术提出的技术方案具有以下有益效果:本专利技术通过构建消息队列并通过消息队列将同类的操作进行合并以及组织成批量操作,大大减少了远程通信的次数和频度,从而显著提高了 I/O吞吐率,解决了带宽和业务平台通信库的读写损耗过高导致无法更好地利用数据中心I/O服务的问题。【附图说明】图1为本专利技术实施例一提供的海量数据存储环境下提升I/O吞吐率的系统的框图。【具体实施方式】为使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图,对本专利技术的【具体实施方式】进行清楚、完整的描述,显然,所描述的实施例是本专利技术的一部分实施例,而不是全部实施例,也不是对本专利技术的限制。基于本专利技术的实施例,本领域普通技术人员在不付出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术的保护范围。实施例一实施例一提供一种海量数据存储环境下提升I/O吞吐率的系统,图1为本专利技术实施例一提供的海量数据存储环境下提升I/O吞吐率的系统的框图。如图1所示,该系统包括数据中心、业务服务器、访问代理服务端2、分类模块、消息队列构建模块。数据中心包括键/值对存储服务端4。键/值对存储服务端4是数据中心存储服务器集群的组成部分。业务服务器包括多线程端1,多线程端I可以运行于单台业务服务器,也可以运行于多台业务服务器,业务服务器的多线程端I被配置成:向访问代理服务端2发送I/O操作请求、接收访问代理服务端2返回的I/O操作结果。访问代理服务端2负责汇总来自多线程端I的访问请求,访问代理服务端2被配置成:接收业务服务器的多线程端I发送的I/O操作请求并将I/O操作请求按照不同的操作类型分发到对应的消息队列3、接收消息队列3发送的I/O操作结果并将I/O操作结果返回给业务服务器的多线程端I。本实施例中,访问代理服务端2设置在消息队列3的前端。分类模块被配置成:对数据中心的键/值对存储服务端4的操作进行分类得到不同的操作当前第1页1 2 本文档来自技高网...

【技术保护点】
一种海量数据存储环境下提升I/O吞吐率的方法,其特征在于包括步骤:A、对数据中心的键/值对存储服务端的操作进行分类得到不同的操作类型;B、分别为各个操作类型构建消息队列;C、当业务服务器的多线程端向访问代理服务端发送I/O操作请求时,访问代理服务端接收业务服务器的多线程端发送的I/O操作请求并将I/O操作请求按照不同的操作类型分发到对应的消息队列;D、消息队列接收访问代理服务端发送的I/O操作请求,对进入各消息队列的操作请求进行合并和/或组织成批量操作,再提交到数据中心的键/值对存储服务端,并将I/O操作结果返回给访问代理服务端;E、访问代理服务端接收消息队列发送的I/O操作结果并将I/O操作结果返回给业务服务器的多线程端。

【技术特征摘要】

【专利技术属性】
技术研发人员:李强
申请(专利权)人:四川长虹电器股份有限公司
类型:发明
国别省市:四川;51

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1