新闻 动态 ·
News Center
关注我们 关注前沿

英特尔ISA-L技术助力腾讯优化冷数据存储系统

发表日期: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),具体可访问:https://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

永信贵宾会官网:www.yyhsjs.com
客户垂询邮箱:cuifang.mo@yyhsjs.com

客户垂询QQ1627678462

地址:深圳市福田区深南大道1006号国际创新中心C11
邮编:518026

电话:0755-82964380
邮件:xinyuan.guo@yyhsjs.com
地址:深圳市福田区深南大道1006号国际创新中心C座11楼

  • 官方微信

  • 官方微博
  • 服务热线

    0755-83647532

    微信服务号

    [!--page.stats—]