服务热线
0755-83647532
发表日期:2018-03-01 文章编辑:管理员 阅读次数:
摘要
英特尔®ISA-L技术即(Intel® Intelligent Storage Acceleration Library)智能存储加速库技术。在英特尔®至强™处理器系列下,使用ISA-L技术解决了TFS(腾讯文件系统)在运行时的性能瓶颈。实验结果显示采用ISA-L技术的TFS性能提升了2.5倍。
ISA-L 技术简介
ISA-L 技术可帮助加速和优化基于英特尔® 架构 (IA) 的存储,在存储可恢复性、数据完整性、数据安全性提供优化,并加速数据的压缩。具体可以实现如下功能:Raid、Erasure Code纠删码、CRC (cyclic redundancy check)、Multi-buffer Hashing (MbH)(包括MD5、SHA1、SHA256 和 SHA512)、加密功能、压缩功能,其基本原理就是使用Intel CPU中的指令集对上述功能进行优化和加速,具体包括:INTEL AES-NI - 英特尔高级加密标准、INTEL SSE - 英特尔流式单指令多数据扩展、INTEL AVX/AVX2/AVX512 - 英特尔高级矢量扩展指令集系列。现在ISA-L已经开源,英特尔®会持续对开源版本进行维护,目前最新版本是v2.21 (2018/02/26),具体可访问://github.com/01org/isa-l 。
背景
在智能互联网时代,数据以几何级的速度爆炸增长,如何存储并管理这些海量数据,是很多互联网服务提供商面临的一个难题。在这些不断增长的数据中,大量数据例如图片等都属于不经常访问,却又不能删除的,因为客户依然随时可能访问这些数据。对于这类不常访问的“冷”数据,通常的做法是把它们迁移到一个专为冷数据而设计的存储系统。本文提到的就是一个英特尔®与腾讯合作的TFS冷数据存储项目。
成立于1998年的腾讯公司是目前中国最大的互联网综合服务提供商之一,拥有QQ,微信,腾讯游戏等众多互联网明星产品,一直以来,腾讯始终在存储技术、数据挖掘等技术领域投入巨大,致力于为互联网用户提供最佳的使用体验。在这些产品背后, TFS是其众多业务所需文件服务的核心系统。数亿用户的使用压力使TFS面临着巨大的计算性能,容量等方面的压力。
挑战
不同于传统存储系统,TFS冷存储系统项目主要使用的是老旧系统中回收而来的处理器,这就使计算性能成为存储系统的最大瓶颈。
为了在节省磁盘空间的同时保证可靠性,最初的TFS冷存储项目采用如图一所示的9+3纠删码(或擦除码)方案。9+3是指每9份数据块配以3份校验数据块,这样可以恢复任意1-3份丢失的数据。
图一 9+3纠删码方案 即使在项目中采用ISA-L技术进行优化,对这些老旧且低性能的服务器来说9+3纠删码方案仍会导致较重的运行负载。考虑到TFS冷存储项目中的数据大多为图片,这类数据偶而丢失是可以通常可以接受,加之9+3纠删码的冗余度对这类冷数据来说可能过于奢侈,因此腾讯改用如图二所示的10+2纠删码方案。使用异或函数在每10份数据中生成2份校验码,这样在发生1-2份数据丢失时,仍能恢复数据。
图二 10+2纠删码方案 优化过后的纠删码方案仍然存在一个明显的问题:大量的异或操作限制了系统性能。尽管优化了数据保护相关算法,但这种成本最优的解决方案不足以满足腾讯的业务需求。 因此腾讯需要寻找一种高效且便捷的方式来减少异或操作的开销。它需要一种经过优化且高效的异或函数来缓解系统性能瓶颈,同时满足冷存储系统的设计要求。 解决方案 英特尔®与腾讯的工程师们一起基于ISA-L技术优化TFS冷存储系统,提出的优化内容有以下两点: 1、使用ISA-L异或函数(gen_xor_avx)替换原有异或函数(galois_xor),实验结果表明这能带来大约50%的性能提升。 2、以指针数组的方式调用gen_xor_avx,这种方式减少了不必要的内存访问,进一步改善了编码效率。 结果分析 英特尔®ISA-L异或函数有效地解决了搭建冷存储系统时遇到的实际问题,腾讯的实验结果表明,相较于原方法改进后的方法获得250%的性能提升。
如此显著的性能提升成功的满足了腾讯在线系统的业务需求。值得一提的是英特尔®ISA-L技术已开放源代码,因此腾讯在不产生任何成本的情况下就获得了巨大的系统性能提升。
文章摘自英特尔精英汇
欢迎联系宝通集团咨询英特尔产品信息
宝通集团联系方式
咨询热线:0755-88603572 宝通官网:atfx7779.com 客户垂询QQ:1627678462 地址:深圳市福田区深南大道1006号国际创新中心C座11楼
客户垂询邮箱:cuifang.mo@atfx7779.com
邮编:518026