日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Vineyard 加入 CNCF Sandbox,将继续瞄准云原生大数据分析领域

發(fā)布時(shí)間:2025/3/20 编程问答 11 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Vineyard 加入 CNCF Sandbox,将继续瞄准云原生大数据分析领域 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

作者 |?Vineyard 團(tuán)隊(duì)
來源 | 阿里巴巴云原生公眾號
?
Vineyard 是一個(gè)專為云原生環(huán)境下大數(shù)據(jù)分析場景中端到端工作流提供內(nèi)存數(shù)據(jù)共享的分布式引擎,我們很高興宣布 Vineyard 在 2021 年 4 月 27 日被云原生基金會(huì)(CNCF)TOC 接受為沙箱(Sandbox)項(xiàng)目。
?
Vineyard 項(xiàng)目開源地址:
https://github.com/alibaba/v6d

項(xiàng)目介紹

現(xiàn)有的大數(shù)據(jù)分析場景中,對于端到端任務(wù),不同的子任務(wù)之間通常使用例如 HDFS、S3、OSS 這樣的分布式文件系統(tǒng)或?qū)ο蟠鎯?chǔ)系統(tǒng),來共享任務(wù)之間的中間數(shù)據(jù),這種方式在運(yùn)行效率和研發(fā)效率上存在諸多問題,以下圖所示的一個(gè)風(fēng)控作業(yè)工作流為例:
?

  • 工作流中不同任務(wù)之間為了共享中間數(shù)據(jù),前一個(gè)任務(wù)將結(jié)果寫入文件系統(tǒng),完成之后,后一個(gè)再將文件讀出作為輸入,這個(gè)過程帶來了額外的序列化及反序列化、內(nèi)存拷貝、以及網(wǎng)絡(luò)、IO 的開銷,我們從歷史任務(wù)中觀察到有超過 60% 的任務(wù)為此花費(fèi)了 40% 以上的執(zhí)行時(shí)間。
  • 對于生產(chǎn)環(huán)境,為了高效地解決某一個(gè)特定范式的問題往往會(huì)引入一個(gè)新系統(tǒng)(例如分布式圖計(jì)算),但這樣的系統(tǒng)往往難以直接與工作流中的其他系統(tǒng)無縫銜接,需要很多重復(fù)的 IO、數(shù)據(jù)格式轉(zhuǎn)換和適配的研發(fā)工作。
  • 使用外部文件系統(tǒng)共享數(shù)據(jù)給工作流帶來了額外的中斷,因?yàn)橥挥挟?dāng)一個(gè)任務(wù)完全寫完所有結(jié)果,下一個(gè)任務(wù)才能開始讀取和計(jì)算,這使得跨任務(wù)的流水線并行無法被應(yīng)用。
  • 現(xiàn)有的分布式文件系統(tǒng)在共享中間數(shù)據(jù)時(shí),特別是在云原生環(huán)境下,并沒有很好的處理分布式數(shù)據(jù)的位置問題,造成網(wǎng)絡(luò)開銷的浪費(fèi),從而降低端到端執(zhí)行效率。
  • 為了解決現(xiàn)有大數(shù)據(jù)分析工作流中存在的上述問題,我們設(shè)計(jì)和實(shí)現(xiàn)了分布式內(nèi)存數(shù)據(jù)共享引擎 Vineyard。

    Vineyard 從以下三個(gè)角度來應(yīng)對上述幾個(gè)問題:
    ?

  • 為了使端到端工作流中任務(wù)之間的數(shù)據(jù)共享更加高效,Vineyard 通過內(nèi)存映射的方式,支持系統(tǒng)間零拷貝的數(shù)據(jù)共享,省去了額外的 IO 開銷。
  • 為了簡化新計(jì)算引擎接入現(xiàn)有系統(tǒng)所需要的適配和開發(fā),Vineyard 對常見的數(shù)據(jù)類型,提供了開箱即用的抽象,例如 Tensor、DataFrame、Graph,等等,從而不同計(jì)算引擎之間共享中間結(jié)果不再需要額外的序列化和反序列。同時(shí),Vineyard 將 IO、數(shù)據(jù)遷移、快照等可復(fù)用的組件以插件的形式實(shí)現(xiàn),使其能夠很靈活地按需注冊到計(jì)算引擎中去,降低與計(jì)算引擎本身無關(guān)的開發(fā)成本。
  • Vineyard 提供一系列 operators,來實(shí)現(xiàn)更高效靈活的數(shù)據(jù)共享。例如 Pipeline operator 實(shí)現(xiàn)了跨任務(wù)的流水線并行,使得后續(xù)任務(wù)可以隨著前序任務(wù)輸出的產(chǎn)生,同時(shí)進(jìn)行計(jì)算,提高了端到端整體效率。
  • Vineyard 與 Kubernetes 集成,通過 Scheduler Plugin,讓任務(wù)的調(diào)度能夠感知所需要的數(shù)據(jù)的局部性,在 Kubernetes 讓單個(gè)任務(wù)的 Pod 盡可能地調(diào)度到與 Pod 所需的輸入數(shù)據(jù)對其的機(jī)器上,來減小數(shù)據(jù)遷移需要的網(wǎng)絡(luò)開銷,提升端到端性能。
  • 在初步的對比實(shí)驗(yàn)中,相比于使用 HDFS 來共享中間數(shù)據(jù),對于評測任務(wù),Vineyard 能夠大幅降低用于交換中間結(jié)果引入的額外開銷,對于整個(gè)工作流的端到端時(shí)間有 1.34 倍的提升。

    核心功能

    接下來從 Vineyard 核心的設(shè)計(jì)與實(shí)現(xiàn),以及 Vineyard 如何助力云原生環(huán)境中大數(shù)據(jù)分析任務(wù)兩個(gè)方面來介紹 Vineyard 的核心功能。
    ?

    1. 分布式內(nèi)存數(shù)據(jù)共享

    Vineyard 將內(nèi)存中的數(shù)據(jù)表示為 Object。Object 可以是 Local 的,也可以是 Global 的,以分布式執(zhí)行引擎 Mars 和 Dask 為例,一個(gè) DataFrame 往往被拆分成很多個(gè) Chunk 以利用多臺(tái)機(jī)器的計(jì)算能力,每臺(tái)機(jī)器上有多個(gè) Chunk,這些 Chunk 是 Vineyard 中的 LocalObject,這些 Chunk 一起構(gòu)成了一個(gè)全局的視圖,即 GlobalDataFrame。這個(gè) GlobalDataFrame 能夠直接共享給其他計(jì)算引擎,如 GraphScope,作為圖數(shù)據(jù)的輸入。有了這些數(shù)據(jù)類型的抽象,Vineyard 上的不同計(jì)算引擎之間就可以無縫地共享中間結(jié)果,將一個(gè)任務(wù)的輸出直接用作下一個(gè)任務(wù)的輸出。
    ?
    更具體地,Vineyard 中又是如果表達(dá)一個(gè)特定類型的 Object,使之能夠很容易地適配到不同的計(jì)算引擎中去呢?這得益于 Vineyard 在 Object 的表示上提供的靈活性。Vineyard 中,一個(gè) Object 包括兩個(gè)部分,Metadata,以及一組 Blob。Blob 中存儲(chǔ)著實(shí)際的數(shù)據(jù),而 Metadata 則用于解釋這些 Blob 的語義。例如對于 Tensor,Blob 是一段連續(xù)內(nèi)存,存儲(chǔ)著 Tensor 中所有的元素,而 Metadata 中記錄了 Tensor 的類型、形狀、以及行主序還是列主序等屬性。在 Python 中,這個(gè) Object 可以被解釋為一個(gè) Numpy 的 NDArray,而在 C++ 中,這個(gè) Object 可以被解釋為一個(gè) xtensor 中的 tensor。這兩種不同編程語言的 SDK 中,共享這個(gè) Tensor 不會(huì)帶來額外的 IO、拷貝、序列化/反序列化、以及類型轉(zhuǎn)換的開銷。
    ?
    同時(shí),Vineyard 中的 Metadata 是可嵌套的,這使得我們通過很容易地將任何復(fù)雜的數(shù)據(jù)類型描述為 Vineyard 中的 Object,不會(huì)限制計(jì)算引擎的表達(dá)能力。以 GlobalDataFrame 為例,見下圖中 Metadata 的結(jié)構(gòu)。
    ?

    2. 云原生環(huán)境中數(shù)據(jù)與任務(wù)的協(xié)同調(diào)度

    對于一個(gè)真實(shí)部署的大數(shù)據(jù)分析流水線,僅僅有任務(wù)之間的數(shù)據(jù)共享是遠(yuǎn)遠(yuǎn)不夠的。在云環(huán)境中,一個(gè)端到端流水線中包含的多個(gè)子任務(wù)在被 Kubernetes 調(diào)度時(shí)僅僅考慮了需要的資源約束,連續(xù)的兩個(gè)任務(wù)的 co-locate 無法保證,在兩個(gè)任務(wù)之間共享中間結(jié)果時(shí)仍然有數(shù)據(jù)遷移引入的網(wǎng)絡(luò)開銷,如下圖,在運(yùn)行 Task B 時(shí),因?yàn)閮蓚€(gè)任務(wù)的 Pod 沒有對齊,數(shù)據(jù)分片 A3、A4 需要被遷移到 Pod 所在的 Vineyard 實(shí)例上。
    ?

    對此,Vineyard 通過 CRD 將集群中的數(shù)據(jù)(Vineyard Objects)表示為可觀測的資源,并基于 Kubernetes 的 Scheduler Framework 設(shè)計(jì)和實(shí)現(xiàn)了一個(gè)考慮數(shù)據(jù)局部性的調(diào)度器插件。當(dāng)前一個(gè)任務(wù) Task A 完成后,從結(jié)果對象的 Metadata 中,調(diào)度器插件可以知道所有分片的位置,在啟動(dòng)下一個(gè)任務(wù)時(shí),調(diào)度器給數(shù)據(jù)所在的節(jié)點(diǎn)(圖中的 Node 1、Node 2)更高的優(yōu)先級,使任務(wù) Task B 也盡可能地被調(diào)度到對應(yīng)的節(jié)點(diǎn)上,從而省去了數(shù)據(jù)遷移引入的額外開銷,來改善端到端的性能。

    快速上手

    Vineyard 集成了 Helm 以方便用戶安裝和部署:
    ?

    helm repo add vineyard https://vineyard.oss-ap-southeast-1.aliyuncs.com/charts/ helm install vineyard vineyard/vineyard

    安裝之后,系統(tǒng)中會(huì)部署一個(gè) Vineyard DaemonSet,并暴露一個(gè) UNIX domain socket 用于與應(yīng)用的任務(wù) Pod 之間的共享內(nèi)存和 IPC 通信。
    ?
    此外,還可以參考 Vineyard 的演示視頻:
    https://www.youtube.com/watch?v=vPbF1l5nwwQ&list=PLj6h78yzYM2NoiNaLVZxr-ERc1ifKP7n6&t=585

    未來展望

    Vineyard 已經(jīng)作為分布式科學(xué)計(jì)算引擎 Mars 和一站式圖計(jì)算系統(tǒng) GraphScope 的存儲(chǔ)引擎,Vineyard 助力大數(shù)據(jù)分析任務(wù)離不開與云原生社區(qū)的緊密互動(dòng),未來Vineyard 會(huì)進(jìn)一步地完善與社區(qū)其他項(xiàng)目如 Kubeflow、Fluid 等的集成,助力更多云上大數(shù)據(jù)分析任務(wù)。
    ?
    Vineyard 將繼續(xù)與社區(qū)同行,支持關(guān)注社區(qū)的反饋,致力于推動(dòng)云原生技術(shù)在大數(shù)據(jù)分析領(lǐng)域的生態(tài)建設(shè)和應(yīng)用。歡迎大家關(guān)注 Vineyard 項(xiàng)目,加入 Vineyard 社區(qū)并參與項(xiàng)目的共建與落地!

    2021 阿里云開發(fā)者大會(huì)重磅開啟!

    數(shù)字時(shí)代,如何更好地利用云的能力?什么是新型、便捷的開發(fā)模式?如何讓開發(fā)者更高效地構(gòu)建應(yīng)用?科技賦能社會(huì),技術(shù)推動(dòng)變革,拓展開發(fā)者的能量邊界,一切,因云而不同。點(diǎn)擊立即報(bào)名活動(dòng)2021 阿里云開發(fā)者大會(huì)將給你答案。

    總結(jié)

    以上是生活随笔為你收集整理的Vineyard 加入 CNCF Sandbox,将继续瞄准云原生大数据分析领域的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

    主站蜘蛛池模板: 欧美精品1区2区 | 一区二区三区四区av | 亚洲av无码久久忘忧草 | 性欧美久久久 | 99精品欧美一区二区三区综合在线 | 欧美色乱 | 网站毛片| 扩阴视频 | 亚洲一区二区三区电影在线观看 | 亚洲精品中文字幕 | 国产成人一区二区三区小说 | www麻豆 | 国产在线最新 | 久久九九精品视频 | 在线观看免费国产 | 熟女俱乐部一区二区 | 国产强被迫伦姧在线观看无码 | 中文字av | 国产麻豆剧传媒精品国产 | www日日日| 久久国产成人精品国产成人亚洲 | 久久精品99久久久久久久久 | 日韩国产成人无码av毛片 | 免费观看成人在线视频 | 成人福利在线免费观看 | 国产欧美日韩亚洲 | 一本一道av | 艳母日本动漫在线观看 | 欧美精品一二三四 | 亚洲日本中文字幕 | 亚洲精品国产手机 | 72pao成人国产永久免费视频 | 亚洲黄色片网站 | 国产综合无码一区二区色蜜蜜 | 91成年视频 | 毛片大全| 天天干天天操天天射 | 欧美日韩免费看 | 欧美一区二区三区影视 | 国产成人综合自拍 | 日韩精品中字 | 久草香蕉在线 | 国产人妻人伦精品1国产丝袜 | 国产一区二区三区在线视频观看 | www.黄色. | 中国美女性猛交 | 永久中文字幕 | 黄色免费网站 | 欧美v在线| 免费一级做a爰片久久毛片潮 | 亚洲福利在线观看 | 亚洲精品第五页 | 欧美在线一二三区 | 中文字幕在线免费观看 | 三级黄色片免费观看 | 日韩岛国片 | 99精品欧美一区二区 | 国产精品免费一区二区区 | 69免费| av在线播放地址 | 亚洲国产精品毛片 | 男女黄网站 | 一本一道久久a久久 | 亚洲人交配视频 | 久色视频在线播放 | 亚洲精品综合在线 | 伊人逼逼 | av大片免费观看 | 国产女无套免费视频 | 少妇av一区二区三区 | 久久亚洲综合国产精品99麻豆精品福利 | 久久高清免费视频 | 久操免费在线 | 精品一区二区三区免费 | 国产精品视频1区 | 蜜桃av噜噜一区二区三区 | 孕期1ⅴ1高h| 欧洲一级黄色片 | 五月婷婷一区 | 香蕉私人影院 | 久久精品国产成人av | 91艹| 动漫美女隐私无遮挡 | 自拍视频在线观看 | 99极品视频 | 干成人网| 国产精品三区四区 | 久久视精品 | 国产女人叫床高潮大片免费 | 亚洲热在线视频 | 亚洲国产精品麻豆 | 日韩r级电影在线观看 | 亚洲激情黄色 | 校园春色亚洲 | 国产色在线观看 | 永久免费av无码网站性色av | 日本三级视频 | www.亚洲欧美 | 久久久无码18禁高潮喷水 |