日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

產(chǎn)品架構(gòu)

更新時(shí)間:

本文為您介紹Hologres的產(chǎn)品架構(gòu)以及每個(gè)組件的作用。

架構(gòu)優(yōu)勢(shì)

在傳統(tǒng)的分布式系統(tǒng)中,常用的存儲(chǔ)計(jì)算架構(gòu)有如下三種。架構(gòu)

  • Shared Disk/Storage (共享存儲(chǔ))

    有一個(gè)分布式的存儲(chǔ)集群,每個(gè)計(jì)算節(jié)點(diǎn)像訪問單機(jī)數(shù)據(jù)一樣訪問這個(gè)共享存儲(chǔ)上的數(shù)據(jù)。這種架構(gòu)的存儲(chǔ)層可以比較方便的擴(kuò)展,但是計(jì)算節(jié)點(diǎn)需要引入分布式協(xié)調(diào)機(jī)制保證數(shù)據(jù)同步和一致性,因此計(jì)算節(jié)點(diǎn)的可擴(kuò)展性有一個(gè)上限。

  • Shared Nothing

    每個(gè)計(jì)算節(jié)點(diǎn)自己掛載存儲(chǔ),一個(gè)節(jié)點(diǎn)只能處理一個(gè)分片的數(shù)據(jù),節(jié)點(diǎn)之間可以通信,最終有一個(gè)匯總節(jié)點(diǎn)對(duì)數(shù)據(jù)進(jìn)行匯總。這種架構(gòu)能比較方便的擴(kuò)展,但是它的缺點(diǎn)是節(jié)點(diǎn)Failover需要等待數(shù)據(jù)加載完成之后才能提供服務(wù);并且存儲(chǔ)和計(jì)算需要同時(shí)擴(kuò)容,不夠靈活,擴(kuò)容后,有漫長的數(shù)據(jù)Rebalance過程。

  • Storage Disaggregation(存儲(chǔ)計(jì)算分離架構(gòu))

    存儲(chǔ)和Shared Storage類似,有一個(gè)分布式的共享存儲(chǔ)集群,計(jì)算層處理數(shù)據(jù)的模式和Shared Nothing類似,數(shù)據(jù)是分片的,每個(gè)Shard只處理自己所在分片的數(shù)據(jù),每個(gè)計(jì)算節(jié)點(diǎn)還可以有本地緩存。

    存儲(chǔ)計(jì)算分離的架構(gòu)存在以下優(yōu)勢(shì)。

    • 一致性問題處理簡單:計(jì)算層只需要保證同一時(shí)刻有一個(gè)計(jì)算節(jié)點(diǎn)寫入同一分片的數(shù)據(jù)。

    • 擴(kuò)展更靈活:計(jì)算和存儲(chǔ)可以分開擴(kuò)展,計(jì)算不夠擴(kuò)計(jì)算節(jié)點(diǎn),存儲(chǔ)不夠擴(kuò)存儲(chǔ)節(jié)點(diǎn)。這樣在大促等場(chǎng)景上會(huì)非常靈活。計(jì)算資源不夠了,馬上擴(kuò)容計(jì)算就好了,不需要像Shared Nothing那樣做耗時(shí)耗力的數(shù)據(jù)Rebalance;也不會(huì)像Shared Storage那樣,出現(xiàn)單機(jī)的存儲(chǔ)容量瓶頸。

    • 計(jì)算節(jié)點(diǎn)故障恢復(fù)快:計(jì)算節(jié)點(diǎn)發(fā)生Failover之后,數(shù)據(jù)可以按需從分布式的共享存儲(chǔ)異步拉取。因此Failover的速度非常快。

Hologres采用的是第三種存儲(chǔ)計(jì)算分離架構(gòu),Hologres的存儲(chǔ)使用的是阿里自研的Pangu分布式文件系統(tǒng)(類似HDFS)。用戶可以根據(jù)業(yè)務(wù)需求進(jìn)行彈性擴(kuò)縮容,輕松應(yīng)對(duì)在線系統(tǒng)不同的流量峰值。

架構(gòu)組件介紹

Hologres架構(gòu)圖如下所示。Hologres架構(gòu)圖

整個(gè)架構(gòu)從上往下分為如下組件。

  • 計(jì)算層

    • 接入節(jié)點(diǎn)(Frontend,F(xiàn)E)

      Hologres接入節(jié)點(diǎn),主要用于SQL的認(rèn)證、解析、優(yōu)化,一個(gè)實(shí)例有多個(gè)FE接入節(jié)點(diǎn)。在生態(tài)上兼容Postgres 11,因此用戶可以使用Postgres標(biāo)準(zhǔn)語法進(jìn)行開發(fā),也可以用Postgres兼容的開發(fā)工具和BI工具直接連接Hologres。

    • 計(jì)算HoloWorker

      HoloWorker分為執(zhí)行引擎、存儲(chǔ)引擎、調(diào)度等組件,主要負(fù)責(zé)用戶任務(wù)的計(jì)算、調(diào)度。

      • 其中執(zhí)行引擎(Query Engine,QE)主要有三個(gè),執(zhí)行引擎的技術(shù)原理請(qǐng)參見Hologres執(zhí)行引擎技術(shù)揭秘

        • HQE(Hologres Query Engine)

          Hologres自研執(zhí)行引擎,采用可擴(kuò)展的MPP架構(gòu)全并行計(jì)算,向量化算子發(fā)揮CPU極致算力,從而實(shí)現(xiàn)極致的查詢性能。(QE主要由HQE組成)。

        • PQE(Postgres Query Engine)

          用于兼容Postgres提供擴(kuò)展能力,支持PG生態(tài)的各種擴(kuò)展組件,如PostGIS,UDF(PL/JAVA,PL/SQL,PL/Python)等。部分HQE還沒有支持的函數(shù)和算子,會(huì)通過PQE執(zhí)行,每個(gè)版本都在持續(xù)優(yōu)化中,最終目標(biāo)是去掉PQE。

        • SQE(Seahawks Query Engine)

          無縫對(duì)接MaxCompute(ODPS)的執(zhí)行引擎,實(shí)現(xiàn)對(duì)MaxCompute的本地訪問,無需遷移和導(dǎo)入數(shù)據(jù),就可以高性能和全兼容的訪問各種MaxCompute文件格式,以及Hash/Range clustered table等復(fù)雜表,實(shí)現(xiàn)對(duì)PB級(jí)離線數(shù)據(jù)的交互式分析,技術(shù)原理請(qǐng)參見Hologres加速查詢MaxCompute技術(shù)揭秘

      • 存儲(chǔ)引擎Storage Engine(SE)

        主要用于管理和處理數(shù)據(jù), 包括創(chuàng)建、查詢、更新和刪除(簡稱 CRUD)數(shù)據(jù)等,關(guān)于存儲(chǔ)引擎詳細(xì)的技術(shù)原理請(qǐng)參見Hologres存儲(chǔ)引擎技術(shù)揭秘

      • Cache(緩存)

        主要是結(jié)果緩存,提高查詢性能。

      • HOS Scheduler

        輕量級(jí)調(diào)度。

    • Meta Service

      主要用于管理元數(shù)據(jù)Meta信息(包括表結(jié)構(gòu)信息以及數(shù)據(jù)在Storage Engine節(jié)點(diǎn)上的分布情況),并將Meta信息提供給FE節(jié)點(diǎn)。

    • Holo Master

      Hologres原生部署在K8s上,當(dāng)某個(gè)Worker出現(xiàn)故障時(shí),由K8s進(jìn)行快速拉起創(chuàng)建一個(gè)新的Worker,保障Worker級(jí)別的可用性。在Worker內(nèi)部,每個(gè)組件的可用性則由Holo Master負(fù)責(zé),當(dāng)組件出現(xiàn)狀態(tài)不正常時(shí),Holo Master則會(huì)快速重新拉起組件,從而恢復(fù)服務(wù),高可用技術(shù)原理請(qǐng)參見Hologres高可用技術(shù)揭秘

  • 存儲(chǔ)層

    • 數(shù)據(jù)直接存儲(chǔ)在Pangu File System。

    • 與MaxCompute在存儲(chǔ)層打通,能直接訪問MaxCompute存儲(chǔ)在盤古的數(shù)據(jù),實(shí)現(xiàn)高效相互訪問。

    • 支持直接訪問OSS、DLF數(shù)據(jù),類型包含CSV、ORC、Parquet、Hudi、Delta、Meta Data等,加速數(shù)據(jù)湖探索,也可以將數(shù)據(jù)回流至OSS,降低存儲(chǔ)成本。