跳到主要内容
研究论文

蜂巢:基于FPGA的SmartNIC上的有序键值存储加速

出版:2023年12月20日 出版历史
  • 获取引文提醒
  • 摘要

    内存中有序的键值存储是现代分布式应用程序中的一个重要构建块。我们介绍了蜂巢,这是一种混合软件硬件系统,用于在有序键值存储上加速以读为主的工作负载,为包括扫描在内的所有操作提供线性化能力。蜂巢将B-Tree存储在主机内存中。它在CPU上执行<sc>put</sc>、<sc>update</sc]和<sc>delete</sc>。同时,它将<sc>scan</sc>和<sc>get</sc>卸载到基于FPGA的SmartNIC上。此方法支持大型存储并简化了FPGA实现,但也带来了跨慢速PCIe总线进行数据访问和同步的挑战。我们描述了蜂巢如何通过仔细的数据结构设计、缓存、请求并行和无序执行、无等待读取操作以及CPU和FPGA之间的快速同步来克服这一挑战。对于读取量大的YCSB工作负载,Honeycomb将最先进的有序键值存储的吞吐量提高了至少1.8美元乘以1.8美元</mml:mo></mml:math><inline-graphic xlink:href=“liu-ieq1-3345173.gif”/></alternatives></inline-formula>。对于受云存储启发的扫描繁重工作负载,Honeycomb将吞吐量提高了2美元乘以2美元</mml:mo></mml:math><inline-graphic xlink:href=“liu-ieq2-3345173.gif”/></alternatives></inline-formula>。对于大规模部署更为重要的性价比提高了至少1.5美元乘以1.5美元</mml:mo></mml:math><inline-graphic xlink:href=“liu-ieq3-3345173.gif”/></alternatives></inline-formula>关于这些工作负载。

    工具书类

    [1]
    B.Atikoglu、Y.Xu、E.Frachtenberg、S.Jiang和M.Paleczny,“大型键值商店的工作量分析”,见程序。第12届ACM SIGMETRICS/执行联合国际协调测量。模型。计算。系统。2012年,第53-64页。
    [2]
    P.A.Bernstein、V.Hadzilacos和N.Goodman,数据库系统中的并发控制与恢复第370卷。美国马萨诸塞州雷丁:艾迪森·韦斯利,1987年。
    [3]
    M.S.Brunella等人,《hXDP:FPGA NIC上的高效软件包处理》,in程序。第14届USENIX研讨会。操作系统。设计。实施(OSDI)2020年,第973–990页。
    [4]
    C.Buragohain等人,“A1:分布式内存中图形数据库”,in程序。ACM SIGMOD国际协调管理。数据,2020年,第329–344页。
    [5]
    M.Burke、S.Joyner、A.Szekeres、J.Nelson、I.Zhang和D.R.Ports,“PRISM:重新思考分布式系统的RDMA接口”,in程序。ACM SIGOPS第28交响乐团。操作系统。普林克。2021年,第228-242页。
    [6]
    B.Calder等人,《Windows Azure存储:具有强一致性的高可用云存储服务》程序。第23届ACM交响乐团。操作系统。普林克。2011年,第143-157页。
    [7]
    A.M.Caulfield等人,《云级加速体系结构》,in第49年。IEEE/ACM国际研讨会。米克罗基特。(微型),台湾台北,美国新泽西州皮斯卡塔韦:IEEE出版社,2016。
    [8]
    S.R.Chalamarasetti、K.Lim、M.Wright、A.AuYoung、P.Ranganathan和M.Margala,《FPGA memcached设备》,摘自程序。ACM/SIGDA国际交响乐团。现场可编程门阵列2013年,第245-254页。
    [9]
    Y.Chen、X.Wei、J.Shi、R.Chen和H.Chen,《使用RDMA和HTM的快速和通用分布式事务》程序。第11届欧洲财务会议计算。系统。2016年,第1-17页。
    [10]
    D.Comer,“无处不在的B树”ACM计算。Surv公司。第11卷,第2期,第121-137页,1979年。
    [11]
    “Redis社区”,Redis。访问时间:2023年4月3日。[在线]。可用:https://redis.io网址/
    [12]
    B.F.Cooper、A.Silberstein、E.Tam、R.Ramakrishnan和R.Sears,《使用YCSB对云服务系统进行基准测试》,in程序。第一交响乐团。云计算。2010年,第143-154页。
    [13]
    J.Ding等人,《ALEX:可更新的自适应学习索引》程序。ACM SIGMOD国际协调管理。数据2020年,第969-984页。
    [14]
    A.Dragojević等人,《无妥协:具有一致性、可用性和性能的分布式事务》程序。第25次研讨会。操作系统。普林克。2015年,第54–70页。
    [15]
    H.Eran、L.Zeno、M.Tork、G.Malka和M.Silberstein,“NICA:网络应用程序内联加速的基础设施”,in程序。USENIX年。技术确认(USENIX ATC)2019年,第345-362页。
    [16]
    D.Firestone等人,《Azure加速网络:公共云中的SmartNIC》程序。第15届USENIX交响乐团。Netw公司。系统。设计。实施(NSDI),D.Bansal,K.Vaid和D.A.Maltz,Eds.,2018年4月,第51-66页。
    [17]
    D.Heinrich、S.Werner、M.Stelzner、C.Blochwitz、T.Pionteck和S.Groppe,《语义web数据库系统中B+树的混合FPGA方法》程序。第十国际交响乐团。可重新配置的Commun-中央系统-芯片(ReCoSoC)美国新泽西州皮斯卡塔韦:IEEE出版社,2015年,第1-8页。
    [18]
    M.Herlihy,“无等待同步”ACM事务处理。程序。语言系统。(托普拉斯),第13卷,第1期,第124-149页,1991年。
    [19]
    M.P.Herlihy和J.M.Wing,“线性度:并发对象的正确性条件,”ACM事务处理。程序。语言系统。(托普拉斯),第12卷,第3期,第463-492页,1990年。
    [20]
    N.P.Jouppi等人,“三代人的十个教训塑造了谷歌的TPUv4i:工业产品”程序。ACM/IEEE第48年。国际交响乐团。计算。阿基特。(ISCA)美国新泽西州皮斯卡塔韦:IEEE出版社,2021年,第1-14页。
    [21]
    A.Kalia、M.Kaminsky和D.Andersen,《数据中心RPC可以通用且快速》程序。第16届USENIX交响乐团。Netw公司。系统。设计。实施(NSDI)2019年,第1-16页。
    [22]
    J.Kim等人,《LineFS:利用管道并行高效地卸载分布式文件系统的SmartNIC》程序。ACM SIGOPS第28交响乐团。操作系统。普林克。CD-ROM光盘美国纽约州纽约市:ACM,2021年,第756–771页。
    [23]
    J.Kim和A.Chang,“Poseidon V1 E1.S SSD存储系统”,开放计算项目,2022年。访问时间:2023年4月3日。[在线]。可用:https://www.opencompute.org/documents/poseidon-v1-reference-system-spec-pdf
    [24]
    T.Kraska、A.Beutel、E.H.Chi、J.Dean和N.Polyzotis,《学习索引结构案例》程序。Int.Conf.管理。数据2018年,第489-504页。
    [25]
    V.Leis、A.Kemper和T.Neumann,“自适应基数树:主内存数据库的ARTful索引”,in程序。IEEE第29届国际会议数据工程(ICDE),美国新泽西州皮斯卡塔韦:IEEE出版社,2013年,第38-49页。
    [26]
    J.J.Levandoski、D.B.Lomet和S.Sengupta,《Bw-tree:新硬件平台的B树》程序。IEEE第29届国际会议数据工程(ICDE)2013年,第302-313页。
    [27]
    B.Li等人,《KV-direct:具有可编程NIC的高性能内存键值存储》,in程序。第26交响曲。操作系统。普林克。2017年,第137-152页。
    [28]
    B.Li等人,《ClickNP:具有可重构硬件的高度灵活和高性能网络处理》,in程序。ACM SIGCOMM配置。2016年,第1-14页。
    [29]
    M.Liu、T.Cui、H.Schuh、A.Krishnamurthy、S.Peter和K.Gupta,《使用iPipe将分布式应用程序卸载到SmartNIC》程序。ACM特殊利益集团数据通信。2019年,第318–333页。
    [30]
    Y.Mao、E.Kohler和R.T.Morris,“快速多核键值存储的缓存技巧”,in程序。第七届ACM欧洲会议计算。系统。2012年,第183-196页。
    [31]
    P.E.McKenney和J.Walpole,“什么是RCU?”Linux每周新闻(LWN.net), 2007.
    [32]
    Mellanox,“ConnectX-3 VPI单双QSFP+端口适配器卡用户手册”,Mellanox2013年。[在线]。可用:https://www.mellanox.com/related-docs/user_manuals/ConnectX-3_VPI_Single_and_Dual_QSFP_Port_Adapter_Card_user_Manual.pdf
    [33]
    C.Mitchell、K.Montgomery、L.Nelson、S.Sen和J.Li,“在单元分布式B树存储中平衡CPU和网络”,in程序。USENIX年度。技术咨询(USENIXATC)2016年,第451-464页。
    [34]
    R.Nishtala等人,《在脸书上缩放内存缓存》程序。第十届USENIX交响乐团。Netw公司。系统。设计。实施(NSDI)2013年,第385-398页。
    [35]
    P.M.Phothilimthana、M.Liu、A.Kaufmann、S.Peter、R.Bodik和T.Anderson,“Floem:NIC加速网络应用程序的编程系统”,摘自程序。第13届USENIX交响乐团。操作系统。设计。实施(OSDI)2018年,第663-679页。
    [36]
    A.Putnam等人,《用于加速大规模数据中心服务的可重新配置结构》程序。第41年。国际交响乐团。计算。阿基特。(ISCA),明尼阿波利斯,明尼苏达州,美国。皮斯卡塔韦,新泽西州,美国:IEEE出版社,2014年,第13-24页。
    [37]
    Y.Ren等人,《在FPGA-CPU平台上使用B树的低延迟多版本密钥值存储》程序。第29届国际会议现场可编程逻辑应用。(FPL)美国新泽西州皮斯卡塔韦:IEEE出版社,2019年,第321-325页。
    [38]
    H.N.Schuh、W.Liang、M.Liu、J.Nelson和A.Krishnamurthy,《Xenic:SmartNIC-加速分布式事务》程序。ACM SIGOPS第28交响乐团。操作系统。普林克。2021年,第740-755页。
    [39]
    A.Singhvi等人,《CliqueMap:生产基于RMA的分布式缓存系统》,in程序。ACM SIGCOMM配置美国纽约州纽约市:美国医学会,2021年,第93–105页。
    [40]
    V.Venkataramani等人,《TAO:脸书如何服务社交图》程序。ACM SIGMOD国际协调管理。数据2012年,第791-792页。
    [41]
    Z.Wang等人,“建造一棵Bw树需要的不仅仅是流行语”程序。Int.Conf.管理。数据2018年,第473–488页。
    [42]
    X.Wei、R.Chen和H.Chen,“使用远程学习缓存的基于RDMA的快速有序键值存储”,in程序。第14届USENIX交响乐团。操作系统。设计。实施(OSDI)2020年,第117-135页。
    [43]
    H.Yang、Z.Li、J.Wang、S.Yin、S.Wei和L.Liu,“HeteroKV:异构CPU-FPGA平台上的可扩展线速键值存储”,in程序。设计。,自动化。测试欧洲Conf.Exhib。(日期)美国新泽西州皮斯卡塔韦:IEEE出版社,2021年,第834-837页。
    [44]
    A.Zeitak和A.Morrison,“杜鹃尝试:利用内存级并行实现高效DRAM索引”,in程序。ACM SIGOPS第28交响乐团。操作系统。普林克。2021年,第147-162页。
    [45]
    T.Ziegler、S.T.Vani、C.Binnig、R.Fonseca和T.Kraska,《为快速RDMA可访问网络设计分布式基于树的索引结构》程序。Int.Conf.管理。数据,2019年,第741–758页。

    引用人

    查看全部
    • (2024)简短公告:ROMe:RDMA的无等待对象第36届ACM算法和体系结构并行性研讨会论文集10.1145/3626183.3660262(371-373)在线发布日期:2024年6月17日

    索引术语

    1. 蜂巢:基于FPGA的SmartNIC上的有序键值存储加速
          索引项已通过自动分类分配给内容。

          建议

          评论

          信息和贡献者

          问询处

          发布于

          封面图片IEEE计算机汇刊
          电气电子工程师学会计算机期刊 第73卷第3期
          2024年3月
          325页
          ISSN公司:0018-9340
          期刊目录

          出版商

          IEEE计算机学会

          美国

          出版历史

          出版:2023年12月20日

          限定符

          • 研究文章

          贡献者

          其他指标

          文献计量学和引文

          文献计量学

          文章指标

          • 下载次数(过去12个月)0
          • 下载次数(最近6周)0

          其他指标

          引文

          引用人

          查看全部
          • (2024)简短公告:ROMe:RDMA的无等待对象第36届ACM算法和体系结构并行性研讨会论文集10.1145/3626183.3660262(371-373)在线发布日期:2024年6月17日

          视图选项

          查看选项

          获取访问权限

          登录选项

          完全访问权限

          媒体

          数字

          其他

          桌子

          分享

          分享

          共享此出版物链接

          在社交媒体上分享