在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

使用可計算SSD加速云原生數據庫

SSDFans ? 來源:SSDFans ? 2023-05-25 09:33 ? 次閱讀

背景

PolarDB是阿里云設計的云原生OLTP數據庫,每個數據庫實例由多個數據庫節點和存儲節點組成,節點間通過高速RDMA網絡連接在一起。為了保證原子性,每個POLARDB實例同時僅允許一個數據庫節點處理寫請求,且通過Parallel-Raft協議在寫入時同時向存儲節點寫入3個副本。

2c9daad8-fa1e-11ed-90ce-dac502259ad0.png

計算存儲設備CSD是在具備基本存儲功能同時具備數據處理能力的存儲設備,相比使用CPU處理的模型,CSD采用的異構計算架構可以達到更好的性能和效率。但是CSD同時存在硬件成本更高、實際部署適配開發成本更高等問題。

動機

當前的POLARDB在數據庫節點中處理表掃描任務,將掃操作下移到存儲節點可以更好提升數據庫處理分析型負載的性能、降低網絡流量,而列存儲需要掃描時更高的數據處理能力。

關鍵在于如何擴展存儲節點使之支持處理額外的掃描任務。第一種方法是擴展存儲節點的CPU,然而這會帶來過高的成本問題;第二種方法是使用PCIe卡模式的FPGA擴展,但是這種方式同樣存在:掃描作為數據密集型負載帶來的數據傳輸流量過高導致的高功耗、負載間沖突,以及PCIe擴展卡帶寬瓶頸等問題。最后一種是本文提出方式,即分布式異構架構,將表scan操作分散到每個存儲設備中,由此帶來的挑戰包括:如何修改整個軟件存儲站以支持掃描操作下移;和如何降低FPGA的成本、提高FPGA并行性。

方法

本文首先解決了如何實現跨軟件棧的掃描下移工作,包括了POLARDB的存儲引擎、下層的分布式文件系統POLARFS以及可計算存儲器CSD。

首先作者講解了如何擴展POLARDB存儲引擎,使得存儲引擎可以將掃描任務傳遞給下層的POALRFS,并負責回收CSD返回的掃描結果,掃描任務的參數包括:被掃描數據的位置、被掃描表的結構以及掃描的條件。由于CSD難以支持所有的掃描條件(如LIKE),因此POLARDB的存儲引擎在收到掃描請求時需要首先分析掃描條件,并將CSD可以處理的條件子集傳遞下去,并在收到CSD的結果后進行二次檢查。

接著作者描述了如何擴展作為存儲底層的分布式文件系統POLARFS,POLARFS負責管理所有存儲節點上的數據。為了盡可能讓文件的大部分數據塊落在同一個CSD上,POLARFS采用了大粒度(4MB)條帶,當出現極少數的一個壓縮條帶橫跨兩個CSD時,存儲節點采用CPU處理對應的scan操作。在傳遞scan請求時,POLARDB存儲引擎傳遞給POLARFS的是文件偏移表示的被掃描數據位置,而CSD僅能定位以LBA形式的數據位置,因此,POLARFS在收到POLARDB存儲引擎的掃描請求書,會將橫跨m個CSD的請求分割成m個掃描請求,并將掃描請求中的偏移轉換到CSD的LBA。

之后作者描述了如何擴展CSD功能。CSD通過內核空間的驅動進行管理,每個CSD都暴露為一個塊設備。驅動將收到的POLARFS轉發的掃描請求分割成多個子任務,以解決大掃描任務長期占據NAND帶寬,影響普通IO請求延遲性能的問題。同時,子任務有助于降低硬件資源的使用率,提高NAND訪問的并行性,同時降低后臺GC可能的過高延遲。

為了更好的降低成本,作者修改了POLARDB存儲的數據塊格式,以充分利用FPGA實現掃描功能。增加了1字節壓縮類型,4字節的鍵值對數量和restarts鍵數量,這樣使得CSD不需要POLARDB存儲引擎傳遞塊大小即可直接解壓,同時可以高效處理restarts,并探測塊結束情況。

2cafdc1c-fa1e-11ed-90ce-dac502259ad0.png

由于FPGA難以實現多類型比較器,因此作者進一步修改POLARDB存儲引擎,將所有數據都存儲成同一的可比較格式,這樣CSD只需要實現單一類型比較器,有助于降低FPGA資源開銷。

在實現時,作者采用了終端的FPGA同時用作閃存管理和存儲計算單元,集成了軟LDPC編碼器,因此可以使用低成本的3D TLC/QLC以降低成本。作者使用FPGA實現了2個數據解壓引擎和3個數據掃描引擎,支持 支持Snappy解壓和=, ≠、>、≥、<、≤、NULL和!NULL條件。

2cb8eeb0-fa1e-11ed-90ce-dac502259ad0.png

評估

為了實際可用,CSD需要在滿足存儲計算的同時提供一流的IO性能,因此作者使用64層3D-TLC閃存,并支持了PCIe GEN3x4接口,達到了3.0GB/s和2.2GB/s的順序讀、寫帶寬,并做到在滿盤、GC觸發時590K/160K的4K隨機讀、寫IOPS。在解壓性能上,CSD的兩個解壓引擎實現了在60%和30%壓縮率下,2.3GB/s和2.8GB/s的總解壓吞吐量。

在使用TPC-H基準測試的LINEITEM表作為測試負載測試下,作者分別對比了下移掃描任務前后整體的掃描延遲和PCIe數據流量。對比項共有4個,分別是基于CPU、不進行壓縮的掃描下移;基于CSD,無壓縮的掃描下移;基于CPU有Snappy壓縮的掃描下移以及基于CSD、有Snappy壓縮的掃描下移。測試結果表明:相對于基于CPU的掃描下移,CSD將平均掃描延遲從55s降低到39s,同時CPU占用率從514%降低到140%,收益最低的TS-6測試項中,延遲依然從65s下降到53s,同時CPU利用率從558%降低到374%。測試同時發現,基于CSD的負載中,CPU負載與數據選擇性正相關,即傳輸到CPU的數據越少,CPU負載越低,而基于CPU的掃描則與數據選擇性無關。這說明基于CSD的掃描效率更高,且效率隨著CSD規模增加可以擴展。

2cbe7da8-fa1e-11ed-90ce-dac502259ad0.png

而從PCIe流量對比中可以發現,CSD的數據移動量更少,因此額外功耗更低。

2cc5a72c-fa1e-11ed-90ce-dac502259ad0.png

之后作者進行了系統級評估,在POLARDB的云實例上運行TPC-H負載進行測試。每個實例運行32個SQL引擎容器,分布在7個數據庫節點和3個后端存儲節點上,每個存儲節點包括12個3.7TB的CSD。分別考慮3個場景:1. 基準場景,即所有數據由存儲節點傳輸到數據庫節點進行處理;2. 基于CPU的下移場景,即掃描任務下移到存儲節點的CPU上;3. 基于CSD的下移場景,即掃描任務下移到CSD上。

2cced8c4-fa1e-11ed-90ce-dac502259ad0.png

測試結果表明,隨著請求數量增加,基于CSD的下移相比基于CPU的下移帶來更多的延遲性能提升,這是由于隨著并行請求數量增長,每個存儲節點有更多的并行掃描任務,更利于硬件并行化;另外,基于CSD的下移在表進行壓縮時表現出更高的性能提升,這是由于基于CPU的下移需要更多資源進行解壓。

流量測試結果表明,基于CSD的掃描下移相比與基于CPU的掃描下移,在7個TPC-H并行查詢時可以降低50%的PCIe流量,最大PCIe傳輸流量降低了97%,而12個并行TPC-H查詢的網絡總流量降低了70%。

總結

本文報告了跨軟-硬件協同的阿里云關系型數據庫POLARDBDA設計優化,以更高效處理分析型負載。其基本思想是將高開銷的表掃描操作分發到CSD中,核心思想簡單且與當前異構計算的工業趨勢吻合。測試結果表明本文的設計在查詢測試中可以獲得超過30%的延遲性能提升,同時減少50%的存儲-內存數據移動。作者表示,希望本工作可以激勵更多關于如何在云基礎設施更好利用CSD的探索。

The End

致謝

感謝本次論文解讀者,來自華東師范大學的碩士生黃奕陽,主要研究方向為存儲壓縮、存儲計算。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 存儲
    +關注

    關注

    13

    文章

    4314

    瀏覽量

    85842
  • SSD
    SSD
    +關注

    關注

    21

    文章

    2862

    瀏覽量

    117419
  • 數據庫
    +關注

    關注

    7

    文章

    3799

    瀏覽量

    64388
  • 阿里云
    +關注

    關注

    3

    文章

    956

    瀏覽量

    43036
  • 云原生
    +關注

    關注

    0

    文章

    249

    瀏覽量

    7950

原文標題:使用可計算SSD加速云原生數據庫

文章出處:【微信號:SSDFans,微信公眾號:SSDFans】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    ICDE:POLARDB定義云原生數據庫

    Native DataBase成為行業標準。以下為阿里云資深技術專家蔡松露演講實錄:現在我給大家介紹一下我們的云原生數據庫-POLARDB。大家可能要問到底什么是“云原生數據庫”,
    發表于 04-20 18:10

    直擊DTCC2018 阿里數據庫技術干貨全面解析

    的主題吧。1、主題:深度解析云原生數據庫POLARDB直播時間:5月11日下午15:00簡介:什么是“云原生數據庫”,云原生
    發表于 04-27 17:58

    數據庫廠商都怕低價競爭?阿里云說并不可懼

    ,我們來看看云原生數據庫由內而外有哪些具體的與眾不同?經過優化的計算和存儲引擎使得POLARDB讀性能可達百萬QPS,寫性能超過13萬QPS;采用計算節點和存儲節點分離的設計,滿足公有
    發表于 05-11 11:02

    重新定義數據庫的時刻,阿里云數據庫專家帶你了解POLARDB

    滿足了公有云計算環境下用戶業務快速彈性擴展的剛性需求,同時也滿足了互聯網環境下用戶對數據庫服務器高可用的需求。本文就帶領大家了解什么是“云原生數據庫”,
    發表于 05-30 16:58

    云棲干貨回顧 | 云原生數據庫POLARDB專場“硬核”解析

    POLARDB是阿里巴巴自主研發的云原生關系型數據庫,目前兼容三種數據庫引擎:MySQL、PostgreSQL、Oracle。POLARDB的計算能力最高可擴展至1000核以上,存儲容
    發表于 10-15 15:38

    如何使用原生hqc連接MySQL數據庫

    springboot項目中使用原生hqc連接MySQL數據庫
    發表于 06-08 12:12

    企業如何選擇云計算數據庫?

    近年來,企業將本地部署的數據遷移云端越來越成為一種趨勢。但是,企業是否應該使用在云端和本地運行的云原生數據庫數據庫?
    發表于 06-04 01:41 ?915次閱讀

    OLAP數據庫將全面地進入云原生時代,實現會數據庫就會大數據

    2020云棲大會期間,阿里巴巴正式成立云原生技術委員會,阿里巴巴高級研究員蔣江偉擔任委員會負責人,達摩院數據庫首席科學家李飛飛、阿里云計算平臺高級研究員賈揚清、阿里云原生應用平臺研究員
    的頭像 發表于 09-23 15:43 ?3973次閱讀

    阿里云PolarDB數據庫云原生進行到底!業內首次實現三層池化

    智能數據庫事業部總負責人李飛飛表示,PolarDB將云原生進行到底! ? 本次技術升級中,PolarDB實現了三項創新:第一,業內首次實現內存與計算、存儲的三層解耦,實現內存池化,使得彈性能力呈數量級提升,同時大幅度降低成本;第
    的頭像 發表于 10-20 11:15 ?1867次閱讀
    阿里云PolarDB<b class='flag-5'>數據庫</b>將<b class='flag-5'>云原生</b>進行到底!業內首次實現三層池化

    NVIDIA引入云原生超級計算架構

    隔離統一為超級計算服務。 Magnum IO 是數據中心的 I / O 子系統,它引入了新的增強功能,以加速多租戶數據中心的 I / O 和通信。我們將這些增強功能稱為 Magnum
    的頭像 發表于 11-21 10:43 ?2041次閱讀

    華為云云原生數據庫,激發數據活力

    華為云云原生數據庫 ,激發數據活力 伴隨數字化轉型步入“深水區”,企業的業務需求迭代迅速,數據量和并發訪問量呈指數級增長,傳統關系型數據庫
    的頭像 發表于 01-12 20:26 ?619次閱讀

    深耕數據庫根技術,華為云云原生數據庫推動汽車產業數智升級

    佑卡車基地,并分享了華為云云原生數據庫的最新技術和發展方向,以云原生力量全新推動汽車產業的數智升級。 汽車產業數智升級加速,福佑卡車迎勢而上 隨著汽車市場的蓬勃發展,業內專家提出了電動
    的頭像 發表于 06-29 16:44 ?436次閱讀
    深耕<b class='flag-5'>數據庫</b>根技術,華為云<b class='flag-5'>云原生</b><b class='flag-5'>數據庫</b>推動汽車產業數智升級

    云原生數據庫GaiaDB架構設計解析

    目前,云原生數據庫已經被各行各業大規模投入到實際生產中,最終的目標都是「單機 + 分布式一體化」。但在演進路線上,當前主要有兩個略有不同的路徑。
    的頭像 發表于 12-14 14:48 ?592次閱讀
    <b class='flag-5'>云原生</b><b class='flag-5'>數據庫</b>GaiaDB架構設計解析

    華為云原生多模數據庫 GeminiDB 架構與應用實踐

    近日,2023 全球分布式云大會·深圳站順利召開,華為云 NoSQL 數據庫研發總監余汶龍在會上發表了題為《華為云原生多模數據庫 GeminiDB 架構與應用實踐》的精彩演講。 余汶龍提出在智能
    的頭像 發表于 04-08 18:23 ?1178次閱讀
    華為<b class='flag-5'>云原生</b>多模<b class='flag-5'>數據庫</b> GeminiDB 架構與應用實踐

    云原生數據庫哪個好一些?

    云原生數據庫哪個好一些?云原生數據庫各有其獨特的優勢,適用于不同的場景。云原生強調高效資源利用、快速開發部署和高可伸縮性,適合需要高度靈
    的頭像 發表于 11-29 10:07 ?140次閱讀
    主站蜘蛛池模板: 国产成人精品一区二区三区| 超级乱淫片67194免费看| 77成人| 午夜视频久久| 久久观看| 免费我看视频在线观看| 国产区亚洲区| 免费色站| 亚洲第一在线视频| 男人操女人的网站| 四虎影院久久| www一片黄| sese综合| 欧美综合一区二区三区| 逼逼视频网站| 国产精品夜色7777青苹果| 色视频网站人成免费| 黄色片免费看视频| 天天综合久久久网| 日本不卡视频在线播放| 神马电影天堂网| 亚洲欧美性另类春色| 亚洲高清一区二区三区四区 | 18免费视频| 欧美一级高清片在线| 99色在线视频| vip影院在线观看| 四虎国产精品永久地址51| 亚洲444kkk| 李老汉和小花的性生生活| 人人干人人澡| 午夜在线播放视频| 欧美日本一区| 欧美18性精品| 国产精品资源在线| 张柏芝三级无删减在线观看| 国产欧美久久久精品影院| 精品视频在线观看视频免费视频| 中国成人在线视频| 可以免费看的黄色片| 天天干夜夜夜操|